summaryrefslogtreecommitdiffstats
path: root/modules/sysconfig/addmodule.inc.php
diff options
context:
space:
mode:
authorSimon Rettberg2016-05-03 19:03:09 +0200
committerSimon Rettberg2016-05-03 19:03:09 +0200
commit50404f3b23b7fd6aeae4c9d2f6df0ea25e984e66 (patch)
tree05e99fdffa696434960d7c77966c0bc36d6339e8 /modules/sysconfig/addmodule.inc.php
parentSecond half of merge.... (diff)
downloadslx-admin-50404f3b23b7fd6aeae4c9d2f6df0ea25e984e66.tar.gz
slx-admin-50404f3b23b7fd6aeae4c9d2f6df0ea25e984e66.tar.xz
slx-admin-50404f3b23b7fd6aeae4c9d2f6df0ea25e984e66.zip
WIP
Diffstat (limited to 'modules/sysconfig/addmodule.inc.php')
-rw-r--r--modules/sysconfig/addmodule.inc.php180
1 files changed, 0 insertions, 180 deletions
diff --git a/modules/sysconfig/addmodule.inc.php b/modules/sysconfig/addmodule.inc.php
deleted file mode 100644
index bcd8e796..00000000
--- a/modules/sysconfig/addmodule.inc.php
+++ /dev/null
@@ -1,180 +0,0 @@
-<?php
-
-/**
- * Addmodule subpage base - makes sure
- * we have the two required methods preprocess and render
- */
-abstract class AddModule_Base
-{
-
- /**
- * Holds the instance for the currently executing step
- * @var \AddModule_Base
- */
- private static $instance = false;
-
- /**
- * Instance of ConfigModule we're editing. False if not editing but creating.
- * @var \ConfigModule
- */
- protected $edit = false;
-
- /**
- *
- * @param type $step
- * @return \AddModule_Base
- */
- public static function setStep($step)
- {
- if (empty($step) || !class_exists($step) || get_parent_class($step) !== 'AddModule_Base') {
- Message::addError('invalid-action', $step);
- Util::redirect('?do=SysConfig');
- }
- self::$instance = new $step();
- if (Request::any('edit')) {
- self::$instance->edit = ConfigModule::get(Request::any('edit'));
- if (self::$instance->edit === false)
- Util::traceError('Invalid module id for editing');
- if (!preg_match('/^' . self::$instance->edit->moduleType() . '_/', $step))
- Util::traceError('Module to edit is of different type!');
- Util::addRedirectParam('edit', self::$instance->edit->id());
- }
- }
-
- protected function tmError()
- {
- Message::addError('taskmanager-error');
- Util::redirect('?do=SysConfig');
- }
-
- protected function taskError($status)
- {
- if (isset($status['data']['error'])) {
- $error = $status['data']['error'];
- } elseif (isset($status['statusCode'])) {
- $error = $status['statusCode'];
- } else {
- $error = Dictionary::translate('lang_unknwonTaskManager');
- }
- Message::addError('task-error', $error);
- Util::redirect('?do=SysConfig');
- }
-
- /**
- * Called before any HTML rendering happens, so you can
- * pepare stuff, validate input, and optionally redirect
- * early if something is wrong, or you received post
- * data etc.
- */
- protected function preprocessInternal()
- {
- // void
- }
-
- /**
- * Do page rendering.
- */
- protected function renderInternal()
- {
- // void
- }
-
- /**
- * Handle ajax stuff
- */
- protected function ajaxInternal()
- {
- // void
- }
-
- public static function preprocess()
- {
- if (self::$instance === false) {
- Util::traceError('No step instance yet');
- }
- self::$instance->preprocessInternal();
- }
-
- public static function render()
- {
- if (self::$instance === false) {
- Util::traceError('No step instance yet');
- }
- if (self::$instance->edit !== false)
- Message::addInfo('replacing-module', self::$instance->edit->title());
- self::$instance->renderInternal();
- }
-
- public static function ajax()
- {
- if (self::$instance === false) {
- Util::traceError('No step instance yet');
- }
- self::$instance->ajaxInternal();
- }
-
-}
-
-/**
- * Start dialog for adding module. Here the user
- * selects which kind of module they want to add.
- */
-class AddModule_Start extends AddModule_Base
-{
-
- protected function renderInternal()
- {
- $title = $order = array();
- $mods = ConfigModule::getList();
- foreach ($mods as $module) {
- $title[] = $module['title'];
- $order[] = $module['sortOrder'];
- }
- array_multisort($order, SORT_ASC, $title, SORT_ASC, $mods);
- Render::addDialog(Dictionary::translate('lang_moduleAdd'), false, 'start', array('modules' => array_values($mods)));
- }
-
-}
-
-/*
- * Helper functions to set/get a batch of vars from/to post variables or a module
- */
-
-/**
- *
- * @param \ConfigModule $module
- * @param array $array
- * @param array $keys
- */
-function moduleToArray($module, &$array, $keys)
-{
- foreach ($keys as $key) {
- $array[$key] = $module->getData($key);
- }
-}
-
-/**
- *
- * @param \ConfigModule $module
- * @param array $array
- * @param array $keys
- */
-function arrayToModule($module, $array, $keys)
-{
- foreach ($keys as $key) {
- $module->setData($key, $array[$key]);
- }
-}
-/**
- *
- * @param array $array
- * @param array $keys
- */
-function postToArray(&$array, $keys, $ignoreMissing = false)
-{
- foreach ($keys as $key) {
- $val = Request::post($key, '--not-in-post');
- if ($ignoreMissing && $val === '--not-in-post') continue;
- $array[$key] = $val;
- }
-}