View file application/backstage/ClipPaper.php

File size: 1.36Kb
<?PHP
	require(__DIR__ . '/../start.php');
	
	/*
		Проверка валидности
	*/
	IsValidActions();
	
	/*
		Проверка на авторизацию
	*/
	if(empty($_SESSION['id'])) {
		AlertError(getLang('backstage_auth'));
	}
	
	/*
		Прикладывание приложения к сообщению
	*/
	if(isset($_POST['sendPaperChat'])) {
		if(isset($_POST['first_message'])) {
			$Dialog = dialogs()->findPeer($_POST['userid']);
			
			if(empty($Dialog)) {
				$_POST['peerid'] = dialogs()->Create([
					$_SESSION['id'],
					$_POST['userid']
				]);
			}
			else {
				$_POST['peerid'] = $Dialog->id;
			}
		}
		
		if(empty($_POST['peerid']) || !dialogs()->IsUserPeer($_POST['peerid'])) {
			AlertError(getLang('backstage_clip_no_user'));
		}
		
		$Uploads = new Uploads;
		$Messages = new Messages;
		
		try {
			$Result = $Uploads->Start($_FILES, $_POST['peerid']);
			dialogs()->Update(
				$_POST['peerid']
			);
			
			Result([
				'Alert' => 'Success',
				'Message' => ($Result === true) ? true : $Result,
				'Content' => $Messages->GetMessageRange($_POST['peerid'], $_POST['lastid']),
				'LastId' => $Messages->GetLastId($_POST['peerid']),
				'Dialogs' => dialogs()->GetDialogs(),
				'Clear' => isset($_POST['first_message'])
			]);
		}
		catch(Exception $e) {
			AlertError($e->getMessage());
		}
	}