function updateCodes($parameters, $arg1 = '', $arg2 = '', $arg3 = '')
 {
     $mode = "pull";
     $shellResult = "";
     if ($arg1 or $arg2 or $arg3) {
         $mode = $arg1 ? $arg1 : $mode;
     }
     if (is_array($parameters)) {
         $mode = array_key_exists("mode", $parameters) ? $parameters['mode'] : $mode;
     }
     switch ($mode) {
         case "push":
             break;
         default:
             set_time_limit(60);
             $shellResult .= shell_exec("svn up ../");
             $directories = zig("dbTableApplications", "getApplicationDirectories");
             foreach ($directories as $directory) {
                 switch (substr($directory, 0, 4) != "zig-") {
                     case true:
                         set_time_limit(60);
                         $shellResult .= shell_exec("cd ../{$directory}");
                         $shellResult .= shell_exec("git {$mode}");
                 }
             }
     }
     $zigReturn['value'] = $shellResult;
     return $zigReturn;
 }
 function editRecord($parameters, $arg1 = '', $arg2 = '', $arg3 = '')
 {
     $uniqueString = uniqid();
     if ($arg1 or $arg2 or $arg3) {
         $table = $arg1;
         $parentTable = $arg2;
         $parentId = $arg3;
     }
     if (is_array($parameters)) {
         $table = array_key_exists("table", $parameters) ? $parameters['table'] : $arg1;
         $parentTable = array_key_exists("parentTable", $parameters) ? $parameters['parentTable'] : $arg2;
         $parentId = array_key_exists("parentId", $parameters) ? $parameters['parentId'] : $arg3;
         $sql = array_key_exists("sql", $parameters) ? $parameters['sql'] : NULL;
         $uniqueString = array_key_exists("uniqueString", $parameters) ? $parameters['uniqueString'] : $uniqueString;
         $id = array_key_exists("id", $parameters) ? $parameters['id'] : 0;
     }
     $saveParameters = array("function" => "save", "table" => $table, "parent_table" => $parentTable, "parent_id" => $parentId, "mode" => "edit", "id" => $id, "uniqueString" => $uniqueString);
     $returnArray['data'] = zig($saveParameters);
     switch ($sql != "") {
         case true:
             $listingParameters = array("function" => "listing", "sql" => $sql, "table" => $table, "uniqueString" => $uniqueString, "zigjax" => 1);
             $returnArray['html'] = zig($listingParameters);
     }
     $zig_result['value'] = json_encode($returnArray);
     $zig_result['return'] = 1;
     return $zig_result;
 }
 function get_file($parameters, $arg1 = '', $arg2 = '', $arg3 = '')
 {
     if ($arg1 or $arg2 or $arg3) {
         $filename = $arg1;
         $new_filename = $arg2 ? $arg2 : $arg1;
         $method = $arg3;
     } else {
         if (is_array($parameters)) {
             $filename = array_key_exists("filename", $parameters) ? $parameters['filename'] : NULL;
             $new_filename = array_key_exists("new_filename", $parameters) ? $parameters['new_filename'] : $filename;
             $method = array_key_exists("method", $parameters) ? $parameters['method'] : NULL;
         }
     }
     if ($method == "download") {
         header('Content-Disposition: attachment; filename="' . $new_filename . '"');
     } else {
         if ($method == "view") {
             $contentType = $this->mime_content_type($filename);
             header("Content-type: {$contentType}");
             switch (substr($contentType, 0, 5)) {
                 case "image":
                     break;
                 default:
                     header('Content-Disposition: filename="' . $new_filename . '"');
             }
         }
     }
     if (zig("cache", "file_exists", $filename)) {
         $buffer = readfile($filename);
         print $buffer;
         exit;
     }
 }
 function reportsLoadFilters($reportName)
 {
     $html = "";
     $mode = "add";
     $selectParameters = array("function" => "select", "table" => "zig_report_filters", "where" => "`report_name`='{$reportName}'");
     $result = zig($selectParameters);
     while ($fetch = $result->fetchRow()) {
         $fieldResult = zig("show_columns", $fetch['table']);
         while ($dbDefinedField = $fieldResult->fetchRow()) {
             if ($dbDefinedField['Field'] == $fetch['field']) {
                 break;
             }
         }
         $customFieldParameters = array("function" => "customField", "module" => $fetch['zig_user'], "table" => $fetch['table'], "method" => $fetch['field'], "mode" => $mode);
         $field_info = zig($customFieldParameters);
         $fieldElementParameters = array("function" => "field_element", "mode" => "add", "table" => $fetch['table'], "dbDefinedField" => $dbDefinedField, "userDefinedField" => $field_info);
         $filterName = str_replace(" ", "_", $fetch['filter_name']);
         $filterElement = zig($fieldElementParameters);
         $filterElement = str_replace("{current_field_name}", $filterName, $filterElement);
         $filterElement = str_replace("{uniqueString}", uniqid(), $filterElement);
         $filterElement = str_replace("{tableName}", $fetch['table'], $filterElement);
         $filterElement = str_replace("{fieldValue}", zig("checkArray", $field_info, "defaultValue"), $filterElement);
         $html .= zig("template", "block", "reports", "filter row");
         $html = str_replace("{filterName}", $fetch['filter_name'], $html);
         $html = str_replace("{filterElement}", $filterElement, $html);
     }
     $selectParameters = array("function" => "select", "fields" => "file", "table" => "zig_reports", "where" => "`report_name`='{$reportName}'", "limit" => 1);
     $result = zig($selectParameters);
     $fetch = $result->fetchRow();
     $html = $html != "" ? zig("template", "block", "reports", "filter header") . $html . zig("template", "block", "reports", "filter footer") : "";
     $html = str_replace("{filters}", $html, zig("template", "block", "reports", "filters"));
     return str_replace("{file}", $fetch['file'], $html);
 }
Example #5
0
 function mailer($parameters, $arg1, $arg2, $arg3)
 {
     if ($arg1 or $arg2 or $arg3) {
         $to = $arg1;
         $subject = $arg2;
         $message = $arg3;
     } else {
         if (is_array($parameters)) {
             $to = array_key_exists("to", $parameters) ? $parameters['to'] : NULL;
             $subject = array_key_exists("subject", $parameters) ? $parameters['subject'] : NULL;
             $message = array_key_exists("message", $parameters) ? $parameters['message'] : NULL;
             $headers = array_key_exists("headers", $parameters) ? $parameters['headers'] : NULL;
             $from = array_key_exists("from", $parameters) ? $parameters['from'] : NULL;
             $reply_to = array_key_exists("reply_to", $parameters) ? $parameters['reply_to'] : NULL;
         }
     }
     if (!$headers) {
         $headers = "MIME-Version: 1.0\r\n";
         $headers .= "Content-type: text/html; charset=iso-8859-1\r\n";
         $headers .= $from ? "From: " . $from . "\r\n" : "From: " . zig("info", "user") . " <" . zig("info", "user_email") . "> \r\n";
         $headers .= $reply_to ? "Reply-To: " . $reply_to . "\r\n" : NULL;
         $headers .= "X-Mailer: PHP/" . phpversion();
     }
     $zig_result['value'] = mail($to, $subject, $message, $headers);
     $zig_result['return'] = 1;
     return $zig_result;
 }
 function messenger($parameters, $arg1 = '', $arg2 = '', $arg3 = '')
 {
     if ($arg1 or $arg2 or $arg3) {
         $error = $arg1;
         $warning = $arg2;
         $system = $arg3;
     } else {
         if (is_array($parameters)) {
             $error = array_key_exists("error", $parameters) ? $parameters['error'] : NULL;
             $warning = array_key_exists("warning", $parameters) ? $parameters['warning'] : NULL;
             $system = array_key_exists("system", $parameters) ? $parameters['system'] : NULL;
             $application = array_key_exists("message", $parameters) ? $parameters['message'] : NULL;
         }
     }
     $messages = $error ? $error : "";
     $messages = ($messages and $warning) ? "<br />" : $messages;
     $messages = $warning ? $messages . $warning : $messages;
     $messages = ($messages and $system) ? "<br />" : $messages;
     $messages = $system ? $messages . $system : $messages;
     $messages = ($messages and $application) ? "<br />" : $messages;
     $messages = $application ? $messages . $application : $messages;
     $buffer = zig("template", "file", "messenger");
     $buffer = str_replace("{message}", $messages, $buffer);
     $zig_result['value'] = $buffer;
     $zig_result['return'] = 1;
     return $zig_result;
 }
 function getReportName($applicationName)
 {
     $sql = "SELECT `report_name` FROM `zig_reports` WHERE `application`='{$applicationName}' LIMIT 1";
     $result = zig("query", $sql);
     $fetch = $result->fetchRow();
     return $fetch['report_name'];
 }
 function select_count($parameters, $arg1, $arg2, $arg3)
 {
     $where = "";
     if ($arg1 or $arg2 or $arg3) {
         $table = $arg1;
         $field = $arg2 ? $arg2 : "*";
         $distinct = $arg3;
     }
     if (is_array($parameters)) {
         $table = array_key_exists("table", $parameters) ? $parameters['table'] : NULL;
         $field = array_key_exists("field", $parameters) ? $parameters['field'] : "*";
         $distinct = array_key_exists("distinct", $parameters) ? $parameters['distinct'] : false;
         $where = array_key_exists("where", $parameters) ? "WHERE " . $parameters['where'] : $where;
     }
     switch ($distinct) {
         case true:
             $sql = "SELECT COUNT({$field}) AS `count` FROM {$table} {$where} GROUP BY ({$field})";
         default:
             $sql = "SELECT COUNT({$field}) AS `count` FROM {$table} {$where}";
     }
     $zig_return['return'] = 1;
     $result = zig("query", $sql);
     $fetch = $result->fetchRow();
     $zig_return['value'] = $fetch['count'];
     return $zig_return;
 }
 function display_flags($parameters, $arg1 = '', $arg2 = '', $arg3 = '')
 {
     if ($arg1 or $arg2 or $arg3) {
         $zig_result = $arg1;
         $parameters = $arg2;
     } else {
         if (is_array($parameters)) {
             $zig_result = array_key_exists("zig_result", $parameters) ? $parameters['zig_result'] : NULL;
             $parameters = array_key_exists("parameters", $parameters) ? $parameters['parameters'] : NULL;
         }
     }
     $zig_gui_flags[] = "topmenu";
     $zig_gui_flags[] = "header";
     $zig_gui_flags[] = "applications";
     $zig_gui_flags[] = "actions";
     $zig_gui_flags[] = "tabs";
     $zig_gui_flags[] = "messenger";
     $zig_gui_flags[] = "side_dock";
     $zig_gui_flags[] = "trigger";
     $zig_gui_flags[] = "footer";
     $zig_gui_flags[] = "print_view";
     $zig_gui_flags[] = "print_header";
     $zig_gui_flags[] = "print_sub_header";
     $zig_gui_flags[] = "print_sub_footer";
     $zig_gui_flags[] = "print_footer";
     foreach ($zig_gui_flags as $flag) {
         if (!isset($zig_result[$flag]) and is_array($zig_result)) {
             $module_config = zig("config", $flag, $GLOBALS['zig']['current']['module']);
             $zig_result[$flag] = (isset($parameters[$flag]) and is_array($parameters)) ? $parameters[$flag] : ($module_config != NULL ? $module_config : zig("config", $flag));
         }
     }
     $zig_return['return'] = 1;
     $zig_return['value'] = $zig_result;
     return $zig_return;
 }
Example #10
0
 function content($parameters, $arg1, $arg2, $arg3)
 {
     if ($arg1 or $arg2 or $arg3) {
         $zig_return['buffer'] = $arg1;
         $zig_return['message'] = $arg2;
         $security = $arg3 != "" ? $arg3 : true;
     }
     if (is_array($parameters)) {
         $zig_return['buffer'] = array_key_exists("content", $parameters) ? $parameters['content'] : $arg1;
         $zig_return['message'] = array_key_exists("message", $parameters) ? $parameters['message'] : $arg2;
         $security = array_key_exists("security", $parameters) ? $parameters['security'] : $security;
         if (array_key_exists("topmenu", $parameters)) {
             $zig_return['topmenu'] = $parameters['topmenu'];
         }
         if (array_key_exists("applications", $parameters)) {
             $zig_return['applications'] = $parameters['applications'];
         }
     }
     if ($security) {
         zig("security");
     }
     $zig_return['messenger'] = $zig_return['message'];
     $zig_return['actions'] = false;
     return $zig_return;
 }
 function permissions($parameters, $arg1 = '', $arg2 = '', $arg3 = '')
 {
     if ($arg1 or $arg2 or $arg3) {
         $module = $arg1 ? $arg1 : $GLOBALS['zig']['current']['module'];
         $script = $arg2 ? $arg2 : $GLOBALS['zig']['current']['script'];
         $action = $arg3 ? $arg3 : $GLOBALS['zig']['current']['action'];
         $field_name = "all";
         $field_value = "all";
     } else {
         if (is_array($parameters)) {
             $module = array_key_exists("module", $parameters) ? $parameters['module'] : $GLOBALS['zig']['current']['module'];
             $script = array_key_exists("script", $parameters) ? $parameters['script'] : $GLOBALS['zig']['current']['script'];
             $action = array_key_exists("action", $parameters) ? $parameters['action'] : $GLOBALS['zig']['current']['action'];
             $tab = array_key_exists("tab", $parameters) ? $parameters['tab'] : NULL;
             $field_name = array_key_exists("field_name", $parameters) ? $parameters['field_name'] : "all";
             $field_value = array_key_exists("field_value", $parameters) ? $parameters['field_value'] : "all";
         }
     }
     $module = $module == "{any}" ? NULL : $module;
     $directory = $module;
     $script = $script == "{any}" ? NULL : $script;
     $action = $action == "{any}" ? NULL : $action;
     $zig_info_obj = new zig_info();
     $user = zig("info", "user");
     $user_id = zig("info", "user_id");
     $group = $zig_info_obj->group();
     $pre = zig("config", "pre");
     $zig_global_database = zig("config", "global_database");
     $script = $script ? $script : $GLOBALS['zig']['current']['script'];
     $script = addslashes($script);
     $sql = "SELECT `{$pre}applications`.`name` AS module,`{$pre}tabs`.`name` AS tab \n\t\t\t\t\tFROM `{$zig_global_database}`.`{$pre}tabs`,`{$zig_global_database}`.`{$pre}applications` \n\t\t\t\t\tWHERE \n\t\t\t\t\t\t`directory`='{$directory}' \n\t\t\t\t\tAND `{$pre}tabs`.`module`=`{$pre}applications`.`name` \n\t\t\t\t\tAND `{$pre}tabs`.`link`='{$script}' LIMIT 1";
     $result = zig("query", $sql);
     $fetch = $result->fetchRow();
     $module = $fetch['module'];
     $tab = $fetch['tab'];
     $where_tab = $tab ? " AND (tab='{$tab}' OR tab='all') " : NULL;
     $where_action = $tab ? " AND (action='{$action}' OR action='all') " : NULL;
     $sql = "SELECT users \n\t\t\t\tFROM `{$zig_global_database}`.`{$pre}permissions` \n\t\t\t\tWHERE \n\t\t\t\t\t(zig_parent_id='{$user_id}' OR users='{$user}' OR users='{$group}' OR users='all') \n\t\t\t\tAND (module='{$module}' OR module='all') {$where_tab} {$where_action} \n\t\t\t\tAND (field_name='{$field_name}' OR field_name='all') \n\t\t\t\tAND (field_value='{$field_value}' OR field_value='all') \n\t\t\t\tAND permission='allow' LIMIT 1";
     $result = zig("query", $sql, "permissions.lib.php", false);
     $permission = $result->RecordCount();
     if ($permission == 1) {
         $sql = "SELECT users \n\t\t\t\t\tFROM {$zig_global_database}.{$pre}permissions \n\t\t\t\t\tWHERE \n\t\t\t\t\t\t(zig_parent_id='{$user_id}' OR users='{$user}' OR users='{$group}' OR users='all') \n\t\t\t\t\tAND (module='{$module}' OR module='all')  {$where_tab} {$where_action} \n\t\t\t\t\tAND (field_name='{$field_name}' OR field_name='all') \n\t\t\t\t\tAND (field_value='{$field_value}' OR field_value='all') \n\t\t\t\t\tAND permission='deny' LIMIT 1";
         $result = zig("query", $sql);
         $permission = $result->RecordCount() ? false : true;
         /*			if($module=="zig-helpdesk")
         			{
         				print " m=".$module ;
         				print " t=".$tab ;
         				print " a=".$action ;
         				print " u=".$user ;
         				print " p=".$permission ;
         				print " sql=".$sql ;
         				print "<br /><br />" ;
         //				exit() ;
         			}*/
     }
     $zig_return['value'] = $permission;
     $zig_return['return'] = 1;
     return $zig_return;
 }
Example #12
0
 function trash($parameters, $arg1 = NULL, $arg2 = NULL, $arg3 = NULL)
 {
     $global_database = zig("config", "global database");
     $pre = zig("config", "pre");
     $sql = "DELETE FROM `{$zig_global_database}`.`{$pre}trash`";
     zig("query", $sql);
     print "Trash Emptied";
 }
 function print_footer($file, $method)
 {
     $buffer = zig("template", "file", $file);
     $buffer = $buffer ? $buffer : zig("template", "file", "footer");
     $footer .= "Powered by zigbin";
     $buffer = str_replace("{footer}", $footer, $buffer);
     //return $buffer ;
 }
 function fieldset($parameters, $arg1 = '', $arg2 = '', $arg3 = '')
 {
     $collapsed = true;
     $collapsible = true;
     $description = NULL;
     $callback = NULL;
     if ($arg1 or $arg2 or $arg3) {
         $content = $arg1;
         $name = $arg2;
         $collapsed = $arg3 === false ? $arg3 : $collapsed;
     }
     if (is_array($parameters)) {
         $content = array_key_exists("content", $parameters) ? $parameters['content'] : NULL;
         $name = array_key_exists("name", $parameters) ? $parameters['name'] : NULL;
         $collapsed = array_key_exists("collapsed", $parameters) ? $parameters['collapsed'] : true;
         $collapsible = array_key_exists("collapsible", $parameters) ? $parameters['collapsible'] : true;
         $description = array_key_exists("description", $parameters) ? $parameters['description'] : NULL;
         $callback = array_key_exists("callback", $parameters) ? $parameters['callback'] ? ",'" . addslashes($parameters['callback']) . "'" : NULL : NULL;
     }
     $name = str_replace("'", "", $name);
     $name = str_replace('"', "", $name);
     $unique_name = $name . "_" . uniqid();
     $template_block = $collapsible ? "collapsible" : "uncollapsible";
     if (!$collapsed) {
         $zig_fieldset_class = "zig_fieldset_displayed";
         $zig_fieldset_title_class = "zig_fieldset_title_displayed_class";
         $zig_div_fieldset_class = "zig_visible";
     } else {
         $zig_fieldset_class = "zig_fieldset_collapsed";
         $zig_fieldset_title_class = "zig_fieldset_title_collapsed_class";
         $zig_div_fieldset_class = "zig_invisible";
     }
     $title = str_replace("_", " ", $name);
     $title = ucwords(trim($title));
     $title = htmlspecialchars($title, ENT_QUOTES);
     $title = str_replace(" ", "&nbsp;", $title);
     $description_buffer = NULL;
     switch ($description) {
         case "":
         case NULL:
             break;
         default:
             $description_buffer = zig("template", "block", "fieldset", "description");
             $description_buffer = str_replace("{description}", $description, $description_buffer);
             break;
     }
     $buffer = zig("template", "block", "fieldset", $template_block);
     $buffer = str_replace("{unique_name}", $unique_name, $buffer);
     $buffer = str_replace("{zig_fieldset_class}", $zig_fieldset_class, $buffer);
     $buffer = str_replace("{title}", $title, $buffer);
     $buffer = str_replace("{zig_div_fieldset_class}", $zig_div_fieldset_class, $buffer);
     $buffer = str_replace("{zig_fieldset_title_class}", $zig_fieldset_title_class, $buffer);
     $buffer = str_replace("{description}", $description_buffer, $buffer);
     $buffer = str_replace("{content}", $content, $buffer);
     $buffer = str_replace("{callback}", $callback, $buffer);
     $zig_result['value'] = $zig_result['html'] = $buffer;
     return $zig_result;
 }
 function getVariablesByParentId($parentId)
 {
     $records = array();
     $sql = "SELECT \r\n\t\t\t\t\t`variable`, \r\n\t\t\t\t\t`hash` \r\n\t\t\t\tFROM \r\n\t\t\t\t\t`zig_field_hashed_variables` \r\n\t\t\t\tWHERE \r\n\t\t\t\t\t`zig_parent_id` = '{$parentId}'";
     $result = zig("query", $sql);
     while ($fetch = $result->fetchRow()) {
         $records[] = $fetch;
     }
     return $records;
 }
 function getTableRelationships($table)
 {
     $tables = array();
     $sql = "SELECT \r\n\t\t\t\t\t`child_table` \r\n\t\t\t\tFROM \r\n\t\t\t\t\t`zig_relationships` \r\n\t\t\t\tWHERE \r\n\t\t\t\t\t(parent_table='{$table}' OR parent_table='all tables') AND \r\n\t\t\t\t\t`child_table`<>'' AND `child_table`<>'{$table}' \r\n\t\t\t\tORDER BY \r\n\t\t\t\t\t`zig_weight`, \r\n\t\t\t\t\t`fieldset`, \r\n\t\t\t\t\t`child_table`";
     $result = zig("query", $sql);
     while ($fetch = $result->fetchRow()) {
         $tables[] = $fetch['child_table'];
     }
     return $tables;
 }
Example #17
0
 function export($parameters, $arg1 = '', $arg2 = '', $arg3 = '')
 {
     if ($arg1 or $arg2 or $arg3) {
         $sql = $arg1;
         $type = $arg2 ? $arg2 : "csv";
     } else {
         if (is_array($parameters)) {
             $sql = array_key_exists("sql", $parameters) ? $parameters['sql'] : NULL;
             $type = array_key_exists("type", $parameters) ? $parameters['type'] : "csv";
         }
     }
     if ($type == "csv") {
         require_once "../zig-api/plugins/adodb/toexport.inc.php";
         $files_path = zig("config", "files path");
         $temp_path = "{$files_path}blank.csv";
         //if(file_exists($temp_path))
         if (zig("cache", "file_exists", $temp_path)) {
             $time = time();
             $function = "export";
             $file_name = $time . $function . "." . $type;
             copy($temp_path, $temp_path . $file_name);
             $result = $GLOBALS['zig']['adodb']->Execute($sql);
             if ($result != "") {
                 $result->MoveFirst();
                 $fp = fopen($temp_path . $file_name, "w");
                 if ($fp) {
                     rs2csvfile($result, $fp);
                     fclose($fp);
                 }
                 $buffer = "\n end of file -- file export success";
                 $location = "{$temp_path}{$file_name}";
                 header('Content-type: application/csv');
                 header("Content-Disposition: attachment; filename={$file_name}");
                 readfile("{$temp_path}{$file_name}");
                 $zig_result['buffer'] = $buffer;
                 print $buffer;
                 zig("cache", "unlink", $location);
                 zig("cache", "unlink", $temp_path);
                 //unlink($location);
                 //unlink($temp_path);
             } else {
                 $zig_result['error'] = $GLOBALS['zig']['obj']['error']->error(106);
             }
         } else {
             $zig_result['error'] = $GLOBALS['zig']['obj']['error']->error(102);
         }
     } else {
         $zig_result['error'] = $GLOBALS['zig']['obj']['error']->error(103);
     }
     $zig_result['gui_buffer'] = 0;
     return $zig_result;
 }
 function select_defaults($parameters, $arg1, $arg2, $arg3)
 {
     if ($arg1 or $arg2 or $arg3) {
         $table = $arg1;
     }
     if (is_array($parameters)) {
         $table = array_key_exists("table", $parameters) ? $parameters['table'] : NULL;
     }
     $sql = "SELECT * FROM `{$table}` WHERE `zig_status`='default'";
     $zig_return['return'] = 1;
     $zig_return['value'] = zig("query", $sql);
     return $zig_return;
 }
 function show_columns($parameters, $arg1, $arg2, $arg3)
 {
     if ($arg1 or $arg2 or $arg3) {
         $table = $arg1;
     }
     if (is_array($parameters)) {
         $table = array_key_exists("table", $parameters) ? $parameters['table'] : NULL;
     }
     $sql = "SHOW COLUMNS FROM {$table}";
     $zig_return['return'] = 1;
     $zig_return['value'] = zig("query", $sql);
     return $zig_return;
 }
 function datetime($parameters, $arg1 = '', $arg2 = '', $arg3 = '')
 {
     $datetime = "";
     if ($arg1 or $arg2 or $arg3) {
         $datetime = $arg1;
         $date_format = $arg2;
         $time_format = $arg3;
         $timezoned = false;
     }
     if (is_array($parameters)) {
         $datetime = array_key_exists("datetime", $parameters) ? $parameters['datetime'] : $datetime;
         $date_format = array_key_exists("date_format", $parameters) ? $parameters['date_format'] : NULL;
         $time_format = array_key_exists("time_format", $parameters) ? $parameters['time_format'] : NULL;
         $timezoned = array_key_exists("timezoned", $parameters) ? $parameters['timezoned'] : false;
     }
     $zig_result['return'] = 1;
     if (!$datetime) {
         $zig_result['value'] = "";
         return $zig_result;
     }
     $date_format = $date_format ? $date_format : zig("config", "date format");
     // -- Start bring datetime to normal format
     $splitted_datetime = date_parse($datetime);
     $datetime = date("Y-m-d", mktime($splitted_datetime['hour'], $splitted_datetime['minute'], $splitted_datetime['second'], $splitted_datetime['month'], $splitted_datetime['day'], $splitted_datetime['year']));
     // -- End bring datetime to normal format
     switch ($timezoned) {
         case true:
             $datetime_info = strtotime($datetime . "+" . zig("config", "timezone offset") . "hours");
             $datetime = date("Y-m-d H:i:s", $datetime_info);
             if (preg_match("/^(\\d{4})-(\\d{2})-(\\d{2}) ([01][0-9]|2[0-3]):([0-5][0-9]):([0-5][0-9])\$/", $datetime, $matches)) {
                 $datetime = date($date_format, mktime($matches[4], $matches[5], $matches[6], $matches[2], $matches[3], $matches[1]));
             }
             break;
     }
     if (preg_match("/^(\\d{4})-(\\d{2})-(\\d{2}) ([01][0-9]|2[0-3]):([0-5][0-9]):([0-5][0-9])\$/", $datetime, $matches)) {
         if (checkdate($matches[2], $matches[3], $matches[1])) {
             $time_format = $time_format ? $time_format : zig("config", "time format");
             $zig_result['value'] = date("{$date_format} {$time_format}", mktime($matches[4], $matches[5], $matches[6], $matches[2], $matches[3], $matches[1]));
         }
     } else {
         if (preg_match("/^(\\d{4})-(\\d{2})-(\\d{2})\$/", $datetime, $matches)) {
             if (checkdate($matches[2], $matches[3], $matches[1])) {
                 $match4 = isset($matches[4]) ? $matches[4] : 0;
                 $match5 = isset($matches[5]) ? $matches[5] : 0;
                 $match6 = isset($matches[6]) ? $matches[6] : 0;
                 $zig_result['value'] = date("{$date_format}", mktime($match4, $match5, $match6, $matches[2], $matches[3], $matches[1]));
             }
         }
     }
     return $zig_result;
 }
 function ldap($parameters, $arg1 = '', $arg2 = '', $arg3 = '')
 {
     if ($arg1) {
         $method = $arg1;
         $username = $arg2;
         $password = $arg3;
     } else {
         $method = $parameters['method'];
         $username = $parameters['username'];
         $password = $parameters['password'];
     }
     $zig_result = zig("ldap", "bind", $username, $password);
     return $zig_result;
 }
 function security($parameters, $arg1 = '', $arg2 = '', $arg3 = '')
 {
     if ($_SESSION['zig_hash'] == "") {
         $zig_hash = isset($_GET['zig_hash']) ? $_GET['zig_hash'] : (isset($_POST['zig_hash']) ? $_POST['zig_hash'] : '');
         $zig_hash = $zig_hash ? "?zig_hash=" . $zig_hash : '';
         $current_url = $_SERVER['PHP_SELF'] . $zig_hash;
         $zig_hash = zig("hash", "encrypt", $current_url);
         header("Location: ../zig-api/index.php?zig_hash={$zig_hash}");
         exit;
     } else {
         if (!session_id()) {
             session_start();
         }
     }
     $zig_hash_vars = zig("hash", "vars_decode", $_SESSION['zig_hash']);
     if (session_id() != $zig_hash_vars['session_id']) {
         header("Location: ../zig-api/index.php");
         exit;
     }
     $cookie = $GLOBALS['zig']['default']['cookie'];
     $host = $_SERVER['HTTP_HOST'];
     $url = $zig_hash_vars['url'];
     $zig_hash = $_SESSION['zig_hash'];
     // Start renew cookie expiration
     if (!headers_sent()) {
         //setcookie("zig_hash",$zig_hash,$cookie,$url,$host) ;
         $_SESSION['zig_hash'] = $zig_hash;
     }
     // Start extend cookie expiration
     // -- Start check if user needs to change password
     if (strpos($_SERVER['PHP_SELF'], "/zig-pref/") === false) {
         $username = zig("info", "user");
         $zig_global_database = zig("config", "global_database");
         $pre = zig("config", "pre");
         $sql = "SELECT `force_change_password` FROM `{$zig_global_database}`.`{$pre}users` WHERE `force_change_password`=1 AND `username`='{$username}' LIMIT 1";
         $result = zig("query", $sql);
         $record = $result->RecordCount();
         switch ($result->RecordCount()) {
             case "0":
                 break;
             default:
                 header("Location: ../zig-pref/");
                 break;
         }
     }
     // -- End check if user needs to change password
     $zig_result['value'] = 1;
     $zig_result['return'] = 1;
     return $zig_result;
 }
Example #23
0
 function weight($parameters, $arg1 = '', $arg2 = '', $arg3 = '')
 {
     $result = $parameters['column_result'];
     $exclude = $parameters['exclude'];
     $table = $parameters['table'];
     $field_info = array_key_exists("field_info", $parameters) ? $parameters['field_info'] : array();
     $field_info = is_array($field_info) ? $field_info : array();
     $counter = 0;
     if (is_array($exclude)) {
         while ($fetch = $result->fetchRow()) {
             if (in_array($fetch['Field'], $exclude)) {
                 continue;
             }
             switch (array_key_exists($fetch['Field'], $field_info)) {
                 case true:
                     $weight = zig("checkArray", $field_info[$fetch['Field']], "zig_weight") ? $field_info[$fetch['Field']]['zig_weight'] * 1000 : $counter;
                     break;
                 default:
                     $weight = $counter;
             }
             $fields[] = $fetch;
             $relation[$counter] = $weight;
             $counter++;
         }
     }
     if (is_array($field_info)) {
         foreach ($field_info as $key => $value) {
             if (zig("checkArray", $value, "attribute") == "virtual") {
                 if (in_array($key, $exclude)) {
                     continue;
                 }
                 unset($virtual_fetch);
                 $virtual_fetch = array('Field' => $key, 'Type' => "virtual(100)", 'Default' => "", 'Null' => "YES");
                 $fields[] = $virtual_fetch;
                 $weight = zig("checkArray", $value, "zig_weight") ? $value['zig_weight'] * 1000 : $counter;
                 $relation[$counter] = $weight;
                 $counter++;
             }
         }
     }
     if (is_array($relation)) {
         asort($relation);
         foreach ($relation as $key => $value) {
             $sorted_fields[] = $fields[$key];
         }
     }
     $zig_result['return'] = 1;
     $zig_result['value'] = $sorted_fields;
     return $zig_result;
 }
 function updateApplications($parameters, $arg1 = '', $arg2 = '', $arg3 = '')
 {
     $mode = "pull";
     if ($arg1 or $arg2 or $arg3) {
         $mode = $arg1 ? $arg1 : $mode;
     }
     if (is_array($parameters)) {
         $mode = array_key_exists("mode", $parameters) ? $parameters['mode'] : $mode;
     }
     $parameters['function'] = "updateCodes";
     $parameters['mode'] = $mode;
     $message = zig($parameters);
     $parameters['function'] = "update_database";
     $message .= zig($parameters);
 }
Example #25
0
 function footer($parameters, $arg1 = '', $arg2 = '', $arg3 = '')
 {
     $footer = NULL;
     if ($arg1) {
         $footer = $arg1 ? $arg1 : NULL;
     }
     if (is_array($parameters)) {
         $footer = array_key_exists("footer", $parameters) ? $parameters['footer'] : NULL;
     }
     $footer = $footer ? $footer : zig("config", "footer text");
     $buffer = zig("template", "file", "footer");
     $zig_result['value'] = str_replace("{footer}", $footer, $buffer);
     $zig_result['return'] = 1;
     return $zig_result;
 }
 function getApplicationNames()
 {
     switch (is_object($GLOBALS['zig']['adodb'])) {
         case false:
             $names[] = "zigbin";
             break;
         default:
             $sql = "SELECT `name` FROM `zig_applications`";
             $result = zig("query", $sql);
             while ($fetch = $result->fetchRow()) {
                 $names[] = $fetch['name'];
             }
     }
     return $names;
 }
Example #27
0
 function extract($parameters, $arg1, $arg2, $arg3)
 {
     $sql = NULL;
     $result = zig("show_table_status", "zig");
     while ($fetch = $result->fetchRow()) {
         $columns_result = zig("show_full_columns", $fetch['Name']);
         $columns = NULL;
         $described_columns = NULL;
         while ($column_fetch = $columns_result->fetchRow()) {
             $described_columns .= zig("describe_column", $column_fetch) . ",\n";
             $columns .= $columns ? "," : $columns;
             $columns .= "`" . $column_fetch['Field'] . "`";
         }
         $sql .= $sql ? "\n\n" : $sql;
         $sql .= "CREATE TABLE IF NOT EXISTS `{$fetch['Name']}` ( {$described_columns}";
         $sql .= zig("describe_indexes", $fetch[Name]);
         $sql .= "\n) ENGINE=InnoDB  DEFAULT CHARSET=latin1 COMMENT='zig' AUTO_INCREMENT=1001 ;";
         $values = NULL;
         $values_result = zig("select_defaults", $fetch['Name']);
         while ($values_fetch = $values_result->fetchRow()) {
             $counter = 0;
             $column_values = NULL;
             while (array_key_exists($counter, $values_fetch)) {
                 $column_values .= $column_values ? "," : $column_values;
                 $column_values .= "'" . addslashes($values_fetch["{$counter}"]) . "'";
                 $counter++;
             }
             $values .= $values ? "," : $values;
             $values .= "\n(" . $column_values . ")";
         }
         if ($values) {
             $sql .= "\n\nINSERT INTO `{$fetch['Name']}`({$columns}) VALUES\n";
             $sql .= "{$values} ;";
         }
     }
     $files_path = zig("config", "files path");
     $file_name = "install.sql";
     $file = "{$files_path}" . time() . ".{$file_name}";
     /*$handle = fopen($file, "w") ;
     		fwrite($handle, $sql); 
     		fclose($handle) ;*/
     zig("cache", "fwrite", $file, $sql);
     header('Content-type: application/text');
     header("Content-Disposition: attachment; filename={$file_name}");
     readfile($file);
     zig("cache", "unlink", $file);
     exit;
 }
Example #28
0
 function add($parameters, $arg1 = '', $arg2 = '', $arg3 = '')
 {
     $uniqueString = uniqid();
     if ($arg1 or $arg2 or $arg3) {
         $table = $arg1;
         $exclude = $arg2;
         $permissions = $arg3;
     }
     if (is_array($parameters)) {
         $table = array_key_exists("table", $parameters) ? $parameters['table'] : NULL;
         $exclude = array_key_exists("exclude", $parameters) ? $parameters['exclude'] : zig("config", "exclude");
         $parentId = array_key_exists("parentId", $parameters) ? $parameters['parentId'] : NULL;
         $parentTable = array_key_exists("parentTable", $parameters) ? $parameters['parentTable'] : NULL;
         $permissions = array_key_exists("permissions", $parameters) ? $parameters['permissions'] : NULL;
         $uniqueString = array_key_exists("uniqueString", $parameters) ? $parameters['uniqueString'] : $uniqueString;
         $module = array_key_exists("module", $parameters) ? $parameters['module'] : NULL;
         $sql = array_key_exists("sql", $parameters) ? $parameters['sql'] : NULL;
         $triggers = array_key_exists("triggers", $parameters) ? $parameters['triggers'] : "show";
     }
     $fieldsParameters = array('function' => 'fields', 'method' => 'parent', 'table' => $table, 'mode' => 'add', 'exclude' => $exclude, 'module' => $module, 'permissions' => $permissions, 'return_fields' => true);
     $fields_return_values = zig($fieldsParameters);
     $buffer = $fields_return_values['html'];
     // -- Start process child table
     $childTables = zig("dbTableRelationships", "getTableRelationships", $table);
     foreach ($childTables as $childTable) {
         $wizard_parameters = array('function' => 'fields', 'method' => 'child', 'table' => $childTable, 'parent_table' => $table, 'exclude' => $exclude, 'mode' => 'add', 'module' => $module, 'permissions' => $permissions, 'return_fields' => true);
         $childHtml = zig($wizard_parameters);
         $buffer .= $childHtml['html'];
     }
     // -- End process child table
     $template = zig("template", "file", "add");
     $triggerBuffer = zig(array("function" => "trigger", "action" => "add"));
     switch ($triggers) {
         case "hide":
             $triggerBuffer = str_replace("{class}", "zig_invisible", $triggerBuffer);
             break;
         default:
             $triggerBuffer = str_replace("{class}", "", $triggerBuffer);
     }
     $buffer = str_replace("{add}", $buffer, $template);
     $buffer = str_replace("{trigger}", $triggerBuffer, $buffer);
     $sql = zig("hash", "stringEncode", $sql);
     $saveHash = zig("hash", "encrypt", "function=addRecord,module={$module},table={$table},parentTable={$parentTable},\n\t\t\t\t\t\tparentId={$parentId},sql={$sql},uniqueString={$uniqueString},zigjax=1");
     $buffer = str_replace("{saveHash}", $saveHash, $buffer);
     $buffer = str_replace("{uniqueString}", $uniqueString, $buffer);
     $zig_result['value'] = $buffer;
     return $zig_result;
 }
 function applications($parameters, $arg1 = '', $arg2 = '', $arg3 = '')
 {
     $buffer = zig("template", "file", "applications");
     $sql = "SELECT * \n\t\t\t\tFROM `zig_applications` \n\t\t\t\tWHERE `permission`='Active' \n\t\t\t\tORDER BY `zig_weight`,`name`";
     $result = zig("query", $sql);
     $icon = "";
     $name = "";
     while ($fetch = $result->fetchRow()) {
         $permission = zig("permissions", $fetch['directory'], "{any}");
         if ($permission) {
             // -- start application image
             $icon .= $GLOBALS['zig']['current']['module'] == $fetch['directory'] ? "<th id='zig_apps_{$fetch['name']}_image' style=\"border:1px; border-style:solid;\">" : "<th id='zig_apps_{$fetch['name']}_image' class='zig_actions_image'>";
             /*$target = NULL ;
             		if($fetch['target']=="_link") {
             			$target = ($fetch['target']<>"popup") ? "target = '".$fetch['target']."'" : "onclick=\"window.open('$fetch[link]','$fetch[name]','height=700,width=800,resizable=yes') ; return false ;\" " ;
             		}
             		$icon.= ($fetch['target']<>"popup") ? "<a $target href='../$fetch[directory]'>" : "<a $target href=''>" ;*/
             //$icon.= "<a $target href='../$fetch[directory]'>" ;
             $icon .= "<a href='../{$fetch['directory']}'>";
             $icon .= "<img src='" . zig("images", $fetch['icon'], "../" . $fetch['directory'] . "/" . $GLOBALS['zig']['path']['image']) . "' alt='{$fetch['name']}' />";
             $icon .= "</a>";
             $icon .= "</th>\n";
             // -- end application image
             // -- start application label
             $name .= "<td id='zig_apps_{$fetch['name']}' onmouseover=\"document.getElementById(this.id + '_image').className='zig_actions_image_hover';\" onmouseout=\"document.getElementById(this.id + '_image').className='zig_actions_image';\">";
             //$name.= ($fetch['target']<>"popup") ? "<a $target href='../$fetch[directory]'>" : "<a $target href='' >" ;
             //$name.= "<a $target href='../$fetch[directory]'>" ;
             $name .= "<a href='../{$fetch['directory']}'>";
             $name .= $fetch['name'];
             $name .= "</a>";
             $name .= "</td>\n";
             // -- end application label
         }
     }
     $show_title = zig("config", "show title");
     $zig_title = $show_title ? zig("config", "title") : NULL;
     $zig_icon = zig("config", "icon");
     $zig_icon = zig("images", $zig_icon);
     $buffer = str_replace("{zig_icon}", $zig_icon, $buffer);
     $buffer = str_replace("{zig_title}", $zig_title, $buffer);
     $buffer = str_replace("{icon}", $icon, $buffer);
     $buffer = str_replace("{name}", $name, $buffer);
     $buffer = str_replace("{header}", zig("display_header"), $buffer);
     $zig_result['value'] = $buffer;
     $zig_result['return'] = 1;
     return $zig_result;
 }
Example #30
0
 function topmenu($parameters, $arg1 = '', $arg2 = '', $arg3 = '')
 {
     $pre = zig("config", "pre");
     $zig_global_database = zig("config", "global_database");
     $username = zig("info", "user");
     $username = $username ? $username : "******";
     $buffer = zig("template", "block", "topmenu", "header");
     // -- Start Modules
     $sql = "SELECT `directory`,`name`,`permission` FROM `{$zig_global_database}`.`{$pre}applications` WHERE (`permission`='Top Left' OR `permission`='Top Right')  AND `zig_status`<>'deleted' ORDER BY `zig_weight`,`name`";
     $result = zig("query", $sql);
     $topLeft = $topRight = $flag_buffer = "";
     while ($fetch = $result->fetchRow()) {
         $permission = zig("permissions", $fetch['directory']);
         if ($permission) {
             $module_buffer = zig("template", "block", "topmenu", "modules");
             $module_buffer = $flag_buffer ? str_replace("{module_separator}", "|", $module_buffer) : str_replace("{module_separator}", "", $module_buffer);
             $module_buffer = $flag_buffer = str_replace("{module_link}", "../" . $fetch['directory'], $module_buffer);
             $module_buffer = str_replace("{module_name}", $fetch['name'], $module_buffer);
             $module_name_class = $GLOBALS['zig']['current']['module'] == $fetch['directory'] ? "active" : "inactive";
             $module_buffer = str_replace("{class}", $module_name_class, $module_buffer);
             switch ($fetch['permission']) {
                 case "Top Right":
                     $topRight .= $module_buffer;
                     break;
                 default:
                     $topLeft .= $module_buffer;
             }
         }
     }
     //$buffer.= $module_buffer ? $module_buffer : "" ;
     // -- End Modules
     $buffer .= zig("template", "block", "topmenu", "footer");
     $zig_hash = zig("hash", "encrypt", "gate,logout");
     if ($username == "Guest") {
         $buffer = str_replace("{logout_link}", "../zig-api/", $buffer);
         $buffer = str_replace("{logout_text}", "Login", $buffer);
     } else {
         $buffer = str_replace("{logout_link}", "../zig-api/decoder.php?zig_hash=" . $zig_hash, $buffer);
         $buffer = str_replace("{logout_text}", "Logout", $buffer);
     }
     $buffer = str_replace("{topLeft}", $topLeft, $buffer);
     $buffer = str_replace("{topRight}", $topRight, $buffer);
     $buffer = str_replace("{username}", $username, $buffer);
     $zig_result['value'] = $buffer;
     $zig_result['return'] = 1;
     return $zig_result;
 }