protected function SetupShortcut() { // Lookup Object PK information from Query String (if applicable) // Set mode to Edit or New depending on what's found $intShortcutId = QApplication::QueryString('intShortcutId'); if ($intShortcutId) { $this->objShortcut = Shortcut::Load($intShortcutId); if (!$this->objShortcut) { throw new Exception('Could not find a Shortcut object with PK arguments: ' . $intShortcutId); } $this->strTitleVerb = QApplication::Translate('Edit'); $this->blnEditMode = true; } else { $this->objShortcut = new Shortcut(); $this->strTitleVerb = QApplication::Translate('Create'); $this->blnEditMode = false; } }
public function btnEdit_Click($strFormId, $strControlId, $strParameter) { $strParameterArray = explode(',', $strParameter); $objShortcut = Shortcut::Load($strParameterArray[0]); $objEditPanel = new ShortcutEditPanel($this, $this->strCloseEditPanelMethod, $objShortcut); $strMethodName = $this->strSetEditPanelMethod; $this->objForm->{$strMethodName}($objEditPanel); }
/** * Reload this Shortcut from the database. * @return void */ public function Reload() { // Make sure we are actually Restored from the database if (!$this->__blnRestored) { throw new QCallerException('Cannot call Reload() on a new, unsaved Shortcut object.'); } // Reload the Object $objReloaded = Shortcut::Load($this->intShortcutId); // Update $this's local variables to match $this->ModuleId = $objReloaded->ModuleId; $this->AuthorizationId = $objReloaded->AuthorizationId; $this->TransactionTypeId = $objReloaded->TransactionTypeId; $this->strShortDescription = $objReloaded->strShortDescription; $this->strLink = $objReloaded->strLink; $this->strImagePath = $objReloaded->strImagePath; $this->EntityQtypeId = $objReloaded->EntityQtypeId; $this->blnCreateFlag = $objReloaded->blnCreateFlag; }
/** * Static Helper Method to Create using PK arguments * You must pass in the PK arguments on an object to load, or leave it blank to create a new one. * If you want to load via QueryString or PathInfo, use the CreateFromQueryString or CreateFromPathInfo * static helper methods. Finally, specify a CreateType to define whether or not we are only allowed to * edit, or if we are also allowed to create a new one, etc. * * @param mixed $objParentObject QForm or QPanel which will be using this ShortcutMetaControl * @param integer $intShortcutId primary key value * @param QMetaControlCreateType $intCreateType rules governing Shortcut object creation - defaults to CreateOrEdit * @return ShortcutMetaControl */ public static function Create($objParentObject, $intShortcutId = null, $intCreateType = QMetaControlCreateType::CreateOrEdit) { // Attempt to Load from PK Arguments if (strlen($intShortcutId)) { $objShortcut = Shortcut::Load($intShortcutId); // Shortcut was found -- return it! if ($objShortcut) { return new ShortcutMetaControl($objParentObject, $objShortcut); } else { if ($intCreateType != QMetaControlCreateType::CreateOnRecordNotFound) { throw new QCallerException('Could not find a Shortcut object with PK arguments: ' . $intShortcutId); } } // If EditOnly is specified, throw an exception } else { if ($intCreateType == QMetaControlCreateType::EditOnly) { throw new QCallerException('No PK arguments specified'); } } // If we are here, then we need to create a new record return new ShortcutMetaControl($objParentObject, new Shortcut()); }