Проверка авторизации в сниппете
        Подскажите, пожалуйста, мне нужно в сниппете проверить авторизован ли пользователь.
Нашла вот это:
Что еще нужно прописать в начале сниппета, чтобы такие конструкции обрабатывались?
    
    
                                                                                
            Нашла вот это:
if ($modx->user->get('username') == '(anonymous)') {
//пользователь не авторизован
}Версия Revo 2.3.3Что еще нужно прописать в начале сниппета, чтобы такие конструкции обрабатывались?
Комментарии: 8
if($modx->user->hasSessionContext('web')){
//пользователь авторизован
}            
                или так 
                    if($modx->user->isAuthenticated($modx-context->key)){
//пользователь авторизован
}            
                Спасибо! А нужно ли что-либо дописывать в начале сниппета, чтобы $modx «заработал»?            
                    
                Найн. В любом сниппете $modx уже есть. И $modx-user тоже.
П.С. Если контекс web, то можно его не указывать.
                    П.С. Если контекс web, то можно его не указывать.
if($modx->user->isAuthenticated()){
//пользователь авторизован
}
}            
                Почему-то все равно не работает. У меня опыта очень мало в программировании, подскажите если ошибка очевидная.
Открывается просто пустая страница без дизайна
            
                    function showResult($summ, $time, $ot, $do, $t, $rate, $min, $bank, $message, $akcept, $avans, $pr) {
    $result='';
	if ( ($summ >= $ot) && ($summ <= $do) && ($time == $t) ) {
		$bg = $summ * $rate;
		$bg=round($bg);
		if ($bg < $min) {
			$bg = $min;
		}
		
		$result='<tr>';
			if($modx->user->isAuthenticated())  {$result.='<td>'.$bank.'</td>';} else {$result.='<td>Банк ###</td>';}
   
    $result.='<td>'.$bg.'</td>
                <td>'.$message.'</td>
                <td>'.$akcept.'</td>
                <td>'.$avans.'</td>
                <td>'.$pr.'</td>
            </tr>';
     }
	return $result;
}Я только вставила код про авторизацию, до этого было вот так:$result.='<tr>
                <td>'.$bank.'</td>
                <td>'.$bg.'</td>
                <td>'.$message.'</td>
                <td>'.$akcept.'</td>
                <td>'.$avans.'</td>
                <td>'.$pr.'</td>
            </tr>'; Открывается просто пустая страница без дизайна
            
                Люба, а где эта функция вызывается?v Например, в сниппете, отдельном файле?
На вскидку вижу одну ошибку — в начале функции нужно написать
                    На вскидку вижу одну ошибку — в начале функции нужно написать
global $modx;            
                В сниппете она вызывается. Там поиск по csv файлу организован. Объявила переменную в начале этой функции — все заработало! Огромное спасибо!            
                    
                На здоровье!            
                    
                            Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.