public static function load() { $xml = simplexml_load_file('http://www.parallels.com/products/plesk/rss'); $lastItem = $xml->channel->item; pm_Settings::set('news_text', (string) $lastItem->title); pm_Settings::set('news_link', (string) $lastItem->link); }
public function formAction() { // Display simple text in view $this->view->test = 'This is index action for testing module.'; // Init form here $form = new pm_Form_Simple(); $form->addElement('text', 'exampleText', array('label' => 'Example Text', 'value' => pm_Settings::get('exampleText'), 'required' => true, 'validators' => array(array('NotEmpty', true)))); $form->addElement('password', 'examplePassword', array('label' => 'Example Password', 'value' => '', 'description' => 'Password: '******'examplePassword'), 'validators' => array(array('StringLength', true, array(5, 255))))); $form->addElement('textarea', 'exampleTextarea', array('label' => 'Example TextArea', 'value' => pm_Settings::get('exampleTextarea'), 'class' => 'f-middle-size', 'rows' => 4, 'required' => true, 'validators' => array(array('StringLength', true, array(0, 255))))); $form->addElement('simpleText', 'exampleSimpleText', array('label' => 'Example SimpleText', 'escape' => false, 'value' => '<a href="#">Link</a>')); $form->addElement('select', 'exampleSelect', array('label' => 'Example Select', 'multiOptions' => array('opt-0' => 'Option 0', 'opt-1' => 'Option 1'), 'value' => pm_Settings::get('exampleSelect'), 'required' => true)); $form->addElement('radio', 'exampleRadio', array('label' => 'Example Radio', 'multiOptions' => array('opt-0' => 'Option 0', 'opt-1' => 'Option 1'), 'value' => pm_Settings::get('exampleRadio'), 'required' => true)); $form->addElement('checkbox', 'exampleCheckbox', array('label' => 'Example Checkbox', 'value' => pm_Settings::get('exampleCheckbox'))); $form->addElement('hidden', 'exampleHidden', array('value' => 'example')); $form->addControlButtons(array('cancelLink' => pm_Context::getModulesListUrl())); if ($this->getRequest()->isPost() && $form->isValid($this->getRequest()->getPost())) { // Form proccessing here pm_Settings::set('exampleText', $form->getValue('exampleText')); if ($form->getValue('examplePassword')) { pm_Settings::set('examplePassword', $form->getValue('examplePassword')); } pm_Settings::set('exampleTextarea', $form->getValue('exampleTextarea')); pm_Settings::set('exampleSelect', $form->getValue('exampleSelect')); pm_Settings::set('exampleRadio', $form->getValue('exampleRadio')); pm_Settings::set('exampleCheckbox', $form->getValue('exampleCheckbox')); $this->_status->addMessage('info', 'Data was successfully saved.'); $this->_helper->json(array('redirect' => pm_Context::getBaseUrl())); } $this->view->form = $form; }
<?php pm_Context::init('panel-stats'); pm_Settings::set('useAuth', true); pm_Settings::set('authToken', md5(uniqid(rand(), true)));
<?php pm_Context::init('panel-news'); $task = new pm_Scheduler_Task(); $task->setSchedule(pm_Scheduler::$EVERY_DAY); $task->setCmd('periodic-task.php'); pm_Scheduler::getInstance()->putTask($task); pm_Settings::set('periodic_task_id', $task->getId()); Modules_PanelNews_News::load();
public function process() { $values = $this->getValues(); pm_Settings::set('useAuth', (bool) $values['useAuth']); pm_Settings::set('authToken', $values['authToken']); }
public function getButtonUrl() { return pm_Settings::get('news_link'); }
<?php require_once 'pm/Loader.php'; pm_Loader::registerAutoload(); pm_Bootstrap::init(); pm_Context::init('panel-stats'); if (pm_Settings::get('useAuth') && @$_GET['authToken'] != pm_Settings::get('authToken')) { die('Invalid auth token supplied.'); } $reporter = new Modules_PanelStats_Reporter(); $format = isset($_GET['format']) ? $_GET['format'] : 'xml'; if ('plain' == $format) { echo $reporter->getResultsPlain(); } else { if ('json' == $format) { header("Content-Type: application/json"); echo $reporter->getResultsJson(); } else { header("Content-Type: text/xml"); echo $reporter->getResultsXml(); } }
<?php pm_Context::init('example'); $id = pm_Settings::get('customButtonId'); $request = <<<APICALL <ui> <delete-custombutton> <filter> <custombutton-id>{$id}</custombutton-id> </filter> </delete-custombutton> </ui> APICALL; try { $response = pm_ApiRpc::getService()->call($request); $result = $response->ui->{"delete-custombutton"}->result; if (true || 'ok' == $result->status) { echo "done\n"; exit(0); } else { echo "error {$result->errcode}: {$result->errtext}\n"; exit(1); } } catch (PleskAPIParseException $e) { echo $e->getMessage() . "\n"; exit(1); }
<ui> <create-custombutton> <owner> <admin/> </owner> <properties> <file>{$iconPath}</file> <internal>true</internal> <noframe>true</noframe> <place>navigation</place> <url>{$baseUrl}</url> <text>Example Module</text> </properties> </create-custombutton> </ui> APICALL; try { $response = pm_ApiRpc::getService()->call($request); $result = $response->ui->{"create-custombutton"}->result; if ('ok' == $result->status) { pm_Settings::set('customButtonId', $result->id); echo "done\n"; exit(0); } else { echo "error {$result->errcode}: {$result->errtext}\n"; exit(1); } } catch (PleskAPIParseException $e) { echo $e->getMessage() . "\n"; exit(1); }
<?php pm_Context::init('panel-news'); $taskId = pm_Settings::get('periodic_task_id'); $task = pm_Scheduler::getInstance()->getTaskById($taskId); pm_Scheduler::getInstance()->removeTask($task);