Beispiel #1
0
    function _initSetupForm(Am_Form_Setup $form)
    {
        $form->setTitle('Selectel');
        $form->addText('access_key', array('size' => 40))->setLabel('Your account login')->addRule('required');
        $form->addPassword('secret_key', array('size' => 40))->setLabel(array('Password for Cloud Storage', '(separate password then for Control Panel)'))->addRule('required');
        $form->addText('expire', array('size' => 5))->setLabel('Video link life-time, min');
        $form->setDefault('expire', 15);
        if ($this->isConfigured()) {
            try {
                $containers = $this->getDi()->cacheFunction->call(array($this->getConnector(), 'getContainersList'), array(), array(), $this->cacheLifetime);
                $containers = array('' => '== Please select public Container ==') + $containers;
            } catch (Exception $e) {
                $containers = array('' => 'Please create public container');
            }
            $form->addSelect('links_container', '', array('options' => array_combine($containers, $containers)))->setLabel(array('Container for links', 'aMember will create links in the following format: http://yourcloudstorageurl.com/CONTAINERNAME/uniquekey/filename.mp4'))->addRule('required');
        }
        $msg = <<<EOT
    Make sure that you store all your files in private containers.
    In order to provide an access to the files, create one free container, and specify it in plugin configuration.
    aMember will create symlinks to the files and put these symilnks to that public container. Links are one-time and time-limited.
    For example if you name your public container "download", end-user will see these links:
    https://88901.selcdn.ru/download/9365d4a676845f607e46e19038305ba0/filename.mp4

EOT;
        $form->addProlog(<<<CUT
<div class="info"><strong>{$msg}</strong></div>
CUT
);
    }
Beispiel #2
0
 function onSetupForms(Am_Event_SetupForms $forms)
 {
     $form = new Am_Form_Setup('getclicky');
     $form->setTitle("GetClicky");
     $forms->addForm($form);
     $form->addInteger('getclicky_id')->setLabel(array("GetClicky Account Id"));
 }
Beispiel #3
0
    function onSetupForms(Am_Event_SetupForms $event)
    {
        $form = new Am_Form_Setup($this->getId());
        $form->setTitle('REST API');
        $event->addForm($form);
        $form->addAdvCheckbox('api_debug_mode')->setLabel(___('Enable Debug Mode') . "\n" . ___('all requests will be added to %sLogs%s,
useful if something is going wrong', '<a href="' . ROOT_URL . '/admin-logs">', '</a>'));
    }
Beispiel #4
0
 public function _initSetupForm(Am_Form_Setup $form)
 {
     $form->setTitle('Dalpay (Checkout)');
     $form->addText('mer_id', array('size' => 20))->setLabel('Your Merchant ID#');
     $form->addText('pageid')->setLabel('The order page sub-account');
     $form->addPassword('password')->setLabel('Silent Post Password');
     $form->addPassword('notify_password')->setLabel('Server Notification Password');
 }
 function onSetupForms(Am_Event_SetupForms $forms)
 {
     $form = new Am_Form_Setup('google_analytics');
     $form->setTitle("Google Analytics");
     $forms->addForm($form);
     $form->addElement('text', 'google_analytics')->setLabel(array('Google Analytics Account ID', 'To enable automatic sales and hits tracking with GA,
          enter Google Analytics cAccount ID into this field.
          <a href=\'http://www.google.com/support/googleanalytics/bin/answer.py?answer=55603\' target=_blank>Where can I find my tracking ID?</a>
          The tracking ID will look like <i>UA-1231231-1</i>.
          Please note - this tracking is only for pages displayed by aMember,
          pages that are just protected by aMember, cannot be tracked. 
          Use ' . '<a href="http://www.google.com/support/googleanalytics/bin/search.py?query=how+to+add+tracking&ctx=en%3Asearchbox" target=_blank>GA instructions</a>
          how to add tracking code to your own pages.
          '));
     $form->addAdvCheckbox("google_analytics_only_sales_code")->setLabel(array("Include only sales code", "Enable this if you already have tracking code in template"));
 }
Beispiel #6
0
 function onSetupForms(Am_Event_SetupForms $event)
 {
     $form = new Am_Form_Setup('facebook');
     $form->setTitle('Facebook');
     $fs = $form->addFieldset()->setLabel(___('FaceBook Application'));
     $fs->addText('app_id')->setLabel(___('FaceBook App ID'));
     $fs->addText('app_secret', array('size' => 40))->setLabel(___('Facebook App Secret'));
     $fs = $form->addFieldset()->setLabel(___('Features'));
     $gr = $fs->addCheckboxedGroup('like')->setLabel(___('Add "Like" button'));
     $gr->addStatic()->setContent(___('Like Url'));
     $gr->addText('likeurl', array('size' => 40));
     $form->setDefault('likeurl', ROOT_URL);
     $fs->addAdvCheckbox('no_signup')->setLabel(___('Do not add to Signup Form'));
     $fs->addAdvCheckbox('no_login')->setLabel(___('Do not add to Login Form'));
     $form->addFieldsPrefix('misc.facebook.');
     $event->addForm($form);
 }
    function _initSetupForm(Am_Form_Setup $form)
    {
        $form->setTitle(___('Single Login Session'));
        $form->addText('timeout', array('size' => 4))->setLabel(___('Session Timeout, min'));
        $form->setDefault('timeout', 5);
        $form->addSelect('action')->setId('form-action')->setLabel(___('Action on Simultaneous Login Attempt'))->loadOptions(array(self::ACTION_LOGIN_REJECT => ___('Show error and do not allow to login until session timeout'), self::ACTION_LOGOUT_OTHER => ___('Delete other session when user try to login from new one'), self::ACTION_NOTHING => ___('Nothing, allow simultaneous login for same user from different computers')));
        $form->addTextarea('error', array('class' => 'el-wide'))->setId('form-error')->setLabel(___('Error Message'));
        $form->setDefault('error', 'There is already exits active login session for your account. Simultaneous login from different computers is not allowed.');
        $error = self::ACTION_LOGIN_REJECT;
        $form->addScript()->setScript(<<<CUT
\$('#form-action').change(function(){
    \$('#form-error').closest('.row').toggle(\$(this).val() == '{$error}')
}).change();
CUT
);
        $form->addElement('email_checkbox', 'notify_admin')->setLabel(___('Notify Admin on Simultaneous Login'));
    }
Beispiel #8
0
 protected function _initSetupForm(Am_Form_Setup $form)
 {
     $form->setTitle(___(self::TITLE));
     $form->addText('api_key', array('size' => 40))->setLabel(array("API Key", ""))->addRule('required');
     $form->addText('api_url', array('size' => 60))->setLabel(array("Full API URL", "eg., http://{your_domain}/{your_install_swm_directory}/api/api.php"))->addRule('required');
     if ($this->isConfigured()) {
         $form->addSortableMagicSelect('amember_fields')->setLabel("Pass additional fields from aMember")->loadOptions($this->getAmemberOptions());
         $form->addSortableMagicSelect('swm_fields')->setLabel("to SWM")->loadOptions($this->getSWMOptions());
         $opt = array();
         foreach ($this->getLists() as $k => $l) {
             $opt[$k] = '#' . $k . ' - ' . $l['title'];
         }
         $form->addMagicSelect('double_optin')->setLabel("Enabled Double Optin for these lists")->loadOptions($opt);
     }
     $form->addAdvCheckbox('check_blocklists')->setLabel(array('Check All Emails at Blocklists', "before subscribing"));
     $form->addAdvCheckbox('send_pass')->setLabel(array('Send Password to SWM', "it's not safe\npasswords are not stored encrypted at SWM"));
     $form->addAdvCheckbox('debud_mode')->setLabel(array('Debug Mode Enabled', "write debug info to logs\nit's recommended enable it at the first time"));
 }
Beispiel #9
0
    function _initSetupForm(Am_Form_Setup $form)
    {
        $form->setTitle('Amazon S3');
        $form->addText('access_key', array('size' => 40))->setLabel('AWS Access Key')->addRule('required')->addRule('regex', 'must be alphanumeric', '/^[A-Z0-9]+$/');
        $form->addPassword('secret_key', array('size' => 40))->setLabel('AWS Secret Key')->addRule('required');
        $form->addSelect('region')->loadOptions($this->_regions)->setLabel('Amazon S3 Region');
        $form->addText('expire', array('size' => 5))->setLabel('Video link lifetime, min');
        $form->setDefault('expire', 15);
        $msg = ___('Your content on Amazon S3 should not be public.
            Please restrict public access to your files on Amazon S3 side
            and ensure you can not access it directly from Amazon S3.
            aMember use Access Key and Secret Key to generate links with
            authentication token for users to provide access them to your
            content on Amazon S3.');
        $form->addProlog(<<<CUT
<div class="info"><strong>{$msg}</strong></div>
CUT
);
    }
Beispiel #10
0
 function onSetupForms(Am_Event_SetupForms $event)
 {
     $form = new Am_Form_Setup('facebook');
     $form->setTitle('Facebook');
     $fs = $form->addFieldset()->setLabel(___('FaceBook Application'));
     $fs->addText(self::FB_APP_ID)->setLabel(___('FaceBook App ID'));
     $fs->addText(self::FB_APP_SECRET, array('size' => 40))->setLabel(___('Facebook App Secret'));
     $fs = $form->addFieldset()->setLabel(___('Features'));
     $gr = $fs->addCheckboxedGroup('like')->setLabel(___('Add "Like" button'));
     $gr->addStatic()->setContent(___('Like Url'));
     $gr->addText('likeurl', array('size' => 40));
     $form->setDefault('likeurl', ROOT_URL);
     $fs->addAdvCheckbox('no_signup')->setLabel(___('Do not add to Signup Form'));
     $fs->addAdvCheckbox('no_login')->setLabel(___('Do not add to Login Form'));
     $fs->addSelect('add_access', null, array('options' => array('' => '-- Do not add access --') + Am_Di::getInstance()->productTable->getOptions()))->setLabel(___('Add free access to a product if user signup from Facebook'));
     $form->addFieldsPrefix('misc.facebook.');
     $this->_afterInitSetupForm($form);
     $event->addForm($form);
 }
 /** @return Am_Form_Setup */
 function getFormByTitle($title)
 {
     foreach ($this->forms as $f) {
         if ($f->getTitle() == $title) {
             return $f;
         }
     }
     $form = new Am_Form_Setup(strtolower(filterId($title)));
     $form->setTitle($title);
     $this->addForm($form);
     return $form;
 }
Beispiel #12
0
    protected function _afterInitSetupForm(Am_Form_Setup $form)
    {
        // insert title, description fields
        $form->setTitle(ucfirst(toCamelCase($this->getId())));
        $el = $form->addMagicSelect('reattempt', array('multiple' => 'multiple'));
        $options = array();
        for ($i = 1; $i < 60; $i++) {
            $options[$i] = ___("on %d-th day", $i);
        }
        $el->loadOptions($options);
        $el->setLabel(___("Retry On Failure\n" . "if the recurring billing has failed,\n" . "aMember can repeat it after several days,\n" . "and extend customer subscription for that period\n" . "enter number of days to repeat billing attempt"));
        if ($this->storesCcInfo() && !$this->_pciDssNotRequired) {
            $text = "<p><font color='red'>WARNING!</font> Every application processing e-check information, must be certified\n" . "as PA-DSS compliant, and every website processing credit cards must\n" . "be certified as PCI-DSS compliant.</p>";
            $text .= "<p>aMember Pro is not yet certified as PA-DSS compliant. We will start certification process\n" . "once we get 4.2.0 branch released and stable. This plugins is provided solely for TESTING purproses\n" . "Use it for anything else but testing at your own risk.</p>";
            $form->addProlog(<<<CUT
<div class="warning_box">
    {$text}
</div>   
CUT
);
        }
        $keyFile = defined('AM_KEYFILE') ? AM_KEYFILE : APPLICATION_PATH . '/configs/key.php';
        if (!is_readable($keyFile)) {
            $random = $this->getDi()->app->generateRandomString(78);
            $text = "<p>To use credit card plugins, you need to create a key file that contains unique\n";
            $text .= "encryption key for your website. It is necessary even if the plugin does not\n";
            $text .= "store sensitive information.</p>";
            $text .= "<p>In a text editor, create file with the following content (one-line, no spaces before opening &lt;?php):\n";
            $text .= "<br /><br /><pre style='background-color: #e0e0e0;'>&lt;?php return '{$random}';</pre>\n";
            $text .= "<br />save the file as <b>key.php</b>, and upload to <i>amember/application/configs/</i> folder.\n";
            $text .= "This warning will disappear once you do it correctly.</p>";
            $text .= "<p>KEEP A BACKUP COPY OF THE key.php FILE (!)</p>";
            $form->addProlog(<<<CUT
<div class="warning_box">
    {$text}
</div>
CUT
);
        }
        return parent::_afterInitSetupForm($form);
    }
Beispiel #13
0
 public function _initSetupForm(Am_Form_Setup $form)
 {
     $form->setTitle('JunglePay');
     $form->addText('company_code')->setLabel('Your company code from txtNation')->addRule('required');
 }
Beispiel #14
0
 /**
  * Initialize setup form
  * You have to override this function and add elements
  * to returned (from parent::initSetupForm) form.
  * @return Am_Form_Setup
  */
 function onSetupForms(Am_Event_SetupForms $event)
 {
     $form = new Am_Form_Setup($this->getId());
     $form->setTitle($this->getConfigPageId());
     $plugin = $this->getId();
     $form->addText("title", array('size' => 40))->setLabel(___("Payment System Title"));
     $form->setDefault("payment.{$plugin}.title", @$this->defaultTitle);
     $form->addText("description", array('size' => 40))->setLabel(___("Payment System Description"));
     $form->setDefault("payment.{$plugin}.description", @$this->defaultDescription);
     /*
     $form->addAdvCheckbox("disable_postback_log")
          ->setLabel(___("Disable PostBack messages Logging (not recommended)\n". 
         "By default aMember logs all payment system postback messages\n".
         "you can disable it by changing this configuration value"
          ));
     */
     if ($this->canResendPostback()) {
         $gr = $form->addElement(new Am_Form_Element_CheckboxedGroup('resend_postback'));
         $gr->setLabel(___("Resend Postback\nenter list of URLs to resend incoming postback\none URL per line"));
         $gr->addTextarea('resend_postback_urls', array('rows' => 3, 'cols' => 70));
     }
     $event->addForm($form);
     $this->_initSetupForm($form);
     if ($this->canAutoCreate()) {
         $form->addAdvCheckbox('auto_create')->setLabel(___("Accept Direct Payments\n" . "handle payments made on payment system side\n" . "(without signup to aMember first)"));
     }
     $form->addFieldsPrefix("payment.{$plugin}.");
     if ($plugin_readme = $this->getReadme()) {
         $plugin_readme = str_replace(array('%root_url%', '%root_surl%', '%root_dir%'), array(ROOT_URL, ROOT_SURL, ROOT_DIR), $plugin_readme);
         $form->addEpilog('<div class="info"><pre>' . $plugin_readme . '</pre></div>');
     }
     if (defined($const = get_class($this) . "::PLUGIN_STATUS") && (constant($const) == self::STATUS_BETA || constant($const) == self::STATUS_DEV)) {
         $beta = constant($const) == self::STATUS_DEV ? 'ALPHA' : 'BETA';
         $form->addProlog("<div class='warning_box'>This plugin is currently in {$beta} testing stage, some functions may work unstable." . "Please test it carefully before use.</div>");
     }
     return $form;
 }
Beispiel #15
0
 /** @return Am_Form_Setup */
 protected function _beforeInitSetupForm()
 {
     $form = new Am_Form_Setup($this->getId());
     $form->setTitle($this->getTitle());
     return $form;
 }
Beispiel #16
0
    protected function _afterInitSetupForm(Am_Form_Setup $form)
    {
        // insert title, description fields
        $form->setTitle(ucfirst(toCamelCase($this->getId())));
        $el = $form->addMagicSelect('reattempt', array('multiple' => 'multiple'));
        $options = array();
        for ($i = 1; $i < 60; $i++) {
            $options[$i] = ___("on %d-th day", $i);
        }
        $el->loadOptions($options);
        $el->setLabel(___("Retry On Failure\n" . "if the recurring billing has failed,\n" . "aMember can repeat it after several days,\n" . "and extend customer subscription for that period\n" . "enter number of days to repeat billing attempt"));
        if ($this->canUseMaxmind()) {
            $form->addFieldset()->setLabel(___('MaxMind Credit Card Fraud Detection'));
            $form->addAdvCheckbox('use_maxmind')->setLabel(___('Use MaxMind Credit Card Fraud Detection'));
            $form->addText('maxmind_license_key')->setLabel(___("Maxmind License Key\n" . "%sObtain a Free or Premium license key%s", '<a href="http://www.maxmind.com/app/minfraud" target="_blank">', '</a>'));
            $form->addSelect('maxmind_requested_type')->setLabel(___("Requested Type\n" . "To be used if you have multiple plans in one account\n" . "and wish to select type of query you wish to make.\n" . "By default the service uses the highest level available"))->loadOptions(array("" => 'Default', "free" => 'Free', "city" => 'City (standard paid service)', "premium" => 'Premium (premium paid service)'));
            $form->addText('maxmind_risk_score')->setLabel(___("Risk Score\n" . "Overall %sRisk Score%s (decimal from 0 to 10)\n" . "For orders that return a fraud score of 2.5 and above,\n" . " it is recommended to hold for review,\n" . " or require the validation with the Telephone Verification service\n", '<a href="http://www.maxmind.com/app/web_services_score2" target="_blank">', '</a>'));
            $form->setDefault('maxmind_risk_score', '2.5');
            /*$form->addAdvCheckbox('maxmind_use_telephone_verification')->setLabel(
              ___("Telephone Verification\n" .
                      "Enable %sTelephone Verification%s service"
                      , '<a href="http://www.maxmind.com/app/telephone_overview" target="_blank">', '</a>'));*/
            $form->addAdvCheckbox('maxmind_use_number_identification')->setLabel(___("Number Identification\n" . "Enable %sTelephone Number Identification (TNI)%s service", '<a href="http://www.maxmind.com/app/phone_id" target="_blank">', '</a>'));
            $form->addMagicSelect('maxmind_tni_phone_types')->setLabel(___("Allowed Phone Types\n" . "The TNI service is able to categorize customer inputted US and Canadian\n" . "phone numbers into %seight different phone types%s\n" . "such as fixed land line, mobile, VoIP, and invalid phone numbers", '<a href="http://www.maxmind.com/app/phone_id_codes" target="_blank">', '</a>'))->loadOptions(array('0' => 'Undetermined (Medium Risk Level)', '1' => 'Fixed Line (Low Risk Level)', '2' => 'Mobile (Low-Medium Risk Level)', '3' => 'PrePaid Mobile (Medium-High Risk Level)', '4' => 'Toll-Free (High Risk Level)', '5' => 'Non-Fixed VoIP (High Risk Level)', '8' => 'Invalid Number (High Risk Level)', '9' => 'Restricted Number (High Risk Level)'));
            $form->addAdvCheckbox('maxmind_allow_country_not_matched')->setLabel(___("Allow payment if country not matched\n" . "Whether country of IP address matches billing address country\n" . "(mismatch = higher risk)"));
            $form->addAdvCheckbox('maxmind_allow_high_risk_country')->setLabel(___("Allow payment if high risk countries\n" . "Whether IP address or billing address country is in\n" . "Egypt, Ghana, Indonesia, Lebanon, Macedonia, Morocco, Nigeria,\n" . "Pakistan, Romania, Serbia and Montenegro, Ukraine, or Vietnam"));
            $form->addAdvCheckbox('maxmind_allow_anonymous_proxy')->setLabel(___("Allow payment if anonymous proxy\n" . "Whether IP address is %sAnonymous Proxy%s\n" . "(anonymous proxy = very high risk)", '<a href="http://www.maxmind.com/app/proxy#anon" target="_blank">', '</a>'));
            $form->addAdvCheckbox('maxmind_allow_free_mail')->setLabel(___("Allow payment if free e-mail\n" . "Whether e-mail is from free e-mail provider\n" . "(free e-mail = higher risk)"));
            $form->addElement('script')->setScript(<<<CUT
function showHideMaxmind()
{
    var el = \$("[id^=use_maxmind-]");    
    \$("[id^=maxmind_]").closest(".row").toggle(el.prop('checked'));
    if(el.prop('checked'))
        /*showHideNumberidentification();*/
        showHidePhonetypes();
}
/*function showHideNumberidentification()
{
    var el = \$("[id^=maxmind_use_telephone_verification-]");    
    \$("[id^=maxmind_tni_phone_types-]").closest(".row").toggle(el.prop('checked'));
    \$("[id^=maxmind_use_number_identification-]").closest(".row").toggle(el.prop('checked'));
    if(el.prop('checked'))
        showHidePhonetypes();
}*/
function showHidePhonetypes()
{
    \$("[id^=maxmind_tni_phone_types-]").closest(".row").toggle(\$("[id^=maxmind_use_number_identification-]").prop('checked'));
}
\$(function(){
    \$("[id^=use_maxmind-]").click(function(){
        showHideMaxmind();
    });
    /*\$("[id^=maxmind_use_telephone_verification-]").click(function(){
        showHideNumberidentification();
    });*/
    \$("[id^=maxmind_use_number_identification-]").click(function(){
        showHidePhonetypes();
    });
    showHideMaxmind();
});
CUT
);
        }
        if ($this->storesCcInfo() && !$this->_pciDssNotRequired) {
            $text = "<p><font color='red'>WARNING!</font> Every application processing credit card information, must be certified\n" . "as PA-DSS compliant, and every website processing credit cards must\n" . "be certified as PCI-DSS compliant.</p>";
            $text .= "<p>aMember Pro is not yet certified as PA-DSS compliant. " . "This plugins is provided solely for TESTING purproses\n" . "Use it for anything else but testing at your own risk.</p>";
            $form->addProlog(<<<CUT
<div class="warning_box">
    {$text}
</div>   
CUT
);
        }
        $keyFile = defined('AM_KEYFILE') ? AM_KEYFILE : APPLICATION_PATH . '/configs/key.php';
        if (!is_readable($keyFile)) {
            $random = $this->getDi()->app->generateRandomString(78);
            $text = "<p>To use credit card plugins, you need to create a key file that contains unique\n";
            $text .= "encryption key for your website. It is necessary even if the plugin does not\n";
            $text .= "store sensitive information.</p>";
            $text .= "<p>In a text editor, create file with the following content (one-line, no spaces before opening &lt;?php):\n";
            $text .= "<br /><br /><pre style='background-color: #e0e0e0;'>&lt;?php return '{$random}';</pre>\n";
            $text .= "<br />save the file as <b>key.php</b>, and upload to <i>amember/application/configs/</i> folder.\n";
            $text .= "This warning will disappear once you do it correctly.</p>";
            $text .= "<p>KEEP A BACKUP COPY OF THE key.php FILE (!)</p>";
            $form->addProlog(<<<CUT
<div class="warning_box">
    {$text}
</div>
CUT
);
        }
        return parent::_afterInitSetupForm($form);
    }
Beispiel #17
0
 function onSetupForms(Am_Event_SetupForms $event)
 {
     $form = new Am_Form_Setup($this->getId());
     $form->setTitle('SubUsers');
     $event->addForm($form);
     $form->addAdvCheckbox('subusers_cannot_pay')->setLabel(___('Hide Payment Forms and History from SubUsers'));
     $form->addAdvRadio('subusers_cannot_delete')->setLabel(___('Reseller cannot delete subuser accounts'))->loadOptions(array('0' => ___('Resellers can delete subusers'), '1' => ___('Resellers cannot delete subusers'), '2' => ___('Resellers can delete subusers only when limit is over')));
     $form->addAdvCheckbox('subusers_cannot_edit')->setLabel(___('Reseller cannot edit subusers accounts after insertion'));
     $form->addAdvCheckbox('subusers_cannot_change_email')->setLabel(___('Subuser e-mail address can be changed by site admin only'));
     $gr = $form->addGroup('subusers_fields')->setLabel(___('Reseller can manage the following subuser fields'));
     $gr->setSeparator(' ');
     $gr->addCheckbox('', array('value' => 'login'))->setContent(___('Username'));
     $gr->addCheckbox('', array('value' => 'pass'))->setContent(___('Password'));
     foreach ($this->getDi()->userTable->customFields()->getAll() as $field) {
         if (strpos($field->name, '_') === 0 || !isset($field->sql) || !$field->sql) {
             continue;
         }
         $gr->addCheckbox('', array('value' => $field->name))->setContent($field->title);
     }
     $gr->addHidden('', array('value' => '_'));
     $gr->addFilter(array($this, '_filterHidden'));
     $form->addAdvCheckbox('subusers_can_login')->setLabel(___('Reseller can log-in as subuser'));
     $form->addAdvCheckbox('subusers_different_profile_form')->setLabel(___("Use different profile form for subusers\n" . 'you can configure subusers profile form %shere%s', '<a class="link" href="' . REL_ROOT_URL . '/admin-saved-form">', '</a>'));
     $form->addElement('email_link', 'subusers.registration_mail')->setLabel(___('Registration E-Mail to Subusers'));
     $form->addEpilog('<div class="info"><pre>' . $this->getReadme() . '</pre></div>');
 }
Beispiel #18
0
 public function _initSetupForm(Am_Form_Setup $form)
 {
     $form->setTitle('SmartDebit (Direct Link)');
     $form->addText('pslid')->setLabel('PSLID (Service User)')->addRule('required');
 }