function handleSearchPage() { include_once 'login.php'; include_once 'database_conn.php'; include_once 'showEventFunction.php'; $pageHeader = "Result"; $output = "<h1>{$pageHeader}</h1>"; $backURL = "<br/><a href = \"searchPage.php\">Back</a>\n\t<br/><a href = \"index.php\">Back to Home</a>\n\t"; $event = array(); foreach ($_POST as $field => $value) { //echo "$field => $value <br/>"; if (strcmp($field, "submit") === 0) { continue; } $event[$field] = $value; // sanitizeData($value); } $event = array_filter($event); //if any field is not filled, stop user //then ask user to enter something if (empty($event)) { $output .= "Please describe something to search."; return $output . $backURL; } $sql = generateSQL($event); $datas = array(); $datas['venues'] = getFromDb($conn, "SELECT * FROM te_venue"); $datas['categories'] = getFromDb($conn, "SELECT * FROM te_category"); $datas['events'] = getFromDb($conn, $sql); $datas['events'] = array_filter($datas['events']); // if there is record, show in table if (!empty($datas['events'])) { $output .= showTable($datas, false); return $output . $backURL; } else { //if there is no result, result not found $output .= "No record found."; return $output . $backURL; } }
$sqlstmt = $sqlstmt . ' (' . $sqlstmtVars . ') VALUES (' . $sqlstmtValues . ')";' . LB; } return $sqlstmt; } if (count($exportforms) > 0) { // Create an array for all fieldnames and their values for this record. $date = COM_getUserDateTimeFormat(); $exportscript .= '<?php' . LB; $exportscript .= '// Export Form Defintion for: ' . DB_getItem($_TABLES['nxform_definitions'], 'name', "id='{$formid}'") . LB; $exportscript .= '// Date: ' . $date[0] . LB . LB; $i = 1; foreach ($exportforms as $formid) { $exportscript .= LB . LB . '# Export Form Definitions ' . LB; $exportscript .= generateSQL('formDefinitions', $formid, "900{$i}"); $exportscript .= LB . '# Export Field Definitions ' . LB; $exportscript .= generateSQL('formFields', $formid, "900{$i}"); $i++; } $exportscript .= LB . '?>'; if (!($fp = @fopen($downloadDirectory . $file, "w"))) { COM_errorLog("Error exporting form definition - Unable to write to file: {$exportfile}"); } else { fwrite($fp, $exportscript); fclose($fp); // Send new file to user's browser $download = new downloader(); $download->_setAvailableExtensions($downloadFileType); $download->setAllowedExtensions($downloadFileType); $download->setPath($downloadDirectory); $logfile = $_CONF['path'] . 'logs/error.log'; $download->setLogFile($logfile);
public function setNode($node, $force = FALSE, $action = "SaveNode") { global $system; global $ignoreValidationErrors; global $trackNodeContext; $execute = TRUE; $next = array(); $new = FALSE; $isDelta = FALSE; $deltaReport = array(); $reviewState = 0; if (isset($node["node"]["Node_id"]) && $node["node"]["Node_id"] !== FALSE && isset($node["node"]["Parent_id"]) && isset($node["node"]["Type"])) { if (isset($node["Errors"])) { unset($node["Errors"]); } $nodeId = $node["node"]["Node_id"]; $nodeType = $node["node"]["Type"]; $nodeType2 = $node["node"]["Type"]; $nodeParent = $node["node"]["Parent_id"]; if (isset($node["node"]["Review"])) { $nodeReview = $node["node"]["Review"]; } else { $nodeReview = 0; } if (isset($node["node"]["Review_member"])) { $nodeReviewMember = $node["node"]["Review_member"]; } else { $nodeReviewMember = 0; } $controlInfo = getNodeContext($nodeId, FALSE, TRUE); if (!$controlInfo) { $new = TRUE; } // print_r($controlInfo); if ($node["node"]["Node_id"] == 0) { $new = TRUE; $next = getNextFreeIds("mt_main", $system["Offset"], FALSE, 0); $node["node"]["Node_id"] = $next[0]; $nodeId = $next[0]; } if ($new) { $isDelta = TRUE; $controlInfo = array(); $controlInfo["node"] = array("Node_id" => $nodeId, "Parent_id" => $nodeParent, "Title" => "", "Image" => "", "Type" => $nodeType, "Protected" => 0, "Review" => 0, "Review_member" => 0, "Update" => 0); $controlInfo["data"] = array("Review" => 0, "Rights" => "", "Dependancies" => "", "Values" => array()); $controlInfo["rights"] = array(); $attributes = array(); $attributesKeys = array(); if (isset($system["Types"][$nodeType2]["__Fields__"])) { $typeAttributes = $system["Types"][$nodeType2]["__Fields__"]; } else { $typeAttributes = array(); } $attributesMultiLang = array(); $attributesNames = array(); $keys_typeAtt = array_keys($typeAttributes); for ($i = 0; $i < count($keys_typeAtt); $i++) { $cf = $typeAttributes[$keys_typeAtt[$i]]; $value = ""; $attributesKey = $cf["__Name__"]; $attributesKeys[] = $attributesKey; $attributesNames[$cf["__Name__"]] = ""; $attributes[$attributesKey] = $cf; if ($cf["Monolingual"] == 0) { $attributesMultiLang[$attributesKey] = ""; } echo $fieldId = $keys_typeAtt[$i]; $fieldType = $cf["BaseType"]; $fieldName = $cf["__Name__"]; $keys = array_keys($system["Languages"]); for ($j = 0; $j < count($keys); $j++) { $language = translateIds2old("Languages", $keys[$j]); if (!isset($node["data"]["Values"][$language][$attributesKey])) { $node["data"]["Values"][$language][$attributesKey] = ""; } else { $controlInfo["data"]["Values"][$language][$attributesKey] = ""; } } } } // print_r($controlInfo); if (!isset($controlInfo["rights"])) { $controlInfo["rights"] = array(); } if (!isset($node["node"]["Position"])) { $node["node"]["Position"] = 0; } if (!isset($node["node"]["Protected"])) { $node["node"]["Protected"] = 0; } if (!isset($node["node"]["Review"])) { $node["node"]["Review"] = 0; } if (!isset($node["node"]["Review_member"])) { $node["node"]["Review_member"] = 0; } if (!isset($node["node"]["Image"])) { $node["node"]["Image"] = $system["Types"][$nodeType2]["__Icon__"]; } $node["node"]["Update"] = date("YmdHis"); // #################### Workflow #################### if ($nodeReviewMember != 0 && $node["node"]["Review_member"] != $controlInfo["node"]["Review_member"]) { // echo "bad way to change RMember..."; $node["node"]["Review_member"] = $controlInfo["node"]["Review_member"]; } if ($nodeReviewMember != 0) { if (isset($node["node"]["NewReview_member"]) && isset($node["node"]["Review_Comment"])) { $member = getReviewMemberInfo($nodeReviewMember); $oldReviewMemberId = $node["node"]["Review_member"]; $reviewMemberId = $node["node"]["NewReview_member"]; if ($oldReviewMemberId != $reviewMemberId) { $node["node"]["Review_member"] = $reviewMemberId; if (isset($member["mt_review_levels_Change_Action"]) && trim($member["mt_review_levels_Change_Action"] != "")) { eval("?" . ">" . $member["mt_review_levels_Change_Action"]); } if (isset($member["mt_review_members_Change_Action"]) && trim($member["mt_review_members_Change_Action"] != "")) { eval("?" . ">" . $member["mt_review_members_Change_Action"]); } $actor = getNodeContext($_SESSION["User"]["User_id"]); $newState = getReviewMemberInfo($reviewMemberId); if ($newState["mt_review_members_User_id"] != 0) { $user = getNodeContext($newState["mt_review_members_User_id"]); } else { $user["node"] = array("Node_id" => 0, "Title" => "Open User Definition"); } $fileStream = date("YmdHis") . ";"; $fileStream .= $member["mt_review_levels_Name"] . ";"; $fileStream .= $actor["node"]["Node_id"] . ";"; $fileStream .= str_replace(";", ",", $actor["node"]["Title"]) . ";"; $fileStream .= $oldReviewMemberId . ";"; $fileStream .= $reviewMemberId . ";"; $fileStream .= $user["node"]["Node_id"] . ";"; $fileStream .= str_replace(";", ",", $user["node"]["Title"]) . ";"; $fileStream .= serialize($node["node"]["Review_Comment"]) . "\r\n"; $fileName = $system["systemFilePath"] . "log/" . $node["node"]["Node_id"] . "_review.log"; appendLogFile($fileName, $fileStream); } $nodeReviewMember = $reviewMemberId; } $member = getReviewMemberInfo($nodeReviewMember); if (isset($member["mt_review_levels_Position"]) && $member["mt_review_levels_Position"] > 10) { $reviewState = 1; } else { $reviewState = 0; } $node["node"]["Review"] = $reviewState; $node["data"]["Review"] = $reviewState; } // ################## Extra Code #################### if ($execute) { if ($new) { if (trim($system["Types"][$nodeType2]["Creation_Code"])) { eval("?" . ">" . $system["Types"][$nodeType2]["Creation_Code"]); } } else { if ($node["node"]["Parent_id"] == 3) { if (trim($system["Types"][$nodeType2]["Erase_Code"])) { eval("?" . ">" . $system["Types"][$nodeType2]["Erase_Code"]); } findLinks($node["node"]["Node_id"], $execute); } else { if (trim($system["Types"][$nodeType2]["Save_Code"])) { eval("?" . ">" . $system["Types"][$nodeType2]["Save_Code"]); } } } } // ################################################## $DBArray = array(); $DBArray["table"] = "mt_main"; $DBArray["master"]["mt_main_Node_id"] = $nodeId; $DBArray["master"]["mt_main_Review"] = $reviewState; $DBArray["data"]["mt_main_Parent_id"] = $nodeParent; $DBArray["data"]["mt_main_Title"] = $node["node"]["Title"]; $DBArray["data"]["mt_main_Image"] = $node["node"]["Image"]; $DBArray["data"]["mt_main_Type"] = $nodeType; $DBArray["data"]["mt_main_Position"] = $node["node"]["Position"]; $DBArray["data"]["mt_main_Protected"] = $node["node"]["Protected"]; $DBArray["data"]["mt_main_Review_member"] = $node["node"]["Review_member"]; $DBArray["data"]["mt_main_Update"] = $node["node"]["Update"]; $nodeQuery = generateSQL($DBArray); // ################################################## if (!isset($node["node"])) { $node["node"] = array(); } if (!isset($controlInfo["node"])) { $controlInfo["node"] = array(); } $diff = array_diff_assoc($controlInfo["node"], $node["node"]); if (isset($diff["Update"])) { unset($diff["Update"]); } if (count($diff)) { $deltaReport["node"] = $diff; } // ################################################## if (!isset($node["data"]) || !is_array($node["data"])) { $node["data"] = array(); } if (!isset($node["data"]["Review"])) { $node["data"]["Review"] = $reviewState; } if (!isset($node["data"]["Rights"])) { $node["data"]["Rights"] = array(); } if (!isset($node["data"]["Dependancies"])) { $node["data"]["Dependancies"] = ""; } if (!isset($node["data"]["Values"])) { $node["data"]["Values"] = array(); } if (!is_array($controlInfo["data"]["Rights"])) { $controlInfo["data"]["Rights"] = array(); } if (!is_array($node["data"]["Rights"])) { $node["data"]["Rights"] = array(); } if (!isset($controlInfo["rights"]) || !is_array($controlInfo["rights"])) { $controlInfo["rights"] = array(); } if (!isset($node["rights"]) || !is_array($node["rights"])) { $node["rights"] = array(); } $DeltaArray = array(); if (!isset($controlInfo["data"])) { $controlInfo["data"] = array(); } $diff = array_diff_assoc($controlInfo["data"], $node["data"]); if (count($diff)) { $deltaReport["data"] = $diff; $isDelta = TRUE; } $keys = array_keys($system["Languages"]); for ($i = 0; $i < count($keys); $i++) { $Lang_id = translateIds2old("Languages", $keys[$i]); $Delta = array(); if (isset($node["data"]["Values"][$Lang_id])) { // ["data"]["Values"][$Lang_id] if (!isset($controlInfo["data"]["Values"][$Lang_id])) { $controlInfo["data"]["Values"][$Lang_id] = array(); } $diff = array_diff_assoc($controlInfo["data"]["Values"][$Lang_id], $node["data"]["Values"][$Lang_id]); if (count($diff)) { $deltaReport["data"]["Values"][$Lang_id] = $diff; $isDelta = TRUE; } $Delta = array_merge($controlInfo["data"]["Values"][$Lang_id], $node["data"]["Values"][$Lang_id]); $DeltaArray[$Lang_id] = $Delta; } } $nodeInfo = $node; // echo "<pre>"; // print_r($system["Types"][$nodeType2]); // Workaround until complete change of rights $rightsData = FALSE; if (isset($node["rights"]) && is_array($node["rights"])) { $diff = array_diff_assoc($node["rights"], $controlInfo["rights"]); if (count($diff)) { if (isset($node["data"]["Rights"])) { $diff = array_diff_assoc($node["data"]["Rights"], $controlInfo["data"]["Rights"]); if (!count($diff)) { $node["data"]["Rights"] = $node["rights"]; } } } } if (isset($node["data"]["Rights"])) { $diff = array_diff_assoc($node["data"]["Rights"], $controlInfo["data"]["Rights"]); if (count($diff)) { $isDelta = TRUE; $right = array_merge($controlInfo["data"]["Rights"], $node["data"]["Rights"]); $empty = array(); if (version_compare(phpversion(), "5.0.1") >= 0) { $empty = array_keys($node["data"]["Rights"], "", TRUE); } else { $empty = array_keys($node["data"]["Rights"], ""); } for ($i = 0; $i < count($empty); $i++) { if (isset($node["data"]["Rights"][$empty[$i]])) { unset($node["data"]["Rights"][$empty[$i]]); } } $deltaReport["data"]["Rights"] = $node["data"]["Rights"]; } } if ($isDelta || $ignoreValidationErrors) { $attributes = array(); $attributesKeys = array(); $typeAttributes = array(); if (isset($system["Types"][$nodeType2]["__Fields__"])) { $typeAttributes = $system["Types"][$nodeType2]["__Fields__"]; } $attributesMultiLang = array(); $attributesNames = array(); $keys_typeAtt = array_keys($typeAttributes); for ($i = 0; $i < count($keys_typeAtt); $i++) { $cf = $typeAttributes[$keys_typeAtt[$i]]; $cf["Unique"] = $keys_typeAtt[$i]; $attributesKey = $cf["__Name__"]; $attributesKeys[] = $attributesKey; $attributesNames[$cf["__Name__"]] = ""; $attributes[$attributesKey] = $cf; if (isset($cf["Monolingual"]) && $cf["Monolingual"] == 0) { $attributesMultiLang[$attributesKey] = ""; } } $Data = array(); if (!isset($controlInfo["data"]) || !isset($controlInfo["data"]["Values"]) || !isset($controlInfo["data"]["Values"][1])) { $controlInfo["data"]["Values"][1] = array(); } if (!isset($DeltaArray[1])) { $DeltaArray[1] = array(); } $MainData = array_merge($attributesNames, $controlInfo["data"]["Values"][1], $DeltaArray[1]); $keys = array_keys($system["Languages"]); for ($j = 0; $j < count($keys); $j++) { $language = translateIds2old("Languages", $keys[$j]); for ($i = 0; $i < count($attributesKeys); $i++) { $cf = $attributes[$attributesKeys[$i]]; $value = FALSE; $nodeInfo = $node; $fieldId = $cf["Unique"]; $fieldId = $attributes[$attributesKeys[$i]]["Id"]; // ALTLAST $fieldName = $attributes[$attributesKeys[$i]]["__Name__"]; $fieldType = $attributes[$attributesKeys[$i]]["BaseType"]; if ($cf["Monolingual"] == 1) { $fieldLanguage = 1; } else { $fieldLanguage = $language; } if ($fieldLanguage == 1) { if ($fieldLanguage == $language) { $value = $MainData[$attributesKeys[$i]]; } } else { if (isset($DeltaArray[$language][$attributesKeys[$i]])) { $value = $DeltaArray[$language][$attributesKeys[$i]]; } } if ($value !== FALSE) { $Data[$language][$fieldId] = $value; } } } $DBArray = array(); $DBArray["table"] = "mt_data"; $DBArray["master"]["mt_data_Node_id"] = $node["node"]["Node_id"]; $DBArray["master"]["mt_data_Review"] = $reviewState; $DBArray["data"]["mt_data_Type"] = $nodeType; $DBArray["data"]["mt_data_Dependencies"] = " " . trim($node["data"]["Dependancies"]) . " "; if (count($node["data"]["Rights"])) { $DBArray["data"]["mt_data_Rights"] = serialize($node["data"]["Rights"]); } else { $DBArray["data"]["mt_data_Rights"] = ""; } if (count($Data)) { $DBArray["data"]["mt_data_Value"] = serialize($Data); } else { $DBArray["data"]["mt_data_Value"] = ""; } $dataQuery = generateSQL($DBArray); } // print_r($node); if ($node["node"]["Parent_id"] == 3 && isset($node["Errors"])) { unset($node["Errors"]); } // ################################################## if ((!isset($node["Errors"]) || $ignoreValidationErrors && isset($node["Errors"]) || $new || $force) && $reviewState != -1) { if ($execute) { if (isset($nodeQuery)) { mysql_query($nodeQuery, $system["dbCon"]); } if (isset($dataQuery)) { mysql_query($dataQuery, $system["dbCon"]); } // if(isset($rightQuery)) mysql_query($rightQuery,$system["dbCon"]); if ($trackNodeContext && count($deltaReport) && isset($_SESSION["User"]["User_id"]) && $_SESSION["User"]["User_id"]) { $u = getNodeContext($_SESSION["User"]["User_id"]); $fileStream = date("YmdHis") . ";" . str_replace(";", ",", $action) . ";"; $fileStream .= $u["node"]["Node_id"] . ";" . str_replace(";", ",", $u["node"]["Title"]) . ";"; $fileStream .= str_replace("\r", "\\r", str_replace("\n", "\\n", serialize($deltaReport))) . "\r\n"; $fileName = $system["systemFilePath"] . "log/" . $node["node"]["Node_id"] . ".txt"; appendLogFile($fileName, $fileStream); } // if(isset($system["Types"][$nodeType2]["Save_Code"]) && trim($system["Types"][$nodeType2]["Save_Code"])!="") { // $reason = FALSE; // eval("?".">".$system["Types"][$nodeType2]["Save_Code"]); // if($reason!==FALSE) $node["Errors"][$fieldName] = $reason; // } if ($reviewState === 0) { $dbQuery = "DELETE FROM mt_main WHERE mt_main_Node_id='" . $node["node"]["Node_id"] . "' AND mt_main_Review='1';"; mysql_query($dbQuery, $system["dbCon"]); $dbQuery = "DELETE FROM mt_data WHERE mt_data_Node_id='" . $node["node"]["Node_id"] . "' AND mt_data_Review='1';"; mysql_query($dbQuery, $system["dbCon"]); } } else { echo "<pre>"; print_r($deltaReport); echo "</pre>"; if (isset($nodeQuery)) { echo $nodeQuery . "<br/>"; } if (isset($dataQuery)) { echo $dataQuery . "<br/>"; } if ($reviewState === 0) { $dbQuery = "DELETE FROM mt_main WHERE mt_main_Node_id='" . $node["node"]["Node_id"] . "' AND mt_main_Review='1';"; echo $dbQuery . "<br/>"; $dbQuery = "DELETE FROM mt_data WHERE mt_data_Node_id='" . $node["node"]["Node_id"] . "' AND mt_data_Review='1';"; echo $dbQuery . "<br/>"; } } } // ################################################## } else { $node = FALSE; } // ################################################## // Workaround until complete change of rights // $node["rights"] = $node["data"]["Rights"]; unset($node["rights"]); // ################################################## return $node; }
printUpdateStatus('OK'); } //end foreach /** * Go through each table, * grab the data from the source table * and put it in the destination table. */ foreach ($info['tables'] as $tablename => $table_info) { if ($tablename === 'sch_idx') { pre_echo('Skipping search table - you will need to re-index'); continue; } pre_echo('Starting table: sq_' . $tablename); $columns = array_keys($table_info['columns']); $sql = generateSQL($tablename, $columns); /** * Switch to the source db connector to get the data.. */ MatrixDAL::changeDb($source_db); if (!isset($table_info['primary_key'])) { $msg = "This table (sq_{$tablename}) cannot be converted since it doesn't have a primary key.\n"; $msg .= "A primary key is required to guarantee the chunking of data doesn't\n"; $msg .= "miss anything and all data is fetched correctly from the table.\n"; $msg .= "Skipping table.\n"; pre_echo($msg); /** * 'restore' to the dest db * even though we switch straight back to the source * otherwise dal gets confused about which is which. */