public function renderImage($attributes, $parameters) { // Get CAPTCHA parameters from the module form's preferences. $pref = ModuleService::getInstance()->getPreferencesDocument('form'); if (!is_null($pref)) { foreach ($pref->getCaptchaParameters() as $name => $value) { // Parameters defined in the template overload the preferences' parameters. if (!isset($parameters[$name])) { $parameters[$name] = $value; } } } self::generateCaptchaCode($parameters); $url = htmlentities(LinkHelper::getUrl('form', 'Captcha', $parameters), ENT_COMPAT, "utf-8"); $code = "<script type=\"text/javascript\">\n//<![CDATA[\nCAPTCHA.imageURL = \"" . $url . "\";\n//]]>\n</script>\n"; $code .= '<span class="captcha"><input type="image" src="' . $url . '"'; if (!isset($attributes['title'])) { $attributes['title'] = f_Locale::translate("&modules.form.bo.general.Captcha-click-to-have-another-one;"); } if (!isset($attributes['onclick'])) { $attributes['onclick'] = 'CAPTCHA.reload(this); return false;'; } foreach ($attributes as $name => $value) { $code .= ' ' . $name . '="' . str_replace('"', '\\"', $value) . '"'; } return $code . '/></span>'; }
/** * @param block_BlockContext $context * @param block_BlockRequest $request */ public function execute($context, $request) { $form = $this->getParameter('form'); $confirmpage = $form->getConfirmpage(); if ($confirmpage instanceof website_persistentdocument_page && $confirmpage->isPublished()) { HttpController::getInstance()->redirectToUrl(LinkHelper::getUrl($confirmpage, $context->getLang(), array('formParam[id]' => $form->getId()))); } $this->setTemplateName('Form-Success'); $user = $context->getGlobalContext()->getUser(); $attr = 'form_success_parameters_' . $form->getId(); $parameters = $user->getAttribute($attr); $user->removeAttribute($attr); $message = $form->getConfirmMessage(); foreach ($parameters as $k => $v) { $message = str_replace('{' . $k . '}', htmlspecialchars($v), $message); } $this->setAttribute("receiverLabels", $this->getParameter("receiverLabels")); $this->setAttribute('message', $message); if ($form->getUseBackLink()) { $this->setAttribute('back', array('url' => $parameters[form_FormConstants::BACK_URL_PARAMETER], 'label' => f_Locale::translate('&modules.form.frontoffice.Back;'))); } else { $this->setAttribute('back', false); } $this->setAttribute('form', $form); }
/** * @param form_persistentdocument_hidden $field * @param DOMElement $fieldElm * @param mixed $rawValue * @return string */ public function buildXmlElementResponse($field, $fieldElm, $rawValue) { switch ($field->getIsRecommand()) { case 'site': return website_WebsiteModuleService::getInstance()->getCurrentWebsite()->getUrl(); break; case 'page': try { return LinkHelper::getUrl(DocumentHelper::getDocumentInstance($rawValue)); } catch (Exception $e) { Framework::exception($e); } return website_WebsiteModuleService::getInstance()->getCurrentWebsite()->getUrl(); } return parent::buildXmlElementResponse($field, $fieldElm, $rawValue); }
/** * Returns the URL of the page tagged with the following contextual tag: * contextual_website_website_modules_form_recommand-page * @return String * @deprecated use sharethis module instead. */ public function getRecommandFormUrl() { try { $page = TagService::getInstance()->getDocumentByContextualTag('contextual_website_website_modules_form_recommand-page', website_WebsiteModuleService::getInstance()->getCurrentWebsite()); $parameters = array('formParam[recommandFeature]' => website_WebsiteModuleService::getInstance()->getCurrentPageId()); return LinkHelper::getUrl($page, null, $parameters); } catch (Exception $e) { Framework::exception($e); } return null; }