2009-06-20 20:52:47 +00:00
< ? php defined ( " SYSPATH " ) or die ( " No direct script access. " );
/**
* Gallery - a web based photo album viewer and editor
2012-02-27 18:04:35 +00:00
* Copyright ( C ) 2000 - 2012 Bharat Mediratta
2009-06-20 20:52:47 +00:00
*
* This program is free software ; you can redistribute it and / or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation ; either version 2 of the License , or ( at
* your option ) any later version .
*
* This program is distributed in the hope that it will be useful , but
* WITHOUT ANY WARRANTY ; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE . See the GNU
* General Public License for more details .
*
* You should have received a copy of the GNU General Public License
* along with this program ; if not , write to the Free Software
* Foundation , Inc . , 51 Franklin Street - Fifth Floor , Boston , MA 02110 - 1301 , USA .
*/
class Admin_DownloadFullsize_Controller extends Admin_Controller {
public function index () {
// Generate a new 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 ;
}
public function saveprefs () {
2009-06-20 23:29:01 +00:00
// Prevent Cross Site Request Forgery
2009-06-20 20:52:47 +00:00
access :: verify_csrf ();
// Figure out which boxes where checked
2009-06-20 23:29:01 +00:00
$dlLinks_array = Input :: instance () -> post ( " DownloadLinkOptions " );
2009-06-20 20:52:47 +00:00
$fButton = false ;
2009-09-16 23:08:16 +00:00
$download_original_button = false ;
2009-06-20 23:29:01 +00:00
for ( $i = 0 ; $i < count ( $dlLinks_array ); $i ++ ) {
2009-06-20 20:52:47 +00:00
if ( $dlLinks_array [ $i ] == " fButton " ) {
$fButton = true ;
}
}
2009-09-16 23:08:16 +00:00
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 );
}
2009-06-20 20:52:47 +00:00
// 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 ;
}
private function _get_admin_form () {
// Make a new Form.
$form = new Forge ( " admin/downloadfullsize/saveprefs " , " " , " post " ,
2009-10-04 20:40:59 +00:00
array ( " id " => " g-download-fullsize-adminForm " ));
2009-06-20 20:52:47 +00:00
// Make an array for the different types of download links.
2009-12-30 06:45:47 +00:00
$linkOptions [ " fButton " ] = array ( t ( " Show Floppy Disk Picture Link " ), module :: get_var ( " downloadfullsize " , " fButton " ));
2009-06-20 20:52:47 +00:00
// Setup a few checkboxes on the form.
$add_links = $form -> group ( " DownloadLinks " );
$add_links -> checklist ( " DownloadLinkOptions " )
-> options ( $linkOptions );
2009-09-16 23:08:16 +00:00
if ( module :: is_active ( " keeporiginal " )) {
$KeepOriginalOptions [ " DownloadOriginalImage " ] = array ( t ( " Allow visitors to download the original image when available? " ), module :: get_var ( " downloadfullsize " , " DownloadOriginalImage " ));
$keeporiginal_group = $form -> group ( " KeepOriginalPrefs " )
-> label ( t ( " KeepOriginal Preferences " ));
$keeporiginal_group -> checklist ( " DownloadOriginalOptions " )
-> options ( $KeepOriginalOptions );
}
2009-06-20 20:52:47 +00:00
// Add a save button to the form.
2009-09-16 23:08:16 +00:00
$form -> submit ( " SaveLinks " ) -> value ( t ( " Save " ));
2009-06-20 20:52:47 +00:00
// Return the newly generated form.
return $form ;
}
}