Compare commits

..

3 Commits

Author SHA1 Message Date
Clemens Schwaighofer
c772a39156 Back port email regex patch 2019-06-14 14:51:28 +09:00
Clemens Schwaighofer
7907d1d507 Backport fix Basic Class date/time check 2019-06-07 16:42:06 +09:00
Clemens Schwaighofer
01c4a35026 Backport the CoreLibs/Basic changes to the oldTemplateLayout branch 2019-06-07 16:19:35 +09:00
907 changed files with 2573 additions and 3726 deletions

View File

@@ -1,28 +0,0 @@
# PHP XDEBUG SETTINGS
# php_value xdebug.profiler_output_dir xdebug/
# php_value xdebug.profiler_output_name timestamp
# php_value xdebug.profiler_enable 1
php_value xdebug.collect_params 2
php_value xdebug.collect_vars 0
php_value xdebug.show_local_vars 0
#php_value xdebug.dump_globals 0
# allowed COOKIE, FILES, GET, POST, REQUEST, SERVER, SESSION
#php_value xdebug.dump.GET *
# PHP ERROR SETTINGS
php_flag display_startup_errors on
php_flag display_errors on
php_flag html_errors on
php_flag log_errors on
php_flag ignore_repeated_errors off
php_flag ignore_repeated_source off
php_flag report_memleaks on
php_flag track_errors on
php_value docref_root 0
php_value docref_ext 0
# Turn this on to redirect log to different folder
#php_value error_log /var/www/html/developers/clemens/php/php-error/php-errors.log
# this is E_ALL reporting ON
php_value error_reporting -1
# this is E_ALL | ~E_NOTICE
#php_value error_reporting 2039
php_value log_errors_max_len 0

File diff suppressed because one or more lines are too long

View File

@@ -5,63 +5,19 @@
#echo "EXIT"; #echo "EXIT";
#exit; #exit;
# if flagged 'y' then it will ask after each import to continue
development='y';
test='n';
input='';
# database connection info
db='<db name>'; db='<db name>';
host='<db host>'; host='<db host>';
user='<db user>'; user='<db user>';
schema="public"; #schema="publicv";
export PGPASSWORD='';
# log files for file in `cat ORDER`;
error_file="log/error"; do
output_file="log/output"; if [ -f $file ];
then
if [ ! -f ORDER ]; then # for path in $schema;
echo "Could not find ORDER file"; # do
exit; # echo "WORK ON "$schema"."$file;
fi; psql -U $user -h $host -f $file $db 1>> output 2>> error
# done;
if [ "$test" != "n" ]; then
echo "TESTING MODE, NO DATA WILL BE IMPORTED";
fi;
if [ "$development" = "y" ]; then
echo "STEP BY STEP IMPORT MODE ACTIVATED";
fi;
while read file <&3; do
if [ "$file" = "FINISHED" ]; then
echo "Database data is flagged as FINISHED in ORDER file";
exit;
fi; fi;
if [ -f "$file" ]; then done;
for path in "$schemas"; do
echo "[+] WORK ON '${file}' @ '${path}'";
if [ "$test" = 'n' ]; then
echo "=== START [$file] ===>" >> ${error_file};
psql -U ${user} -h ${host} -f "${file}" ${db} 1>> ${output_file} 2>> ${error_file}
echo "=== END [$file] ===>" >> ${error_file};
fi;
if [ "$development" = "y" ]; then
echo "Press 'y' to move to next. Press 'r' to reload last file. ^c to abort";
fi;
while [ "$development" = "y" ] && [ "$input" != "y" ]; do
read -ep "Continue (y|r|^c): " input;
if [ "$input" = "r" ]; then
echo "Reload File '${file}' ...";
if [ "$test" = 'n' ]; then
echo "=== START RELOAD [$file] ===>" >> ${error_file};
psql -U ${user} -h ${host} -f "${file}" ${db} 1>> ${output_file} 2>> ${error_file}
echo "=== END RELOAD [$file] ===>" >> ${error_file};
fi;
fi;
done;
input='';
done;
elif [[ ${file::1} != "#" ]]; then
echo "[!] COULD NOT FIND FILE: '${file}'";
fi;
done 3<ORDER;

View File

@@ -51,7 +51,6 @@ INSERT INTO edit_page_menu_group VALUES ((SELECT edit_page_id FROM edit_page WHE
DELETE FROM edit_access_right; DELETE FROM edit_access_right;
INSERT INTO edit_access_right (name, level, type) VALUES ('Default', -1, 'default'); INSERT INTO edit_access_right (name, level, type) VALUES ('Default', -1, 'default');
INSERT INTO edit_access_right (name, level, type) VALUES ('No Access', 0, 'none'); INSERT INTO edit_access_right (name, level, type) VALUES ('No Access', 0, 'none');
INSERT INTO edit_access_right (name, level, type) VALUES ('List', 10, 'list');
INSERT INTO edit_access_right (name, level, type) VALUES ('Read', 20, 'read'); INSERT INTO edit_access_right (name, level, type) VALUES ('Read', 20, 'read');
INSERT INTO edit_access_right (name, level, type) VALUES ('Translator', 30, 'mod_trans'); INSERT INTO edit_access_right (name, level, type) VALUES ('Translator', 30, 'mod_trans');
INSERT INTO edit_access_right (name, level, type) VALUES ('Modify', 40, 'mod'); INSERT INTO edit_access_right (name, level, type) VALUES ('Modify', 40, 'mod');

View File

@@ -14,6 +14,5 @@ CREATE TABLE edit_access (
uid VARCHAR, uid VARCHAR,
enabled SMALLINT NOT NULL DEFAULT 0, enabled SMALLINT NOT NULL DEFAULT 0,
protected INT, protected INT,
deleted SMALLINT DEFAULT 0, deleted SMALLINT DEFAULT 0
additional_acl JSONB
) INHERITS (edit_generic) WITHOUT OIDS; ) INHERITS (edit_generic) WITHOUT OIDS;

View File

@@ -10,10 +10,8 @@ CREATE TABLE edit_group (
edit_group_id SERIAL PRIMARY KEY, edit_group_id SERIAL PRIMARY KEY,
name VARCHAR, name VARCHAR,
enabled SMALLINT NOT NULL DEFAULT 0, enabled SMALLINT NOT NULL DEFAULT 0,
deleted SMALLINT DEFAULT 0,
edit_scheme_id INT, edit_scheme_id INT,
edit_access_right_id INT NOT NULL, edit_access_right_id INT NOT NULL,
additional_acl JSONB,
FOREIGN KEY (edit_scheme_id) REFERENCES edit_scheme (edit_scheme_id) MATCH FULL ON DELETE CASCADE ON UPDATE CASCADE, FOREIGN KEY (edit_scheme_id) REFERENCES edit_scheme (edit_scheme_id) MATCH FULL ON DELETE CASCADE ON UPDATE CASCADE,
FOREIGN KEY (edit_access_right_id) REFERENCES edit_access_right (edit_access_right_id) MATCH FULL ON DELETE CASCADE ON UPDATE CASCADE FOREIGN KEY (edit_access_right_id) REFERENCES edit_access_right (edit_access_right_id) MATCH FULL ON DELETE CASCADE ON UPDATE CASCADE
) INHERITS (edit_generic) WITHOUT OIDS; ) INHERITS (edit_generic) WITHOUT OIDS;

View File

@@ -2,13 +2,12 @@
-- DATE: 2005/07/05 -- DATE: 2005/07/05
-- DESCRIPTION: -- DESCRIPTION:
-- edit tables, this table contains all pages in the edit interface and allocates rights + values to it -- edit tables, this table contains all pages in the edit interface and allocates rights + values to it
-- TABLE: edit_page -- TABLE: edit_table
-- HISTORY: -- HISTORY:
-- DROP TABLE edit_page; -- DROP TABLE edit_page;
CREATE TABLE edit_page ( CREATE TABLE edit_page (
edit_page_id SERIAL PRIMARY KEY, edit_page_id SERIAL PRIMARY KEY,
content_alias_edit_page_id INT, -- alias for page content, if the page content is defined on a different page, ege for ajax backend pages
filename VARCHAR, filename VARCHAR,
name VARCHAR UNIQUE, name VARCHAR UNIQUE,
order_number INT NOT NULL, order_number INT NOT NULL,
@@ -16,6 +15,5 @@ CREATE TABLE edit_page (
menu SMALLINT NOT NULL DEFAULT 0, menu SMALLINT NOT NULL DEFAULT 0,
popup SMALLINT NOT NULL DEFAULT 0, popup SMALLINT NOT NULL DEFAULT 0,
popup_x SMALLINT, popup_x SMALLINT,
popup_y SMALLINT, popup_y SMALLINT
FOREIGN KEY (content_alias_edit_page_id) REFERENCES edit_page (edit_page_id) MATCH FULL ON DELETE RESTRICT ON UPDATE CASCADE,
) INHERITS (edit_generic) WITHOUT OIDS; ) INHERITS (edit_generic) WITHOUT OIDS;

View File

@@ -1,20 +0,0 @@
-- AUTHOR: Clemens Schwaighofer
-- DATE: 2019/9/9
-- DESCRIPTION:
-- sub content to one page with additional edit access right set
-- can be eg JS content groups on one page
-- TABLE: edit_page_content
-- HISTORY:
-- DROP TABLE edit_page_content;
CREATE TABLE edit_page_content (
edit_page_content_id SERIAL PRIMARY KEY,
edit_page_id INT NOT NULL,
edit_access_right_id INT NOT NULL,
name VARCHAR,
uid VARCHAR UNIQUE,
order_number INT NOT NULL,
online SMALLINT NOT NULL DEFAULT 0,
FOREIGN KEY (edit_access_right_id) REFERENCES edit_access_right (edit_access_right_id) MATCH FULL ON DELETE CASCADE ON UPDATE CASCADE,
FOREIGN KEY (edit_page_id) REFERENCES edit_page (edit_page_id) MATCH FULL ON DELETE CASCADE ON UPDATE CASCADE
) INHERITS (edit_generic) WITHOUT OIDS;

View File

@@ -16,7 +16,6 @@ CREATE TABLE edit_user (
first_name_furigana VARCHAR, first_name_furigana VARCHAR,
last_name_furigana VARCHAR, last_name_furigana VARCHAR,
enabled SMALLINT NOT NULL DEFAULT 0, enabled SMALLINT NOT NULL DEFAULT 0,
deleted SMALLINT NOT NULL DEFAULT 0,
debug SMALLINT NOT NULL DEFAULT 0, debug SMALLINT NOT NULL DEFAULT 0,
db_debug SMALLINT NOT NULL DEFAULT 0, db_debug SMALLINT NOT NULL DEFAULT 0,
email VARCHAR, email VARCHAR,
@@ -33,7 +32,6 @@ CREATE TABLE edit_user (
locked SMALLINT DEFAULT 0, locked SMALLINT DEFAULT 0,
password_change_date TIMESTAMP WITHOUT TIME ZONE, -- only when password is first set or changed password_change_date TIMESTAMP WITHOUT TIME ZONE, -- only when password is first set or changed
password_change_interval INTERVAL, -- null if no change is needed, or d/m/y time interval password_change_interval INTERVAL, -- null if no change is needed, or d/m/y time interval
additional_acl JSONB, -- additional ACL as JSON string (can be set by other pages)
FOREIGN KEY (connect_edit_user_id) REFERENCES edit_user (edit_user_id) MATCH FULL ON DELETE CASCADE ON UPDATE CASCADE, FOREIGN KEY (connect_edit_user_id) REFERENCES edit_user (edit_user_id) MATCH FULL ON DELETE CASCADE ON UPDATE CASCADE,
FOREIGN KEY (edit_language_id) REFERENCES edit_language (edit_language_id) MATCH FULL ON DELETE CASCADE ON UPDATE CASCADE, FOREIGN KEY (edit_language_id) REFERENCES edit_language (edit_language_id) MATCH FULL ON DELETE CASCADE ON UPDATE CASCADE,
FOREIGN KEY (edit_group_id) REFERENCES edit_group (edit_group_id) MATCH FULL ON DELETE CASCADE ON UPDATE CASCADE, FOREIGN KEY (edit_group_id) REFERENCES edit_group (edit_group_id) MATCH FULL ON DELETE CASCADE ON UPDATE CASCADE,

View File

@@ -1,4 +0,0 @@
DROP TRIGGER trg_edit_page_content ON edit_page_content;
CREATE TRIGGER trg_edit_page_content
BEFORE INSERT OR UPDATE ON edit_page_content
FOR EACH ROW EXECUTE PROCEDURE set_edit_generic();

View File

@@ -1,17 +0,0 @@
-- 2019/9/10 UPDATE missing cuid in edit_* tables
UPDATE edit_access SET cuid = random_string(12) WHERE cuid IS NULL;
UPDATE edit_access_data SET cuid = random_string(12) WHERE cuid IS NULL;
UPDATE edit_access_right SET cuid = random_string(12) WHERE cuid IS NULL;
UPDATE edit_access_user SET cuid = random_string(12) WHERE cuid IS NULL;
UPDATE edit_group SET cuid = random_string(12) WHERE cuid IS NULL;
UPDATE edit_language SET cuid = random_string(12) WHERE cuid IS NULL;
UPDATE edit_log SET cuid = random_string(12) WHERE cuid IS NULL;
UPDATE edit_menu_group SET cuid = random_string(12) WHERE cuid IS NULL;
UPDATE edit_page SET cuid = random_string(12) WHERE cuid IS NULL;
UPDATE edit_page_access SET cuid = random_string(12) WHERE cuid IS NULL;
UPDATE edit_page_content SET cuid = random_string(12) WHERE cuid IS NULL;
UPDATE edit_query_string SET cuid = random_string(12) WHERE cuid IS NULL;
UPDATE edit_scheme SET cuid = random_string(12) WHERE cuid IS NULL;
UPDATE edit_user SET cuid = random_string(12) WHERE cuid IS NULL;
UPDATE edit_visible_group SET cuid = random_string(12) WHERE cuid IS NULL;

View File

@@ -1,7 +0,0 @@
-- 2019/9/10 update edit_page with reference
-- page content reference settings
-- UPDATE
ALTER TABLE edit_page ADD content_alias_edit_page_id INT;
ALTER TABLE edit_page ADD CONSTRAINT edit_page_content_alias_edit_page_id_fkey FOREIGN KEY (content_alias_edit_page_id) REFERENCES edit_page (edit_page_id) MATCH FULL ON DELETE RESTRICT ON UPDATE CASCADE;

View File

@@ -1,4 +1,4 @@
<?php declare(strict_types=1); <?php
$DEBUG_ALL_OVERRIDE = 0; // set to 1 to debug on live/remote server locations $DEBUG_ALL_OVERRIDE = 0; // set to 1 to debug on live/remote server locations
$DEBUG_ALL = 1; $DEBUG_ALL = 1;
@@ -30,19 +30,10 @@ $basic = new CoreLibs\Admin\Backend($DB_CONFIG[MAIN_DB], $lang);
$basic->dbInfo(1); $basic->dbInfo(1);
ob_end_flush(); ob_end_flush();
$basic->hrRunningTime();
$basic->runningTime();
echo "RANDOM KEY [50]: ".$basic->randomKeyGen(50)."<br>";
echo "TIMED [hr]: ".$basic->hrRunningTime()."<br>";
echo "TIMED [def]: ".$basic->runningTime()."<br>";
$basic->hrRunningTime();
echo "RANDOM KEY [default]: ".$basic->randomKeyGen()."<br>";
echo "TIMED: ".$basic->hrRunningTime()."<br>";
// set + check edit access id // set + check edit access id
$edit_access_id = 3; $edit_access_id = 3;
if (isset($login) && is_object($login) && isset($login->acl['unit'])) { if (isset($login) && is_object($login) && isset($login->acl['unit'])) {
print "ACL UNIT: ".print_r(array_keys($login->acl['unit']), true)."<br>"; print "ACL UNIT: ".print_r(array_keys($login->acl['unit']), 1)."<br>";
print "ACCESS CHECK: ".$login->loginCheckEditAccess($edit_access_id)."<br>"; print "ACCESS CHECK: ".$login->loginCheckEditAccess($edit_access_id)."<br>";
if ($login->loginCheckEditAccess($edit_access_id)) { if ($login->loginCheckEditAccess($edit_access_id)) {
$basic->edit_access_id = $edit_access_id; $basic->edit_access_id = $edit_access_id;
@@ -96,22 +87,22 @@ while ($res = $basic->dbReturn("SELECT * FROM max_test")) {
} }
$status = $basic->dbExec("INSERT INTO foo (test) VALUES ('FOO TEST ".time()."') RETURNING test"); $status = $basic->dbExec("INSERT INTO foo (test) VALUES ('FOO TEST ".time()."') RETURNING test");
print "DIRECT INSERT STATUS: $status | PRIMARY KEY: ".$basic->insert_id." | PRIMARY KEY EXT: ".print_r($basic->insert_id_ext, true)."<br>"; print "DIRECT INSERT STATUS: $status | PRIMARY KEY: ".$basic->insert_id." | PRIMARY KEY EXT: ".print_r($basic->insert_id_ext, 1)."<br>";
print "DIRECT INSERT PREVIOUS INSERTED: ".print_r($basic->dbReturnRow("SELECT foo_id, test FROM foo WHERE foo_id = ".$basic->insert_id), true)."<br>"; print "DIRECT INSERT PREVIOUS INSERTED: ".print_r($basic->dbReturnRow("SELECT foo_id, test FROM foo WHERE foo_id = ".$basic->insert_id), 1)."<br>";
$basic->dbPrepare("ins_foo", "INSERT INTO foo (test) VALUES ($1)"); $basic->dbPrepare("ins_foo", "INSERT INTO foo (test) VALUES ($1)");
$status = $basic->dbExecute("ins_foo", array('BAR TEST '.time())); $status = $basic->dbExecute("ins_foo", array('BAR TEST '.time()));
print "PREPARE INSERT STATUS: $status | PRIMARY KEY: ".$basic->insert_id." | PRIMARY KEY EXT: ".print_r($basic->insert_id_ext, true)."<br>"; print "PREPARE INSERT STATUS: $status | PRIMARY KEY: ".$basic->insert_id." | PRIMARY KEY EXT: ".print_r($basic->insert_id_ext, 1)."<br>";
print "PREPARE INSERT PREVIOUS INSERTED: ".print_r($basic->dbReturnRow("SELECT foo_id, test FROM foo WHERE foo_id = ".$basic->insert_id), true)."<br>"; print "PREPARE INSERT PREVIOUS INSERTED: ".print_r($basic->dbReturnRow("SELECT foo_id, test FROM foo WHERE foo_id = ".$basic->insert_id), 1)."<br>";
// returning test with multiple entries // returning test with multiple entries
// $status = $basic->db_exec("INSERT INTO foo (test) values ('BAR 1 ".time()."'), ('BAR 2 ".time()."'), ('BAR 3 ".time()."') RETURNING foo_id"); // $status = $basic->db_exec("INSERT INTO foo (test) values ('BAR 1 ".time()."'), ('BAR 2 ".time()."'), ('BAR 3 ".time()."') RETURNING foo_id");
$status = $basic->dbExec("INSERT INTO foo (test) values ('BAR 1 ".time()."'), ('BAR 2 ".time()."'), ('BAR 3 ".time()."') RETURNING foo_id, test"); $status = $basic->dbExec("INSERT INTO foo (test) values ('BAR 1 ".time()."'), ('BAR 2 ".time()."'), ('BAR 3 ".time()."') RETURNING foo_id, test");
print "DIRECT MULTIPLE INSERT STATUS: $status | PRIMARY KEYS: ".print_r($basic->insert_id, true)." | PRIMARY KEY EXT: ".print_r($basic->insert_id_ext, true)."<br>"; print "DIRECT MULTIPLE INSERT STATUS: $status | PRIMARY KEYS: ".print_r($basic->insert_id, 1)." | PRIMARY KEY EXT: ".print_r($basic->insert_id_ext, 1)."<br>";
// no returning, but not needed ; // no returning, but not needed ;
$status = $basic->dbExec("INSERT INTO foo (test) VALUES ('FOO; TEST ".time()."');"); $status = $basic->dbExec("INSERT INTO foo (test) VALUES ('FOO; TEST ".time()."');");
print "DIRECT INSERT STATUS: $status | PRIMARY KEY: ".$basic->insert_id." | PRIMARY KEY EXT: ".print_r($basic->insert_id_ext, true)."<br>"; print "DIRECT INSERT STATUS: $status | PRIMARY KEY: ".$basic->insert_id." | PRIMARY KEY EXT: ".print_r($basic->insert_id_ext, 1)."<br>";
// UPDATE WITH RETURNING // UPDATE WITH RETURNING
$status = $basic->dbExec("UPDATE foo SET test = 'SOMETHING DIFFERENT' WHERE foo_id = 3688452 RETURNING test"); $status = $basic->dbExec("UPDATE foo SET test = 'SOMETHING DIFFERENT' WHERE foo_id = 3688452 RETURNING test");
print "UPDATE STATUS: $status | RETURNING EXT: ".print_r($basic->insert_id_ext, true)."<br>"; print "UPDATE STATUS: $status | RETURNING EXT: ".print_r($basic->insert_id_ext, 1)."<br>";
# db write class test # db write class test
$table = 'foo'; $table = 'foo';
@@ -134,11 +125,6 @@ $data = array ('test' => 'BOOL TEST UNSET '.time());
$primary_key = $basic->dbWriteDataExt($db_write_table, $primary_key, $table, $object_fields_not_touch, $object_fields_not_update, $data); $primary_key = $basic->dbWriteDataExt($db_write_table, $primary_key, $table, $object_fields_not_touch, $object_fields_not_update, $data);
print "Wrote to DB tabel $table and got primary key $primary_key<br>"; print "Wrote to DB tabel $table and got primary key $primary_key<br>";
// return Array Test
$query = "SELECT type, sdate, integer FROM foobar";
$data = $basic->dbReturnArray($query, true);
print "Full foobar list: <br><pre>".print_r($data, true)."</pre><br>";
# async test queries # async test queries
/* $basic->dbExecAsync("SELECT test FROM foo, (SELECT pg_sleep(10)) as sub WHERE foo_id IN (27, 50, 67, 44, 10)"); /* $basic->dbExecAsync("SELECT test FROM foo, (SELECT pg_sleep(10)) as sub WHERE foo_id IN (27, 50, 67, 44, 10)");
echo "WAITING FOR ASYNC: "; echo "WAITING FOR ASYNC: ";
@@ -170,7 +156,7 @@ while (($ret = $basic->dbCheckAsync()) === true)
flush(); flush();
} }
print "<br>END STATUS: ".$ret." | PK: ".$basic->insert_id."<br>"; print "<br>END STATUS: ".$ret." | PK: ".$basic->insert_id."<br>";
print "ASYNC PREVIOUS INSERTED: ".print_r($basic->dbReturnRow("SELECT foo_id, test FROM foo WHERE foo_id = ".$basic->insert_id), true)."<br>"; */ print "ASYNC PREVIOUS INSERTED: ".print_r($basic->dbReturnRow("SELECT foo_id, test FROM foo WHERE foo_id = ".$basic->insert_id), 1)."<br>"; */
$to_db_version = '9.1.9'; $to_db_version = '9.1.9';
print "VERSION DB: ".$basic->dbVersion()."<br>"; print "VERSION DB: ".$basic->dbVersion()."<br>";

View File

@@ -1 +0,0 @@
../includes/edit_base.inc

207
www/admin/edit_order.php Normal file
View File

@@ -0,0 +1,207 @@
<?php
/********************************************************************
* AUTHOR: Clemens Schwaighofer
* CREATED: 2001/07/11
* SHORT DESCRIPTION:
* sets the order from a table (edit_)
* HISTORY:
* 2005/07/11 (cs) adept to new edit interface
* 2002-10-18: little include changes
* 2001-07-11: erste Version
**********************************************************************/
$DEBUG_ALL = 1;
$DB_DEBUG = 1;
extract($_GET, EXTR_SKIP);
extract($_POST, EXTR_SKIP);
require 'config.php';
// set session name
define('SET_SESSION_NAME', EDIT_SESSION_NAME);
// overrride debug flags
if (!DEBUG) {
$DEBUG_ALL = 0;
$PRINT_ALL = 0;
$DB_DEBUG = 0;
$ECHO_ALL = 0;
}
// default lang
if (!$lang) {
$lang = DEFAULT_LANG;
}
$table_width = 600;
if (!$table_width) {
$table_width = PAGE_WIDTH;
}
ob_end_flush();
$login = new CoreLibs\ACL\Login($DB_CONFIG[LOGIN_DB], $lang);
$db = new CoreLibs\DB\IO($DB_CONFIG[MAIN_DB]);
$db->dbExec("SET search_path TO ".LOGIN_DB_SCHEMA);
$smarty = new CoreLibs\Template\SmartyExtend($lang);
if (TARGET == 'live' || TARGET == 'remote') {
// login
$login->debug_output_all = DEBUG ? 1 : 0;
$login->echo_output_all = 0;
$login->print_output_all = DEBUG ? 1 : 0;
// form
$db->debug_output_all = DEBUG ? 1 : 0;
$db->echo_output_all = 0;
$db->print_output_all = DEBUG ? 1 : 0;
}
// set the template dir
if (defined('LAYOUT')) {
$smarty->setTemplateDir(LAYOUT.DEFAULT_TEMPLATE.TEMPLATES);
$DATA['css'] = LAYOUT.DEFAULT_TEMPLATE.CSS;
$DATA['js'] = LAYOUT.DEFAULT_TEMPLATE.JS;
} else {
$smarty->setTemplateDir(TEMPLATES.DEFAULT_TEMPLATE);
$DATA['css'] = CSS.DEFAULT_TEMPLATE;
$DATA['js'] = JS.DEFAULT_TEMPLATE;
}
// order name is _always_ order_number for the edit interface
// follwing arrays do exist here:
// $position ... has the positions of the array (0..max), cause in a <select>
// I can't put an number into the array field, in this array,
// there are the POSITION stored, that should CHANGE there order (up/down)
// $row_data_id ... has ALL ids from the sorting part
// $row_data_order ... has ALL order positions from the soirting part
if (!is_array($position)) {
$position = array ();
}
if (count($position)) {
$original_id = $row_data_id;
// FIRST u have to put right sort, then read again ...
// hast to be >0 or the first one is selected and then there is no move
if ($up && $position[0] > 0) {
for ($i = 0; $i < count($position); $i++) {
// change position order
// this gets temp, id before that, gets actual (moves one "down")
// this gets the old before (moves one "up")
// is done for every element in row
// echo "A: ".$row_data_id[$position[$i]]." (".$row_data_order[$position[$i]].") -- ".$row_data_id[$position[$i]-1]." (".$row_data_order[$position[$i]-1].")<br>";
$temp_id = $row_data_id[$position[$i]];
$row_data_id[$position[$i]] = $row_data_id[$position[$i]-1];
$row_data_id[$position[$i]-1] = $temp_id;
// echo "A: ".$row_data_id[$position[$i]]." (".$row_data_order[$position[$i]].") -- ".$row_data_id[$position[$i]-1]." (".$row_data_order[$position[$i]-1].")<br>";
} // for
} // if up
// the last position id from position array is not to be the count-1 of row_data_id array, or it is the last element
if ($down && ($position[count($position) - 1] != (count($row_data_id) - 1))) {
for ($i = count($position) - 1; $i >= 0; $i --) {
// same as up, just up in other way, starts from bottom (last element) and moves "up"
// element before actuel gets temp, this element, becomes element after this,
// element after this, gets this
$temp_id = $row_data_id[$position[$i] + 1];
$row_data_id[$position[$i] + 1] = $row_data_id[$position[$i]];
$row_data_id[$position[$i]] = $temp_id;
} // for
} // if down
// write data ... (which has to be abstrackt ...)
if (($up && $position[0] > 0) || ($down && ($position[count($position) - 1]!=(count($row_data_id) - 1)))) {
for ($i = 0; $i < count($row_data_id); $i ++) {
$q = "UPDATE ".$table_name." SET order_number = ".$row_data_order[$i]." WHERE ".$table_name."_id = ".$row_data_id[$i];
$q = $db->dbExec($q);
} // for all article ids ...
} // if write
} // if there is something to move
// get ...
$q = "SELECT ".$table_name."_id, name, order_number FROM ".$table_name." ";
if ($where_string) {
$q .= "WHERE $where_string ";
}
$q .= "ORDER BY order_number";
while ($res = $db->dbReturn($q)) {
$row_data[] = array (
"id" => $res[$table_name."_id"],
"name" => $res["name"],
"order" => $res["order_number"]
);
} // while read data ...
// define all needed smarty stuff for the general HTML/page building
$DATA['css'] = LAYOUT.DEFAULT_TEMPLATE.CSS;
$DATA['js'] = LAYOUT.DEFAULT_TEMPLATE.JS;
$HEADER['CSS'] = CSS;
$HEADER['DEFAULT_ENCODING'] = DEFAULT_ENCODING;
$HEADER['JS'] = JS;
$HEADER['STYLESHEET'] = $EDIT_STYLESHEET;
$HEADER['JAVASCRIPT'] = $EDIT_JAVASCRIPT;
// html title
$HEADER['HTML_TITLE'] = (!$L_TITLE) ? $smarty->l10n->__($G_TITLE) : $smarty->l10n->__($L_TITLE);
$DATA['table_width'] = $table_width;
// error msg
if ($error) {
$messages[] = array('msg' => $msg, 'class' => 'error', 'width' => $table_width);
}
$DATA['form_error_msg'] = $messages;
// all the row data
$options_id = array ();
$options_name = array ();
$options_selected = array ();
if (!is_array($row_data)) {
$row_data = array ();
}
for ($i = 0; $i < count($row_data); $i ++) {
$options_id[] = $i;
$options_name[] = $row_data[$i]["name"];
// list of points to order
for ($j = 0; $j < count($position); $j++) {
// if matches, put into select array
if ($original_id[$position[$j]] == $row_data[$i]["id"]) {
$options_selected[] = $i;
}
}
}
$DATA['options_id'] = $options_id;
$DATA['options_name'] = $options_name;
$DATA['options_selected'] = $options_selected;
// hidden list for the data (id, order number)
$row_data_id = array ();
$row_data_order = array ();
for ($i = 0; $i < count($row_data); $i++) {
$row_data_id[] = $row_data[$i]["id"];
$row_data_order[] = $row_data[$i]["order"];
}
$DATA['row_data_id'] = $row_data_id;
$DATA['row_data_order'] = $row_data_order;
// hidden names for the table & where string
$DATA['table_name'] = $table_name;
$DATA['where_string'] = $where_string;
// debug data, if DEBUG flag is on, this data is print out
$DEBUG_DATA['DEBUG'] = $DEBUG_TMPL;
// create main data array
$CONTENT_DATA = array_merge($HEADER, $DATA, $DEBUG_DATA);
// data is 1:1 mapping (all vars, values, etc)
foreach ($CONTENT_DATA as $key => $value) {
$smarty->assign($key, $value);
}
if (is_dir(BASE.TEMPLATES_C)) {
$smarty->setCompileDir(BASE.TEMPLATES_C);
}
if (is_dir(BASE.CACHE)) {
$smarty->setCacheDir(BASE.CACHE);
}
$smarty->display('edit_order.tpl');
echo $login->printErrorMsg();
echo $db->printErrorMsg();
// __END__

View File

@@ -1,4 +1,4 @@
<?php declare(strict_types=1); <?php
$DEBUG_ALL_OVERRIDE = 0; // set to 1 to debug on live/remote server locations $DEBUG_ALL_OVERRIDE = 0; // set to 1 to debug on live/remote server locations
$DEBUG_ALL = 1; $DEBUG_ALL = 1;

View File

@@ -1,4 +1,4 @@
<?php declare(strict_types=1); <?php
// debug for L10n issues in php 7.3 // debug for L10n issues in php 7.3

View File

@@ -1,4 +1,4 @@
<?php declare(strict_types=1); <?php
declare(strict_types=1); declare(strict_types=1);

View File

@@ -1,4 +1,4 @@
<?php declare(strict_types=1); <?php
namespace Foo; namespace Foo;

View File

@@ -1,4 +1,4 @@
<?php declare(strict_types=1); <?php
$ENABLE_ERROR_HANDLING = 0; $ENABLE_ERROR_HANDLING = 0;
$DEBUG_ALL_OVERRIDE = 0; // set to 1 to debug on live/remote server locations $DEBUG_ALL_OVERRIDE = 0; // set to 1 to debug on live/remote server locations
$DEBUG_ALL = 1; $DEBUG_ALL = 1;
@@ -15,12 +15,11 @@ $TEMPLATE_NAME = 'smarty_test.tpl';
$CSS_NAME = 'smart_test.css'; $CSS_NAME = 'smart_test.css';
$USE_PROTOTYPE = false; $USE_PROTOTYPE = false;
$USE_JQUERY = true; $USE_JQUERY = true;
$JS_DATEPICKR = false;
if ($USE_PROTOTYPE) { if ($USE_PROTOTYPE) {
$ADMIN_JAVASCRIPT = 'edit.pt.js'; $EDIT_JAVASCRIPT = 'edit.pt.js';
$JS_NAME = 'prototype.test.js'; $JS_NAME = 'prototype.test.js';
} elseif ($USE_JQUERY) { } else if ($USE_JQUERY) {
$ADMIN_JAVASCRIPT = 'edit.jq.js'; $EDIT_JAVASCRIPT = 'edit.jq.js';
$JS_NAME = 'jquery.test.js'; $JS_NAME = 'jquery.test.js';
} }
$PAGE_WIDTH = "100%"; $PAGE_WIDTH = "100%";

View File

@@ -26,8 +26,6 @@ DEFINE('LIBS', 'lib'.DS);
DEFINE('CONFIGS', 'configs'.DS); DEFINE('CONFIGS', 'configs'.DS);
// includes (strings, arrays for static, etc) // includes (strings, arrays for static, etc)
DEFINE('INCLUDES', 'includes'.DS); DEFINE('INCLUDES', 'includes'.DS);
// data folder (mostly in includes)
DEFINE('DATA', 'data'.DS);
// layout base path // layout base path
DEFINE('LAYOUT', 'layout'.DS); DEFINE('LAYOUT', 'layout'.DS);
// pic-root (compatible to CMS) // pic-root (compatible to CMS)
@@ -72,6 +70,20 @@ DEFINE('LOG', 'log'.DS);
DEFINE('TEMPLATES_C', 'templates_c'.DS); DEFINE('TEMPLATES_C', 'templates_c'.DS);
// template base // template base
DEFINE('TEMPLATES', 'templates'.DS); DEFINE('TEMPLATES', 'templates'.DS);
// frontend template dir', only for admin
DEFINE('TEMPLATES_FRONTEND', 'templates_frontend'.DS);
// if below is turned to true then the old folder format is ued
// www/layout/<admin|frontend>/<template name>/...
// in the new layout the "<template name>" is dropped and only frontend
// data is visible there: js, css, images
// language files are moved into www/includes/lang/<admin/frontend>/*.mo
// the language .po files are in 4dev/lang/<admin/frontend>/*.po
DEFINE('USE_DEPRECATED_TEMPLATE_FOLDERS', false);
// default template
DEFINE('DEFAULT_TEMPLATE', 'default'.DS);
// default template file
DEFINE('DEFAULT_TEMPLATE_FILE', 'default.tpl');
/************* HASH / ACL DEFAULT / ERROR SETTINGS / SMARTY *************/ /************* HASH / ACL DEFAULT / ERROR SETTINGS / SMARTY *************/
// default hash type // default hash type
@@ -132,10 +144,6 @@ DEFINE('SESSION_NAME', 'SESSION_NAME'.SERVER_NAME_HASH);
// SET_SESSION_NAME should be set in the header if a special session name is needed // SET_SESSION_NAME should be set in the header if a special session name is needed
// DEFINE('SET_SESSION_NAME', SESSION_NAME); // DEFINE('SET_SESSION_NAME', SESSION_NAME);
/************* CACHE/COMPILE IDS *************/
DEFINE('CACHE_ID', 'CACHE_'.SERVER_NAME_HASH);
DEFINE('COMPILE_ID', 'COMPILE_'.SERVER_NAME_HASH);
/************* LANGUAGE / ENCODING *******/ /************* LANGUAGE / ENCODING *******/
DEFINE('DEFAULT_LANG', 'en_utf8'); DEFINE('DEFAULT_LANG', 'en_utf8');
// default web page encoding setting // default web page encoding setting
@@ -146,13 +154,6 @@ DEFINE('DEFAULT_ENCODING', 'UTF-8');
/************* LOGGING *******************/ /************* LOGGING *******************/
// DEFINE('LOG_FILE_ID', ''); // DEFINE('LOG_FILE_ID', '');
/************* CLASS ERRORS *******************/
// 0 = default all OFF
// 1 = throw notice on unset class var
// 2 = no notice on unset class var, but do not set undefined class var
// 3 = throw error and do not set class var
define('CLASS_VARIABLE_ERROR_MODE', 3);
/************* QUEUE TABLE *************/ /************* QUEUE TABLE *************/
// if we have a dev/live system // if we have a dev/live system
// set_live is a per page/per item // set_live is a per page/per item
@@ -166,6 +167,13 @@ DEFINE('DEV_SCHEMA', 'public');
DEFINE('TEST_SCHEMA', 'public'); DEFINE('TEST_SCHEMA', 'public');
DEFINE('LIVE_SCHEMA', 'public'); DEFINE('LIVE_SCHEMA', 'public');
/************* OTHER PATHS *****************/
// File and Folder paths
// ID is TARGET (first array element)
// $PATHS['test']['csv_path'] = '';
// $PATHS['test']['perl_bin'] = '';
// $PATHS['test']['redirect_url'] = '';
/************* DB ACCESS *****************/ /************* DB ACCESS *****************/
if (file_exists(BASE.CONFIGS.'config.db.inc')) { if (file_exists(BASE.CONFIGS.'config.db.inc')) {
require BASE.CONFIGS.'config.db.inc'; require BASE.CONFIGS.'config.db.inc';
@@ -174,10 +182,6 @@ if (file_exists(BASE.CONFIGS.'config.db.inc')) {
if (file_exists(BASE.CONFIGS.'config.host.inc')) { if (file_exists(BASE.CONFIGS.'config.host.inc')) {
require BASE.CONFIGS.'config.host.inc'; require BASE.CONFIGS.'config.host.inc';
} }
/************* OTHER PATHS *****************/
if (file_exists(BASE.CONFIGS.'config.path.inc')) {
require BASE.CONFIGS.'config.path.inc';
}
// set the USE_DATABASE var, if there is nothing set, we assume TRUE // set the USE_DATABASE var, if there is nothing set, we assume TRUE
$USE_DATABASE = defined('USE_DATABASE') ? USE_DATABASE : true; $USE_DATABASE = defined('USE_DATABASE') ? USE_DATABASE : true;
@@ -223,13 +227,14 @@ DEFINE('SITE_LANG', $SITE_LANG[$HOST_NAME]);
DEFINE('SHOW_ALL_ERRORS', true); // show all errors if debug_all & show_error_handling are enabled DEFINE('SHOW_ALL_ERRORS', true); // show all errors if debug_all & show_error_handling are enabled
/************* GENERAL PAGE TITLE ********/ /************* GENERAL PAGE TITLE ********/
DEFINE('G_TITLE', '<OVERALL FALLBACK PAGE TITLE>'); $G_TITLE = '<OVERALL PAGE TITLE>';
/************ STYLE SHEETS / JS **********/ /************ STYLE SHEETS / JS **********/
DEFINE('ADMIN_STYLESHEET', 'edit.css'); $EDIT_STYLESHEET = 'edit.css';
DEFINE('ADMIN_JAVASCRIPT', 'edit.js'); $EDIT_JAVASCRIPT = 'edit.js';
DEFINE('STYLESHEET', 'frontend.css');
DEFINE('JAVASCRIPT', 'frontend.js'); $STYLESHEET = 'frontend.css';
$JAVASCRIPT = 'frontend.js';
// anything optional // anything optional
/************* INTERNAL ******************/ /************* INTERNAL ******************/
@@ -262,7 +267,6 @@ if (defined('DEBUG') && DEBUG == false) {
$DEBUG_ALL = 1; $DEBUG_ALL = 1;
$PRINT_ALL = 1; $PRINT_ALL = 1;
$DB_DEBUG = 1; $DB_DEBUG = 1;
$ENABLE_ERROR_HANDLING = 0;
} }
// read auto loader // read auto loader

View File

@@ -1,17 +0,0 @@
<?php
/********************************************************************
* AUTHOR: Clemens Schwaighofer
* CREATED: 2018/10/11
* SHORT DESCRIPTION:
* configuration file for core path settings
* CSV target paths, and other download access URLS or paths needed
* HISTORY:
*********************************************************************/
// File and Folder paths
// ID is TARGET (first array element)
// $PATHS['test']['csv_path'] = '';
// $PATHS['test']['perl_bin'] = '';
// $PATHS['test']['redirect_url'] = '';
// __END__

View File

@@ -1,4 +1,4 @@
<?php declare(strict_types=1); <?php
/******************************************************************** /********************************************************************
* AUTHOR: Clemens Schwaighofer * AUTHOR: Clemens Schwaighofer
* CREATED: 2018/10/11 * CREATED: 2018/10/11
@@ -10,7 +10,7 @@
define('CONFIG_PATH', 'configs'.DIRECTORY_SEPARATOR); define('CONFIG_PATH', 'configs'.DIRECTORY_SEPARATOR);
// config path prefix search, start with 0, got down each level __DIR__ has, if nothing found -> bail // config path prefix search, start with 0, got down each level __DIR__ has, if nothing found -> bail
$CONFIG_PATH_PREFIX = ''; $CONFIG_PATH_PREFIX = '';
for ($dir_pos = 0, $dir_max = count(explode(DIRECTORY_SEPARATOR, __DIR__)); $dir_pos <= $dir_max; $dir_pos ++) { for ($dir_pos = 0, $dir_max = count(explode('/', __DIR__)); $dir_pos <= $dir_max; $dir_pos ++) {
$CONFIG_PATH_PREFIX .= '..'.DIRECTORY_SEPARATOR; $CONFIG_PATH_PREFIX .= '..'.DIRECTORY_SEPARATOR;
if (file_exists($CONFIG_PATH_PREFIX.CONFIG_PATH.'config.inc')) { if (file_exists($CONFIG_PATH_PREFIX.CONFIG_PATH.'config.inc')) {
require $CONFIG_PATH_PREFIX.CONFIG_PATH.'config.inc'; require $CONFIG_PATH_PREFIX.CONFIG_PATH.'config.inc';
@@ -21,12 +21,5 @@ for ($dir_pos = 0, $dir_max = count(explode(DIRECTORY_SEPARATOR, __DIR__)); $dir
if (!defined('DS')) { if (!defined('DS')) {
exit('Base config unloadable'); exit('Base config unloadable');
} }
// find trigger name "admin/" or "frontend/" in the getcwd() folder
foreach (array ('admin', 'frontend') as $folder) {
if (strstr(getcwd(), DS.$folder)) {
define('CONTENT_PATH', $folder.DS);
break;
}
}
// __END__ // __END__

View File

@@ -1,7 +0,0 @@
RewriteEngine on
# not a file
RewriteCond %{REQUEST_FILENAME} !-f
# not a directory
RewriteCond %{REQUEST_FILENAME} !-d
# throw the whole path to the url as form parameter
RewriteRule (.*) index.php?path=$1 [QSA,L]

View File

@@ -1 +0,0 @@
../configs/config.php

View File

@@ -1 +0,0 @@
../../configs/config.php

View File

@@ -1,3 +0,0 @@
<?php
require 'config.php';

View File

@@ -1,3 +0,0 @@
<?php declare(strict_types=1);
require 'config.php';

View File

@@ -1,4 +1,4 @@
<?php declare(strict_types=1); <?php
/******************************************************************** /********************************************************************
* AUTHOR: Clemens Schwaighofer * AUTHOR: Clemens Schwaighofer
* CREATED: 2005/07/19 * CREATED: 2005/07/19

View File

@@ -1,4 +1,4 @@
<?php declare(strict_types=1); <?php
/******************************************************************** /********************************************************************
* AUTHOR: Clemens Schwaighofer * AUTHOR: Clemens Schwaighofer
* CREATED: 2008/08/14 * CREATED: 2008/08/14

View File

@@ -1,4 +1,4 @@
<?php declare(strict_types=1); <?php
/******************************************************************** /********************************************************************
* AUTHOR: Clemens Schwaighofer * AUTHOR: Clemens Schwaighofer
* CREATED: 2008/08/01 * CREATED: 2008/08/01
@@ -22,8 +22,6 @@ extract($_POST, EXTR_SKIP);
//------------------------------ library include start //------------------------------ library include start
// set output to quiet for load of classes & session settings // set output to quiet for load of classes & session settings
ob_start(); ob_start();
// set the session name
define('SET_SESSION_NAME', EDIT_SESSION_NAME);
//------------------------------ library include end //------------------------------ library include end
//------------------------------ basic variable settings start //------------------------------ basic variable settings start
@@ -35,14 +33,12 @@ if (!isset($encoding)) {
if (session_id() && $_SESSION['DEFAULT_LANG']) { if (session_id() && $_SESSION['DEFAULT_LANG']) {
$lang = $_SESSION['DEFAULT_LANG']; $lang = $_SESSION['DEFAULT_LANG'];
} elseif (!$lang) { } elseif (!$lang) {
$lang = defined('SITE_LANG') ? SITE_LANG : DEFAULT_LANG; $lang = DEFAULT_LANG;
} }
// end the stop of the output flow, but only if we didn't request a csv file download // end the stop of the output flow, but only if we didn't request a csv file download
if (array_key_exists('action', $_POST) && $_POST['action'] != 'download_csv') { if (array_key_exists('action', $_POST) && $_POST['action'] != 'download_csv') {
header("Content-type: text/html; charset=".$encoding); header("Content-type: text/html; charset=".$encoding);
} ob_end_flush();
if (isset($AJAX_PAGE) && isset($ZIP_STREAM) && $AJAX_PAGE && !$ZIP_STREAM) {
header("Content-Type: application/json; charset=UTF-8");
} }
//------------------------------ basic variable settings start //------------------------------ basic variable settings start
@@ -63,8 +59,6 @@ $cms->menu_show_flag = 'main';
$cms->dbInfo(); $cms->dbInfo();
// set acl // set acl
$cms->acl = $login->acl; $cms->acl = $login->acl;
// flush
ob_end_flush();
//------------------------------ class init end //------------------------------ class init end
//------------------------------ logging start //------------------------------ logging start
@@ -86,7 +80,7 @@ if (!$login->login) {
//------------------------------ page rights start //------------------------------ page rights start
// flag if to show the edit access id drop down list // flag if to show the edit access id drop down list
// check if we have more than one EA ID // check if we have more than one EA ID
$cms->DATA['show_ea_extra'] = $login->acl['show_ea_extra']; $cms->DATA['show_ea_extra'] = $login->acl['acl']['show_ea_extra'];
//------------------------------ page rights ned //------------------------------ page rights ned
// automatic hide for DEBUG messages on live server // automatic hide for DEBUG messages on live server

View File

@@ -1,4 +1,4 @@
<?php declare(strict_types=1); <?php
/******************************************************************** /********************************************************************
* AUTHOR: Clemens Schwaighofer * AUTHOR: Clemens Schwaighofer
* CREATED: 2007/09/03 * CREATED: 2007/09/03
@@ -7,36 +7,41 @@
* HISTORY: * HISTORY:
*********************************************************************/ *********************************************************************/
// template path
if ($_SESSION['TEMPLATE']) {
$TEMPLATE = $_SESSION['TEMPLATE'];
} elseif ($LOCAL_TEMPLATE) {
$TEMPLATE = $LOCAL_TEMPLATE;
} else {
$TEMPLATE = DEFAULT_TEMPLATE;
}
$TEMPLATE_DIR = $TEMPLATE;
// master template // master template
if (!isset($MASTER_TEMPLATE_NAME)) { if (!$MASTER_TEMPLATE_NAME) {
$MASTER_TEMPLATE_NAME = MASTER_TEMPLATE_NAME; $MASTER_TEMPLATE_NAME = MASTER_TEMPLATE_NAME;
} }
// just emergency fallback for language // just emergency fallback for language
// set encoding // set encoding
if (isset($_SESSION['DEFAULT_CHARSET'])) { if ($_SESSION['DEFAULT_CHARSET']) {
$encoding = $_SESSION['DEFAULT_CHARSET']; $encoding = $_SESSION['DEFAULT_CHARSET'];
} elseif (!isset($encoding)) { } elseif (!$encoding) {
$encoding = DEFAULT_ENCODING; $encoding = DEFAULT_ENCODING;
} }
// just emergency fallback for language // just emergency fallback for language
if (isset($_SESSION['DEFAULT_LANG'])) { if ($_SESSION['DEFAULT_LANG']) {
$lang = $_SESSION['DEFAULT_LANG']; $lang = $_SESSION['DEFAULT_LANG'];
} elseif (!isset($lang)) { } elseif (!$lang) {
$lang = defined('SITE_LANG') ? SITE_LANG : DEFAULT_LANG; $lang = defined('SITE_LANG') ? SITE_LANG : DEFAULT_LANG;
} }
// create the char lang encoding // create the char lang encoding
$lang_short = substr($lang, 0, 2); $lang_short = substr($lang, 0, 2);
// set include & template names // set include & template names
$PAGE_FILE_NAME = str_replace(".php", "", $cms->page_name); $CONTENT_INCLUDE = str_replace(".php", ".tpl", $cms->page_name);
// set include & template names
if (!isset($CONTENT_INCLUDE)) {
$CONTENT_INCLUDE = $PAGE_FILE_NAME.'.tpl';
}
$FORM_NAME = !isset($FORM_NAME) || !$FORM_NAME ? str_replace(".php", "", $cms->page_name) : $FORM_NAME; $FORM_NAME = !isset($FORM_NAME) || !$FORM_NAME ? str_replace(".php", "", $cms->page_name) : $FORM_NAME;
// set local page title // set local page title
$L_TITLE = ucfirst(str_replace('_', ' ', $cms->getPageName(1))).(defined(G_TITLE) ? ' - '.G_TITLE : ''); $L_TITLE = ucfirst(str_replace('_', ' ', $cms->getPageName(1))).' - '.$G_TITLE;
// strip tpl and replace it with inc // strip tpl and replace it with inc
// php include file per page // php include file per page
$cms->INC_TEMPLATE_NAME = str_replace(".tpl", ".inc", $CONTENT_INCLUDE); $cms->INC_TEMPLATE_NAME = str_replace(".tpl", ".inc", $CONTENT_INCLUDE);
@@ -45,87 +50,67 @@ $cms->JS_TEMPLATE_NAME = str_replace(".tpl", ".js", $CONTENT_INCLUDE);
// css per page // css per page
$cms->CSS_TEMPLATE_NAME = str_replace(".tpl", ".css", $CONTENT_INCLUDE); $cms->CSS_TEMPLATE_NAME = str_replace(".tpl", ".css", $CONTENT_INCLUDE);
// special CSS file // special CSS file
$cms->CSS_SPECIAL_TEMPLATE_NAME = $CSS_NAME; $cms->CSS_SPECIAL_TEMPLATE_NAME = @$CSS_NAME;
// special JS file // special JS file
$cms->JS_SPECIAL_TEMPLATE_NAME = $JS_NAME; $cms->JS_SPECIAL_TEMPLATE_NAME = @$JS_NAME;
// compile & cache id
$cms->CACHE_ID = isset($CACHE_ID) ? $CACHE_ID : CACHE_ID;
$cms->COMPILE_ID = isset($COMPILE_ID) ? $COMPILE_ID : CACHE_ID;
// set basic template path (tmp) // set basic template path (tmp)
$cms->includes = BASE.INCLUDES; // no longer in templates, only global $cms->template_path = LAYOUT.$TEMPLATE_DIR.TEMPLATES;
$cms->template_path = BASE.INCLUDES.TEMPLATES.CONTENT_PATH;
if ($smarty) { if ($smarty) {
$smarty->setTemplateDir($cms->template_path); $smarty->setTemplateDir($cms->template_path);
} }
if (isset($LANGUAGE_FOLDER)) { $cms->lang_dir = LAYOUT.$TEMPLATE_DIR.LANG; // no outside
$cms->lang_dir = $LANGUAGE_FOLDER; $cms->includes = BASE.INCLUDES; // no longer in templates, only global
} else { $cms->javascript = LAYOUT.$TEMPLATE_DIR.JS;
$cms->lang_dir = BASE.INCLUDES.LANG.CONTENT_PATH; // no outside $cms->css = LAYOUT.$TEMPLATE_DIR.CSS;
} $cms->pictures = LAYOUT.$TEMPLATE_DIR.IMAGES;
$cms->javascript = LAYOUT.JS; $cms->cache_pictures = LAYOUT.$TEMPLATE_DIR.CACHE;
$cms->css = LAYOUT.CSS;
$cms->pictures = LAYOUT.IMAGES;
$cms->cache_pictures = LAYOUT.CACHE;
$cms->cache_pictures_root = ROOT.$cms->cache_pictures; $cms->cache_pictures_root = ROOT.$cms->cache_pictures;
if (!is_dir($cms->cache_pictures_root)) { if (!is_dir($cms->cache_pictures_root)) {
mkdir($cms->cache_pictures_root); mkdir($cms->cache_pictures_root);
} }
// check if we have an external file with the template name $template_set = $TEMPLATE;
if (file_exists($cms->includes.$cms->INC_TEMPLATE_NAME) &&
is_file($cms->includes.$cms->INC_TEMPLATE_NAME) // if we don't find the master template, set the template path back AND set the insert template as absolute path
) { if (!file_exists(ROOT.$smarty->getTemplateDir()[0].DS.MASTER_TEMPLATE_NAME)) {
include($cms->includes.$cms->INC_TEMPLATE_NAME); if (file_exists(ROOT.$smarty->getTemplateDir()[0].DS.$TEMPLATE_NAME)) {
$TEMPLATE_NAME = ROOT.$smarty->getTemplateDir()[0].DS.$TEMPLATE_NAME;
}
$smarty->setTemplateDir(LAYOUT.DEFAULT_TEMPLATE.TEMPLATES);
$template_set = DEFAULT_TEMPLATE;
} elseif (!file_exists(ROOT.$smarty->getTemplateDir()[0].DS.$TEMPLATE_NAME)) {
// check if the template exists in the template path, if not, set path to to default
$smarty->setTemplateDir(LAYOUT.DEFAULT_TEMPLATE.TEMPLATES);
$template_set = DEFAULT_TEMPLATE;
} }
// only CSS/JS/etc include stuff if we have non AJAX page // check if lang_dir folder exists in the template path, if not fall back to default
if (isset($AJAX_PAGE) && !$AJAX_PAGE) { if (!is_dir($cms->lang_dir)) {
// check for template include $cms->lang_dir = LAYOUT.DEFAULT_TEMPLATE.LANG;
if (isset($USE_INCLUDE_TEMPLATE) && $USE_INCLUDE_TEMPLATE === true && !isset($TEMPLATE_NAME)) { }
$TEMPLATE_NAME = $CONTENT_INCLUDE; // check if the javascript folder exists in the template path, if not fall back to default
// add to cache & compile id if (!is_dir($cms->javascript)) {
$cms->COMPILE_ID .= '_'.$TEMPLATE_NAME; $cms->javascript = LAYOUT.DEFAULT_TEMPLATE.JS;
$cms->CACHE_ID .= '_'.$TEMPLATE_NAME; }
} // check if css folder exists in the template path, if not fall back to default
// additional per page Javascript include if (!is_dir($cms->css)) {
$cms->JS_INCLUDE = ''; $cms->css = LAYOUT.DEFAULT_TEMPLATE.CSS;
if (file_exists($cms->javascript.$cms->JS_TEMPLATE_NAME) && is_file($cms->javascript.$cms->JS_TEMPLATE_NAME)) { }
$cms->JS_INCLUDE = $cms->javascript.$cms->JS_TEMPLATE_NAME; if (!is_dir($cms->pictures)) {
} $cms->pictures = LAYOUT.DEFAULT_TEMPLATE.PICTURES;
// per page css file }
$cms->CSS_INCLUDE = ''; if (!is_dir($cms->cache_pictures)) {
if (file_exists($cms->css.$cms->CSS_TEMPLATE_NAME) && is_file($cms->css.$cms->CSS_TEMPLATE_NAME)) { $cms->cache_pictures = LAYOUT.DEFAULT_TEMPLATE.CACHE;
$cms->CSS_INCLUDE = $cms->css.$cms->CSS_TEMPLATE_NAME; $cms->cache_pictures_root = ROOT.$cms->cache_pictures;
}
// optional CSS file
$cms->CSS_SPECIAL_INCLUDE = '';
if (file_exists($cms->css.$cms->CSS_SPECIAL_TEMPLATE_NAME) && is_file($cms->css.$cms->CSS_SPECIAL_TEMPLATE_NAME)) {
$cms->CSS_SPECIAL_INCLUDE = $cms->css.$cms->CSS_SPECIAL_TEMPLATE_NAME;
}
// optional JS file
$cms->JS_SPECIAL_INCLUDE = '';
if (file_exists($cms->javascript.$cms->JS_SPECIAL_TEMPLATE_NAME) && is_file($cms->javascript.$cms->JS_SPECIAL_TEMPLATE_NAME)) {
$cms->JS_SPECIAL_INCLUDE = $cms->javascript.$cms->JS_SPECIAL_TEMPLATE_NAME;
}
if ($smarty) {
// check if template names exist
if (!file_exists($smarty->getTemplateDir()[0].DS.$MASTER_TEMPLATE_NAME)) {
// abort if master template could not be found
exit('MASTER TEMPLATE: '.$MASTER_TEMPLATE_NAME.' could not be found');
}
if (isset($TEMPLATE_NAME) && !file_exists($smarty->getTemplateDir()[0].DS.$TEMPLATE_NAME)) {
exit('INCLUDE TEMPLATE: '.$TEMPLATE_NAME.' could not be found');
}
}
} }
// if the lang folder is different to the default one // if the template_dir is != DEFAULT_TEMPLATE, then try to make a lang switch
// if the default lang is not like the lang given, switch lang // if the default lang is not like the lang given, switch lang
if (false === strstr(BASE.INCLUDES.LANG.CONTENT_PATH, $cms->lang_dir) || if (false === strstr(LAYOUT.DEFAULT_TEMPLATE.LANG, $cms->lang_dir) ||
strcasecmp(defined('SITE_LANG') ? SITE_LANG : DEFAULT_LANG, $lang) strcasecmp(defined('SITE_LANG') ? SITE_LANG : DEFAULT_LANG, $lang)
) { ) {
$cms->debug('LANG', 'Orig: '.BASE.INCLUDES.LANG.CONTENT_PATH.', New: '.$cms->lang_dir.' | Orig Lang: '.(defined('SITE_LANG') ? SITE_LANG : DEFAULT_LANG).', New Lang: '.$lang); $cms->debug('LANG', 'Orig: '.LAYOUT.DEFAULT_TEMPLATE.LANG.', New: '.$cms->lang_dir.' | Orig Lang: '.(defined('SITE_LANG') ? SITE_LANG : DEFAULT_LANG).', New Lang: '.$lang);
$cms->l->l10nReloadMOfile($lang, $cms->lang_dir); $cms->l->l10nReloadMOfile($lang, $cms->lang_dir);
// if we have login class // if we have login class
if ($login) { if ($login) {
$login->l->l10nReloadMOfile($lang, $cms->lang_dir); $login->l->l10nReloadMOfile($lang, $cms->lang_dir);
} }
@@ -135,32 +120,28 @@ if (false === strstr(BASE.INCLUDES.LANG.CONTENT_PATH, $cms->lang_dir) ||
} }
} }
if (isset($AJAX_PAGE) && !$AJAX_PAGE) { // javascrip translate data as template for auto translate
// javascript translate data as template for auto translate if (!$TEMPLATE_TRANSLATE) {
if (empty($TEMPLATE_TRANSLATE)) { $TEMPLATE_TRANSLATE = 'jsTranslate_'.$lang.'.tpl';
$TEMPLATE_TRANSLATE = 'jsTranslate_'.$lang.'.tpl'; $cms->debug('LANG', 'Load lang: '.$lang.', for page file '.$TEMPLATE_TRANSLATE);
$cms->debug('LANG', 'Load lang: '.$lang.', for page file '.$TEMPLATE_TRANSLATE); } else {
// we assume we have some fixed set
// we must add _<$lang>
// if .tpl, put before .tpl
// if not .tpl, add _<$lang>.tpl
if (strpos($TEMPLATE_TRANSLATE, '.tpl')) {
$TEMPLATE_TRANSLATE = str_replace('.tpl', '_'.$lang.'.tpl', $TEMPLATE_TRANSLATE);
} else { } else {
// we assume we have some fixed set $TEMPLATE_TRANSLATE .= '_'.$lang.'.tpl';
// we must add _<$lang>
// if .tpl, put before .tpl
// if not .tpl, add _<$lang>.tpl
if (strpos($TEMPLATE_TRANSLATE, '.tpl')) {
$TEMPLATE_TRANSLATE = str_replace('.tpl', '_'.$lang.'.tpl', $TEMPLATE_TRANSLATE);
} else {
$TEMPLATE_TRANSLATE .= '_'.$lang.'.tpl';
}
}
// if we can't find it, dump it
if ($smarty && !file_exists($smarty->getTemplateDir()[0].DS.$TEMPLATE_TRANSLATE)) {
unset($TEMPLATE_TRANSLATE);
} }
} }
// if we can't find it, dump it
if (!file_exists($smarty->getTemplateDir()[0].DS.$TEMPLATE_TRANSLATE)) {
unset($TEMPLATE_TRANSLATE);
}
// $cms->debug("LANGUAGE", "L: $lang | ".$cms->lang_dir." | MO File: ".$cms->l->mofile); // $cms->debug("LANGUAGE", "L: $lang | ".$cms->lang_dir." | MO File: ".$cms->l->mofile);
$cms->debug("LANGUAGE", "SL: ".$_SESSION['DEFAULT_CHARSET']." | ".$_SESSION['LANG']." | ".$_SESSION['DEFAULT_LANG']); $cms->debug("LANGUAGE", "SL: ".$_SESSION['DEFAULT_CHARSET']." | ".$_SESSION['LANG']." | ".$_SESSION['DEFAULT_LANG']);
if ($smarty) { $cms->debug("TEMPLATE", "P: ".$smarty->getTemplateDir()[0]);
$cms->debug("TEMPLATE", "P: ".$smarty->getTemplateDir()[0]);
}
// __END__ // __END__

View File

@@ -1,4 +1,4 @@
<?php declare(strict_types=1); <?php
/******************************************************************** /********************************************************************
* AUTHOR: Clemens Schwaighofer * AUTHOR: Clemens Schwaighofer
* CREATED: 2005/07/12 * CREATED: 2005/07/12
@@ -14,7 +14,10 @@ if ($cms->HEADER['USE_PROTOTYPE']) {
$cms->HEADER['USE_SCRIPTACULOUS'] = isset($USE_SCRIPTACULOUS) ? $USE_SCRIPTACULOUS : USE_SCRIPTACULOUS; $cms->HEADER['USE_SCRIPTACULOUS'] = isset($USE_SCRIPTACULOUS) ? $USE_SCRIPTACULOUS : USE_SCRIPTACULOUS;
} }
// jquery and prototype should not be used together // jquery and prototype should not be used together
$cms->HEADER['USE_JQUERY'] = isset($USE_JQUERY) ? $USE_JQUERY : USE_JQUERY; // don't use either of those two together $cms->HEADER['USE_JQUERY'] = isset($USE_JQUERY) ? $USE_JQUERY : USE_JQUERY; // don't use either of those two toger
// set basic template path (tmp)
// paths are set in the 'set_paths.inc' file
// check if we have an external file with the template name // check if we have an external file with the template name
if (file_exists($cms->includes.$cms->INC_TEMPLATE_NAME) && is_file($cms->includes.$cms->INC_TEMPLATE_NAME)) { if (file_exists($cms->includes.$cms->INC_TEMPLATE_NAME) && is_file($cms->includes.$cms->INC_TEMPLATE_NAME)) {
@@ -58,11 +61,11 @@ $cms->HEADER['CSS'] = CSS;
$cms->HEADER['JS'] = JS; $cms->HEADER['JS'] = JS;
$cms->HEADER['ENCODING'] = $encoding; $cms->HEADER['ENCODING'] = $encoding;
$cms->HEADER['DEFAULT_ENCODING'] = DEFAULT_ENCODING; $cms->HEADER['DEFAULT_ENCODING'] = DEFAULT_ENCODING;
$cms->HEADER['STYLESHEET'] = isset($ADMIN_STYLESHEET) ? $ADMIN_STYLESHEET : ADMIN_STYLESHEET; $cms->HEADER['STYLESHEET'] = $EDIT_STYLESHEET;
$cms->HEADER['JAVASCRIPT'] = isset($ADMIN_JAVASCRIPT) ? $ADMIN_JAVASCRIPT : ADMIN_JAVASCRIPT; $cms->HEADER['JAVASCRIPT'] = $EDIT_JAVASCRIPT;
// html title // html title
$cms->HEADER['HTML_TITLE'] = isset($L_TITLE) ? $cms->l->__($L_TITLE) : $cms->l->__(G_TITLE); $cms->HEADER['HTML_TITLE'] = (!isset($L_TITLE) || !$L_TITLE) ? $cms->l->__($G_TITLE) : $cms->l->__($L_TITLE);
$cms->DATA['table_width'] = isset($PAGE_WIDTH) ? $PAGE_WIDTH : PAGE_WIDTH; $cms->DATA['table_width'] = $PAGE_WIDTH ? $PAGE_WIDTH : PAGE_WIDTH;
// messages = array('msg' =>, 'class' => 'error/warning/...') // messages = array('msg' =>, 'class' => 'error/warning/...')
$cms->DATA['messages'] = $cms->messages; $cms->DATA['messages'] = $cms->messages;
@@ -79,9 +82,6 @@ $cms->DATA['CONTENT_INCLUDE'] = $CONTENT_INCLUDE;
// LANG // LANG
$cms->DATA['LANG'] = $lang; $cms->DATA['LANG'] = $lang;
$cms->DATA['TINYMCE_LANG'] = $lang_short; $cms->DATA['TINYMCE_LANG'] = $lang_short;
$cms->DATA['USE_TINY_MCE'] = isset($USE_TINY_MCE) ? $USE_TINY_MCE : false;
$cms->DATA['JS_DATEPICKR'] = isset($JS_DATEPICKR) ? $JS_DATEPICKR : false;
$cms->DATA['JS_FLATPICKR'] = isset($JS_FLATPICKR) ? $JS_FLATPICKR : false;
// debug data, if DEBUG flag is on, this data is print out // debug data, if DEBUG flag is on, this data is print out
$cms->DEBUG_DATA['debug_error_msg'] = $cms->runningTime(); $cms->DEBUG_DATA['debug_error_msg'] = $cms->runningTime();
@@ -99,10 +99,6 @@ if (is_dir(BASE.TEMPLATES_C)) {
if (is_dir(BASE.CACHE)) { if (is_dir(BASE.CACHE)) {
$smarty->setCacheDir(BASE.CACHE); $smarty->setCacheDir(BASE.CACHE);
} }
$smarty->display( $smarty->display($MASTER_TEMPLATE_NAME, $TEMPLATE.$lang, $TEMPLATE.$lang);
$MASTER_TEMPLATE_NAME,
$cms->CACHE_ID.($cms->CACHE_ID ? '_' : '').$lang,
$cms->COMPILE_ID.($cms->COMPILE_ID ? '_' : '').$lang
);
// __END__ // __END__

View File

@@ -1,4 +1,4 @@
<?php declare(strict_types=1); <?php
/******************************************************************** /********************************************************************
* AUTHOR: Clemens "Gullevek" Schwaighofer (www.gullevek.org) * AUTHOR: Clemens "Gullevek" Schwaighofer (www.gullevek.org)
* CREATED: 2003/06/10 * CREATED: 2003/06/10
@@ -18,10 +18,8 @@
*********************************************************************/ *********************************************************************/
$DEBUG_ALL = 1; $DEBUG_ALL = 1;
$PRINT_ALL = 1;
$DB_DEBUG = 1; $DB_DEBUG = 1;
// TODO: only extract _POST data that is needed
extract($_POST, EXTR_SKIP); extract($_POST, EXTR_SKIP);
$table_width = '100%'; $table_width = '100%';
@@ -41,7 +39,7 @@ if (!DEBUG) {
} }
// set default lang if not set otherwise // set default lang if not set otherwise
if (!isset($lang)) { if (!$lang) {
$lang = DEFAULT_LANG; $lang = DEFAULT_LANG;
} }
// should be utf8 // should be utf8
@@ -51,6 +49,7 @@ $login = new CoreLibs\ACL\Login($DB_CONFIG[LOGIN_DB], $lang);
// create form class // create form class
$form = new CoreLibs\Output\Form\Generate($DB_CONFIG[MAIN_DB], $lang); $form = new CoreLibs\Output\Form\Generate($DB_CONFIG[MAIN_DB], $lang);
$form->dbExec("SET search_path TO ".LOGIN_DB_SCHEMA);
if ($form->mobile_phone) { if ($form->mobile_phone) {
echo "I am sorry, but this page cannot be viewed by a mobile phone"; echo "I am sorry, but this page cannot be viewed by a mobile phone";
exit; exit;
@@ -58,8 +57,6 @@ if ($form->mobile_phone) {
// smarty template engine (extended Translation version) // smarty template engine (extended Translation version)
$smarty = new CoreLibs\Template\SmartyExtend($lang); $smarty = new CoreLibs\Template\SmartyExtend($lang);
// $form->debug('POST', $form->printAr($_POST));
if (TARGET == 'live' || TARGET == 'remote') { if (TARGET == 'live' || TARGET == 'remote') {
// login // login
$login->debug_output_all = DEBUG ? 1 : 0; $login->debug_output_all = DEBUG ? 1 : 0;
@@ -73,13 +70,13 @@ if (TARGET == 'live' || TARGET == 'remote') {
// set the template dir // set the template dir
// WARNING: this has a special check for the mailing tool layout (old layout) // WARNING: this has a special check for the mailing tool layout (old layout)
if (defined('LAYOUT')) { if (defined('LAYOUT')) {
$smarty->setTemplateDir(BASE.INCLUDES.TEMPLATES.CONTENT_PATH); $smarty->setTemplateDir(LAYOUT.DEFAULT_TEMPLATE.TEMPLATES);
$DATA['css'] = LAYOUT.CSS; $DATA['css'] = LAYOUT.DEFAULT_TEMPLATE.CSS;
$DATA['js'] = LAYOUT.JS; $DATA['js'] = LAYOUT.DEFAULT_TEMPLATE.JS;
} else { } else {
$smarty->setTemplateDir(TEMPLATES); $smarty->setTemplateDir(TEMPLATES.DEFAULT_TEMPLATE);
$DATA['css'] = CSS; $DATA['css'] = CSS.DEFAULT_TEMPLATE;
$DATA['js'] = JS; $DATA['js'] = JS.DEFAULT_TEMPLATE;
} }
// space for setting special debug flags // space for setting special debug flags
@@ -108,352 +105,207 @@ $data = array (
// log action // log action
EditLog('Edit Submit', serialize($data)); EditLog('Edit Submit', serialize($data));
$form->formProcedureLoad(${$form->archive_pk_name});
$form->formProcedureNew();
$form->formProcedureSave();
$form->formProcedureDelete();
$form->formProcedureDeleteFromElementList($element_list, $remove_name);
// define all needed smarty stuff for the general HTML/page building // define all needed smarty stuff for the general HTML/page building
$HEADER['CSS'] = CSS; $HEADER['CSS'] = CSS;
$HEADER['DEFAULT_ENCODING'] = DEFAULT_ENCODING; $HEADER['DEFAULT_ENCODING'] = DEFAULT_ENCODING;
$HEADER['STYLESHEET'] = isset($ADMIN_STYLESHEET) ? $ADMIN_STYLESHEET : ADMIN_STYLESHEET; $HEADER['JS'] = JS;
$HEADER['STYLESHEET'] = $EDIT_STYLESHEET;
$HEADER['JAVASCRIPT'] = $EDIT_JAVASCRIPT;
if ($form->my_page_name == 'edit_order') { $DATA['table_width'] = $table_width;
// get is for "table_name" and "where" only
$table_name = isset($_GET['table_name']) ? $_GET['table_name'] : '';
// $where = isset($_GET['where']) ? $_GET['where'] : '';
// order name is _always_ order_number for the edit interface
// follwing arrays do exist here: // write out error / status messages
// $position ... has the positions of the array (0..max), cause in a <select> $messages[] = $form->formPrintMsg();
// I can't put an number into the array field, in this array, $DATA['form_error_msg'] = $messages;
// there are the POSITION stored, that should CHANGE there order (up/down)
// $row_data_id ... has ALL ids from the sorting part
// $row_data_order ... has ALL order positions from the soirting part
if (!isset($position)) {
$position = array ();
}
if (count($position)) {
$original_id = $row_data_id;
// FIRST u have to put right sort, then read again ... // MENU START
// hast to be >0 or the first one is selected and then there is no move // request some session vars
if (isset($up) && $position[0] > 0) { if (!$HEADER_COLOR) {
for ($i = 0; $i < count($position); $i++) { $DATA['HEADER_COLOR'] = "#E0E2FF";
// change position order
// this gets temp, id before that, gets actual (moves one "down")
// this gets the old before (moves one "up")
// is done for every element in row
// echo "A: ".$row_data_id[$position[$i]]." (".$row_data_order[$position[$i]].") -- ".$row_data_id[$position[$i]-1]." (".$row_data_order[$position[$i]-1].")<br>";
$temp_id = $row_data_id[$position[$i]];
$row_data_id[$position[$i]] = $row_data_id[$position[$i]-1];
$row_data_id[$position[$i]-1] = $temp_id;
// echo "A: ".$row_data_id[$position[$i]]." (".$row_data_order[$position[$i]].") -- ".$row_data_id[$position[$i]-1]." (".$row_data_order[$position[$i]-1].")<br>";
} // for
} // if up
// the last position id from position array is not to be the count-1 of row_data_id array, or it is the last element
if (isset($down) && ($position[count($position) - 1] != (count($row_data_id) - 1))) {
for ($i = count($position) - 1; $i >= 0; $i --) {
// same as up, just up in other way, starts from bottom (last element) and moves "up"
// element before actuel gets temp, this element, becomes element after this,
// element after this, gets this
$temp_id = $row_data_id[$position[$i] + 1];
$row_data_id[$position[$i] + 1] = $row_data_id[$position[$i]];
$row_data_id[$position[$i]] = $temp_id;
} // for
} // if down
// write data ... (which has to be abstrackt ...)
if ((isset($up) && $position[0] > 0) ||
(isset($down) && ($position[count($position) - 1] != (count($row_data_id) - 1)))
) {
for ($i = 0; $i < count($row_data_id); $i ++) {
$q = "UPDATE ".$table_name." SET order_number = ".$row_data_order[$i]." WHERE ".$table_name."_id = ".$row_data_id[$i];
$q = $form->dbExec($q);
} // for all article ids ...
} // if write
} // if there is something to move
// get ...
$q = "SELECT ".$table_name."_id, name, order_number FROM ".$table_name." ";
if (!empty($where_string)) {
$q .= "WHERE $where_string ";
}
$q .= "ORDER BY order_number";
while ($res = $form->dbReturn($q)) {
$row_data[] = array (
"id" => $res[$table_name."_id"],
"name" => $res["name"],
"order" => $res["order_number"]
);
} // while read data ...
// html title
$HEADER['HTML_TITLE'] = $form->l->__('Edit Order');
$messages = array ();
// error msg
if (isset($error)) {
$messages[] = array ('msg' => $msg, 'class' => 'error', 'width' => '100%');
}
$DATA['form_error_msg'] = $messages;
// all the row data
$options_id = array ();
$options_name = array ();
$options_selected = array ();
if (!is_array($row_data)) {
$row_data = array ();
}
for ($i = 0; $i < count($row_data); $i ++) {
$options_id[] = $i;
$options_name[] = $row_data[$i]['name'];
// list of points to order
for ($j = 0; $j < count($position); $j++) {
// if matches, put into select array
if ($original_id[$position[$j]] == $row_data[$i]['id']) {
$options_selected[] = $i;
}
}
}
$DATA['options_id'] = $options_id;
$DATA['options_name'] = $options_name;
$DATA['options_selected'] = $options_selected;
// hidden list for the data (id, order number)
$row_data_id = array ();
$row_data_order = array ();
for ($i = 0; $i < count($row_data); $i++) {
$row_data_id[] = $row_data[$i]['id'];
$row_data_order[] = $row_data[$i]['order'];
}
$DATA['row_data_id'] = $row_data_id;
$DATA['row_data_order'] = $row_data_order;
// hidden names for the table & where string
$DATA['table_name'] = $table_name;
$DATA['where_string'] = isset($where_string) ? $where_string : '';
$EDIT_TEMPLATE = 'edit_order.tpl';
} else { } else {
// load call only if id is set $DATA['HEADER_COLOR'] = $_SESSION['HEADER_COLOR'];
if (isset(${$form->archive_pk_name})) { }
$form->formProcedureLoad(${$form->archive_pk_name}); $DATA['USER_NAME'] = $_SESSION["USER_NAME"];
$DATA['EUID'] = $_SESSION["EUID"];
$DATA['GROUP_NAME'] = $_SESSION["GROUP_NAME"];
$DATA['GROUP_LEVEL'] = $_SESSION["GROUP_LEVEL"];
$PAGES = $_SESSION["PAGES"];
//$form->debug('menu', $form->printAr($PAGES));
// build nav from $PAGES ...
if (!is_array($PAGES)) {
$PAGES = array ();
}
for ($i = 0, $i_max = count($PAGES); $i < $i_max; $i ++) {
if ($PAGES[$i]["menu"] && $PAGES[$i]["online"]) {
$menuarray[] = $PAGES[$i];
} }
$form->formProcedureNew(); }
$form->formProcedureSave();
$form->formProcedureDelete(); // split point for nav points
// delete call only if those two are set $COUNT_NAV_POINTS = count($menuarray);
if (isset($element_list) && isset($remove_name)) { $SPLIT_FACTOR = 3;
$form->formProcedureDeleteFromElementList($element_list, $remove_name); $START_SPLIT_COUNT = 3;
// WTF ?? I dunno what I am doing here ...
for ($i = 9; $i < $COUNT_NAV_POINTS; $i += $START_SPLIT_COUNT) {
if ($COUNT_NAV_POINTS > $i) {
$SPLIT_FACTOR += 1;
} }
}
$DATA['table_width'] = $table_width; for ($i = 1; $i <= count($menuarray); $i ++) {
// do that for new array
// write out error / status messages $j = $i - 1;
$messages[] = $form->formPrintMsg(); $menu_data[$j]['pagename'] = htmlentities($menuarray[($i-1)]["page_name"]);
$DATA['form_error_msg'] = $messages; $menu_data[$j]['filename'] = $menuarray[($i-1)]["filename"].$menuarray[($i-1)]["query_string"];
if ($i == 1 || !(($i - 1) % $SPLIT_FACTOR)) {
// MENU START $menu_data[$j]['splitfactor_in'] = 1;
// request some session vars }
if (!isset($HEADER_COLOR)) { if ($menuarray[($i - 1)]["filename"] == $form->getPageName()) {
$DATA['HEADER_COLOR'] = '#E0E2FF'; $position = $i - 1;
$menu_data[$j]['position'] = 1;
} else { } else {
$DATA['HEADER_COLOR'] = $_SESSION['HEADER_COLOR']; // add query stuff
} // HAS TO DONE LATER ... set urlencode, etc ...
$DATA['USER_NAME'] = $_SESSION['USER_NAME']; // check if popup needed
$DATA['EUID'] = $_SESSION['EUID']; if ($menuarray[($i - 1)]["popup"]) {
$DATA['GROUP_NAME'] = $_SESSION['GROUP_NAME']; $menu_data[$j]['popup'] = 1;
$DATA['GROUP_LEVEL'] = $_SESSION['GROUP_ACL_LEVEL']; $menu_data[$j]['rand'] = uniqid(rand());
$PAGES = $_SESSION['PAGES']; $menu_data[$j]['width'] = $menuarray[($i-1)]["popup_x"];
$menu_data[$j]['height'] = $menuarray[($i-1)]["popup_y"];
} // popup or not
} // highlight or not
if (!($i % $SPLIT_FACTOR) || (($i + 1) > count($menuarray))) {
$menu_data[$j]['splitfactor_out'] = 1;
} // split
} // for
$DATA['menu_data'] = $menu_data;
$DATA['page_name'] = $menuarray[$position]["page_name"];
$L_TITLE = $DATA['page_name'];
// html title
$HEADER['HTML_TITLE'] = ((!$L_TITLE) ? $form->l->__($G_TITLE) : $form->l->__($L_TITLE));
// END MENU
// LOAD AND NEW
$DATA['load'] = $form->formCreateLoad();
$DATA['new'] = $form->formCreateNew();
// SHOW DATA PART
if ($form->yes) {
$DATA['form_yes'] = $form->yes;
$DATA['form_my_page_name'] = $form->my_page_name;
//$form->debug('menu', $form->printAr($PAGES)); // depending on the "getPageName()" I show different stuff
switch ($form->my_page_name) {
// build nav from $PAGES ... case "edit_users":
if (!isset($PAGES) || !is_array($PAGES)) { $elements[] = $form->formCreateElement("login_error_count");
$PAGES = array (); $elements[] = $form->formCreateElement("login_error_date_last");
} $elements[] = $form->formCreateElement("login_error_date_first");
foreach ($PAGES as $PAGE_CUID => $PAGE_DATA) { $elements[] = $form->formCreateElement("enabled");
if ($PAGE_DATA['menu'] && $PAGE_DATA['online']) { $elements[] = $form->formCreateElement("protected");
$menuarray[] = $PAGE_DATA; $elements[] = $form->formCreateElement("username");
} $elements[] = $form->formCreateElement("password");
} $elements[] = $form->formCreateElement("password_change_interval");
$elements[] = $form->formCreateElement("email");
// split point for nav points $elements[] = $form->formCreateElement("last_name");
$COUNT_NAV_POINTS = count($menuarray); $elements[] = $form->formCreateElement("first_name");
$SPLIT_FACTOR = 3; $elements[] = $form->formCreateElement("edit_group_id");
$START_SPLIT_COUNT = 3; $elements[] = $form->formCreateElement("edit_access_right_id");
// WTF ?? I dunno what I am doing here ... $elements[] = $form->formCreateElement("strict");
for ($i = 9; $i < $COUNT_NAV_POINTS; $i += $START_SPLIT_COUNT) { $elements[] = $form->formCreateElement("locked");
if ($COUNT_NAV_POINTS > $i) { $elements[] = $form->formCreateElement("admin");
$SPLIT_FACTOR += 1; $elements[] = $form->formCreateElement("debug");
} $elements[] = $form->formCreateElement("db_debug");
} $elements[] = $form->formCreateElement("edit_language_id");
$elements[] = $form->formCreateElement("edit_scheme_id");
$position = 0; $elements[] = $form->formCreateElementListTable("edit_access_user");
for ($i = 1; $i <= count($menuarray); $i ++) { break;
// do that for new array case "edit_schemes":
$j = $i - 1; $elements[] = $form->formCreateElement("enabled");
$menu_data[$j]['pagename'] = htmlentities($menuarray[($i-1)]['page_name']); $elements[] = $form->formCreateElement("name");
$menu_data[$j]['filename'] = $menuarray[($i-1)]['filename'].(isset($menuarray[$j]['query_string']) ? $menuarray[$j]['query_string'] : ''); $elements[] = $form->formCreateElement("header_color");
if ($i == 1 || !($j % $SPLIT_FACTOR)) { $elements[] = $form->formCreateElement("template");
$menu_data[$j]['splitfactor_in'] = 1; break;
} else { case "edit_pages":
$menu_data[$j]['splitfactor_in'] = 0; if (!$form->table_array["edit_page_id"]["value"]) {
} $q = "DELETE FROM temp_files";
if ($menuarray[$j]['filename'] == $form->getPageName()) { $form->dbExec($q);
$position = $j; // gets all files in the current dir ending with .php
$menu_data[$j]['position'] = 1; $crap = exec("ls *.php", $output, $status);
$menu_data[$j]['popup'] = 0; // now get all that are NOT in de DB
} else { $q = "INSERT INTO temp_files VALUES ";
// add query stuff for ($i = 0; $i < count($output); $i ++) {
// HAS TO DONE LATER ... set urlencode, etc ... $t_q = "('".$form->dbEscapeString($output[$i])."')";
// check if popup needed $form->dbExec($q.$t_q, 'NULL');
if (isset($menuarray[$j]['popup']) && $menuarray[$j]['popup'] == 1) { }
$menu_data[$j]['popup'] = 1; $elements[] = $form->formCreateElement("filename");
$menu_data[$j]['rand'] = uniqid((string)rand());
$menu_data[$j]['width'] = $menuarray[$j]['popup_x'];
$menu_data[$j]['height'] = $menuarray[$j]['popup_y'];
} else { } else {
$menu_data[$j]['popup'] = 0; // show file menu
} // just show name of file ...
$menu_data[$j]['position'] = 0; $DATA['filename_exist'] = 1;
} // highlight or not $DATA['filename'] = $form->table_array["filename"]["value"];
if (!($i % $SPLIT_FACTOR) || (($i + 1) > count($menuarray))) { } // File Name View IF
$menu_data[$j]['splitfactor_out'] = 1; $elements[] = $form->formCreateElement("name");
} else { // $elements[] = $form->formCreateElement("tag");
$menu_data[$j]['splitfactor_out'] = 0; // $elements[] = $form->formCreateElement("min_acl");
} $elements[] = $form->formCreateElement("order_number");
} // for $elements[] = $form->formCreateElement("online");
// $form->debug('MENU ARRAY', $form->printAr($menu_data)); $elements[] = $form->formCreateElement("menu");
$DATA['menu_data'] = $menu_data; $elements[] = $form->formCreateElementListTable("edit_query_string");
$DATA['page_name'] = $menuarray[$position]['page_name']; $elements[] = $form->formCreateElement("popup");
$L_TITLE = $DATA['page_name']; $elements[] = $form->formCreateElement("popup_x");
// html title $elements[] = $form->formCreateElement("popup_y");
$HEADER['HTML_TITLE'] = $form->l->__($L_TITLE); $elements[] = $form->formCreateElementReferenceTable("edit_visible_group");
// END MENU $elements[] = $form->formCreateElementReferenceTable("edit_menu_group");
// LOAD AND NEW break;
$DATA['load'] = $form->formCreateLoad(); case "edit_languages":
$DATA['new'] = $form->formCreateNew(); $elements[] = $form->formCreateElement("enabled");
// SHOW DATA PART $elements[] = $form->formCreateElement("short_name");
if ($form->yes) { $elements[] = $form->formCreateElement("long_name");
$DATA['form_yes'] = $form->yes; $elements[] = $form->formCreateElement("iso_name");
$DATA['form_my_page_name'] = $form->my_page_name; break;
$DATA['filename_exist'] = 0; case "edit_groups":
$DATA['drop_down_input'] = 0; $elements[] = $form->formCreateElement("enabled");
$elements[] = $form->formCreateElement("name");
// depending on the "getPageName()" I show different stuff $elements[] = $form->formCreateElement("edit_access_right_id");
switch ($form->my_page_name) { $elements[] = $form->formCreateElement("edit_scheme_id");
case 'edit_users': $elements[] = $form->formCreateElementListTable("edit_page_access");
$elements[] = $form->formCreateElement('login_error_count'); break;
$elements[] = $form->formCreateElement('login_error_date_last'); case "edit_visible_group":
$elements[] = $form->formCreateElement('login_error_date_first'); $elements[] = $form->formCreateElement("name");
$elements[] = $form->formCreateElement('enabled'); $elements[] = $form->formCreateElement("flag");
$elements[] = $form->formCreateElement('protected'); break;
$elements[] = $form->formCreateElement('username'); case "edit_menu_group":
$elements[] = $form->formCreateElement('password'); $elements[] = $form->formCreateElement("name");
$elements[] = $form->formCreateElement('password_change_interval'); $elements[] = $form->formCreateElement("flag");
$elements[] = $form->formCreateElement('email'); $elements[] = $form->formCreateElement("order_number");
$elements[] = $form->formCreateElement('last_name'); break;
$elements[] = $form->formCreateElement('first_name'); case "edit_access":
$elements[] = $form->formCreateElement('edit_group_id'); $elements[] = $form->formCreateElement("name");
$elements[] = $form->formCreateElement('edit_access_right_id'); $elements[] = $form->formCreateElement("enabled");
$elements[] = $form->formCreateElement('strict'); $elements[] = $form->formCreateElement("protected");
$elements[] = $form->formCreateElement('locked'); $elements[] = $form->formCreateElement("color");
$elements[] = $form->formCreateElement('admin'); $elements[] = $form->formCreateElement("description");
$elements[] = $form->formCreateElement('debug'); // add name/value list here
$elements[] = $form->formCreateElement('db_debug'); $elements[] = $form->formCreateElementListTable("edit_access_data");
$elements[] = $form->formCreateElement('edit_language_id'); break;
$elements[] = $form->formCreateElement('edit_scheme_id'); default:
$elements[] = $form->formCreateElementListTable('edit_access_user'); print "[No valid page definition given]";
$elements[] = $form->formCreateElement('additional_acl'); break;
break;
case 'edit_schemes':
$elements[] = $form->formCreateElement('enabled');
$elements[] = $form->formCreateElement('name');
$elements[] = $form->formCreateElement('header_color');
$elements[] = $form->formCreateElement('template');
break;
case 'edit_pages':
if (!isset($form->table_array['edit_page_id']['value'])) {
$q = "DELETE FROM temp_files";
$form->dbExec($q);
// gets all files in the current dir ending with .php
$crap = exec('ls *.php', $output, $status);
// now get all that are NOT in de DB
$q = "INSERT INTO temp_files VALUES ";
for ($i = 0; $i < count($output); $i ++) {
$t_q = "('".$form->dbEscapeString($output[$i])."')";
$form->dbExec($q.$t_q, 'NULL');
}
$elements[] = $form->formCreateElement('filename');
} else {
// show file menu
// just show name of file ...
$DATA['filename_exist'] = 1;
$DATA['filename'] = $form->table_array['filename']['value'];
} // File Name View IF
$elements[] = $form->formCreateElement('name');
// $elements[] = $form->formCreateElement('tag');
// $elements[] = $form->formCreateElement('min_acl');
$elements[] = $form->formCreateElement('order_number');
$elements[] = $form->formCreateElement('online');
$elements[] = $form->formCreateElement('menu');
$elements[] = $form->formCreateElementListTable('edit_query_string');
$elements[] = $form->formCreateElement('content_alias_edit_page_id');
$elements[] = $form->formCreateElementListTable('edit_page_content');
$elements[] = $form->formCreateElement('popup');
$elements[] = $form->formCreateElement('popup_x');
$elements[] = $form->formCreateElement('popup_y');
$elements[] = $form->formCreateElementReferenceTable('edit_visible_group');
$elements[] = $form->formCreateElementReferenceTable('edit_menu_group');
break;
case 'edit_languages':
$elements[] = $form->formCreateElement('enabled');
$elements[] = $form->formCreateElement('short_name');
$elements[] = $form->formCreateElement('long_name');
$elements[] = $form->formCreateElement('iso_name');
break;
case 'edit_groups':
$elements[] = $form->formCreateElement('enabled');
$elements[] = $form->formCreateElement('name');
$elements[] = $form->formCreateElement('edit_access_right_id');
$elements[] = $form->formCreateElement('edit_scheme_id');
$elements[] = $form->formCreateElementListTable('edit_page_access');
$elements[] = $form->formCreateElement('additional_acl');
break;
case 'edit_visible_group':
$elements[] = $form->formCreateElement('name');
$elements[] = $form->formCreateElement('flag');
break;
case 'edit_menu_group':
$elements[] = $form->formCreateElement('name');
$elements[] = $form->formCreateElement('flag');
$elements[] = $form->formCreateElement('order_number');
break;
case 'edit_access':
$elements[] = $form->formCreateElement('name');
$elements[] = $form->formCreateElement('enabled');
$elements[] = $form->formCreateElement('protected');
$elements[] = $form->formCreateElement('color');
$elements[] = $form->formCreateElement('description');
// add name/value list here
$elements[] = $form->formCreateElementListTable('edit_access_data');
$elements[] = $form->formCreateElement('additional_acl');
break;
default:
print '[No valid page definition given]';
break;
}
// $form->debug('edit', "Elements: <pre>".$form->printAr($elements));
$DATA['elements'] = $elements;
$DATA['hidden'] = $form->formCreateHiddenFields();
$DATA['save_delete'] = $form->formCreateSaveDelete();
} else {
$DATA['form_yes'] = 0;
} }
$EDIT_TEMPLATE = 'edit_body.tpl'; // $form->debug('edit', "Elements: <pre>".$form->printAr($elements));
$DATA['elements'] = $elements;
$DATA['hidden'] = $form->formCreateHiddenFields();
$DATA['save_delete'] = $form->formCreateSaveDelete();
} }
// debug data, if DEBUG flag is on, this data is print out // debug data, if DEBUG flag is on, this data is print out
$DEBUG_DATA['DEBUG'] = isset($DEBUG_TMPL) ? $DEBUG_TMPL : ''; $DEBUG_DATA['DEBUG'] = $DEBUG_TMPL;
// create main data array // create main data array
$CONTENT_DATA = array_merge($HEADER, $DATA, $DEBUG_DATA); $CONTENT_DATA = array_merge($HEADER, $DATA, $DEBUG_DATA);
@@ -467,7 +319,7 @@ if (is_dir(BASE.TEMPLATES_C)) {
if (is_dir(BASE.CACHE)) { if (is_dir(BASE.CACHE)) {
$smarty->setCacheDir(BASE.CACHE); $smarty->setCacheDir(BASE.CACHE);
} }
$smarty->display($EDIT_TEMPLATE, 'editAdmin_'.$lang, 'editAdmin_'.$lang); $smarty->display('edit_body.tpl');
// debug output // debug output
echo $login->printErrorMsg(); echo $login->printErrorMsg();

View File

@@ -1,104 +1,95 @@
<?php declare(strict_types=1); <?php
$edit_access = array ( $edit_access = array (
'table_array' => array ( "table_array" => array (
'edit_access_id' => array ( "edit_access_id" => array (
'value' => isset($GLOBALS['edit_access_id']) ? $GLOBALS['edit_access_id'] : '', "value" => $GLOBALS["edit_access_id"],
'type' => 'hidden', "type" => "hidden",
'pk' => 1 "pk" => 1
), ),
'name' => array ( "name" => array (
'value' => isset($GLOBALS['name']) ? $GLOBALS['name'] : '', "value" => $GLOBALS["name"],
'output_name' => $this->l->__('Access Group Name'), "output_name" => $this->l->__("Access Group Name"),
'mandatory' => 1, "mandatory" => 1,
'type' => 'text', "type" => "text",
'error_check' => 'alphanumericspace|unique' "error_check" => "alphanumericspace|unique"
), ),
'description' => array ( "description" => array (
'value' => isset($GLOBALS['description']) ? $GLOBALS['description'] : '', "value" => $GLOBALS["description"],
'output_name' => $this->l->__('Description'), "output_name" => $this->l->__("Description"),
'type' => 'textarea' "type" => "textarea"
), ),
'color' => array ( "color" => array (
'value' => isset($GLOBALS['color']) ? $GLOBALS['color'] : '', "value" => $GLOBALS["color"],
'output_name' => $this->l->__('Color'), "output_name" => $this->l->__("Color"),
'mandatory' => 0, "mandatory" => 0,
'type' => 'text', "type" => "text",
'size' => 6, "size" => 6,
'length' => 6, "length" => 6,
'error_check' => 'custom', "error_check" => "custom",
'error_regex' => "/[\dA-Fa-f]{6}/", "error_regex" => "/[\dA-Fa-f]{6}/",
'error_example' => 'F6A544' "error_example" => "F6A544"
), ),
'enabled' => array ( "enabled" => array (
'value' => isset($GLOBALS['enabled']) ? $GLOBALS['enabled'] : 0, "value" => $GLOBALS["enabled"],
'output_name' => 'Enabled', "output_name" => "Enabled",
'type' => 'binary', "type" => "binary",
'int' => 1, // OR 'bool' => 1 "int" => 1, // OR "bool" => 1
'element_list' => array ( "element_list" => array (
'1' => 'Yes', "1" => "Yes",
'0' => 'No' "0" => "No"
) )
), ),
'protected' => array ( "protected" => array (
'value' => isset($GLOBALS['protected']) ? $GLOBALS['protected'] : 0, "value" => $GLOBALS["protected"],
'output_name' => 'Protected', "output_name" => "Protected",
'type' => 'binary', "type" => "binary",
'int' => 1, "int" => 1,
'element_list' => array ( "element_list" => array (
'1' => 'Yes', "1" => "Yes",
'0' => 'No' "0" => "No"
) )
),
'additional_acl' => array (
'value' => isset($GLOBALS['additional_acl']) ? $GLOBALS['additional_acl'] : '',
'output_name' => 'Additional ACL (as JSON)',
'type' => 'textarea',
'error_check' => 'json',
'rows' => 10,
'cols' => 60
),
),
'table_name' => 'edit_access',
"load_query" => "SELECT edit_access_id, name FROM edit_access ORDER BY name",
'show_fields' => array (
array (
'name' => 'name'
) )
), ),
'element_list' => array ( "table_name" => "edit_access",
'edit_access_data' => array ( "load_query" => "SELECT edit_access_id, name FROM edit_access ORDER BY name",
'output_name' => 'Edit Access Data', "show_fields" => array (
'delete_name' => 'remove_edit_access_data', array (
// 'type' => 'reference_data', # is not a sub table read and connect, but only a sub table with data "name" => "name"
'max_empty' => 5, # maxium visible if no data is set, if filled add this number to visible )
'prefix' => 'ead', ),
'elements' => array ( "element_list" => array (
'name' => array ( "edit_access_data" => array (
'type' => 'text', "output_name" => "Edit Access Data",
'error_check' => 'alphanumeric|unique', "type" => "reference_data", # is not a sub table read and connect, but only a sub table with data
'output_name' => 'Name', "max_empty" => 5, # maxium visible if no data is set, if filled add this number to visible
'mandatory' => 1 "prefix" => "ead",
"elements" => array (
"edit_access_data_id" => array (
"output_name" => "Activate",
"type" => "hidden",
"int" => 1,
"pk_id" => 1
), ),
'value' => array ( "name" => array (
'type' => 'text', "type" => "text",
'output_name' => 'Value' "error_check" => "alphanumeric|unique",
"output_name" => "Name"
), ),
'enabled' => array ( "value" => array (
'type' => 'checkbox', "type" => "text",
'output_name' => 'Activate', "output_name" => "Value"
'int' => 1,
'element_list' => array(1)
), ),
/*'edit_access_id' => array ( "enabled" => array (
'int' => 1, "type" => "checkbox",
'type' => 'hidden', "output_name" => "Activate",
'fk_id' => 1 # reference main key from master table above "int" => 1,
),*/ "element_list" => array(1)
'edit_access_data_id' => array ( ),
'type' => 'hidden', "edit_access_id" => array (
'int' => 1, "int" => 1,
'pk_id' => 1 "type" => "hidden",
"fk_id" => 1 # reference main key from master table above
) )
) )
) )

View File

@@ -1,105 +1,98 @@
<?php declare(strict_types=1); <?php
$edit_groups = array ( $edit_groups = array (
'table_array' => array ( "table_array" => array (
'edit_group_id' => array ( "edit_group_id" => array (
'value' => isset($GLOBALS['edit_group_id']) ? $GLOBALS['edit_group_id'] : '', "value" => $GLOBALS["edit_group_id"],
'pk' => 1, "pk" => 1,
'type' => 'hidden' "type" => "hidden"
), ),
'enabled' => array ( "enabled" => array (
'value' => isset($GLOBALS['enabled']) ? $GLOBALS['enabled'] : '', "value" => $GLOBALS["enabled"],
'output_name' => 'Enabled', "output_name" => "Enabled",
'int' => 1, "int" => 1,
'type' => 'binary', "type" => "binary",
'element_list' => array ( "element_list" => array (
'1' => 'Yes', "1" => "Yes",
'0' => 'No' "0" => "No"
) )
), ),
'name' => array ( "name" => array (
'value' => isset($GLOBALS['name']) ? $GLOBALS['name'] : '', "value" => $GLOBALS["name"],
'output_name' => 'Group Name', "output_name" => "Group Name",
'type' => 'text', "type" => "text",
'mandatory' => 1 "mandatory" => 1
), ),
'edit_access_right_id' => array ( "edit_access_right_id" => array (
'value' => isset($GLOBALS['edit_access_right_id']) ? $GLOBALS['edit_access_right_id'] : '', "value" => $GLOBALS["edit_access_right_id"],
'output_name' => 'Group Level', "output_name" => "Group Level",
'mandatory' => 1, "mandatory" => 1,
'int' => 1, "int" => 1,
'type' => 'drop_down_db', "type" => "drop_down_db",
'query' => "SELECT edit_access_right_id, name FROM edit_access_right ORDER BY level" "query" => "SELECT edit_access_right_id, name FROM edit_access_right ORDER BY level"
), ),
'edit_scheme_id' => array ( "edit_scheme_id" => array (
'value' => isset($GLOBALS['edit_scheme_id']) ? $GLOBALS['edit_scheme_id'] : '', "value" => $GLOBALS["edit_scheme_id"],
'output_name' => 'Group Scheme', "output_name" => "Group Scheme",
'int_null' => 1, "int_null" => 1,
'type' => 'drop_down_db', "type" => "drop_down_db",
'query' => "SELECT edit_scheme_id, name FROM edit_scheme WHERE enabled = 1 ORDER BY name" "query" => "SELECT edit_scheme_id, name FROM edit_scheme WHERE enabled = 1 ORDER BY name"
),
'additional_acl' => array (
'value' => isset($GLOBALS['additional_acl']) ? $GLOBALS['additional_acl'] : '',
'output_name' => 'Additional ACL (as JSON)',
'type' => 'textarea',
'error_check' => 'json',
'rows' => 10,
'cols' => 60
),
),
'load_query' => "SELECT edit_group_id, name, enabled FROM edit_group ORDER BY name",
'table_name' => 'edit_group',
'show_fields' => array (
array (
'name' => 'name'
),
array (
'name' => 'enabled',
'binary' => array ('Yes', 'No'),
'before_value' => 'Enabled: '
) )
), ),
'element_list' => array ( "load_query" => "SELECT edit_group_id, name, enabled FROM edit_group ORDER BY name",
'edit_page_access' => array ( "table_name" => "edit_group",
'output_name' => 'Pages', "show_fields" => array (
'mandatory' => 1, array (
'delete' => 0, // set then reference entries are deleted, else the 'enable' flag is only set "name" => "name"
'enable_name' => 'enable_page_access', ),
'prefix' => 'epa', array (
'read_data' => array ( "name" => "enabled",
'table_name' => 'edit_page', "binary" => array ("Yes", "No"),
'pk_id' => 'edit_page_id', "before_value" => "Enabled: "
'name' => 'name', )
'order' => 'order_number' ),
"element_list" => array (
"edit_page_access" => array (
"output_name" => "Pages",
"mandatory" => 1,
"delete" => 0, // set then reference entries are deleted, else the "enable" flag is only set
"enable_name" => "enable_page_access",
"prefix" => "epa",
"read_data" => array (
"table_name" => "edit_page",
"pk_id" => "edit_page_id",
"name" => "name",
"order" => "order_number"
), ),
'elements' => array ( "elements" => array (
'edit_page_access_id' => array ( "edit_page_access_id" => array (
'type' => 'hidden', "output_name" => "Activate",
'int' => 1, "type" => "hidden",
'pk_id' => 1 "int" => 1,
"pk_id" => 1
), ),
'enabled' => array ( "enabled" => array (
'type' => 'checkbox', "type" => "checkbox",
'output_name' => 'Activate', "output_name" => "Activate",
'int' => 1, "int" => 1,
'element_list' => array(1) "element_list" => array(1)
), ),
'edit_access_right_id' => array ( "edit_access_right_id" => array (
'type' => 'drop_down_db', "type" => "drop_down_db",
'output_name' => 'Access Level', "output_name" => "Access Level",
'int' => 1, "int" => 1,
'preset' => 1, // first of the select "preset" => 1, // first of the select
'query' => "SELECT edit_access_right_id, name FROM edit_access_right ORDER BY level" "query" => "SELECT edit_access_right_id, name FROM edit_access_right ORDER BY level"
), ),
'edit_page_id' => array ( "edit_page_id" => array (
'int' => 1, "int" => 1,
'type' => 'hidden' "type" => "hidden"
) )
/*, /*,
'edit_default' => array ( "edit_default" => array (
'output_name' => 'Default', "output_name" => "Default",
'type' => 'radio', "type" => "radio",
'mandatory' => 1 "mandatory" => 1
)*/ )*/
) )
) // edit pages ggroup ) // edit pages ggroup

View File

@@ -1,75 +1,75 @@
<?php declare(strict_types=1); <?php
$edit_languages=array ( $edit_languages=array (
'table_array' => array ( "table_array" => array (
'edit_language_id' => array ( "edit_language_id" => array (
'value' => isset($GLOBALS['edit_language_id']) ? $GLOBALS['edit_language_id'] : '', "value" => $GLOBALS["edit_language_id"],
'type' => 'hidden', "type" => "hidden",
'pk' => 1 "pk" => 1
), ),
'short_name' => array ( "short_name" => array (
'value' => isset($GLOBALS['short_name']) ? $GLOBALS['short_name'] : '', "value" => $GLOBALS["short_name"],
'output_name' => 'Language (short)', "output_name" => "Language (short)",
'mandatory' => 1, "mandatory" => 1,
'type' => 'text', "type" => "text",
'size' => 2, "size" => 2,
'length' => 2 "length" => 2
), ),
'long_name' => array ( "long_name" => array (
'value' => isset($GLOBALS['long_name']) ? $GLOBALS['long_name'] : '', "value" => $GLOBALS["long_name"],
'output_name' => 'Language (long)', "output_name" => "Language (long)",
'mandatory' => 1, "mandatory" => 1,
'type' => 'text', "type" => "text",
'size' => 40 "size" => 40
), ),
'iso_name' => array ( "iso_name" => array (
'value' => isset($GLOBALS['iso_name']) ? $GLOBALS['iso_name'] : '', "value" => $GLOBALS["iso_name"],
'output_name' => 'ISO Code', "output_name" => "ISO Code",
'mandatory' => 1, "mandatory" => 1,
'type' => 'text' "type" => "text"
), ),
'order_number' => array ( "order_number" => array (
'value' => isset($GLOBALS['order_number']) ? $GLOBALS['order_number'] : '', "value" => $GLOBALS["order_number"],
'int' => 1, "int" => 1,
'order' => 1 "order" => 1
), ),
'enabled' => array ( "enabled" => array (
'value' => isset($GLOBALS['enabled']) ? $GLOBALS['enabled'] : '', "value" => $GLOBALS["enabled"],
'output_name' => 'Enabled', "output_name" => "Enabled",
'int' => 1, "int" => 1,
'type' => 'binary', "type" => "binary",
'element_list' => array ( "element_list" => array (
'1' => 'Yes', "1" => "Yes",
'0' => 'No' "0" => "No"
) )
), ),
'lang_default' => array ( "lang_default" => array (
'value' => isset($GLOBALS['lang_default']) ? $GLOBALS['lang_default'] : '', "value" => $GLOBALS["lang_default"],
'output_name' => 'Default Language', "output_name" => "Default Language",
'int' => 1, "int" => 1,
'type' => 'binary', "type" => "binary",
'element_list' => array ( "element_list" => array (
'1' => 'Yes', "1" => "Yes",
'0' => 'No' "0" => "No"
) )
) )
), ),
'load_query' => "SELECT edit_language_id, long_name, iso_name, enabled FROM edit_language ORDER BY long_name", "load_query" => "SELECT edit_language_id, long_name, iso_name, enabled FROM edit_language ORDER BY long_name",
'show_fields' => array ( "show_fields" => array (
array ( array (
'name' => 'long_name' "name" => "long_name"
), ),
array ( array (
'name' => 'iso_name', "name" => "iso_name",
'before_value' => 'ISO: ' "before_value" => "ISO: "
), ),
array ( array (
'name' => 'enabled', "name" => "enabled",
'before_value' => 'Enabled: ', "before_value" => "Enabled: ",
'binary' => array ('Yes','No') "binary" => array ("Yes","No")
) )
), ),
'table_name' => 'edit_language' "table_name" => "edit_language"
); );
// __END__ // __END__

View File

@@ -1,38 +1,38 @@
<?php declare(strict_types=1); <?php
$edit_menu_group = array ( $edit_menu_group = array (
'table_array' => array ( "table_array" => array (
'edit_menu_group_id' => array ( "edit_menu_group_id" => array (
'value' => isset($GLOBALS['edit_menu_group_id']) ? $GLOBALS['edit_menu_group_id'] : '', "value" => $GLOBALS["edit_menu_group_id"],
'type' => 'hidden', "type" => "hidden",
'pk' => 1 "pk" => 1
), ),
'name' => array ( "name" => array (
'value' => isset($GLOBALS['name']) ? $GLOBALS['name'] : '', "value" => $GLOBALS["name"],
'output_name' => $this->l->__('Group name'), "output_name" => $this->l->__("Group name"),
'mandatory' => 1, "mandatory" => 1,
'type' => 'text' "type" => "text"
), ),
'flag' => array ( "flag" => array (
'value' => isset($GLOBALS['flag']) ? $GLOBALS['flag'] : '', "value" => $GLOBALS["flag"],
'output_name' => $this->l->__('Flag'), "output_name" => $this->l->__("Flag"),
'mandatory' => 1, "mandatory" => 1,
'type' => 'text', "type" => "text",
'error_check' => 'alphanumeric|unique' "error_check" => "alphanumeric|unique"
), ),
'order_number' => array ( "order_number" => array (
'value' => isset($GLOBALS['order_number']) ? $GLOBALS['order_number'] : '', "value" => $GLOBALS["order_number"],
'output_name' => 'Group order', "output_name" => "Group order",
'type' => 'order', "type" => "order",
'int' => 1, "int" => 1,
'order' => 1 "order" => 1
) )
), ),
'table_name' => 'edit_menu_group', "table_name" => "edit_menu_group",
'load_query' => "SELECT edit_menu_group_id, name FROM edit_menu_group ORDER BY name", "load_query" => "SELECT edit_menu_group_id, name FROM edit_menu_group ORDER BY name",
'show_fields' => array ( "show_fields" => array (
array ( array (
'name' => 'name' "name" => "name"
) )
) )
); );

View File

@@ -1,235 +1,179 @@
<?php declare(strict_types=1); <?php
$edit_pages = array ( $edit_pages = array (
'table_array' => array ( "table_array" => array (
'edit_page_id' => array ( "edit_page_id" => array (
'value' => isset($GLOBALS['edit_page_id']) ? $GLOBALS['edit_page_id'] : '', "value" => $GLOBALS["edit_page_id"],
'type' => 'hidden', "type" => "hidden",
'pk' => 1 "pk" => 1
), ),
'filename' => array ( "filename" => array (
'value' => isset($GLOBALS['filename']) ? $GLOBALS['filename'] : '', "value" => $GLOBALS["filename"],
'output_name' => 'Add File ...', "output_name" => "Add File ...",
'mandatory' => 1, "mandatory" => 1,
'type' => 'drop_down_db', "type" => "drop_down_db",
'query' => "SELECT DISTINCT temp_files.filename AS id, temp_files.filename AS name ". "query" => "SELECT DISTINCT temp_files.filename AS id, temp_files.filename AS name FROM temp_files LEFT JOIN edit_page ep ON temp_files.filename = ep.filename WHERE ep.filename IS NULL"
"FROM temp_files ".
"LEFT JOIN edit_page ep ON temp_files.filename = ep.filename ".
"WHERE ep.filename IS NULL"
), ),
'name' => array ( "name" => array (
'value' => isset($GLOBALS['name']) ? $GLOBALS['name'] : '', "value" => $GLOBALS["name"],
'output_name' => 'Page name', "output_name" => "Page name",
'mandatory' => 1, "mandatory" => 1,
'type' => 'text' "type" => "text"
), ),
'order_number' => array ( "order_number" => array (
'value' => isset($GLOBALS['order_number']) ? $GLOBALS['order_number'] : '', "value" => $GLOBALS["order_number"],
'output_name' => 'Page order', "output_name" => "Page order",
'type' => 'order', "type" => "order",
'int' => 1, "int" => 1,
'order' => 1 "order" => 1
), ),
/* 'flag' => array ( /* "flag" => array (
'value' => isset($GLOBALS['flag']) ? $GLOBALS['flag'] : '', "value" => $GLOBALS["flag"],
'output_name' => 'Page Flag', "output_name" => "Page Flag",
'type' => 'drop_down_array', "type" => "drop_down_array",
'query' => array ( "query" => array (
'0' => '0', "0" => "0",
'1' => '1', "1" => "1",
'2' => '2', "2" => "2",
'3' => '3', "3" => "3",
'4' => '4', "4" => "4",
'5' => '5' "5" => "5"
) )
),*/ ),*/
'online' => array ( "online" => array (
'value' => isset($GLOBALS['online']) ? $GLOBALS['online'] : '', "value" => $GLOBALS["online"],
'output_name' => 'Online', "output_name" => "Online",
'int' => 1, "int" => 1,
'type' => 'binary', "type" => "binary",
'element_list' => array ( "element_list" => array (
'1' => 'Yes', "1" => "Yes",
'0' => 'No' "0" => "No"
) )
), ),
'menu' => array ( "menu" => array (
'value' => isset($GLOBALS['menu']) ? $GLOBALS['menu'] : '', "value" => $GLOBALS["menu"],
'output_name' => 'Menu', "output_name" => "Menu",
'int' => 1, "int" => 1,
'type' => 'binary', "type" => "binary",
'element_list' => array ( "element_list" => array (
'1' => 'Yes', "1" => "Yes",
'0' => 'No' "0" => "No"
) )
), ),
'popup' => array ( "popup" => array (
'value' => isset($GLOBALS['popup']) ? $GLOBALS['popup'] : '', "value" => $GLOBALS["popup"],
'output_name' => 'Popup', "output_name" => "Popup",
'int' => 1, "int" => 1,
'type' => 'binary', "type" => "binary",
'element_list' => array ( "element_list" => array (
'1' => 'Yes', "1" => "Yes",
'0' => 'No' "0" => "No"
) )
), ),
'popup_x' => array ( "popup_x" => array (
'value' => isset($GLOBALS['popup_x']) ? $GLOBALS['popup_x'] : '', "value" => $GLOBALS["popup_x"],
'output_name' => 'Popup Width', "output_name" => "Popup Width",
'int_null' => 1, "int_null" => 1,
'type' => 'text', "type" => "text",
'size' => 4, "size" => 4,
'length' => 4 "length" => 4
), ),
'popup_y' => array ( "popup_y" => array (
'value' => isset($GLOBALS['popup_y']) ? $GLOBALS['popup_y'] : '', "value" => $GLOBALS["popup_y"],
'output_name' => 'Popup Height', "output_name" => "Popup Height",
'int_null' => 1, "int_null" => 1,
'type' => 'text', "type" => "text",
'size' => 4, "size" => 4,
'length' => 4 "length" => 4
), )/*,
'content_alias_edit_page_id' => array ( "query_string" => array (
'value' => isset($GLOBALS['content_alias_edit_page_id']) ? $GLOBALS['content_alias_edit_page_id'] : '', "value" => $GLOBALS["query_string"],
'output_name' => 'Content Alias Source', "output_name" => "Query String for Link",
'int_null' => 1, "type" => "text",
'type' => 'drop_down_db', "size" => "50"
// query creation )*/
'select_distinct' => 0,
'pk_name' => 'edit_page_id AS content_alias_edit_page_id',
'input_name' => 'name',
'table_name' => 'edit_page',
'where_not_self' => 1,
'order_by' => 'order_number'
// 'query' => "SELECT edit_page_id AS content_alias_edit_page_id, name ".
// "FROM edit_page ".
// (isset($GLOBALS['edit_page_id']) ? " WHERE edit_page_id <> ".$GLOBALS['edit_page_id'] : "")." ".
// "ORDER BY order_number"
)
), ),
'load_query' => "SELECT edit_page_id, filename, name, online, menu, popup FROM edit_page ORDER BY order_number", "load_query" => "SELECT edit_page_id, filename, name, online, menu, popup FROM edit_page ORDER BY order_number",
'table_name' => 'edit_page', "table_name" => "edit_page",
'show_fields' => array ( "show_fields" => array (
array ( array (
'name' => 'name' "name" => "name"
), ),
array ( array (
'name' => 'filename', "name" => "filename",
'before_value' => 'Filename: ' "before_value" => "Filename: "
), ),
array ( array (
'name' => 'online', "name" => "online",
'binary' => array ('Yes','No'), "binary" => array ("Yes","No"),
'before_value' => 'Online: ' "before_value" => "Online: "
), ),
array ( array (
'name' => 'menu', "name" => "menu",
'binary' => array ('Yes','No'), "binary" => array ("Yes","No"),
'before_value' => 'Menu: ' "before_value" => "Menu: "
), ),
array ( array (
'name' => 'popup', "name" => "popup",
'binary' => array ('Yes','No'), "binary" => array ("Yes","No"),
'before_value' => 'Popup: ' "before_value" => "Popup: "
) )
), ),
'reference_arrays' => array ( "reference_arrays" => array (
'edit_visible_group' => array ( "edit_visible_group" => array (
'table_name' => 'edit_page_visible_group', "table_name" => "edit_page_visible_group",
'other_table_pk' => 'edit_visible_group_id', "other_table_pk" => "edit_visible_group_id",
'output_name' => 'Visible Groups (access)', "output_name" => "Visible Groups (access)",
'mandatory' => 1, "mandatory" => 1,
'select_size' => 10, "select_size" => 10,
'selected' => isset($GLOBALS['edit_visible_group_id']) ? $GLOBALS['edit_visible_group_id'] : '', "selected" => $GLOBALS["edit_visible_group_id"],
'query' => "SELECT edit_visible_group_id, 'Name: ' || name || ', ' || 'Flag: ' || flag FROM edit_visible_group ORDER BY name" "query" => 'SELECT edit_visible_group_id, \'Name: \' || name || \', \' || \'Flag: \' || flag FROM edit_visible_group ORDER BY name'
), ),
'edit_menu_group' => array ( "edit_menu_group" => array (
'table_name' => 'edit_page_menu_group', "table_name" => "edit_page_menu_group",
'other_table_pk' => 'edit_menu_group_id', "other_table_pk" => "edit_menu_group_id",
'output_name' => 'Menu Groups (grouping)', "output_name" => "Menu Groups (grouping)",
'mandatory' => 1, "mandatory" => 1,
'select_size' => 10, "select_size" => 10,
'selected' => isset($GLOBALS['edit_menu_group_id']) ? $GLOBALS['edit_menu_group_id'] : '', "selected" => $GLOBALS["edit_menu_group_id"],
'query' => "SELECT edit_menu_group_id, 'Name: ' || name || ', ' || 'Flag: ' || flag FROM edit_menu_group ORDER BY order_number" "query" => 'SELECT edit_menu_group_id, \'Name: \' || name || \', \' || \'Flag: \' || flag FROM edit_menu_group ORDER BY order_number'
) )
), ),
'element_list' => array ( "element_list" => array (
'edit_query_string' => array ( "edit_query_string" => array (
'output_name' => 'Query Strings', "output_name" => "Query Strings",
'delete_name' => 'remove_query_string', "delete_name" => "remove_query_string",
'prefix' => 'eqs', "prefix" => "eqs",
'elements' => array ( "elements" => array (
'name' => array ( "name" => array (
'output_name' => 'Name', "output_name" => "Name",
'type' => 'text', "type" => "text",
'error_check' => 'unique|alphanumeric', "error_check" => "unique|alphanumeric",
'mandatory' => 1 "mandatory" => 1
), ),
'value' => array ( "value" => array (
'output_name' => 'Value', "output_name" => "Value",
'type' => 'text' "type" => "text"
), ),
'enabled' => array ( "enabled" => array (
'output_name' => 'Enabled', "output_name" => "Enabled",
'int' => 1, "int" => 1,
'type' => 'checkbox', "type" => "checkbox",
'element_list' => array (1) "element_list" => array (1)
), ),
'dynamic' => array ( "dynamic" => array (
'output_name' => 'Dynamic', "output_name" => "Dynamic",
'int' => 1, "int" => 1,
'type' => 'checkbox', "type" => "checkbox",
'element_list' => array (1) "element_list" => array (1)
), ),
'edit_query_string_id' => array ( "edit_query_string_id" => array (
'type' => 'hidden', "type" => "hidden",
'pk_id' => 1 "pk_id" => 1
) )
) // elements ) // elements
), // query_string element list ) // query_string element list
'edit_page_content' => array (
'output_name' => 'Page Content',
'delete_name' => 'remove_page_content',
'prefix' => 'epc',
'elements' => array (
'name' => array (
'output_name' => 'Content',
'type' => 'text',
'error_check' => 'alphanumeric',
'mandatory' => 1
),
'uid' => array (
'output_name' => 'UID',
'type' => 'text',
'error_check' => 'unique|alphanumeric',
'mandatory' => 1
),
'order_number' => array (
'output_name' => 'Order',
'type' => 'text',
'error_check' => 'int',
'mandatory' => 1
),
'online' => array (
'output_name' => 'Online',
'int' => 1,
'type' => 'checkbox',
'element_list' => array (1)
),
'edit_access_right_id' => array (
'type' => 'drop_down_db',
'output_name' => 'Access Level',
'int' => 1,
'preset' => 1, // first of the select
'query' => "SELECT edit_access_right_id, name FROM edit_access_right ORDER BY level"
),
'edit_page_content_id' => array (
'type' => 'hidden',
'pk_id' => 1
)
)
)
) // element list ) // element list
); );

View File

@@ -1,55 +1,55 @@
<?php declare(strict_types=1); <?php
$edit_schemes = array ( $edit_schemes = array (
'table_array' => array ( "table_array" => array (
'edit_scheme_id' => array ( "edit_scheme_id" => array (
'value' => isset($GLOBALS['edit_scheme_id']) ? $GLOBALS['edit_scheme_id'] : '', "value" => $GLOBALS["edit_scheme_id"],
'type' => 'hidden', "type" => "hidden",
'pk' => 1 "pk" => 1
), ),
'name' => array ( "name" => array (
'value' => isset($GLOBALS['name']) ? $GLOBALS['name'] : '', "value" => $GLOBALS["name"],
'output_name' => 'Scheme Name', "output_name" => "Scheme Name",
'mandatory' => 1, "mandatory" => 1,
'type' => 'text' "type" => "text"
), ),
'header_color' => array ( "header_color" => array (
'value' => isset($GLOBALS['header_color']) ? $GLOBALS['header_color'] : '', "value" => $GLOBALS["header_color"],
'output_name' => 'Header Color', "output_name" => "Header Color",
'mandatory' => 1, "mandatory" => 1,
'type' => 'text', "type" => "text",
'size' => 6, "size" => 6,
'length' => 6, "length" => 6,
'error_check' => 'custom', "error_check" => "custom",
'error_regex' => '/[\dA-Fa-f]{6}/', "error_regex" => "/[\dA-Fa-f]{6}/",
'error_example' => 'F6A544' "error_example" => "F6A544"
), ),
'enabled' => array ( "enabled" => array (
'value' => isset($GLOBALS['enabled']) ? $GLOBALS['enabled'] : '', "value" => $GLOBALS["enabled"],
'output_name' => 'Enabled', "output_name" => "Enabled",
'int' => 1, "int" => 1,
'type' => 'binary', "type" => "binary",
'element_list' => array ( "element_list" => array (
'1' => 'Yes', "1" => "Yes",
'0' => 'No' "0" => "No"
) )
), ),
'template' => array ( "template" => array (
'value' => isset($GLOBALS['template']) ? $GLOBALS['template'] : '', "value" => $GLOBALS["template"],
'output_name' => 'Template', "output_name" => "Template",
'type' => 'text' "type" => "text"
) )
), ),
'table_name' => 'edit_scheme', "table_name" => "edit_scheme",
'load_query' => "SELECT edit_scheme_id, name, enabled FROM edit_scheme ORDER BY name", "load_query" => "SELECT edit_scheme_id, name, enabled FROM edit_scheme ORDER BY name",
'show_fields' => array ( "show_fields" => array (
array ( array (
'name' => 'name' "name" => "name"
), ),
array ( array (
'name' => 'enabled', "name" => "enabled",
'binary' => array ('Yes', 'No'), "binary" => array ("Yes", "No"),
'before_value' => 'Enabled: ' "before_value" => "Enabled: "
) )
) )
); // main array ); // main array

View File

@@ -1,27 +1,27 @@
<?php declare(strict_types=1); <?php
$edit_users = array ( $edit_users = array (
'table_array' => array ( "table_array" => array (
'edit_user_id' => array ( "edit_user_id" => array (
'value' => isset($GLOBALS['edit_user_id']) ? $GLOBALS['edit_user_id'] : '', "value" => $GLOBALS["edit_user_id"],
'type' => 'hidden', "type" => "hidden",
'pk' => 1, "pk" => 1,
'int' => 1 "int" => 1
), ),
'username' => array ( "username" => array (
'value' => isset($GLOBALS['username']) ? $GLOBALS['username'] : '', "value" => $GLOBALS["username"],
'output_name' => 'Username', "output_name" => "Username",
'mandatory' => 1, "mandatory" => 1,
'error_check' => 'unique|alphanumericextended', "error_check" => "unique|alphanumericextended",
'type' => 'text' "type" => "text"
), ),
'password' => array ( "password" => array (
'value' => isset($GLOBALS['password']) ? $GLOBALS['password'] : '', "value" => $GLOBALS["password"],
'HIDDEN_value' => isset($GLOBALS['HIDDEN_password']) ? $GLOBALS['HIDDEN_password'] : '', "HIDDEN_value" => $GLOBALS["HIDDEN_password"],
'CONFIRM_value' => isset($GLOBALS['CONFIRM_password']) ? $GLOBALS['CONFIRM_password'] : '', "CONFIRM_value" => $GLOBALS["CONFIRM_password"],
'output_name' => 'Password', "output_name" => "Password",
'mandatory' => 1, "mandatory" => 1,
'type' => 'password', // later has to be password for encryption in database "type" => "password", // later has to be password for encryption in database
'update' => array ( // connected field updates, and update data 'update' => array ( // connected field updates, and update data
'password_change_date' => array ( // db row to update 'password_change_date' => array ( // db row to update
'type' => 'date', // type of field (int/text/date/etc) 'type' => 'date', // type of field (int/text/date/etc)
@@ -32,7 +32,7 @@ $edit_users = array (
// password date when first insert and password is set, needs special field with connection to password // password date when first insert and password is set, needs special field with connection to password
// password reset force interval, if set, user needs to reset password after X time period // password reset force interval, if set, user needs to reset password after X time period
'password_change_interval' => array ( 'password_change_interval' => array (
'value' => isset($GLOBALS['password_change_interval']) ? $GLOBALS['password_change_interval'] : '', 'value' => $GLOBALS['password_change_interval'],
'output_name' => 'Password change interval', 'output_name' => 'Password change interval',
'error_check' => 'intervalshort', // can be any date length format. n Y/M/D [not H/M/S], only one set, no combination 'error_check' => 'intervalshort', // can be any date length format. n Y/M/D [not H/M/S], only one set, no combination
'type' => 'text', 'type' => 'text',
@@ -40,227 +40,218 @@ $edit_users = array (
'size' => 5, // make it 5 chars long 'size' => 5, // make it 5 chars long
'length' => 5 'length' => 5
), ),
'enabled' => array ( "enabled" => array (
'value' => isset($GLOBALS['enabled']) ? $GLOBALS['enabled'] : '', "value" => $GLOBALS["enabled"],
'output_name' => 'Enabled', "output_name" => "Enabled",
'type' => 'binary', "type" => "binary",
'int' => 1, "int" => 1,
'element_list' => array ( "element_list" => array (
'1' => 'Yes', "1" => "Yes",
'0' => 'No' "0" => "No"
) )
), ),
'strict' => array ( "strict" => array (
'value' => isset($GLOBALS['strict']) ? $GLOBALS['strict'] : '', "value" => $GLOBALS["strict"],
'output_name' => 'Strict (Lock after errors)', "output_name" => "Strict (Lock after errors)",
'type' => 'binary', "type" => "binary",
'int' => 1, "int" => 1,
'element_list' => array ( "element_list" => array (
'1' => 'Yes', "1" => "Yes",
'0' => 'No' "0" => "No"
) )
), ),
'locked' => array ( "locked" => array (
'value' => isset($GLOBALS['locked']) ? $GLOBALS['locked'] : '', "value" => $GLOBALS["locked"],
'output_name' => 'Locked (auto set if strict with errors)', "output_name" => "Locked (auto set if strict with errors)",
'type' => 'binary', "type" => "binary",
'int' => 1, "int" => 1,
'element_list' => array ( "element_list" => array (
'1' => 'Yes', "1" => "Yes",
'0' => 'No' "0" => "No"
) )
), ),
'admin' => array ( "admin" => array (
'value' => isset($GLOBALS['admin']) ? $GLOBALS['admin'] : '', "value" => $GLOBALS["admin"],
'output_name' => 'Admin', "output_name" => "Admin",
'type' => 'binary', "type" => "binary",
'int' => 1, "int" => 1,
'element_list' => array ( "element_list" => array (
'1' => 'Yes', "1" => "Yes",
'0' => 'No' "0" => "No"
) )
), ),
'debug' => array ( "debug" => array (
'value' => isset($GLOBALS['debug']) ? $GLOBALS['debug'] : '', "value" => $GLOBALS["debug"],
'output_name' => 'Debug', "output_name" => "Debug",
'type' => 'binary', "type" => "binary",
'int' => 1, "int" => 1,
'element_list' => array ( "element_list" => array (
'1' => 'Yes', "1" => "Yes",
'0' => 'No' "0" => "No"
) )
), ),
'db_debug' => array ( "db_debug" => array (
'value' => isset($GLOBALS['db_debug']) ? $GLOBALS['db_debug'] : '', "value" => $GLOBALS["db_debug"],
'output_name' => 'DB Debug', "output_name" => "DB Debug",
'type' => 'binary', "type" => "binary",
'int' => 1, "int" => 1,
'element_list' => array ( "element_list" => array (
'1' => 'Yes', "1" => "Yes",
'0' => 'No' "0" => "No"
) )
), ),
'email' => array ( "email" => array (
'value' => isset($GLOBALS['email']) ? $GLOBALS['email'] : '', "value" => $GLOBALS["email"],
'output_name' => 'E-Mail', "output_name" => "E-Mail",
'type' => 'text', "type" => "text"
'error_check' => 'email'
), ),
'last_name' => array ( "last_name" => array (
'value' => isset($GLOBALS['last_name']) ? $GLOBALS['last_name'] : '', "value" => $GLOBALS["last_name"],
'output_name' => 'Last Name', "output_name" => "Last Name",
'type' => 'text' "type" => "text"
), ),
'first_name' => array ( "first_name" => array (
'value' => isset($GLOBALS['first_name']) ? $GLOBALS['first_name'] : '', "value" => $GLOBALS["first_name"],
'output_name' => 'First Name', "output_name" => "First Name",
'type' => 'text' "type" => "text"
), ),
'edit_language_id' => array ( "edit_language_id" => array (
'value' => isset($GLOBALS['edit_language_id']) ? $GLOBALS['edit_language_id'] : '', "value" => $GLOBALS["edit_language_id"],
'output_name' => 'Language', "output_name" => "Language",
'mandatory' => 1, "mandatory" => 1,
'int' => 1, "int" => 1,
'type' => 'drop_down_db', "type" => "drop_down_db",
'query' => "SELECT edit_language_id, long_name FROM edit_language WHERE enabled = 1 ORDER BY order_number" "query" => "SELECT edit_language_id, long_name FROM edit_language WHERE enabled = 1 ORDER BY order_number"
), ),
'edit_scheme_id' => array ( "edit_scheme_id" => array (
'value' => isset($GLOBALS['edit_scheme_id']) ? $GLOBALS['edit_scheme_id'] : '', "value" => $GLOBALS["edit_scheme_id"],
'output_name' => 'Scheme', "output_name" => "Scheme",
'int_null' => 1, "int_null" => 1,
'type' => 'drop_down_db', "type" => "drop_down_db",
'query' => "SELECT edit_scheme_id, name FROM edit_scheme WHERE enabled = 1 ORDER BY name" "query" => "SELECT edit_scheme_id, name FROM edit_scheme WHERE enabled = 1 ORDER BY name"
), ),
'edit_group_id' => array ( "edit_group_id" => array (
'value' => isset($GLOBALS['edit_group_id']) ? $GLOBALS['edit_group_id'] : '', "value" => $GLOBALS["edit_group_id"],
'output_name' => 'Group', "output_name" => "Group",
'int' => 1, "int" => 1,
'type' => 'drop_down_db', "type" => "drop_down_db",
'query' => "SELECT edit_group_id, name FROM edit_group WHERE enabled = 1 ORDER BY name", "query" => "SELECT edit_group_id, name FROM edit_group WHERE enabled = 1 ORDER BY name",
'mandatory' => 1 "mandatory" => 1
), ),
'edit_access_right_id' => array ( "edit_access_right_id" => array (
'value' => isset($GLOBALS['edit_access_right_id']) ? $GLOBALS['edit_access_right_id'] : '', "value" => $GLOBALS["edit_access_right_id"],
'output_name' => 'User Level', "output_name" => "User Level",
'mandatory' => 1, "mandatory" => 1,
'int' => 1, "int" => 1,
'type' => 'drop_down_db', "type" => "drop_down_db",
'query' => "SELECT edit_access_right_id, name FROM edit_access_right ORDER BY level" "query" => "SELECT edit_access_right_id, name FROM edit_access_right ORDER BY level"
), ),
'login_error_count' => array ( "login_error_count" => array (
'output_name' => 'Login error count', "output_name" => "Login error count",
'value' => isset($GLOBALS['login_error_count']) ? $GLOBALS['login_error_count'] : '', "value" => $GLOBALS['login_error_count'],
'type' => 'view', "type" => "view",
'empty' => '0' "empty" => "0"
), ),
'login_error_date_last' => array ( "login_error_date_last" => array (
'output_name' => 'Last login error', "output_name" => "Last login error",
'value' => isset($GLOBALS['login_error_date_liast']) ? $GLOBALS['login_error_date_liast'] : '', "value" => $GLOBALS['login_error_date_liast'],
'type' => 'view', "type" => "view",
'empty' => '-' "empty" => "-"
), ),
'login_error_date_first' => array ( "login_error_date_first" => array (
'output_name' => 'First login error', "output_name" => "First login error",
'value' => isset($GLOBALS['login_error_date_first']) ? $GLOBALS['login_error_date_first'] : '', "value" => $GLOBALS['login_error_date_first'],
'type' => 'view', "type" => "view",
'empty' => '-' "empty" => "-"
), ),
'protected' => array ( "protected" => array (
'value' => isset($GLOBALS['protected']) ? $GLOBALS['protected'] : '', "value" => $GLOBALS["protected"],
'output_name' => 'Protected', "output_name" => "Protected",
'type' => 'binary', "type" => "binary",
'int' => 1, "int" => 1,
'element_list' => array ( "element_list" => array (
'1' => 'Yes', "1" => "Yes",
'0' => 'No' "0" => "No"
) )
),
'additional_acl' => array (
'value' => isset($GLOBALS['additional_acl']) ? $GLOBALS['additional_acl'] : '',
'output_name' => 'Additional ACL (as JSON)',
'type' => 'textarea',
'error_check' => 'json',
'rows' => 10,
'cols' => 60
),
),
'load_query' => "SELECT edit_user_id, username, enabled, debug, db_debug, strict, locked, login_error_count FROM edit_user ORDER BY username",
'table_name' => 'edit_user',
'show_fields' => array (
array (
'name' => 'username'
),
array (
'name' => 'enabled',
'binary' => array ('Yes', 'No'),
'before_value' => 'Enabled: '
),
array (
'name' => 'debug',
'binary' => array ('Yes', 'No'),
'before_value' => 'Debug: '
),
array (
'name' => 'db_debug',
'binary' => array ('Yes', 'No'),
'before_value' => 'DB Debug: '
),
array (
'name' => 'strict',
'binary' => array ('Yes', 'No'),
'before_value' => 'Strict: '
),
array (
'name' => 'locked',
'binary' => array ('Yes', 'No'),
'before_value' => 'Locked: '
),
array (
'name' => 'login_error_count',
'before_value' => 'Errors: '
) )
), ),
'element_list' => array ( "load_query" => "SELECT edit_user_id, username, enabled, debug, db_debug, strict, locked, login_error_count FROM edit_user ORDER BY username",
'edit_access_user' => array ( "table_name" => "edit_user",
'output_name' => 'Accounts', "show_fields" => array (
'mandatory' => 1, array (
'delete' => 0, // set then reference entries are deleted, else the 'enable' flag is only set "name" => "username"
'prefix' => 'ecu', ),
'read_data' => array ( array (
'table_name' => 'edit_access', "name" => "enabled",
'pk_id' => 'edit_access_id', "binary" => array ("Yes", "No"),
'name' => 'name', "before_value" => "Enabled: "
'order' => 'name' ),
array (
"name" => "debug",
"binary" => array ("Yes", "No"),
"before_value" => "Debug: "
),
array (
"name" => "db_debug",
"binary" => array ("Yes", "No"),
"before_value" => "DB Debug: "
),
array (
"name" => "strict",
"binary" => array ("Yes", "No"),
"before_value" => "Strict: "
),
array (
"name" => "locked",
"binary" => array ("Yes", "No"),
"before_value" => "Locked: "
),
array (
"name" => "login_error_count",
"before_value" => "Errors: "
)
),
"element_list" => array (
"edit_access_user" => array (
"output_name" => "Accounts",
"mandatory" => 1,
"delete" => 0, // set then reference entries are deleted, else the "enable" flag is only set
"prefix" => "ecu",
"read_data" => array (
"table_name" => "edit_access",
"pk_id" => "edit_access_id",
"name" => "name",
"order" => "name"
), ),
'elements' => array ( "elements" => array (
'edit_access_user_id' => array ( "edit_access_user_id" => array (
'output_name' => 'Activate', "output_name" => "Activate",
'type' => 'hidden', "type" => "hidden",
'int' => 1, "int" => 1,
'pk_id' => 1 "pk_id" => 1
), ),
'enabled' => array ( "enabled" => array (
'type' => 'checkbox', "type" => "checkbox",
'output_name' => 'Activate', "output_name" => "Activate",
'int' => 1, "int" => 1,
'element_list' => array (1) "element_list" => array (1)
), ),
'edit_access_right_id' => array ( "edit_access_right_id" => array (
'type' => 'drop_down_db', "type" => "drop_down_db",
'output_name' => 'Access Level', "output_name" => "Access Level",
'preset' => 1, // first of the select "preset" => 1, // first of the select
'int' => 1, "int" => 1,
'query' => "SELECT edit_access_right_id, name FROM edit_access_right ORDER BY level" "query" => "SELECT edit_access_right_id, name FROM edit_access_right ORDER BY level"
), ),
'edit_default' => array ( "edit_default" => array (
'type' => 'radio_group', "type" => "radio_group",
'output_name' => 'Default', "output_name" => "Default",
'int' => 1, "int" => 1,
'element_list' => 'radio_group' "element_list" => "radio_group"
), ),
'edit_access_id' => array ( "edit_access_id" => array (
'type' => 'hidden', "type" => "hidden",
'int' => 1 "int" => 1
) )
) )
) // edit pages ggroup ) // edit pages ggroup

View File

@@ -1,31 +1,31 @@
<?php declare(strict_types=1); <?php
$edit_visible_group = array ( $edit_visible_group = array (
'table_array' => array ( "table_array" => array (
'edit_visible_group_id' => array ( "edit_visible_group_id" => array (
'value' => isset($GLOBALS['edit_visible_group_id']) ? $GLOBALS['edit_visible_group_id'] : '', "value" => $GLOBALS["edit_visible_group_id"],
'type' => 'hidden', "type" => "hidden",
'pk' => 1 "pk" => 1
), ),
'name' => array ( "name" => array (
'value' => isset($GLOBALS['name']) ? $GLOBALS['name'] : '', "value" => $GLOBALS["name"],
'output_name' => $this->l->__('Group name'), "output_name" => $this->l->__("Group name"),
'mandatory' => 1, "mandatory" => 1,
'type' => 'text' "type" => "text"
), ),
'flag' => array ( "flag" => array (
'value' => isset($GLOBALS['flag']) ? $GLOBALS['flag'] : '', "value" => $GLOBALS["flag"],
'output_name' => $this->l->__('Flag'), "output_name" => $this->l->__("Flag"),
'mandatory' => 1, "mandatory" => 1,
'type' => 'text', "type" => "text",
'error_check' => 'alphanumeric|unique' "error_check" => "alphanumeric|unique"
) )
), ),
'table_name' => 'edit_visible_group', "table_name" => "edit_visible_group",
'load_query' => "SELECT edit_visible_group_id, name FROM edit_visible_group ORDER BY name", "load_query" => "SELECT edit_visible_group_id, name FROM edit_visible_group ORDER BY name",
'show_fields' => array ( "show_fields" => array (
array ( array (
'name' => 'name' "name" => "name"
) )
) )
); );

View File

@@ -1,19 +1,13 @@
/* smart test CSS */ /* smart test CSS */
.jq-container {
width: 100%;
margin: 0;
padding: 0;
}
.jp-test { .jp-test {
width: 100%; width: 100%;
padding: 20px; margin: 20px;
box-sizing: border-box; box-sizing: border-box;
} }
.test-div { .test-div {
padding: 20px; margin: 20px;
} }
/* CORE overlay, progress elements */ /* CORE overlay, progress elements */

View File

Before

Width:  |  Height:  |  Size: 6.6 KiB

After

Width:  |  Height:  |  Size: 6.6 KiB

View File

Before

Width:  |  Height:  |  Size: 56 B

After

Width:  |  Height:  |  Size: 56 B

View File

Before

Width:  |  Height:  |  Size: 87 B

After

Width:  |  Height:  |  Size: 87 B

Some files were not shown because too many files have changed in this diff Show More