コード例 #1
0
ファイル: SearchQueryPanel.class.php プロジェクト: alcf/chms
 public function __construct(SearchQuery $objSearchQuery, $objParentObject, $strControlId = null)
 {
     try {
         parent::__construct($objParentObject, $strControlId);
     } catch (QCallerException $objExc) {
         $objExc->IncrementOffset();
         throw $objExc;
     }
     $this->objSearchQuery = $objSearchQuery;
     $this->strTemplate = dirname(__FILE__) . '/SearchQueryPanel.tpl.php';
     $this->dtgConditions = new QDataGrid($this);
     $this->dtgConditions->AddColumn(new QDataGridColumn('Item', '<?= $_CONTROL->ParentControl->RenderItem($_ITEM); ?>', 'HtmlEntities=false', 'Width=160px'));
     $this->dtgConditions->AddColumn(new QDataGridColumn('Operation', '<?= $_CONTROL->ParentControl->RenderOperation($_ITEM); ?>', 'HtmlEntities=false', 'Width=180px'));
     $this->dtgConditions->AddColumn(new QDataGridColumn('Value', '<?= $_CONTROL->ParentControl->RenderValue($_ITEM); ?>', 'HtmlEntities=false', 'Width=390px'));
     $this->dtgConditions->SetDataBinder('dtgConditions_Bind', $this);
     $this->btnAddCondition = new QButton($this);
     $this->btnAddCondition->CssClass = 'primary';
     $this->btnAddCondition->Text = 'Add a Condition';
     $this->btnAddCondition->AddAction(new QClickEvent(), new QAjaxControlAction($this, 'btnAddCondition_Click'));
     if ($this->objSearchQuery->Id) {
         $this->objQueryConditionArray = QueryCondition::LoadArrayBySearchQueryId($this->objSearchQuery->Id, QQ::OrderBy(QQN::QueryCondition()->Id));
         $this->objQueryConditionArray[] = new QueryCondition();
     } else {
         $this->objQueryConditionArray = array(new QueryCondition());
     }
     // Single Lookup of Node and Operations
     $this->objNodeArray = array();
     foreach (QueryNode::LoadAll(QQ::OrderBy(QQN::QueryNode()->Name)) as $objNode) {
         $this->objNodeArray[$objNode->Id] = $objNode;
     }
     $this->objOperationArray = array();
     foreach (QueryOperation::LoadAll(QQ::OrderBy(QQN::QueryOperation()->Name)) as $objOperation) {
         $this->objOperationArray[$objOperation->Id] = $objOperation;
     }
 }
コード例 #2
0
 /**
  * Refresh this MetaControl with Data from the local QueryCondition object.
  * @param boolean $blnReload reload QueryCondition from the database
  * @return void
  */
 public function Refresh($blnReload = false)
 {
     if ($blnReload) {
         $this->objQueryCondition->Reload();
     }
     if ($this->lblId) {
         if ($this->blnEditMode) {
             $this->lblId->Text = $this->objQueryCondition->Id;
         }
     }
     if ($this->lstSearchQuery) {
         $this->lstSearchQuery->RemoveAllItems();
         $this->lstSearchQuery->AddItem(QApplication::Translate('- Select One -'), null);
         $objSearchQueryArray = SearchQuery::LoadAll();
         if ($objSearchQueryArray) {
             foreach ($objSearchQueryArray as $objSearchQuery) {
                 $objListItem = new QListItem($objSearchQuery->__toString(), $objSearchQuery->Id);
                 if ($this->objQueryCondition->SearchQuery && $this->objQueryCondition->SearchQuery->Id == $objSearchQuery->Id) {
                     $objListItem->Selected = true;
                 }
                 $this->lstSearchQuery->AddItem($objListItem);
             }
         }
     }
     if ($this->lblSearchQueryId) {
         $this->lblSearchQueryId->Text = $this->objQueryCondition->SearchQuery ? $this->objQueryCondition->SearchQuery->__toString() : null;
     }
     if ($this->lstOrQueryCondition) {
         $this->lstOrQueryCondition->RemoveAllItems();
         $this->lstOrQueryCondition->AddItem(QApplication::Translate('- Select One -'), null);
         $objOrQueryConditionArray = QueryCondition::LoadAll();
         if ($objOrQueryConditionArray) {
             foreach ($objOrQueryConditionArray as $objOrQueryCondition) {
                 $objListItem = new QListItem($objOrQueryCondition->__toString(), $objOrQueryCondition->Id);
                 if ($this->objQueryCondition->OrQueryCondition && $this->objQueryCondition->OrQueryCondition->Id == $objOrQueryCondition->Id) {
                     $objListItem->Selected = true;
                 }
                 $this->lstOrQueryCondition->AddItem($objListItem);
             }
         }
     }
     if ($this->lblOrQueryConditionId) {
         $this->lblOrQueryConditionId->Text = $this->objQueryCondition->OrQueryCondition ? $this->objQueryCondition->OrQueryCondition->__toString() : null;
     }
     if ($this->lstQueryOperation) {
         $this->lstQueryOperation->RemoveAllItems();
         if (!$this->blnEditMode) {
             $this->lstQueryOperation->AddItem(QApplication::Translate('- Select One -'), null);
         }
         $objQueryOperationArray = QueryOperation::LoadAll();
         if ($objQueryOperationArray) {
             foreach ($objQueryOperationArray as $objQueryOperation) {
                 $objListItem = new QListItem($objQueryOperation->__toString(), $objQueryOperation->Id);
                 if ($this->objQueryCondition->QueryOperation && $this->objQueryCondition->QueryOperation->Id == $objQueryOperation->Id) {
                     $objListItem->Selected = true;
                 }
                 $this->lstQueryOperation->AddItem($objListItem);
             }
         }
     }
     if ($this->lblQueryOperationId) {
         $this->lblQueryOperationId->Text = $this->objQueryCondition->QueryOperation ? $this->objQueryCondition->QueryOperation->__toString() : null;
     }
     if ($this->lstQueryNode) {
         $this->lstQueryNode->RemoveAllItems();
         if (!$this->blnEditMode) {
             $this->lstQueryNode->AddItem(QApplication::Translate('- Select One -'), null);
         }
         $objQueryNodeArray = QueryNode::LoadAll();
         if ($objQueryNodeArray) {
             foreach ($objQueryNodeArray as $objQueryNode) {
                 $objListItem = new QListItem($objQueryNode->__toString(), $objQueryNode->Id);
                 if ($this->objQueryCondition->QueryNode && $this->objQueryCondition->QueryNode->Id == $objQueryNode->Id) {
                     $objListItem->Selected = true;
                 }
                 $this->lstQueryNode->AddItem($objListItem);
             }
         }
     }
     if ($this->lblQueryNodeId) {
         $this->lblQueryNodeId->Text = $this->objQueryCondition->QueryNode ? $this->objQueryCondition->QueryNode->__toString() : null;
     }
     if ($this->txtValue) {
         $this->txtValue->Text = $this->objQueryCondition->Value;
     }
     if ($this->lblValue) {
         $this->lblValue->Text = $this->objQueryCondition->Value;
     }
     if ($this->lstQueryConditionAsOr) {
         $this->lstQueryConditionAsOr->RemoveAllItems();
         $this->lstQueryConditionAsOr->AddItem(QApplication::Translate('- Select One -'), null);
         $objQueryConditionArray = QueryCondition::LoadAll();
         if ($objQueryConditionArray) {
             foreach ($objQueryConditionArray as $objQueryCondition) {
                 $objListItem = new QListItem($objQueryCondition->__toString(), $objQueryCondition->Id);
                 if ($objQueryCondition->OrQueryConditionId == $this->objQueryCondition->Id) {
                     $objListItem->Selected = true;
                 }
                 $this->lstQueryConditionAsOr->AddItem($objListItem);
             }
         }
     }
     if ($this->lblQueryConditionAsOr) {
         $this->lblQueryConditionAsOr->Text = $this->objQueryCondition->QueryConditionAsOr ? $this->objQueryCondition->QueryConditionAsOr->__toString() : null;
     }
 }