function shutDown()
 {
     $messages =& zmgFactory::getMessages();
     $session =& zmgFactory::getSession();
     $session->put('zmg.messagecenter.cache', $messages->getAll(), true);
     $session->store();
 }
 function process()
 {
     $gid = zmgGetParam($_REQUEST, 'zmg_edit_gallery_gid', 0);
     $isNew = false;
     if ($gid === "new") {
         $isNew = true;
         $gid = 0;
     }
     $gid = intval($gid);
     $events =& zmgFactory::getEvents();
     $messages =& zmgFactory::getMessages();
     $gallery = new zmgGallery(zmgDatabase::getDBO());
     $res = true;
     if ($gid > 0) {
         if (!($res = $gallery->load($gid))) {
             $messages->append(T_('Gallery could not be saved') . ': ' . $gallery->getError());
         }
     }
     if ($res && $gid > 0 || $isNew) {
         $data = array('name' => zmgSQLEscape(zmgGetParam($_REQUEST, 'zmg_edit_gallery_name', $gallery->name)), 'descr' => zmgSQLEscape(zmgGetParam($_REQUEST, 'zmg_edit_gallery_descr', $gallery->descr)), 'keywords' => zmgSQLEscape(zmgGetParam($_REQUEST, 'zmg_edit_gallery_keywords', $gallery->keywords)), 'hide_msg' => intval(zmgGetParam($_REQUEST, 'zmg_edit_gallery_hidenm', $gallery->hide_msg)), 'shared' => intval(zmgGetParam($_REQUEST, 'zmg_edit_gallery_shared', $gallery->shared)), 'published' => intval(zmgGetParam($_REQUEST, 'zmg_edit_gallery_published', $gallery->published)), 'uid' => intval(zmgGetParam($_REQUEST, 'zmg_edit_gallery_acl_gid', $gallery->uid)));
         if ($isNew) {
             $data['dir'] = zmgSQLEscape(zmgGetParam($_REQUEST, 'zmg_edit_gallery_dir', ''));
         }
         //do some additional validation of strings
         $data['name'] = $events->fire('onvalidate', false, $data['name']);
         $data['descr'] = $events->fire('onvalidate', false, $data['descr']);
         $data['keywords'] = $events->fire('onvalidate', false, $data['keywords']);
         if (!$gallery->bind($data)) {
             $messages->append(T_('Gallery could not be saved') . ': ' . $gallery->getError());
         } else {
             if (!$gallery->store()) {
                 $messages->append(T_('Gallery could not be saved') . ': ' . $gallery->getError());
             } else {
                 if ($isNew) {
                     $gallery->buildDirStructure();
                 }
                 $messages->append(T_('Gallery saved successfully!'));
             }
         }
     } else {
         $messages->append(T_('Gallery could not be saved') . ': ' . $gid);
     }
 }
 function process()
 {
     $mid = intval(zmgGetParam($_REQUEST, 'zmg_edit_mid', 0));
     $medium = new zmgMedium(zmgDatabase::getDBO());
     $res = true;
     $events =& zmgFactory::getEvents();
     $messages =& zmgFactory::getMessages();
     if ($mid > 0) {
         if (!($res = $medium->load($mid))) {
             $messages->append(T_('Medium could not be saved') . ': ' . $medium->getError());
         }
     }
     if ($res && $mid > 0) {
         $data = array('name' => zmgSQLEscape(zmgGetParam($_REQUEST, 'zmg_edit_name', $medium->name)), 'descr' => zmgSQLEscape(zmgGetParam($_REQUEST, 'zmg_edit_descr', $medium->descr)), 'keywords' => zmgSQLEscape(zmgGetParam($_REQUEST, 'zmg_edit_keywords', $medium->keywords)), 'shared' => intval(zmgGetParam($_REQUEST, 'zmg_edit_shared', $medium->shared)), 'published' => intval(zmgGetParam($_REQUEST, 'zmg_edit_published', $medium->published)), 'uid' => intval(zmgGetParam($_REQUEST, 'zmg_edit_acl_gid', $medium->uid)));
         //do some additional validation of strings
         $data['name'] = $events->fire('onvalidate', false, $data['name']);
         $data['descr'] = $events->fire('onvalidate', false, $data['descr']);
         $data['keywords'] = $events->fire('onvalidate', false, $data['keywords']);
         if (!$medium->bind($data)) {
             $messages->append(T_('Medium could not be saved') . ': ' . $medium->getError());
         } else {
             if (!$medium->store()) {
                 $messages->append(T_('Medium could not be saved') . ': ' . $medium->getError());
             } else {
                 $isGalleryImg = intval(zmgGetParam($_REQUEST, 'zmg_edit_gimg', 0)) === 1;
                 $isParentImg = intval(zmgGetParam($_REQUEST, 'zmg_edit_pimg', 0)) === 1;
                 if (!($isGalleryImg && $medium->setAsGalleryImage())) {
                     $messages->append(T_('Medium could not be saved') . ': ' . T_('unable to set as image of gallery'));
                     $res = false;
                 }
                 if (!($isParentImg && $medium->setAsGalleryImage(true))) {
                     $messages->append(T_('Medium could not be saved') . ': ' . T_('unable to set as image of parent gallery'));
                     $res = false;
                 }
                 if ($res) {
                     $messages->append(T_('Medium saved successfully!'));
                 }
             }
         }
     } else {
         $messages->append(T_('Medium could not be saved') . ': ' . $mid);
     }
 }
 function throwErrors()
 {
     $errors =& zmgToolboxPlugin::getErrors();
     for ($i = 0; $i < count($errors); $i++) {
         zmgFactory::getMessages()->append($errors[$i]['title'], $errors[$i]['description']);
     }
     //reset the process of collecting errors
     $errors = null;
 }
 function update($vars, $isPlugin = false)
 {
     $updated = false;
     if (!$isPlugin) {
         foreach ($vars as $config => $value) {
             $config = trim($config);
             if (strstr($config, 'zmg_')) {
                 $real = str_replace('_', '/', str_replace('zmg_', '', $config));
                 if ($this->set($real, zmgSQLEscape(trim($value)))) {
                     $updated = true;
                 }
             }
         }
     } else {
         echo "updating plugin config..";
         $keys = array_keys($vars);
         if (!$this->_config['plugins'][$keys[0]]) {
             array_merge($this->_config, $vars);
             print_r($this->_config);
             $updated = true;
         }
     }
     $messages =& zmgFactory::getMessages();
     if ($updated) {
         if ($this->save()) {
             $messages->append(T_('Settings'), T_('Your settings have been saved successfully.'));
             return true;
         }
     }
     $messages->append(T_('Settings'), T_('Your settings could not be saved.'));
     return false;
 }
/**
 * Custom callback for ZMG error handling (taking RPC calls into account)
 *
 * @access public
 */
function zmgErrorCallback($error)
{
    if (zmgEnv::isRPC()) {
        zmgFactory::getMessages()->append($error['message'], $error['backtrace']);
        return;
    }
    zmgBacktrace();
    trigger_error($error['message'], $error['level']);
}
 function getMessages()
 {
     return zmgFactory::getMessages()->get();
 }