コード例 #1
0
<?php

require_once '../../bootstrap.php';
Core_Auth::authorization('repairmanjacktwitterexport');
$oUser = Core_Entity::factory('User')->getCurrent();
$export = new repairmanjacktwitterexport_notifier($oUser->login);
ob_start();
////////////
$oAdmin_Form_Controller = new Admin_Form_Controller();
$oAdmin_Form_Controller->setUp();
$oAdmin_Form_Controller->path('/admin/repairmanjacktwitterexport/index.php');
$oAdmin_Form_Controller->title('Экспорт в Twitter');
$oAdmin_Form_Entity_Form = new Admin_Form_Entity_Form($oAdmin_Form_Controller);
$oAdmin_Form_Entity_Form->action($oAdmin_Form_Controller->getPath());
if ($oAdmin_Form_Controller->getAction() == 'accept') {
    try {
        $export->doAccessToken(Core_Array::getPost('pin', ''));
    } catch (Exception $e) {
        $oAdmin_Form_Entity_Form->add(Core::factory('Admin_Form_Entity_Code')->html('<div id="error">Ошибка ' . $e->getCode() . ': ' . $e->getMessage() . '</div>'));
    }
} elseif ($oAdmin_Form_Controller->getAction() == 'revoke') {
    $export->revokeAuthorization();
}
if (!$export->isAuthorized()) {
    try {
        $export->doRequestToken();
        $aData = $export->getData();
        $oAdmin_Form_Entity_Form->add(Core::factory('Admin_Form_Entity_Code')->html('<div id="message">Первый шаг - авторизация приложения в Twitter! Перейдите по кнопке ниже на страничку Twitter (откроется в новой вкладке/окне) и разрешите приложению доступ к Вашем аккаунту. Скопируйте выданный Twitter код доступа.</div>'))->add(new Admin_Form_Entity_Separator())->add(Core::factory('Admin_Form_Entity_Button')->name('button')->onclick("window.open('http://api.twitter.com/oauth/authorize?oauth_token=" . $aData['oauth_token'] . "')")->value('Авторизация')->class('applyButton'))->add(Core::factory('Admin_Form_Entity_Code')->html('<div id="message">Второй шаг - введите в текстовое поле полученный от Twitter код доступа и нажмите кнопку "Применить".</div>'))->add(new Admin_Form_Entity_Separator())->add(Core::factory('Admin_Form_Entity_Input')->name("pin")->style("width: 100px"))->add(new Admin_Form_Entity_Separator())->add(Core::factory('Admin_Form_Entity_Button')->name('accept')->value('Применить')->class('applyButton')->type('submit')->onclick($oAdmin_Form_Controller->getAdminSendForm('accept')));
    } catch (Exception $e) {
        $oAdmin_Form_Entity_Form->add(Core::factory('Admin_Form_Entity_Code')->html('<div id="error">Ошибка ' . $e->getCode() . ': ' . $e->getMessage() . '</div>'));
    }