public function btnDelete_Click() { $this->mctSignupForm->SignupForm->DeleteAllFormQuestions(); if ($this->mctSignupForm->SignupForm->EventSignupForm) { $this->mctSignupForm->SignupForm->EventSignupForm->Delete(); } $this->mctSignupForm->DeleteSignupForm(); QApplication::Redirect('/events/'); }
/** * Static Helper Method to Create using QueryString arguments * * @param mixed $objParentObject QForm or QPanel which will be using this SignupFormMetaControl * @param QMetaControlCreateType $intCreateType rules governing SignupForm object creation - defaults to CreateOrEdit * @return SignupFormMetaControl */ public static function CreateFromQueryString($objParentObject, $intCreateType = QMetaControlCreateType::CreateOrEdit) { $intId = QApplication::QueryString('intId'); return SignupFormMetaControl::Create($objParentObject, $intId, $intCreateType); }
protected function Form_Create() { $this->objSignupForm = SignupForm::Load(QApplication::PathInfo(0)); if (!$this->objSignupForm) { QApplication::Redirect('/events/'); } $this->mctSignupForm = SignupFormMetaControl::Create($this, $this->objSignupForm->Id); if (!$this->objSignupForm->IsLoginCanView(QApplication::$Login)) { QApplication::Redirect('/events/'); } $this->strPageTitle .= $this->objSignupForm->Name; $this->dtgQuestions = new FormQuestionDataGrid($this); $this->dtgQuestions->AddColumn(new QDataGridColumn('Reorder', '<?= $_FORM->RenderReorderQuestion($_ITEM); ?>', 'HtmlEntities=false', 'Width=60px')); $this->dtgQuestions->MetaAddTypeColumn('FormQuestionTypeId', 'FormQuestionType', 'Name=Question Type', 'Width=140px'); $this->dtgQuestions->MetaAddColumn('ShortDescription', 'Html=<?= $_FORM->RenderShortDescription($_ITEM); ?>', 'Width=170px', 'HtmlEntities=false'); $this->dtgQuestions->MetaAddColumn('Question', 'Width=400px'); $this->dtgQuestions->MetaAddColumn('RequiredFlag', 'Width=60px', 'Name=Required?', 'Html=<?= ($_ITEM->RequiredFlag ? "Yes" : null) ?>'); $this->dtgQuestions->MetaAddColumn('InternalFlag', 'Width=60px', 'Name=Internal Only', 'Html=<?= ($_ITEM->InternalFlag ? "Yes" : null) ?>'); $this->dtgQuestions->SetDataBinder('dtgQuestions_Bind'); $this->dtgProductsArray = array(); foreach (FormProductType::$NameArray as $intFormProductTypeId => $strName) { if (FormProduct::CountBySignupFormIdFormProductTypeId($this->objSignupForm->Id, $intFormProductTypeId)) { $dtgProducts = new FormProductDataGrid($this); $dtgProducts->Name = $intFormProductTypeId; $dtgProducts->SetDataBinder('dtgProducts_Bind'); $dtgProducts->AddColumn(new QDataGridColumn('Reorder', '<?= $_FORM->RenderReorderProduct($_ITEM, $_CONTROL); ?>', 'HtmlEntities=false', 'Width=60px')); $dtgProducts->MetaAddColumn('Name', 'Html=<?= $_FORM->RenderName($_ITEM); ?>', 'Width=250px', 'HtmlEntities=false'); $dtgProducts->MetaAddColumn('DateStart', 'Name=Date Available', 'Html=<?= $_ITEM->DateStartHtml; ?>', 'HtmlEntities=false', 'Width=100px'); $dtgProducts->MetaAddColumn('DateEnd', 'Name=Date Unavail.', 'Html=<?= $_ITEM->DateEndHtml; ?>', 'HtmlEntities=false', 'Width=100px'); $dtgProducts->MetaAddColumn('MinimumQuantity', 'Name=Min. Qty.', 'Width=70px'); $dtgProducts->MetaAddColumn('MaximumQuantity', 'Name=Max. Qty.', 'Width=70px'); $dtgProducts->MetaAddTypeColumn('FormPaymentTypeId', 'FormPaymentType', 'Name=Pay Type', 'Width=70px'); $dtgProducts->MetaAddColumn('Cost', 'Html=<?= $_FORM->RenderAmount($_ITEM->Cost, false); ?>', 'Width=70px'); $dtgProducts->MetaAddColumn('Deposit', 'Html=<?= $_FORM->RenderAmount($_ITEM->Deposit, false); ?>', 'Width=70px'); $this->dtgProductsArray[] = $dtgProducts; } } if ($this->objSignupForm->Ministry->IsLoginCanAdminMinistry(QApplication::$Login)) { $this->lstCreateNew = new QListBox($this); $this->lstCreateNew->AddItem('- Create New Question or Product -', null); foreach (FormQuestionType::$NameArray as $intId => $strName) { $this->lstCreateNew->AddItem($strName, $intId, false, 'Question Types'); } foreach (FormProductType::$NameArray as $intId => $strName) { $this->lstCreateNew->AddItem($strName, $intId * -1, false, 'Product Types'); } $this->lstCreateNew->AddAction(new QChangeEvent(), new QAjaxAction('lstCreateNew_Change')); } // Setup "About Event" label controls $this->SetupLabels(); switch ($this->objSignupForm->SignupFormTypeId) { case SignupFormType::Event: $this->SetupLabelsForEvent(); break; case SignupFormType::Course: $this->SetupLabelsForCourse(); break; } // Add email automatically if "Allow No Login" is selected // and if email is not already there. $bHasEmail = false; $objQuestionArray = FormQuestion::LoadArrayBySignupFormId($this->objSignupForm->Id); foreach ($objQuestionArray as $objQuestionItem) { if ($objQuestionItem->FormQuestionTypeId == 7) { $bHasEmail = true; break; } } if ($this->objSignupForm->LoginNotRequiredFlag && !$bHasEmail) { $objQuestion = new FormQuestion(); $objQuestion->SignupForm = $this->objSignupForm; $objQuestion->FormQuestionTypeId = 7; // email $objQuestion->OrderNumber = 100000; $objQuestion->ShortDescription = 'Email Address'; $objQuestion->Question = 'Email Address'; $objQuestion->RequiredFlag = true; $objQuestion->ViewFlag = true; $objQuestion->Save(); } $this->pxyMoveDownQuestion = new QControlProxy($this); $this->pxyMoveDownQuestion->AddAction(new QClickEvent(), new QAjaxAction('pxyMoveDownQuestion_Click')); $this->pxyMoveDownQuestion->AddAction(new QClickEvent(), new QTerminateAction()); $this->pxyMoveUpQuestion = new QControlProxy($this); $this->pxyMoveUpQuestion->AddAction(new QClickEvent(), new QAjaxAction('pxyMoveUpQuestion_Click')); $this->pxyMoveUpQuestion->AddAction(new QClickEvent(), new QTerminateAction()); $this->pxyMoveDownProduct = new QControlProxy($this); $this->pxyMoveDownProduct->AddAction(new QClickEvent(), new QAjaxAction('pxyMoveDownProduct_Click')); $this->pxyMoveDownProduct->AddAction(new QClickEvent(), new QTerminateAction()); $this->pxyMoveUpProduct = new QControlProxy($this); $this->pxyMoveUpProduct->AddAction(new QClickEvent(), new QAjaxAction('pxyMoveUpProduct_Click')); $this->pxyMoveUpProduct->AddAction(new QClickEvent(), new QTerminateAction()); }