Как авторизоваться через Office на форуме SMF?

Всем привет. Столкнулся с такой задачей. Нужно авторизироваться через Office на форуме SMF, догадываюсь что авторизация не происходит из-за того, что офис не находит контекст на котором авторизироваться, но если авторизироваться на MODX, то блок с авторизированным пользователем появляется. Делаю вот таким образом:

// Подключаем
	define('MODX_API_MODE', true);
	require '/index.php';

	// Включаем обработку ошибок
	$modx->getService('error','error.modError');
	$modx->setLogLevel(modX::LOG_LEVEL_INFO);
	$modx->setLogTarget(XPDO_CLI_MODE ? 'ECHO' : 'HTML');
	require_once( MODX_CORE_PATH . 'model/modx/modx.class.php');
	$modx = new modx();
	$modx->initialize('web');

	$officeAuth = $modx->runSnippet('officeAuth',array(
		'groups' => 'Users',
		'HybridAuth' => '1',
		'tplLogin' => '@INLINE <a href="#auth" data-toggle="modal" data-target="#auth" rel="nofollow" title="[[%office_auth_remote_login]]"><img src="'.$sites_img.'auth.png" alt="[[%office_auth_remote_login]]" /></a>
		<div class="modal fade" id="auth" tabindex="-1" role="dialog" aria-labelledby="authLabel" aria-hidden="true">
		  <div class="modal-dialog">
			<div class="modal-content">
			  <div class="modal-header">
				<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
				<h4 class="modal-title" id="authLabel">Войти в систему</h4>
			  </div>
			  <div class="modal-body">
				<ul class="nav nav-tabs">
				  <li class="active"><a href="#autorize" data-toggle="tab">Авторизация</a></li>
				  <li><a href="#registartion" data-toggle="tab">Регистрация</a></li>
				</ul>
				<div class="tab-content" id="office-auth-form">
					<div class="tab-pane fade in active" id="autorize">
						<div class="office-auth-login-wrapper">
							<h4>[[%office_auth_login]]</h4>

							<form method="post" class="form-horizontal" id="office-auth-login">
								<div class="form-group">
									<label for="office-auth-login-email" class="col-md-3 control-label">[[%office_auth_login_username]] <span class="red">*</span></label>
									<div class="col-md-8">
										<input type="text" name="username" placeholder="" class="form-control" id="office-auth-login-username" value="" />
										<p class="help-block"><small>[[%office_auth_login_username_desc]]</small></p>
									</div>

									<label for="office-auth-login-password" class="col-md-3 control-label">[[%office_auth_login_password]]</label>
									<div class="col-md-8">
										<input type="password" name="password" placeholder="" class="form-control" id="office-login-form-password" value="" />
										<p class="help-block"><small>[[%office_auth_login_password_desc]]</small></p>
									</div>

									<input type="hidden" name="action" value="auth/formLogin" />
									<input type="hidden" name="return" value="" />
									<div class="col-sm-offset-3 col-sm-8">
										<button type="submit" class="btn btn-primary">[[%office_auth_login_btn]]</button>
									</div>
								</div>
							</form>

							<label>[[%office_auth_login_ha]]</label>
							<div>[[+providers]]</div>
							<p class="help-block"><small>[[%office_auth_login_ha_desc]]</small></p>

							[[+error:notempty=`
							<div class="alert alert-block alert-danger alert-error">[[+error]]</div>
							`]]
						</div>
					</div>
					<div class="tab-pane fade" id="registartion">...</div>
				</div>
				[[+error:notempty=`
					<div class="alert alert-block alert-danger alert-error">[[+error]]</div>
				`]]
			  </div>
			  <div class="modal-footer">
				<button type="button" class="btn btn-default" data-dismiss="modal">Закрыть</button>
			  </div>
			</div>
		  </div>
		</div>',
		'tplLogout' => '@INLINE <div class="navbar">
                            <div class="navbar-header">
                                <div class="row">
                                    <div class="col-md-3 col-lg-3 col-xs-3">
                                        <div class="login-img">
                                            <img src="[[+photo:default=`[[+gravatar]]?s=100`]]" alt="[[+fullname]]" title="[[+fullname]]" class="office-avatar" width="100" />
                                        </div>
                                    </div>
                                    <div class="col-md-9 col-lg-9 col-xs-9">
                                        <span class="office-remote-info">
                                        	<a href="#auth" data-toggle="collapse" data-target="#collapseMenu" aria-expanded="true" aria-controls="collapseMenu"><b>[[+fullname]]</b> ([[+username]])</a>
                                        	<span class="pro">PRO</span><br />
                                        	<strong>Баланс:</strong> '.$msProfile.' €
                                        </span>
                                    </div>
                                </div>
                                <div class="row">
                                    <div class="col-md-12 col-lg-12 col-xs-12">
                                        <div class="nav_wrapper collapse" id="collapseMenu">
                    						<ul>
                    						    <li><a href="'.$site_url.'[[~]]">Заказы</a></li>
                                                <li><a href="'.$site_url.'[[~]]">Написать в блог</a></li>
                                                <li><a href="'.$site_url.'[[~]]">Добавить объявление</a></li>
                                                <li><a href="'.$site_url.'[[~]]">Добавить компанию</a></li>
                                                <li><a href="'.$site_url.'[[~]]">Тех. поддержка</a></li>
                                                <li><a href="'.$site_url.'[[~38]]">Пользователи</a></li>
                                                <li><a href="'.$site_url.'[[~35]]">История заказов</a></li>
                                                <li><a href="'.$site_url.'[[~38]]'.$currentUID.'">Профиль</a></li>
                                                <li><a href="'.$site_url.'[[~37]]">Настройки</a></li>
                    							<li class="last"><a href="[[~[[*id]]]]?action=remote/logout" rel="nofollow">[[%office_auth_logout]]</a></li>
                    						</ul>
                    					</div>
                    				</div>
                                </div>
                    		</div>
					    </div>'
	));
А переменную $officeAuth вставляю в место где нужно выводить блок. Может кто-то уже сталкивался с подобным?
Андрей Копп
17 мая 2016, 13:38
modx.pro
1 875
0

Комментарии: 3

    Андрей Копп
    17 мая 2016, 20:15
    0
    Так этот мост и стоит, но сама авторизация скудная, всего 2 поля логин и пароль, а хочется чтобы можно было и через HybridAuth авторизироваться прямо с форума.
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
3