/** * Outputs the view. * * @ $request->setView ( '' ) -define the view name */ function output() { global $application; if (!isset($this->HTML_TAGS_PREFIX_WITHOUT_MODULE_UID)) { $this->HTML_TAGS_PREFIX_WITHOUT_MODULE_UID = $this->HTML_TAGS_PREFIX; } // - PersonInfoType, , // . $person_info_types = modApiFunc("Checkout", "getPersonInfoTypeList"); foreach ($person_info_types as $id => $info) { if ($info['tag'] == $this->CHECKOUT_PREREQUISITE_NAME && $info['active'] == DB_FALSE) { return ""; } } //Read the decrypted credit card data from the session $prerequisiteValidationResults = modApiFunc("Checkout", "getPrerequisiteValidationResults", $this->CHECKOUT_PREREQUISITE_NAME); if ($prerequisiteValidationResults["isMet"] == false) { return ""; } // build direct tag list with values. // they are may be used in the container template. // Example: Local_Firstname(); $this->direct_tags = modApiFunc("Checkout", "getPersonInfoTagList", $this->CHECKOUT_PREREQUISITE_NAME); /* if ($this->NoView) { $application->outputTagErrors(true, "CartContent", "Errors"); return ""; } else { $application->outputTagErrors(true, "CartContent", "Warnings"); }*/ $AttributesArray = array($this->HTML_TAGS_PREFIX . 'OutputAllAttributes' => "", $this->HTML_TAGS_PREFIX_WITHOUT_MODULE_UID . 'OutputAllAttributes' => "", $this->HTML_TAGS_PREFIX . 'OutputAllAttributesRows' => "", $this->HTML_TAGS_PREFIX_WITHOUT_MODULE_UID . 'OutputAllAttributesRows' => ""); foreach ($prerequisiteValidationResults['validatedData'] as $data_id => $data) { if ($data['view_tag'] == "Statemenu") { $AttributesArray[$this->HTML_TAGS_PREFIX . "State"] = ''; } else { if ($data['view_tag'] == "Statetext") { } else { $AttributesArray[$this->HTML_TAGS_PREFIX . $data['view_tag']] = ''; } } } $application->registerAttributes($AttributesArray); $application->registerAttributes($this->direct_tags); loadCoreFile('UUIDUtils.php'); $this->templateFiller =& $application->getInstance('TemplateFiller'); $this->template = $application->getBlockTemplate(UUIDUtils::cut_uuid_suffix($this->BLOCK_TAG_NAME, "js")); //__CLASS__ is lowercase class name, get_class() also returns class name in lowercase. $this->templateFiller->setTemplate($this->template); $retval = $this->templateFiller->fill("OutputContainer"); return $retval; }
static function cut_uuid_suffix($text, $style) { // . CCInfo . // : getValidatedDataStructure PersonInfoVariantID, . $uuid_pattern = UUIDUtils::getRegexpPattern($style); $matches = array(); if (preg_match($uuid_pattern, $text, $matches)) { $text = _ml_substr($text, 0, _ml_strlen($text) - UUIDUtils::getLength($style)); } else { } return $text; }
function asc_ctor($parameter) { loadCoreFile('UUIDUtils.php'); $payment_module_id = $parameter; // javaScript . $parameter = UUIDUtils::convert("minuses_and_capitals", "js", $parameter); // checkout prerequisite' , Person Info (e.g. CustomerInfo) $this->CHECKOUT_PREREQUISITE_NAME = Checkout::getAdditionalPrerequisiteName("bankAccountInfo", $payment_module_id); // store , checkout prerequisite' . $this->CHECKOUT_STORE_BLOCK_NAME = "bank-account-info-input" . $parameter; // html , Person Info. $this->HTML_TAGS_PREFIX = "BankAccountInfo" . $parameter; // html , Person Info. // . Container . $this->HTML_TAGS_PREFIX_WITHOUT_MODULE_UID = "BankAccountInfo"; // . . (e.g. CheckoutCustomerInfoInput) $this->BLOCK_TAG_NAME = "CheckoutBankAccountInfoInput" . $parameter; // , // : $this->{get_parent_class(__CLASS__)}(); }
function getAdditionalPrerequisiteName($prerequisite_type, $payment_module_id) { loadCoreFile('UUIDUtils.php'); return $prerequisite_type . UUIDUtils::convert("minuses_and_capitals", "js", $payment_module_id); }
/** * Outputs the view. * * @ $request->setView ( '' ) -define the view name */ function output() { global $application; if (!isset($this->HTML_TAGS_PREFIX_WITHOUT_MODULE_UID)) { $this->HTML_TAGS_PREFIX_WITHOUT_MODULE_UID = $this->HTML_TAGS_PREFIX; } // - PersonInfoType, , // . $person_info_types = modApiFunc("Checkout", "getPersonInfoTypeList"); foreach ($person_info_types as $id => $info) { if ($info['tag'] == $this->CHECKOUT_PREREQUISITE_NAME && $info['active'] == DB_FALSE) { return ""; } } /* if ($this->NoView) { $application->outputTagErrors(true, "CartContent", "Errors"); return ""; } else { $application->outputTagErrors(true, "CartContent", "Warnings"); }*/ //block items $AttributesArray = array('CreditCardInfoJSAttrRules' => '', 'SubmitedCheckoutStoreBlocksListItemName' => "", $this->HTML_TAGS_PREFIX . 'InputFormFieldSize' => "", $this->HTML_TAGS_PREFIX . 'InputFormFieldMaxlength' => "", $this->HTML_TAGS_PREFIX . 'InputAllAttributesRows' => "", $this->HTML_TAGS_PREFIX_WITHOUT_MODULE_UID . 'InputAllAttributesRows' => "", $this->HTML_TAGS_PREFIX . 'JavascriptFunctions' => "", $this->HTML_TAGS_PREFIX_WITHOUT_MODULE_UID . 'JavascriptFunctions' => ""); $prerequisiteValidationResults = modApiFunc("Checkout", "getPrerequisiteValidationResults", $this->CHECKOUT_PREREQUISITE_NAME); //Custom templates. As for now (2006 mar) they are not used. foreach ($prerequisiteValidationResults['validatedData'] as $data) { // $AttributesArray[$this->HTML_TAGS_PREFIX . $data['view_tag'] . "LabelCssClass"] = ''; $AttributesArray[$this->HTML_TAGS_PREFIX . $data['view_tag'] . "FieldLabel"] = ''; $AttributesArray[$this->HTML_TAGS_PREFIX . $data['view_tag']] = ''; // $AttributesArray[$this->HTML_TAGS_PREFIX . $data['view_tag'] . "ErrorFlagClass"] = ''; $AttributesArray[$this->HTML_TAGS_PREFIX . $data['view_tag'] . "InputFormFieldSize"] = ''; $AttributesArray[$this->HTML_TAGS_PREFIX . $data['view_tag'] . "InputFormFieldMaxlength"] = ''; } $application->registerAttributes($AttributesArray); $this->templateFiller =& $application->getInstance('TemplateFiller'); loadCoreFile('UUIDUtils.php'); $this->template = $application->getBlockTemplate(UUIDUtils::cut_uuid_suffix($this->BLOCK_TAG_NAME, "js")); //__CLASS__ is lowercase class name, get_class() also returns class name in lowercase. $this->templateFiller->setTemplate($this->template); //"Section" config.ini mechanism allowed to use two different templates with the same // container name simultaneously. E.g. "Custom PersonInfo" and "Automatic AllAttributes // PersonInfo" templates/views. //As for now (2006 mar) - there is no more even "Container" template : output is hardcoded // to wrap and return single tag: //// $retval = $this->templateFiller->fill("Container"); /* $ResultTableRows = $this->getTag($this->HTML_TAGS_PREFIX . 'InputAllAttributesRows'); $ResultJavascriptFunctions = $this->getTag($this->HTML_TAGS_PREFIX . 'JavascriptFunctions'); //The name of the outputted data block is passed as a hidden field, // to know what data should have come to Action, and how to check it. $HiddenField = "<input type=\"hidden\" name=\"". $this->getTag("SubmitedCheckoutStoreBlocksListItemName") . "\">"; /// $retval = $ResultTableRows . "\n" // .'</table>'; //: can a javascript code be added the same way? For example, if templates // are table strings, the whole template is a few concatenated table strings, // and appended to the end a javascript code, then wouldn't it result in // changing the table structure? . $ResultJavascriptFunctions . $HiddenField; */ $retval = $this->templateFiller->fill("InputContainer"); return $retval; }