Загрузка изображений неавторизированным пользователем

Добрый день ув. сообщество, возникла одна идея для плагина, начал мало-мальски реализацию, но остановился на одном моменте. Допустим у неавторизированного пользователя есть доступ к форме добавления (топика, коммента, не важно чего), где можно загружать картинки. Но при попытке загрузить картинку выдает ошибку «Необходимо авторизоваться». Где убрать проверку на то, что пользователь авторизован или нет? (именно при загрузке фотографии на сервер)
Благодарен за ранее!

3 комментария

avatar
Где убрать проверку на то, что пользователь авторизован или нет? (именно при загрузке фотографии на сервер)
т.е. вы хотите попрощаться с местом на диске?

ActionAjax.class.php, в EventUploadImage()
avatar
ТС попросил обьяснить полностью, поэтому:

1. в методе, указанном в комментарии выше, находим строку:
$this->Viewer_SetResponseAjax('jsonIframe',false);

меняем на:
$this->Viewer_SetResponseAjax('jsonIframe',false, false);


2. ниже по коду находим участок:
		/**
		 * Пользователь авторизован?
		 */
		if (!$this->oUserCurrent) {
			$this->Message_AddErrorSingle($this->Lang_Get('need_authorization'),$this->Lang_Get('error'));
			return;
		}

удалить этот код.

3. находим ниже строку:
if(!$sFile=$this->Topic_UploadTopicImageFile($_FILES['img_file'],$this->oUserCurrent)) {

меняем на:
if(!$sFile=$this->Topic_UploadTopicImageFile($_FILES['img_file'], $this->User_GetUserById(1))) {


4. находим строку ещё ниже:
$sFile=$this->Topic_UploadTopicImageUrl($_REQUEST['img_url'],$this->oUserCurrent);

заменить на:
$sFile=$this->Topic_UploadTopicImageUrl($_REQUEST['img_url'], $this->User_GetUserById(1));


все правки в одном методе.

З.Ы. я ещё раз укажу что это небезопасно т.к. любой сможет загрузить изображение, даже не авторизированный пользователь.
avatar
поправка: п. № 1:
1. в методе, указанном в комментарии выше, находим строку:

делать НЕ нужно
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.