Example #1
0
}
echo vmCommonHTML::scriptTag('', 'var ctThemeXPBase = "' . $js_src . '/ThemeXP/";');
if ($jscook_type == "tree") {
    if ($jscookTree_style == "ThemeXP") {
        $jscook_tree = "ctThemeXP1";
    }
    if ($jscookTree_style == "ThemeNavy") {
        $jscook_tree = "ctThemeNavy";
    }
    echo vmCommonHTML::scriptTag($js_src . '/JSCookTree.js');
    echo vmCommonHTML::linkTag($js_src . "/{$jscookTree_style}/theme.css");
    echo vmCommonHTML::scriptTag($js_src . "/{$jscookTree_style}/theme.js");
    $vm_jscook = new vmCategoryTree();
} else {
    echo vmCommonHTML::scriptTag($mosConfig_live_site . '/includes/js/JSCookMenu.js');
    echo vmCommonHTML::linkTag($mosConfig_live_site . "/includes/js/{$jscookMenu_style}/theme.css");
    echo vmCommonHTML::scriptTag($mosConfig_live_site . "/includes/js/{$jscookMenu_style}/theme.js");
    $vm_jscook = new vmCategoryMenu();
}
// create a unique tree identifier, in case multiple trees are used
// (max one per module)
$varname = "JSCook_" . uniqid($jscook_type . "_");
$menu_htmlcode = "<div align=\"left\" class=\"mainlevel\" id=\"div_{$varname}\"></div>\r\n<script type=\"text/javascript\"><!--\r\nvar {$varname} = \r\n[\r\n";
$vm_jscook->traverse_tree_down($menu_htmlcode);
$menu_htmlcode .= "];\r\n";
if ($jscook_type == "tree") {
    $menu_htmlcode .= "var treeindex = ctDraw ('div_{$varname}', {$varname}, {$jscook_tree}, '{$jscookTree_style}', 0, 0);";
} else {
    $menu_htmlcode .= "cmDraw ('div_{$varname}', {$varname}, '{$menu_orientation}', cm{$jscookMenu_style}, '{$jscookMenu_style}');";
}
$menu_htmlcode .= "\r\n--></script>\n";
$formObj->startForm();
$discount_id = vmGet($_REQUEST, 'discount_id', null);
$option = empty($option) ? vmGet($_REQUEST, 'option', 'com_virtuemart') : $option;
if (!empty($discount_id)) {
    $q = "SELECT * FROM #__{vm}_product_discount WHERE discount_id='{$discount_id}'";
    $db->query($q);
    $db->next_record();
}
echo vmCommonHTML::scriptTag($mosConfig_live_site . '/includes/js/calendar/calendar.js');
if (class_exists('JConfig')) {
    // in Joomla 1.5, the name of calendar lang file is changed...
    echo vmCommonHTML::scriptTag($mosConfig_live_site . '/includes/js/calendar/lang/calendar-en-GB.js');
} else {
    echo vmCommonHTML::scriptTag($mosConfig_live_site . '/includes/js/calendar/lang/calendar-en.js');
}
echo vmCommonHTML::linkTag($mosConfig_live_site . '/includes/js/calendar/calendar-mos.css');
?>
 

<table class="adminform">
    <tr> 
      <td colspan="2">&nbsp;</td>
    </tr>
    <tr> 
      <td width="24%"><div align="right"><?php 
echo $VM_LANG->_('PHPSHOP_PRODUCT_DISCOUNT_AMOUNT');
?>
:</div></td>
      <td width="76%"> 
        <input type="text" class="inputbox" name="amount" value="<?php 
$db->sp("amount");
Example #3
0
    /**
     * This allows us to print the user fields on
     * the various sections of the shop
     *
     * @param array $rowFields An array returned from ps_database::loadObjectlist
     * @param array $skipFields A one-dimensional array holding the names of fields that should NOT be displayed
     * @param ps_DB $db A ps_DB object holding ovalues for the fields
     * @param boolean $startform If true, print the starting <form...> tag
     */
    function listUserFields($rowFields, $skipFields = array(), $db = null, $startForm = true)
    {
        global $mm_action_url, $ps_html, $VM_LANG, $my, $default, $mainframe, $vm_mainframe, $vendor_country_3_code, $mosConfig_live_site, $mosConfig_absolute_path, $page;
        $dbf = new ps_DB();
        if ($db === null) {
            $db = new ps_DB();
        }
        $default['country'] = $vendor_country_3_code;
        $missing = vmGet($_REQUEST, 'missing', '');
        // collect all required fields
        $required_fields = array();
        foreach ($rowFields as $field) {
            if ($field->required == 1) {
                $required_fields[$field->name] = $field->type;
            }
            $allfields[$field->name] = $field->name;
        }
        foreach ($skipFields as $skip) {
            unset($required_fields[$skip]);
        }
        // Form validation function
        if (!vmIsAdminMode()) {
            ps_userfield::printJS_formvalidation($required_fields, $rowFields);
        } else {
            echo vmCommonHTML::scriptTag('', 'function submitregistration() { return true }');
        }
        if (file_exists($mosConfig_absolute_path . '/includes/js/mambojavascript.js')) {
            $vm_mainframe->addScript('includes/js/mambojavascript.js');
        }
        if ($startForm) {
            echo '<form action="' . $mm_action_url . basename($_SERVER['PHP_SELF']) . '" method="post" name="adminForm">';
        }
        echo '
		<div style="width:90%;">';
        if (!empty($required_fields)) {
            echo '<div style="padding:5px;text-align:center;"><strong>(* = ' . $VM_LANG->_('CMN_REQUIRED') . ')</strong></div>';
        }
        $delimiter = 0;
        foreach ($rowFields as $field) {
            if (!isset($default[$field->name])) {
                $default[$field->name] = $field->default;
            }
            $readonly = $field->readonly ? ' readonly="readonly"' : '';
            if (in_array($field->name, $skipFields)) {
                continue;
            }
            // Title handling.
            $key = $field->title;
            if ($key[0] == '_') {
                $key = substr($key, 1, strlen($key) - 1);
            }
            if ($VM_LANG->exists($key)) {
                $field->title = $VM_LANG->_($key);
            }
            if ($field->name == 'agreed') {
                $field->title = '<script type="text/javascript">//<![CDATA[
				document.write(\'<label for="agreed_field">' . str_replace("'", "\\'", $VM_LANG->_('PHPSHOP_I_AGREE_TO_TOS')) . '</label><a href="javascript:void window.open(\\\'' . $mosConfig_live_site . '/index2.php?option=com_virtuemart&page=shop.tos&pop=1\\\', \\\'win2\\\', \\\'status=no,toolbar=no,scrollbars=yes,titlebar=no,menubar=no,resizable=yes,width=640,height=480,directories=no,location=no\\\');">\');
				document.write(\' (' . $VM_LANG->_('PHPSHOP_STORE_FORM_TOS') . ')</a>\');
				//]]></script>
				<noscript>
					<label for="agreed_field">' . $VM_LANG->_('PHPSHOP_I_AGREE_TO_TOS') . '</label>
					<a target="_blank" href="' . $mosConfig_live_site . '/index.php?option=com_virtuemart&amp;page=shop.tos" title="' . $VM_LANG->_('PHPSHOP_I_AGREE_TO_TOS') . '">
					 (' . $VM_LANG->_('PHPSHOP_STORE_FORM_TOS') . ')
					</a></noscript>';
            }
            if ($field->name == 'username' && VM_REGISTRATION_TYPE == 'OPTIONAL_REGISTRATION') {
                echo '<div class="formLabel">
						<input type="checkbox" id="register_account" name="register_account" value="1" class="inputbox" onchange="showFields( this.checked, new Array(\'username\', \'password\', \'password2\') );if( this.checked ) { document.adminForm.remember.value=\'yes\'; } else { document.adminForm.remember.value=\'yes\'; }" checked="checked" />
					</div>
					<div class="formField">
						<label for="register_account">' . $VM_LANG->_('VM_REGISTER_ACCOUNT') . '</label>
					</div>
					';
            } elseif ($field->name == 'username') {
                echo '<input type="hidden" id="register_account" name="register_account" value="1" />';
            }
            // a delimiter marks the beginning of a new fieldset and
            // the end of a previous fieldset
            if ($field->type == 'delimiter') {
                if ($delimiter > 0) {
                    echo "</fieldset>\n";
                }
                if (VM_REGISTRATION_TYPE == 'SILENT_REGISTRATION' && $field->title == $VM_LANG->_('PHPSHOP_ORDER_PRINT_CUST_INFO_LBL') && $page == 'checkout.index') {
                    continue;
                }
                echo '<fieldset>
				     <legend class="sectiontableheader">' . $field->title . '</legend>
';
                $delimiter++;
                continue;
            }
            echo '<div id="' . $field->name . '_div" class="formLabel ';
            if (stristr($missing, $field->name)) {
                echo 'missing';
            }
            echo '">';
            echo '<label for="' . $field->name . '_field">' . $field->title . '</label>';
            if (isset($required_fields[$field->name])) {
                echo '<strong>* </strong>';
            }
            echo ' </div>
	      <div class="formField" id="' . $field->name . '_input">' . "\n";
            /**
             * This is the most important part of this file
             * Here we print the field & its contents!
             */
            switch ($field->name) {
                case 'title':
                    $ps_html->list_user_title($db->sf('title'), "id=\"title_field\"");
                    break;
                case 'country':
                    if (in_array('state', $allfields)) {
                        $onchange = "onchange=\"changeStateList();\"";
                    } else {
                        $onchange = "";
                    }
                    $ps_html->list_country("country", $db->sf('country'), "id=\"country_field\" {$onchange}");
                    break;
                case 'state':
                    echo $ps_html->dynamic_state_lists("country", "state", $db->sf('country'), $db->sf('state'));
                    echo "<noscript>\n";
                    $ps_html->list_states("state", $db->sf('state'), "", "id=\"state_field\"");
                    echo "</noscript>\n";
                    break;
                case 'agreed':
                    echo '<input type="checkbox" id="agreed_field" name="agreed" value="1" class="inputbox" />';
                    break;
                case 'password':
                case 'password2':
                    echo '<input type="password" id="' . $field->name . '_field" name="' . $field->name . '" size="30" class="inputbox" />' . "\n";
                    break;
                default:
                    switch ($field->type) {
                        case 'date':
                            echo vmCommonHTML::scriptTag($mosConfig_live_site . '/includes/js/calendar/calendar.js');
                            if (vmIsJoomla('1.5', '>=')) {
                                // in Joomla 1.5, the name of calendar lang file is changed...
                                echo vmCommonHTML::scriptTag($mosConfig_live_site . '/includes/js/calendar/lang/calendar-en-GB.js');
                            } else {
                                echo vmCommonHTML::scriptTag($mosConfig_live_site . '/includes/js/calendar/lang/calendar-en.js');
                            }
                            echo vmCommonHTML::linkTag($mosConfig_live_site . '/includes/js/calendar/calendar-mos.css');
                            $maxlength = $field->maxlength ? 'maxlength="' . $field->maxlength . '"' : '';
                            echo '<input type="text" id="' . $field->name . '_field" name="' . $field->name . '" size="' . $field->size . '" value="' . ($db->sf($field->name) ? $db->sf($field->name) : '') . '" class="inputbox" ' . $maxlength . $readonly . ' />' . "\n";
                            echo '<input name="reset" type="reset" class="button" onclick="return showCalendar(\'' . $field->name . '_field\', \'y-mm-dd\');" value="..." />';
                            break;
                        case 'text':
                        case 'emailaddress':
                        case 'webaddress':
                        case 'euvatid':
                            $maxlength = $field->maxlength ? 'maxlength="' . $field->maxlength . '"' : '';
                            echo '<input type="text" id="' . $field->name . '_field" name="' . $field->name . '" size="' . $field->size . '" value="' . ($db->sf($field->name) ? $db->sf($field->name) : '') . '" class="inputbox" ' . $maxlength . $readonly . ' />' . "\n";
                            break;
                        case 'textarea':
                            echo '<textarea name="' . $field->name . '" id="' . $field->name . '_field" cols="' . $field->cols . '" rows="' . $field->rows . '" ' . $readonly . '>' . $db->sf($field->name) . '</textarea>';
                            break;
                        case 'editorta':
                            editorArea($field->name, $db->sf($field->name), $field->name, '300', '150', $field->cols, $field->rows);
                            break;
                        case 'checkbox':
                            echo '<input type="checkbox" name="' . $field->name . '" id="' . $field->name . '_field" value="1" ' . ($db->sf($field->name) ? 'checked="checked"' : '') . '/>';
                            break;
                        case 'age_verification':
                            $year = vmRequest::getInt('birthday_selector_year', date('Y'));
                            if ($db->f($field->name)) {
                                $birthday = $db->f($field->name);
                                $date_array = explode('-', $birthday);
                                $year = $date_array[0];
                                $month = $date_array[1];
                                $day = $date_array[2];
                            }
                            ps_html::list_days('birthday_selector_day', vmRequest::getInt('birthday_selector_day', @$day));
                            ps_html::list_month('birthday_selector_month', vmRequest::getInt('birthday_selector_month', @$month));
                            ps_html::list_year('birthday_selector_year', $year, $year - 100, $year);
                            break;
                        case 'captcha':
                            if (file_exists($mosConfig_absolute_path . '/administrator/components/com_securityimages/client.php')) {
                                include $mosConfig_absolute_path . '/administrator/components/com_securityimages/client.php';
                                // Note that this package name must be used on the validation side too! If both are not equal, validation will fail
                                $packageName = 'securityVMRegistrationCheck';
                                echo insertSecurityImage($packageName);
                                echo getSecurityImageText($packageName);
                            } else {
                                if (file_exists($mosConfig_absolute_path . '/plugins/system/securityimages.php')) {
                                    echo "<script type=\"text/javascript\" src=\"" . JURI::root() . "/components/com_securityimages/js/securityImages.js\"></script>";
                                    echo "<img id='captchaSecurityImages' name='captchaSecurityImages' src=\"" . JURI::root() . "/index.php?option=com_securityimages&task=displayCaptcha\" />";
                                    echo "<a href=\"javascript:askNewSecurityImages('captchaSecurityImages');\">";
                                    echo "<img src=\"" . JURI::root() . "/components/com_securityimages/buttons/reload.gif\" id=\"securityImagesContactCaptchaReload\" name=\"securityImagesContactCaptchaReload\" border=\"0\">";
                                    echo "</a>";
                                    echo "<input type=\"text\" name=\"securityVMRegistrationCheck_try\" />";
                                }
                            }
                            break;
                            // Begin of a fallthrough
                        // Begin of a fallthrough
                        case 'multicheckbox':
                        case 'select':
                        case 'multiselect':
                        case 'radio':
                            $k = $db->f($field->name);
                            $dbf->setQuery("SELECT fieldtitle,fieldvalue FROM #__{vm}_userfield_values" . "\n WHERE fieldid = " . $field->fieldid . "\n ORDER BY ordering");
                            $Values = $dbf->loadObjectList();
                            $multi = "";
                            $rowFieldValues['lst_' . $field->name] = '';
                            if ($field->type == 'multiselect') {
                                $multi = "multiple='multiple'";
                            }
                            if (count($Values) > 0) {
                                if ($field->type == 'radio') {
                                    $rowFieldValues['lst_' . $field->name] = vmCommonHTML::radioListTable($Values, $field->name, 'class="inputbox" size="1" ', 'fieldvalue', 'fieldtitle', $k, $field->cols, $field->rows, $field->size, $field->required);
                                } else {
                                    $ks = explode("|*|", $k);
                                    $k = array();
                                    foreach ($ks as $kv) {
                                        $k[]->fieldvalue = $kv;
                                    }
                                    if ($field->type == 'multicheckbox') {
                                        $rowFieldValues['lst_' . $field->name] = vmCommonHTML::checkboxListTable($Values, $field->name . "[]", 'class="inputbox" size="' . $field->size . '" ' . $multi, 'fieldvalue', 'fieldtitle', $k, $field->cols, $field->rows, $field->size, $field->required);
                                    } else {
                                        $rowFieldValues['lst_' . $field->name] = vmCommonHTML::selectList($Values, $field->name . "[]", 'class="inputbox" size="' . $field->size . '" ' . $multi, 'fieldvalue', 'fieldtitle', $k);
                                    }
                                }
                            }
                            // no break! still a fallthrough
                            echo $rowFieldValues['lst_' . $field->name];
                            break;
                    }
                    break;
            }
            if ($field->description != '') {
                echo vmToolTip($field->description);
            }
            echo '<br /></div>
				      <br style="clear:both;" />';
        }
        if ($delimiter > 0) {
            echo "</fieldset>\n";
        }
        echo '</div>';
        if (VM_REGISTRATION_TYPE == 'OPTIONAL_REGISTRATION') {
            echo '<script type="text/javascript">
		   function showFields( show, fields ) {
		   	if( fields ) {
		   		for (i=0; i<fields.length;i++) {
		   			if( show ) {
		   				document.getElementById( fields[i] + \'_div\' ).style.display = \'\';
		   				document.getElementById( fields[i] + \'_input\' ).style.display = \'\';
		   			} else {
		   				document.getElementById( fields[i] + \'_div\' ).style.display = \'none\';
		   				document.getElementById( fields[i] + \'_input\' ).style.display = \'none\';
		   			}
		   		}
		   	}
		   }
		   try {
		   	showFields( document.getElementById( \'register_account\').checked, new Array(\'username\', \'password\', \'password2\') );
		   } catch(e){}
		   </script>';
        }
    }
Example #4
0
* VirtueMart is free software. This version may have been modified pursuant
* to the GNU General Public License, and as distributed it includes or
* is derivative of works licensed under the GNU General Public License or
* other free or open source software licenses.
* See /administrator/components/com_virtuemart/COPYRIGHT.php for copyright notices and details.
*
* http://virtuemart.net
*/
global $mainframe;
// include the stylesheet for this template
if (vmIsJoomla('1.0') && mosGetParam($_REQUEST, 'option') != VM_COMPONENT_NAME) {
    // This can only be a call from a module or mambot
    // In Joomla 1.0 it is not possible to add a JS or CSS into the HEAD from a module or content mambot,
    // using addcustomheadtag, that's why we just print the tags here
    echo vmCommonHTML::scriptTag(VM_THEMEURL . 'theme.js');
    echo vmCommonHTML::linkTag(VM_THEMEURL . 'theme.css');
} else {
    $vm_mainframe->addStyleSheet(VM_THEMEURL . 'theme.css');
    $vm_mainframe->addScript(VM_THEMEURL . 'theme.js');
}
class vmTheme extends vmTemplate
{
    function vmTheme()
    {
        parent::vmTemplate();
        vmCommonHTML::loadMooTools();
    }
    function vmBuildFullImageLink($product)
    {
        global $VM_LANG;
        $product_image = '';
Example #5
0
 /**
  * Adds a linked stylesheet to the page
  *
  * @param	string  $url	URL to the linked style sheet
  * @param	string  $type   Mime encoding type
  * @param	string  $media  Media type that this stylesheet applies to
  * @access   public
  */
 function addStyleSheet($url, $type = 'text/css', $media = null, $attribs = array())
 {
     if (vmIsJoomla('1.0') && (strstr($_SERVER['SCRIPT_NAME'], 'index3.php') || strstr($_SERVER['SCRIPT_NAME'], 'index2.php')) || !vmIsJoomla() && defined('_VM_IS_BACKEND')) {
         echo vmCommonHTML::linkTag($url, $type, 'stylesheet', $media);
         return;
     }
     if (isset($this->_styleSheets[$url])) {
         return;
     }
     $this->_styleSheets[$url]['url'] = $url;
     $this->_styleSheets[$url]['mime'] = $type;
     $this->_styleSheets[$url]['media'] = $media;
     $this->_styleSheets[$url]['attribs'] = $attribs;
 }