Esempio n. 1
2
 /**
  * Static function for create list page
  * Read params from setting 
  * Create object of class in accordance with mode displaying page
  * @param String strTableName
  * @param Array options
  */
 static function &createListPage($strTableName, $options)
 {
     global $isGroupSecurity;
     $gSettings = new ProjectSettings($strTableName, $options['pageType']);
     $gQuery = $gSettings->getSQLQuery();
     $params = $options;
     $params['tName'] = $strTableName;
     $params['origTName'] = $gSettings->getOriginalTableName();
     $params['gPageSize'] = $gSettings->getInitialPageSize();
     $params['gOrderIndexes'] = $gSettings->getOrderIndexes();
     $params['gstrOrderBy'] = $gQuery->OrderByToSql();
     $params['gsqlHead'] = $gQuery->HeadToSql();
     $params['gsqlFrom'] = $gQuery->FromToSql();
     $params['gsqlWhereExpr'] = $gQuery->WhereToSql();
     $params['gsqlGroupBy'] = $gQuery->GroupByToSql();
     $params['gsqlHaving'] = $gQuery->Having()->toSql($gQuery);
     $params['nSecOptions'] = $gSettings->getAdvancedSecurityType();
     $params['nLoginMethod'] = GetGlobalData("nLoginMethod", 0);
     $params['recsPerRowList'] = isMobile() ? 1 : $gSettings->getRecordsPerRowList();
     $params['mainTableOwnerID'] = $gSettings->getTableOwnerIdField();
     $params['exportTo'] = $gSettings->hasExportPage();
     $params['printFriendly'] = $gSettings->hasPrintPage();
     $params['deleteRecs'] = $gSettings->hasDelete();
     $params["isGroupSecurity"] = $isGroupSecurity;
     $params['arrKeyFields'] = $gSettings->getTableKeys();
     $params["isUseInlineAdd"] = $gSettings->hasInlineAdd();
     $params["isUseInlineEdit"] = $gSettings->hasInlineEdit();
     $params["panelSearchFields"] = $gSettings->getPanelSearchFields();
     $params['listGridLayout'] = $gSettings->getListGridLayout();
     $params['createLoginPage'] = GetGlobalData("createLoginPage", false);
     $params['noRecordsFirstPage'] = $gSettings->noRecordsOnFirstPage();
     $params['totalsFields'] = $gSettings->getTotalsFields();
     $params['listAjax'] = $gSettings->ajaxBasedListPage();
     $params['arrRecsPerPage'] = $gSettings->getRecordsPerPageArray();
     $params['isScrollGridBody'] = $gSettings->getScrollGridBody();
     $params['viewPDF'] = $gSettings->isViewPagePDF() || $gSettings->isPrinterPagePDF();
     $params['audit'] = GetAuditObject($table);
     $params['listFields'] = array();
     $allfields = $gSettings->getListFields();
     foreach ($allfields as $f) {
         if (!$gSettings->appearOnListPage($f)) {
             continue;
         }
         $params['listFields'][] = array("fName" => $f, "goodFieldName" => GoodFieldName($f), "valueFieldName" => GoodFieldName($f) . "_value", "viewFormat" => $gSettings->getViewFormat($f), "editFormat" => $gSettings->getEditFormat($f));
     }
     // choose class by mode
     if ($params["mode"] == LIST_SIMPLE) {
         $pageObject = new ListPage_Simple($params);
     } else {
         if ($params["mode"] == LIST_AJAX) {
             $pageObject = new ListPage_Ajax($params);
         } else {
             if ($params["mode"] == LIST_LOOKUP) {
                 $pageObject = new ListPage_Lookup($params);
             } else {
                 if ($params["mode"] == LIST_DETAILS || $params["mode"] == LIST_DASHDETAILS) {
                     $pageObject = new ListPage_DPInline($params);
                 } else {
                     if ($params["mode"] == RIGHTS_PAGE) {
                         $pageObject = new RightsPage($params);
                     } else {
                         if ($params["mode"] == MEMBERS_PAGE) {
                             $pageObject = new MembersPage($params);
                         } else {
                             if ($params["mode"] == LIST_DASHBOARD) {
                                 $pageObject = new ListPage_Dashboard($params);
                             }
                         }
                     }
                 }
             }
         }
     }
     $pageObject->init();
     return $pageObject;
 }
Esempio n. 2
0
 /**
  * Static function for create list page
  * Read params from setting 
  * Create object of class in accordance with mode displaying page 
  */
 function &createListPage($table, $options)
 {
     global $bSubqueriesSupported, $strTableName, $conn, $locale_info, $isGroupSecurity;
     $gSettings = new ProjectSettings($strTableName, $options['pageType']);
     $gQuery = $gSettings->getSQLQuery();
     $params = array();
     $params = $options;
     $params['origTName'] = $gSettings->getOriginalTableName();
     $params['sessionPrefix'] = $strTableName;
     $params['tName'] = $table;
     $params['conn'] =& $conn;
     $params['gPageSize'] = $gSettings->getInitialPageSize();
     $params['gOrderIndexes'] = $gSettings->getOrderIndexes();
     $params['gstrOrderBy'] = $gQuery->OrderByToSql();
     $params['gsqlHead'] = $gQuery->HeadToSql();
     $params['gsqlFrom'] = $gQuery->FromToSql();
     $params['gsqlWhereExpr'] = $gQuery->WhereToSql();
     $params['gsqlGroupBy'] = $gQuery->GroupByToSql();
     $params['gsqlHaving'] = $gQuery->Having()->toSql($gQuery);
     $params['locale_info'] =& $locale_info;
     $params["subQueriesSupp"] = $bSubqueriesSupported;
     $params['nSecOptions'] = $gSettings->getAdvancedSecurityType();
     $params['nLoginMethod'] = GetGlobalData("nLoginMethod", 0);
     $params['recsPerRowList'] = $gSettings->getRecordsPerRowList();
     $params['dbType'] = GetGlobalData("dbType", 0);
     $params['mainTableOwnerID'] = $gSettings->getTableOwnerIdField();
     $params['moveNext'] = $gSettings->useMoveNext();
     $params['exportTo'] = $gSettings->hasExportPage();
     $params['printFriendly'] = $gSettings->hasPrintPage();
     $params['deleteRecs'] = $gSettings->hasDelete();
     $params['rowHighlite'] = $gSettings->highlightRows();
     $params["isGroupSecurity"] = $isGroupSecurity;
     $params['arrKeyFields'] = $gSettings->getTableKeys();
     $params["isUseInlineAdd"] = $gSettings->hasInlineAdd();
     $params["isUseInlineEdit"] = $gSettings->hasInlineEdit();
     $params["isUseInlineJs"] = $params["isUseInlineAdd"] || $params["isUseInlineEdit"];
     $params["panelSearchFields"] = $gSettings->getPanelSearchFields();
     $params['isVerLayout'] = $gSettings->isVerticalLayoutList();
     $params['isDisplayLoading'] = $gSettings->displayLoading();
     $params['createLoginPage'] = GetGlobalData("createLoginPage", false);
     $params['subQueriesSupAccess'] = $gSettings->tableSupportsSubqueries();
     $params['noRecordsFirstPage'] = $gSettings->noRecordsOnFirstPage();
     $params['totalsFields'] = $gSettings->getTotalsFields();
     $params['listIcons'] = $gSettings->iconsOnList();
     $params['edit'] = $gSettings->hasEditPage();
     $params['inlineEdit'] = $gSettings->hasInlineEdit();
     $params['iCopy'] = $gSettings->hasCopyPage();
     $params['iView'] = $gSettings->hasViewPage();
     $params['listAjax'] = $gSettings->ajaxBasedListPage();
     $params['arrRecsPerPage'] = $gSettings->getRecordsPerPageArray();
     $params['isScrollGridBody'] = $gSettings->getScrollGridBody();
     $params['audit'] = GetAuditObject($table);
     $params['listFields'] = array();
     $allfields = $gSettings->getListFields();
     foreach ($allfields as $f) {
         if (!$gSettings->appearOnListPage($f)) {
             continue;
         }
         $params['listFields'][] = array("fName" => $f, "goodFieldName" => GoodFieldName($f), "valueFieldName" => GoodFieldName($f) . "_value", "viewFormat" => $gSettings->getViewFormat($f), "editFormat" => $gSettings->getEditFormat($f));
     }
     // choose class by mode
     if ($params["mode"] == LIST_SIMPLE) {
         $pageObject = new ListPage_Simple($params);
     } else {
         if ($params["mode"] == LIST_AJAX) {
             $pageObject = new ListPage_Ajax($params);
         } else {
             if ($params["mode"] == LIST_LOOKUP) {
                 $pageObject = new ListPage_Lookup($params);
             } else {
                 if ($params["mode"] == LIST_DETAILS) {
                     $pageObject = new ListPage_DPInline($params);
                 } else {
                     if ($params["mode"] == RIGHTS_PAGE) {
                         $pageObject = new RightsPage($params);
                     } else {
                         if ($params["mode"] == MEMBERS_PAGE) {
                             $pageObject = new MembersPage($params);
                         }
                     }
                 }
             }
         }
     }
     return $pageObject;
 }
Esempio n. 3
0
 function SearchClause(&$params)
 {
     global $strTableName;
     $this->searchOptions["contains"] = array("option" => "Contains", "not" => false);
     $this->searchOptions["equals"] = array("option" => "Equals", "not" => false);
     $this->searchOptions["startswith"] = array("option" => "Starts with", "not" => false);
     $this->searchOptions["morethan"] = array("option" => "More than", "not" => false);
     $this->searchOptions["lessthan"] = array("option" => "Less than", "not" => false);
     $this->searchOptions["between"] = array("option" => "Between", "not" => false);
     $this->searchOptions["empty"] = array("option" => "Empty", "not" => false);
     $this->searchOptions["notcontain"] = array("option" => "Contains", "not" => true);
     $this->searchOptions["notequal"] = array("option" => "Equals", "not" => true);
     $this->searchOptions["notstartwith"] = array("option" => "Starts with", "not" => true);
     $this->searchOptions["notmorethan"] = array("option" => "More than", "not" => true);
     $this->searchOptions["lessequal"] = array("option" => "More than", "not" => true);
     $this->searchOptions["notlessthan"] = array("option" => "Less than", "not" => true);
     $this->searchOptions["moreequal"] = array("option" => "Less than", "not" => true);
     $this->searchOptions["notbetween"] = array("option" => "Between", "not" => true);
     $this->searchOptions["notempty"] = array("option" => "Empty", "not" => true);
     $this->tName = $params['tName'] ? $params['tName'] : $strTableName;
     $this->sessionPrefix = $params['sessionPrefix'] ? $params['sessionPrefix'] : $this->tName;
     $this->searchFieldsArr = $params['searchFieldsArr'];
     $this->cipherer = $params['cipherer'];
     $settings = new ProjectSettings($this->tName, PAGE_SEARCH);
     $this->panelSearchFields = $params['panelSearchFields'] ? $params['panelSearchFields'] : $settings->getPanelSearchFields();
     $this->googleLikeFields = $params['googleLikeFields'] ? $params['googleLikeFields'] : $settings->getGoogleLikeFields();
     $this->requiredSearchFields = $params['requiredSearchFields'] ? $params['requiredSearchFields'] : $settings->getSearchRequiredFields();
     $this->isShowSimpleSrchOpt = $settings->showSimpleSearchOptions();
     $this->searchSavingEnabled = $params['searchSavingEnabled'] ? $params['searchSavingEnabled'] : false;
     $this->dashTName = $params['dashTName'] ? $params['dashTName'] : "";
     $this->dashElementName = $params['dashElementName'] ? $params['dashElementName'] : "";
 }
Esempio n. 4
0
}
$sessionPrefix = $strTableName;
$cipherer = new RunnerCipherer($strTableName);
$pSet = new ProjectSettings($strTableName, PAGE_SEARCH);
// array of fields which were added in wizard for search
$allSearchFields = $pSet->getAllSearchFields();
// SearchClause class stuff
if (isset($_SESSION[$sessionPrefix . '_advsearch'])) {
    $searchClauseObj = unserialize($_SESSION[$sessionPrefix . '_advsearch']);
} else {
    $params = array();
    $params['tName'] = $strTableName;
    $params['cipherer'] = $cipherer;
    $params['searchFieldsArr'] = $allSearchFields;
    $params['sessionPrefix'] = $sessionPrefix;
    $params['panelSearchFields'] = $pSet->getPanelSearchFields();
    $params['googleLikeFields'] = $pSet->getGoogleLikeFields();
    $searchClauseObj = new SearchClause($params);
}
// array of vals
$response = array();
if (postvalue("start")) {
    $suggestAllContent = false;
}
$searchFor = postvalue('searchFor');
$searchField = GoodFieldName(postvalue('searchField'));
$strSecuritySql = SecuritySQL("Search", $strTableName);
$detailKeys = array();
$masterWhere = "";
if ($searchField == "") {
    $allSearchFields = $pSet->getGoogleLikeFields();