static function populateForm($form)
 {
     $form->configure->email->value(favourites_configuration::getEmailAddress());
     $form->configure->fromemail->value(favourites_configuration::getFromEmailAddress());
     $form->configure->email_admin->checked(favourites_configuration::isEmailAdmin());
     $form->configure->users_only->checked(favourites_configuration::isUsersOnly());
     $form->configure->owner->value(favourites_configuration::getOwner());
     $form->configure->email_template->value(favourites_configuration::getEmailTemplate());
     $form->configure->select_allow->selected(favourites_configuration::getSelectAllow());
 }
 static function thumb_top($theme, $item)
 {
     if (favourites_configuration::isUsersOnly() && identity::active_user()->name == "guest") {
         return;
     }
     if ($item->type == "album" && favourites_configuration::canSelectAlbums() || $item->type != "album" && favourites_configuration::canSelectItems()) {
         $view = new View("add_to_favourites.html");
         $view->item = $item;
         $view->favourites = Favourites::getOrCreate();
         return $view->render();
     }
 }
 public function save_favourites($id)
 {
     access::verify_csrf();
     $form = self::getSaveForm();
     $valid = $form->validate();
     $name = $form->save->fullname->value;
     $email_address = $form->save->email->value;
     $comments = $form->save->details->value;
     if (!isset($email_address) || strlen($email_address) == 0) {
         $valid = false;
         $form->save->email->add_error("required", 1);
     }
     if (!isset($name) || strlen($name) == 0) {
         $valid = false;
         $form->save->fullname->add_error("required", 1);
     }
     if (favourites_configuration::isUsersOnly() && identity::active_user()->name == "guest") {
         $valid = false;
         $form->save->fullname->add_error("not_logged_in", 1);
     }
     if ($valid) {
         $favourites = Favourites::getOrCreate();
         $from = "From: " . favourites_configuration::getFromEmailAddress();
         if (favourites_configuration::isEmailAdmin()) {
             $admin_email = $name . " has chosen following photo as his or her favourites.\n";
             // create the order items
             $items = ORM::factory("item")->where("id", "in", $favourites->contents)->find_all();
             foreach ($items->contents as $id => $item) {
                 $admin_email = $admin_email . "\n            " . $item->title . " - " . $item->url() . "";
             }
             $admin_email = $admin_email . "\n you can view this favourite list at \n" . $favourites->getUrl() . "\n\n He or she has included the additional comments. \n" . $comments . "\n You can e-mail him or her with the following e-mail address " . $email_address;
             mail(favourites_configuration::getEmailAddress(), $name . "'s favourites.", $admin_email, $from);
         }
         $email = favourites_configuration::replaceStrings(favourites_configuration::getEmailTemplate(), array("name" => $name, "comments" => $comments, "url" => $favourites->getUrl(), "owner" => favourites_configuration::getOwner()));
         mail($email_address, $name . "'s Favourites", $email, $from);
         json::reply(array("result" => "success", "location" => url::site("favourites")));
         return;
     }
     json::reply(array("result" => "error", "html" => (string) $form));
 }