diff options
| author | Tim Almdal <tnalmdal@shaw.ca> | 2008-12-11 17:20:55 +0000 | 
|---|---|---|
| committer | Tim Almdal <tnalmdal@shaw.ca> | 2008-12-11 17:20:55 +0000 | 
| commit | e1f2a5d4e60f431e0a94c998afc026f1136fb26b (patch) | |
| tree | 76d05837701cbe78a6a2b3a845fd05cf971f4693 /modules/local_import/controllers | |
| parent | 773d7024eb57765822e345380be7682ce5f14d17 (diff) | |
1) Begins the creation of the local import module by adding the administation component to the scaffolding Actions tab.  The importing functionality will follow shortly.
2) Defines a routining pattern for module administration controllers.  URI's of the form admin/module/method/parameters gets remapped into module_admin/method/parameters. This will result in the lookup of the the controller Module_Admin_Controller
Diffstat (limited to 'modules/local_import/controllers')
| -rw-r--r-- | modules/local_import/controllers/local_import_admin.php | 56 | 
1 files changed, 56 insertions, 0 deletions
| diff --git a/modules/local_import/controllers/local_import_admin.php b/modules/local_import/controllers/local_import_admin.php new file mode 100644 index 00000000..18733c22 --- /dev/null +++ b/modules/local_import/controllers/local_import_admin.php @@ -0,0 +1,56 @@ +<?php defined("SYSPATH") or die("No direct script access."); +/** + * Gallery - a web based photo album viewer and editor + * Copyright (C) 2000-2008 Bharat Mediratta + * + * 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 Local_Import_Admin_Controller extends Controller { +  public function add_path() { +    $form = local_import::get_admin_form(); +    $paths = unserialize(module::get_var("local_import", "authorized_paths")); +    if ($form->validate()) { +      $paths[$form->path->value] = 1; +      module::set_var("local_import", "authorized_paths", serialize($paths)); +    } +    $view = new View("local_import_dir_list.html"); +    $view->paths = array_keys($paths); + +    print $view; +  } + +  public function remove() { +    $path = $this->input->post("path"); +    $paths = unserialize(module::get_var("local_import", "authorized_paths")); +    unset($paths[$path]); +    module::set_var("local_import", "authorized_paths", serialize($paths)); + +    $view = new View("local_import_dir_list.html"); +    $view->paths = array_keys($paths); + +    print $view; +  } + +  public function autocomplete() { +    $files = array(); + +    $path_prefix = $this->input->get("q"); +    foreach (glob("{$path_prefix}*") as $file) { +      $files[] = $file; +    } + +    print implode("\n", $files); +  } +}
\ No newline at end of file | 
