/**
  * Assert that the SNS message type is notification
  *
  * @param message $snsJsonMsg convertedJsonMsg
  *
  * @throws OffAmazonPaymentsNotifications_InvalidMessageException if not correct type
  *
  * @return void if correct type
  */
 private static function _checkForCorrectMessageType($snsJsonMsg)
 {
     $type = $snsJsonMsg->getMandatoryField("Type");
     if (strcasecmp($type, "Notification") != 0) {
         throw new OffAmazonPaymentsNotifications_InvalidMessageException("Error with SNS Notification - unexpected message with Type of " . $type);
     }
 }
示例#2
0
function getUnreadMessages($inUserID)
{
    if (isset($_SESSION['userid'])) {
        $messages = array();
        $messageid;
        $dbhandle = db_connect();
        $stmt = $dbhandle->stmt_init();
        //Get all messages from/to this user that are unread
        $stmt->prepare("SELECT MessageID, Time FROM Messages WHERE SenderID=? AND ReceiverID=? AND ReadFlag=0 ORDER BY Time");
        $stmt->bind_param("ii", $inUserID, $_SESSION['userid']);
        $stmt->execute();
        $stmt->store_result();
        $stmt->bind_result($messageid, $temptime);
        //Add each resulting message to the array to return
        //Mark the message as read
        while ($stmt->fetch()) {
            $message = new message();
            $message->getFromDB($messageid);
            $message->markRead();
            array_push($messages, $message);
        }
        $stmt->close();
        $dbhandle->close();
        return $messages;
    }
}
示例#3
0
function module_message_edit()
{
    global $global, $smarty;
    $obj = new message();
    $obj->set_where('mes_id = ' . $global['id']);
    $smarty->assign('message', $obj->get_one());
}
 public function removeava()
 {
     if (isset($_GET['avi_id']) && isset($_GET['cli_id'])) {
         $idAvis = $_GET['avi_id'];
         $idUser = $_GET['cli_id'];
         $st = db()->prepare("DELETE FROM T_J_AVISABUSIF_AVA WHERE avi_id=:avi and cli_id=:cli");
         $st->bindParam(':avi', $idAvis);
         $st->bindParam(':cli', $idUser);
         $st->execute();
         $m = new message();
         $m->setFlash("L'avis abusif a été ignoré", "success");
         header("Refresh:0; url=../Sprint/?r=src");
         //            $id = $_GET['avi_id'];
         //            $avis = new T_E_AVIS_AVI($id);
         //            if($avis->avi_id == null){
         //                $m = new message();
         //                $m->setFlash("Cet avis n'existe pas");
         //                header("Refresh:0; url=../Sprint/?r=src");
         //            } else {
         //                $avis->deleteAllAva();
         //                $m = new message();
         //                $m->setFlash("l'avis a bien été supprimé","success");
         //                header("Refresh:0; url=../Sprint/?r=src");
         //
         //            }
     }
 }
 public static function addPhoto($jeu_id, $pho_url)
 {
     $st = db()->prepare("insert into t_e_photo_pho(jeu_id,pho_url) values(" . $jeu_id . ",'" . $pho_url . "')");
     $st->execute();
     $m = new message();
     $m->setFlash("Upload réussi", "success");
 }
 public static function addVideo($jeu_id, $vid_url)
 {
     $st = db()->prepare("insert into t_e_video_vid(jeu_id,vid_url) values(" . $jeu_id . ",'" . $vid_url . "')");
     $st->execute();
     $m = new message();
     $m->setFlash("Upload réussi", "success");
 }
示例#7
0
 private function addMessages($project_id, $messagesArray)
 {
     $addMessage = new message();
     $userObj = new user();
     foreach ($messagesArray->{'post'} as $message) {
         $insid = 0;
         $title = $message->{'title'};
         $text = $message->{'body'};
         $uid = $message->{'author-id'};
         $user = $this->peopleHash["{$uid}"];
         $userProfile = $userObj->getProfile($user);
         $username = $userProfile["name"];
         $replies = $message->{'comments'};
         $insid = $addMessage->add($project_id, $title, $text, "", $user, $username, 0, 0);
         if ($insid > 0) {
             ++$this->msgCount;
             if (count($replies) > 0) {
                 foreach ($replies->{'comment'} as $reply) {
                     ++$this->msgCount;
                     $replytext = $reply->{"body"};
                     $ruid = $reply->{'author-id'};
                     $ruser = $this->peopleHash["{$ruid}"];
                     $ruserProfile = $userObj->getProfile($ruser);
                     $rusername = $ruserProfile["name"];
                     $addMessage->add($project_id, $replytext, $replytext, "", $ruser, $rusername, $insid, 0);
                 }
             }
         }
     }
 }
 public function signal()
 {
     if (isset($_GET['id_avi'])) {
         if (!isset($_SESSION['user'])) {
             $m = new message();
             $m->setFlash("Vous devez etre connecté pour signaler un commentaire");
             $c = new T_E_CLIENT_CLIController();
             $c->render("login");
         } else {
             $allAvas = T_J_AVISABUSIF_AVA::FindAllByIdAvis($_GET['id_avi']);
             $alreadySignal = false;
             foreach ($allAvas as $ava) {
                 if ($ava->T_E_CLIENT_CLI->cli_id == $_SESSION['user']->cli_id) {
                     $alreadySignal = true;
                 }
             }
             if ($alreadySignal) {
                 $m = new message();
                 $m->setFlash("Vous avez déja signaler ce commentaire, merci d'attendre que le service vente prenne en compte votre requête");
                 header("Refresh:0; url=../Sprint/?r=jeu");
             } else {
                 T_J_AVISABUSIF_AVA::insertNewAva($_GET['id_avi'], $_SESSION['user']->cli_id);
                 $m = new message();
                 $m->setFlash("Le commentaire a bien été signalé", 'success');
                 header("Refresh:0; url=../Sprint/?r=jeu");
             }
         }
     }
 }
示例#9
0
function module_message_main()
{
    global $global, $smarty;
    $obj = new message();
    $obj->set_page_size(5);
    $obj->set_page_num($global['page']);
    $sheet = $obj->get_sheet();
    set_link($obj->get_page_sum());
    $smarty->assign('message', $sheet);
}
示例#10
0
 public function xsend()
 {
     $message_configs['appid'] = $this->appid;
     $message_configs['appkey'] = $this->appkey;
     if ($this->sign_type != '') {
         $message_configs['sign_type'] = $this->sign_type;
     }
     $message = new message($message_configs);
     return $message->xsend($this->buildRequest());
 }
 public function unsubscribe()
 {
     $message_configs['appid'] = $this->appid;
     $message_configs['appkey'] = $this->appkey;
     if ($this->sign_type != '') {
         $message_configs['sign_type'] = $this->sign_type;
     }
     $addressbook = new message($message_configs);
     return $addressbook->unsubscribe($this->buildRequest());
 }
 public function removeRelay()
 {
     if (isset($_SESSION['user'])) {
         if (isset($_GET['rel_id'])) {
             T_J_RELAISCLIENT_REC::removeRelayClient($_SESSION['user']->cli_id, $_GET['rel_id']);
             $m = new message();
             $m->setFlash('Le relais a bien été supprimé', 'success');
             header("Refresh:0; url=../Sprint/?r=cli/myRelay");
         }
     }
 }
示例#13
0
 public function send($template, $data, $callback)
 {
     $builder = $this->mailer->MessageBuilder();
     $message = new message($builder);
     $message->from($this->config->get('mail.from'));
     $this->view->appendData($data);
     $message->body($this->view->render($template));
     call_user_func($callback, $message);
     $domain = $this->config->get('mail.domain');
     $this->mailer->post("{$domain}/messages", $builder->getMessage());
 }
示例#14
0
 public static function shutdown()
 {
     $error = error_get_last();
     if ($error['message']) {
         $message = new message($error['message'], self::$levels['fatal']);
         $message->setFile($error['file']);
         $message->setLine($error['line']);
     } else {
         $message = new message("Exit", self::$levels['notice']);
     }
     self::_log($message);
 }
示例#15
0
 private function show_mail($mail)
 {
     $message = new message($mail["message"]);
     $mail["message"] = $message->unescaped_output();
     if ($mail["to_user_id"] == $this->user->id) {
         $this->title = "Inbox";
     } else {
         $this->title = "Sentbox";
         $back = "/sent";
     }
     $actions = show_boolean($mail["to_user_id"] == $this->user->id);
     $this->output->record($mail, "mail", array("actions" => $actions, "back" => $back));
 }
示例#16
0
文件: deal.php 项目: jechiy/xiu-cms
function reply_mes()
{
    global $smarty, $lang;
    $mes_id = post('mes_id');
    $mes_reply = post('mes_reply');
    $obj = new message();
    $obj->set_value('mes_reply', $mes_reply);
    $obj->set_where("mes_id = {$mes_id}");
    $obj->edit();
    $smarty->assign('info_text', '回复留言成功');
    $smarty->assign('link_text', $lang['return_list']);
    $smarty->assign('link_href', url(array('channel' => 'service', 'mod' => 'message_sheet')));
}
 public function findBySelection()
 {
     if (isset($_POST["id_console"])) {
         $id_console = $_POST["id_console"];
         $data = T_E_JEUVIDEO_JEU::findBySelection($id_console);
         if ($data == null) {
             $m = new message();
             $m->setFlash("Aucun résultat pour cette recherche.", "warning");
         }
         $this->render("find", T_E_JEUVIDEO_JEU::findBySelection($id_console));
     } else {
         $this->render("find");
     }
 }
 public function index()
 {
     $form = $this->_get_form();
     if (request::method() == "post") {
         access::verify_csrf();
         if ($form->validate()) {
             module::set_var("strip_exif", "exiv_path", $_POST['exiv_path']);
             if ($_POST['exif_tags'] != "") {
                 module::set_var("strip_exif", "exif_remove", isset($_POST['exif_remove']) ? $_POST['exif_remove'] : false);
                 module::set_var("strip_exif", "exif_tags", $_POST['exif_tags']);
             } else {
                 module::set_var("strip_exif", "exif_remove", false);
                 module::set_var("strip_exif", "exif_tags", self::$defExifTags);
             }
             if ($_POST['iptc_tags'] != "") {
                 module::set_var("strip_exif", "iptc_remove", isset($_POST['iptc_remove']) ? $_POST['iptc_remove'] : false);
                 module::set_var("strip_exif", "iptc_tags", $_POST['iptc_tags']);
             } else {
                 module::set_var("strip_exif", "iptc_remove", false);
                 module::set_var("strip_exif", "iptc_tags", self::$defIptcTags);
             }
             if (isset($_POST['verbose'])) {
                 module::set_var("strip_exif", "verbose", $_POST['verbose']);
             }
             message::success(t("Settings have been saved"));
             url::redirect("admin/strip_exif");
         } else {
             message::error(t("There was a problem with the submitted form. Please check your values and try again."));
         }
     }
     print $this->_get_view();
 }
 public function handler()
 {
     access::verify_csrf();
     $form = $this->_get_form();
     if ($form->validate()) {
         module::set_var("social_share", "general_impage_only", $form->general_settings->general_impage_only->value);
         module::set_var("social_share", "facebook_share_enabled", $form->facebook_share_settings->facebook_share_enabled->value);
         module::set_var("social_share", "facebook_share_layout", $form->facebook_share_settings->facebook_share_layout->value);
         module::set_var("social_share", "facebook_share_link_text", $form->facebook_share_settings->facebook_share_link_text->value);
         module::set_var("social_share", "facebook_like_enabled", $form->facebook_like_settings->facebook_like_enabled->value);
         module::set_var("social_share", "facebook_like_appId", $form->facebook_like_settings->facebook_like_appId->value);
         module::set_var("social_share", "facebook_like_adminId", $form->facebook_like_settings->facebook_like_adminId->value);
         module::set_var("social_share", "facebook_like_site_name", $form->facebook_like_settings->facebook_like_site_name->value);
         module::set_var("social_share", "facebook_like_code_type", $form->facebook_like_settings->facebook_like_code_type->value);
         module::set_var("social_share", "facebook_like_show_faces", $form->facebook_like_settings->facebook_like_show_faces->value, true);
         module::set_var("social_share", "facebook_like_send", $form->facebook_like_settings->facebook_like_send->value, true);
         module::set_var("social_share", "facebook_like_action", $form->facebook_like_settings->facebook_like_action->value);
         module::set_var("social_share", "facebook_like_layout", $form->facebook_like_settings->facebook_like_layout->value);
         module::set_var("social_share", "google_enabled", $form->google_settings->google_enabled->value);
         module::set_var("social_share", "google_size", $form->google_settings->google_size->value);
         module::set_var("social_share", "google_annotation", $form->google_settings->google_annotation->value);
         module::set_var("social_share", "pinterest_enabled", $form->pinterest_settings->pinterest_enabled->value);
         module::set_var("social_share", "pinterest_count_location", $form->pinterest_settings->pinterest_count_location->value);
         module::set_var("social_share", "twitter_enabled", $form->twitter_settings->twitter_enabled->value);
         module::set_var("social_share", "twitter_count_location", $form->twitter_settings->twitter_count_location->value);
         module::set_var("social_share", "twitter_size", $form->twitter_settings->twitter_size->value);
         message::success(t("Your settings have been saved."));
         url::redirect("admin/social_share");
     }
     print $this->_get_view($form);
 }
 public function saveprefs()
 {
     // Prevent Cross Site Request Forgery
     access::verify_csrf();
     // Figure out which boxes where checked
     $dlLinks_array = Input::instance()->post("DownloadLinkOptions");
     $fButton = false;
     $download_original_button = false;
     for ($i = 0; $i < count($dlLinks_array); $i++) {
         if ($dlLinks_array[$i] == "fButton") {
             $fButton = true;
         }
     }
     if (module::is_active("keeporiginal")) {
         $keeporiginal_array = Input::instance()->post("DownloadOriginalOptions");
         for ($i = 0; $i < count($keeporiginal_array); $i++) {
             if ($keeporiginal_array[$i] == "DownloadOriginalImage") {
                 $download_original_button = true;
             }
         }
         module::set_var("downloadfullsize", "DownloadOriginalImage", $download_original_button);
     }
     // Save Settings.
     module::set_var("downloadfullsize", "fButton", $fButton);
     message::success(t("Your Selection Has Been Saved."));
     // Load Admin page.
     $view = new Admin_View("admin.html");
     $view->content = new View("admin_downloadfullsize.html");
     $view->content->downloadlinks_form = $this->_get_admin_form();
     print $view;
 }
示例#21
0
 public function _update($user)
 {
     if ($user->guest || $user->id != user::active()->id) {
         access::forbidden();
     }
     $form = user::get_edit_form($user);
     $valid = $form->validate();
     if ($valid) {
         $user->full_name = $form->edit_user->full_name->value;
         if ($form->edit_user->password->value) {
             $user->password = $form->edit_user->password->value;
         }
         $user->email = $form->edit_user->email->value;
         $user->url = $form->edit_user->url->value;
         if ($form->edit_user->locale) {
             $desired_locale = $form->edit_user->locale->value;
             $user->locale = $desired_locale == "none" ? null : $desired_locale;
         }
         $user->save();
         message::success(t("User information updated."));
         print json_encode(array("result" => "success", "resource" => url::site("users/{$user->id}")));
     } else {
         print json_encode(array("result" => "error", "form" => $form->__toString()));
     }
 }
示例#22
0
 /**
  * @see REST_Controller::_update($resource)
  */
 public function _update($photo)
 {
     access::verify_csrf();
     access::required("view", $photo);
     access::required("edit", $photo);
     $form = photo::get_edit_form($photo);
     if ($valid = $form->validate()) {
         if ($form->edit_photo->filename->value != $photo->name) {
             // Make sure that there's not a conflict
             if (Database::instance()->from("items")->where("parent_id", $photo->parent_id)->where("id <>", $photo->id)->where("name", $form->edit_photo->filename->value)->count_records()) {
                 $form->edit_photo->filename->add_error("conflict", 1);
                 $valid = false;
             }
         }
     }
     if ($valid) {
         $photo->title = $form->edit_photo->title->value;
         $photo->description = $form->edit_photo->description->value;
         $photo->rename($form->edit_photo->filename->value);
         $photo->save();
         module::event("photo_edit_form_completed", $photo, $form);
         log::success("content", "Updated photo", "<a href=\"photos/{$photo->id}\">view</a>");
         message::success(t("Saved photo %photo_title", array("photo_title" => p::clean($photo->title))));
         print json_encode(array("result" => "success", "location" => url::site("photos/{$photo->id}")));
     } else {
         print json_encode(array("result" => "error", "form" => $form->__toString()));
     }
 }
 public function saveprefs()
 {
     // Prevent Cross Site Request Forgery
     access::verify_csrf();
     $form = $this->_get_admin_form();
     if ($form->validate()) {
         Kohana_Log::add("error", print_r($form, 1));
         module::set_var("tag_albums", "tag_page_title", $form->Tag_Albums_Tag_Sort->tag_page_title->value);
         module::set_var("tag_albums", "tag_index", $form->Tag_Albums_Tag_Sort->tag_index->value);
         module::set_var("tag_albums", "tag_index_scope", count($form->Tag_Albums_Tag_Sort->tag_index_scope->value));
         module::set_var("tag_albums", "tag_index_filter_top", count($form->Tag_Albums_Tag_Sort->tag_index_filter_top->value));
         module::set_var("tag_albums", "tag_index_filter_bottom", count($form->Tag_Albums_Tag_Sort->tag_index_filter_bottom->value));
         module::set_var("tag_albums", "tag_sort_by", $form->Tag_Albums_Tag_Sort->tag_sort_by->value);
         module::set_var("tag_albums", "tag_sort_direction", $form->Tag_Albums_Tag_Sort->tag_sort_direction->value);
         module::set_var("tag_albums", "subalbum_sort_by", $form->Tag_Albums_Tag_Item_Sort->subalbum_sort_by->value);
         module::set_var("tag_albums", "subalbum_sort_direction", $form->Tag_Albums_Tag_Item_Sort->subalbum_sort_direction->value);
         message::success(t("Your settings have been saved."));
         url::redirect("admin/tag_albums");
     }
     // Else show the page with errors
     $view = new Admin_View("admin.html");
     $view->content = new View("admin_tag_albums.html");
     $view->content->tag_albums_form = $form;
     print $view;
 }
 public function save($module_name, $var_name)
 {
     access::verify_csrf();
     module::set_var($module_name, $var_name, Input::instance()->post("value"));
     message::success(t("Saved value for %var (%module_name)", array("var" => $var_name, "module_name" => $module_name)));
     json::reply(array("result" => "success"));
 }
 public function activate()
 {
     access::verify_csrf();
     $post = new Validation($_POST);
     $post->add_rules("activate_users", "required");
     $post->add_rules("activate", "alpha_numeric");
     if ($post->validate()) {
         $names = array();
         if (!empty($post->activate)) {
             foreach ($post->activate as $id) {
                 $user = register::create_new_user($id);
                 $names[] = $user->name;
             }
             message::success(t("Activated %users.", array("users" => implode(", ", $names))));
         }
         $count = ORM::factory("pending_user")->where("state", "!=", 2)->count_all();
         if ($count == 0) {
             site_status::clear("pending_user_registrations");
         }
         url::redirect("admin/register");
     }
     list($form, $errors) = $this->_get_form();
     $form = array_merge($form, $post->as_array());
     $errors = array_merge($errors, $post->errors());
     print $this->_get_admin_view($form, $errors);
 }
示例#26
0
 public static function deleteFile($id)
 {
     $values = [];
     for ($i = 1; $i <= 10; $i++) {
         $values[] = '`media' . $i . '` = ' . $id;
     }
     for ($i = 1; $i <= 10; $i++) {
         $values[] = '`medialist' . $i . '` LIKE "%|' . $id . '|%"';
     }
     $sql = sql::factory();
     $sql->query('SELECT id FROM ' . sql::table('structure_area') . ' WHERE ' . implode(' OR ', $values))->result();
     if ($sql->num()) {
         echo message::warning(lang::get('file_in_use'));
     } else {
         $sql = sql::factory();
         $sql->setTable('media');
         $sql->setWhere('id=' . $id);
         $sql->select('filename');
         $sql->result();
         if (unlink(dir::media($sql->get('filename')))) {
             $sql->delete();
             return message::success(lang::get('file_deleted'), true);
         } else {
             return message::warning(sprintf(lang::get('file_not_deleted'), dyn::get('hp_url'), $sql->get('filename')), true);
         }
     }
 }
示例#27
0
 public function action_index()
 {
     $type = $this->request->param('type');
     $search = Security::xss_clean(Arr::get($_POST, 'search', ''));
     if ($post = $this->request->post()) {
         $title = Security::xss_clean(Arr::get($post, 'title1', ''));
         if ($title != '') {
             $titles = ORM::factory('Specprojecttitle', $type);
             $titles->title = $title;
             $titles->save();
             message::success('Успешно изменено');
             $this->redirect('manage/specprojects/' . $type);
         } else {
             message::error('Поле не может быть пустым.');
             $this->redirect('manage/specprojects/' . $type);
         }
     }
     if (!empty($search)) {
         $this->redirect('manage/specprojects/' . $type . '/search/' . $search);
     }
     $public = ORM::factory('Publication')->join('spec_projects', 'LEFT')->on('publication.id', '=', 'spec_projects.id_publication')->select('publication.*', 'spec_projects.spec_published', 'spec_projects.in_slider', 'spec_projects.in_middle', 'spec_projects.in_bottom')->where('spec_projects.sproject', '=', $type)->order_by('order', 'desc')->order_by('date', 'DESC');
     $paginate = Paginate::factory($public)->paginate(NULL, NULL, 10)->render();
     $public = $public->find_all();
     $title = ORM::factory('Specprojecttitle', $type)->title;
     $this->set('title', $title);
     $this->set('list', $public)->set('type', $type);
     $this->set('paginate', $paginate);
 }
示例#28
0
 public function save()
 {
     access::verify_csrf();
     $changes->activate = array();
     $changes->deactivate = array();
     $activated_names = array();
     $deactivated_names = array();
     foreach (module::available() as $module_name => $info) {
         if ($info->locked) {
             continue;
         }
         $desired = $this->input->post($module_name) == 1;
         if ($info->active && !$desired && module::is_active($module_name)) {
             $changes->deactivate[] = $module_name;
             $deactivated_names[] = $info->name;
             module::deactivate($module_name);
         } else {
             if (!$info->active && $desired && !module::is_active($module_name)) {
                 $changes->activate[] = $module_name;
                 $activated_names[] = $info->name;
                 module::install($module_name);
                 module::activate($module_name);
             }
         }
     }
     module::event("module_change", $changes);
     // @todo this type of collation is questionable from a i18n perspective
     if ($activated_names) {
         message::success(t("Activated: %names", array("names" => join(", ", $activated_names))));
     }
     if ($deactivated_names) {
         message::success(t("Deactivated: %names", array("names" => join(", ", $deactivated_names))));
     }
     url::redirect("admin/modules");
 }
 public function saveprefs()
 {
     // Process the admin form.
     // Prevent Cross Site Request Forgery
     access::verify_csrf();
     // Save user specified settings to the database.
     $str_slideshow_url = Input::instance()->post("slideshow_url");
     module::set_var("minislideshow", "slideshow_url", $str_slideshow_url);
     $str_slideshow_shuffle = Input::instance()->post("shuffle");
     module::set_var("minislideshow", "shuffle", $str_slideshow_shuffle);
     $str_slideshow_dropshadow = Input::instance()->post("dropshadow");
     module::set_var("minislideshow", "dropshadow", $str_slideshow_dropshadow);
     $str_slideshow_show_title = Input::instance()->post("show_title");
     module::set_var("minislideshow", "show_title", $str_slideshow_show_title);
     $str_slideshow_trans_in_type = Input::instance()->post("trans_in_type");
     module::set_var("minislideshow", "trans_in_type", $str_slideshow_trans_in_type);
     $str_slideshow_trans_out_type = Input::instance()->post("trans_out_type");
     module::set_var("minislideshow", "trans_out_type", $str_slideshow_trans_out_type);
     $str_slideshow_mask = Input::instance()->post("mask");
     module::set_var("minislideshow", "mask", $str_slideshow_mask);
     $str_slideshow_use_full_image = Input::instance()->post("use_full_image");
     module::set_var("minislideshow", "use_full_image", $str_slideshow_use_full_image);
     $str_slideshow_delay = Input::instance()->post("delay");
     module::set_var("minislideshow", "delay", $str_slideshow_delay);
     // Display a success message and load the admin screen.
     message::success(t("Your Settings Have Been Saved."));
     $view = new Admin_View("admin.html");
     $view->content = new View("admin_minislideshow.html");
     $view->content->minislideshow_form = $this->_get_admin_form();
     print $view;
 }
示例#30
0
 public function save()
 {
     access::verify_csrf();
     $form = theme::get_edit_form_admin();
     if ($form->validate()) {
         module::set_var("gallery", "page_size", $form->edit_theme->page_size->value);
         $thumb_size = $form->edit_theme->thumb_size->value;
         $thumb_dirty = false;
         if (module::get_var("gallery", "thumb_size") != $thumb_size) {
             graphics::remove_rule("gallery", "thumb", "gallery_graphics::resize");
             graphics::add_rule("gallery", "thumb", "gallery_graphics::resize", array("width" => $thumb_size, "height" => $thumb_size, "master" => Image::AUTO), 100);
             module::set_var("gallery", "thumb_size", $thumb_size);
         }
         $resize_size = $form->edit_theme->resize_size->value;
         $resize_dirty = false;
         if (module::get_var("gallery", "resize_size") != $resize_size) {
             graphics::remove_rule("gallery", "resize", "gallery_graphics::resize");
             graphics::add_rule("gallery", "resize", "gallery_graphics::resize", array("width" => $resize_size, "height" => $resize_size, "master" => Image::AUTO), 100);
             module::set_var("gallery", "resize_size", $resize_size);
         }
         module::set_var("gallery", "header_text", $form->edit_theme->header_text->value);
         module::set_var("gallery", "footer_text", $form->edit_theme->footer_text->value);
         module::set_var("gallery", "show_credits", $form->edit_theme->show_credits->value);
         message::success(t("Updated theme details"));
         url::redirect("admin/theme_options");
     } else {
         $view = new Admin_View("admin.html");
         $view->content = $form;
         print $view;
     }
 }