//simulate the user clicking 'Search' to run immediately } else { displayErrorBeforeForm('Could not parse search request'); } } else { displayErrorBeforeForm('Could not decode search request'); } } $_SESSION['lastSearchRequest'] = $searchRequest; //Main form logic: When the user first enters the page, display form defaulted to //show the search results with default object selected on a previous page, otherwise // just display the blank form. if (isset($_POST['searchSubmit']) && isset($searchRequest)) { require_once 'header.php'; displaySearchForm($searchRequest); print updateUrlScript($searchRequest); $searchTimeStart = microtime(true); $records = search($searchRequest); $searchTimeEnd = microtime(true); $searchTimeElapsed = $searchTimeEnd - $searchTimeStart; displaySearchResult($records, $searchTimeElapsed); include_once 'footer.php'; } else { require_once 'header.php'; displaySearchForm($searchRequest); include_once 'footer.php'; } //Show the main SOSL search form with default search or last submitted search and export action (screen or CSV) function displaySearchForm($searchRequest) { registerShortcut("Ctrl+Alt+W", "addReturningObjectRow(document.getElementById('numReturningObjects').value++);" . "toggleFieldDisabled();");
require_once 'header.php'; displayQueryForm($queryRequest); $queryRequest->setQueryAction('QueryMore'); $asyncJob = new QueryFutureTask($queryRequest, $_POST['queryLocator']); echo $asyncJob->perform(); include_once 'footer.php'; } else { if (isset($_POST['querySubmit']) && $_POST['querySubmit'] == 'Query' && $queryRequest->getSoqlQuery() != null && ($queryRequest->getExportTo() == 'screen' || $queryRequest->getExportTo() == 'matrix')) { require_once 'header.php'; displayQueryForm($queryRequest); if ($queryRequest->getExportTo() == 'matrix' && ($queryRequest->getMatrixCols() == "" || $queryRequest->getMatrixRows() == "")) { displayWarning("Both column and row must be specified for Matrix view.", false, true); return; } echo "<p><a name='qr'> </a></p>"; echo updateUrlScript($queryRequest); $asyncJob = new QueryFutureTask($queryRequest); echo $asyncJob->enqueueOrPerform(); include_once 'footer.php'; } else { if (isset($_POST['querySubmit']) && $_POST['querySubmit'] == 'Query' && $queryRequest->getSoqlQuery() != null && strpos($queryRequest->getExportTo(), 'async_') === 0) { try { queryAsync($queryRequest); } catch (Exception $e) { require_once 'header.php'; displayQueryForm($queryRequest); throw $e; } } else { if (isset($_POST['querySubmit']) && $_POST['querySubmit'] == 'Query' && $queryRequest->getSoqlQuery() != null && $queryRequest->getExportTo() == 'csv') { if (stripos($_POST['soql_query'], "count()") == false) {