Exemplo n.º 1
0
 function fetchElement($name, $value, &$node, $control_name)
 {
     $cid = vRequest::getvar('cid', NULL, 'array');
     if (is_Array($cid)) {
         $virtuemart_paymentmethod_id = $cid[0];
     } else {
         $virtuemart_paymentmethod_id = $cid;
     }
     $http = JURI::root() . 'index.php?option=com_virtuemart&view=vmplg&task=notify&nt=ipn&tmpl=component&pm=' . $virtuemart_paymentmethod_id;
     $https = str_replace('http://', 'https://', $http);
     $class = $node->attributes('class') ? 'class="' . $node->attributes('class') . '"' : 'class="text_area"';
     if ($node->attributes('editable') == 'true') {
         $size = $node->attributes('size') ? 'size="' . $node->attributes('size') . '"' : '';
         return '<input type="text" name="' . $control_name . '[' . $name . ']" id="' . $control_name . $name . '" value="' . $value . '" ' . $class . ' ' . $size . ' />';
     } else {
         $string = "<div " . $class . ">";
         $string .= '<div class="ipn-sandbox">' . $http . ' <br /></div>';
         if (strcmp($https, $http) !== 0) {
             $string .= '<div class="ipn-sandbox">' . vmText::_('VMPAYMENT_AMAZON_OR') . '<br /></div>';
             $string .= $https;
             $string .= "</div>";
         }
         return $string;
     }
 }
Exemplo n.º 2
0
 function display($tpl = null)
 {
     if (!class_exists('VmHTML')) {
         require VMPATH_ADMIN . DS . 'helpers' . DS . 'html.php';
     }
     $this->vendorId = VmConfig::isSuperVendor();
     // TODO add icon for media view
     $this->SetViewTitle();
     $model = VmModel::getModel('media');
     $layoutName = vRequest::getCmd('layout', 'default');
     if ($layoutName == 'edit') {
         $this->media = $model->getFile();
         $this->addStandardEditViewCommands();
     } else {
         $virtuemart_product_id = vRequest::getInt('virtuemart_product_id');
         if (is_array($virtuemart_product_id) && count($virtuemart_product_id) > 0) {
             $virtuemart_product_id = (int) $virtuemart_product_id[0];
         } else {
             $virtuemart_product_id = (int) $virtuemart_product_id;
         }
         $cat_id = vRequest::getInt('virtuemart_category_id', 0);
         JToolBarHelper::custom('synchronizeMedia', 'new', 'new', vmText::_('COM_VIRTUEMART_TOOLS_SYNC_MEDIA_FILES'), false);
         $this->addStandardDefaultViewCommands();
         $this->addStandardDefaultViewLists($model, null, null, 'searchMedia');
         $options = array('' => vmText::_('COM_VIRTUEMART_LIST_ALL_TYPES'), 'product' => vmText::_('COM_VIRTUEMART_PRODUCT'), 'category' => vmText::_('COM_VIRTUEMART_CATEGORY'), 'manufacturer' => vmText::_('COM_VIRTUEMART_MANUFACTURER'), 'vendor' => vmText::_('COM_VIRTUEMART_VENDOR'));
         $this->lists['search_type'] = VmHTML::selectList('search_type', vRequest::getVar('search_type'), $options, 1, '', 'onchange="this.form.submit();"');
         $options = array('' => vmText::_('COM_VIRTUEMART_LIST_ALL_ROLES'), 'file_is_displayable' => vmText::_('COM_VIRTUEMART_FORM_MEDIA_DISPLAYABLE'), 'file_is_downloadable' => vmText::_('COM_VIRTUEMART_FORM_MEDIA_DOWNLOADABLE'), 'file_is_forSale' => vmText::_('COM_VIRTUEMART_FORM_MEDIA_SET_FORSALE'));
         $this->lists['search_role'] = VmHTML::selectList('search_role', vRequest::getVar('search_role'), $options, 1, '', 'onchange="this.form.submit();"');
         $this->files = $model->getFiles(false, false, $virtuemart_product_id, $cat_id);
         $this->pagination = $model->getPagination();
     }
     parent::display($tpl);
 }
Exemplo n.º 3
0
 function fetchElement($name, $value, &$node, $control_name)
 {
     // Base name of the HTML control.
     $ctrl = $control_name . '[' . $name . ']';
     // Construct an array of the HTML OPTION statements.
     $options = array();
     foreach ($node->children() as $option) {
         $val = $option->attributes('value');
         $text = $option->data();
         $options[] = JHTML::_('select.option', $val, vmText::_($text));
     }
     // Construct the various argument calls that are supported.
     $attribs = ' ';
     if ($v = $node->attributes('size')) {
         $attribs .= 'size="' . $v . '"';
     }
     if ($v = $node->attributes('class')) {
         $attribs .= 'class="' . $v . '"';
     } else {
         $attribs .= 'class="inputbox"';
     }
     if ($m = $node->attributes('multiple')) {
         $attribs = 'multiple="true"   data-placeholder="' . vmText::_('COM_VIRTUEMART_DRDOWN_SELECT_SOME_OPTIONS') . '"';
         $ctrl .= '[]';
     }
     // Render the HTML SELECT list.
     return JHTML::_('select.genericlist', $options, $ctrl, $attribs, 'value', 'text', $value, $control_name . $name);
 }
Exemplo n.º 4
0
 function save($data = 0)
 {
     $fileModel = VmModel::getModel('media');
     //Now we try to determine to which this media should be long to
     $data = array_merge(vRequest::getRequest(), vRequest::get('media'));
     //$data['file_title'] = vRequest::getVar('file_title','','post','STRING',JREQUEST_ALLOWHTML);
     if (!empty($data['file_description'])) {
         $data['file_description'] = JComponentHelper::filterText($data['file_description']);
         //vRequest::filter(); vRequest::getHtml('file_description','');
     }
     /*$data['media_action'] = vRequest::getCmd('media[media_action]');
     		$data['media_attributes'] = vRequest::getCmd('media[media_attributes]');
     		$data['file_type'] = vRequest::getCmd('media[file_type]');*/
     if (empty($data['file_type'])) {
         $data['file_type'] = $data['media_attributes'];
     }
     $msg = '';
     if ($id = $fileModel->store($data)) {
         $msg = vmText::_('COM_VIRTUEMART_FILE_SAVED_SUCCESS');
     }
     $cmd = vRequest::getCmd('task');
     if ($cmd == 'apply') {
         $redirection = 'index.php?option=com_virtuemart&view=media&task=edit&virtuemart_media_id=' . $id;
     } else {
         $redirection = 'index.php?option=com_virtuemart&view=media';
     }
     $this->setRedirect($redirection, $msg);
 }
Exemplo n.º 5
0
 function displayMediaFull($imageArgs = '', $lightbox = true, $effect = "class='modal'", $description = true)
 {
     if (!$this->file_is_forSale) {
         // Remote image URL
         if (substr($this->file_url, 0, 4) == "http") {
             $file_url = $this->file_url;
             $file_alt = $this->file_title;
         } else {
             $rel_path = str_replace('/', DS, $this->file_url_folder);
             $fullSizeFilenamePath = VMPATH_ROOT . DS . $rel_path . $this->file_name . '.' . $this->file_extension;
             if (!file_exists($fullSizeFilenamePath)) {
                 $file_url = $this->theme_url . 'assets/images/vmgeneral/' . VmConfig::get('no_image_found');
                 $file_alt = vmText::_('COM_VIRTUEMART_NO_IMAGE_FOUND') . ' ' . $this->file_description;
             } else {
                 $file_url = $this->file_url;
                 $file_alt = $this->file_meta;
             }
         }
         $postText = false;
         if ($description) {
             $postText = $this->file_description;
         }
         if (!empty($this->file_class)) {
             $imageArgs = $this->filterImageArgs($imageArgs);
         }
         return $this->displayIt($file_url, $file_alt, $imageArgs, $lightbox, $effect, $postText);
     } else {
         //Media which should be sold, show them only as thumb (works as preview)
         return $this->displayMediaThumb(array('id' => 'vm_display_image'), false);
     }
 }
Exemplo n.º 6
0
 function check()
 {
     if (empty($this->shopper_group_name)) {
         vmError(vmText::_('COM_VIRTUEMART_SHOPPERGROUP_RECORDS_MUST_HAVE_NAME'));
         return false;
     } else {
         if (function_exists('mb_strlen')) {
             if (mb_strlen($this->shopper_group_name) > 128) {
                 vmError(vmText::_('COM_VIRTUEMART_SHOPPERGROUP_NAME_LESS_THAN_32_CHARACTERS'));
                 return false;
             }
         } else {
             if (strlen($this->shopper_group_name) > 128) {
                 vmError(vmText::_('COM_VIRTUEMART_SHOPPERGROUP_NAME_LESS_THAN_32_CHARACTERS'));
                 return false;
             }
         }
     }
     if ($this->virtuemart_shoppergroup_id == 1) {
         $this->default = 2;
         $this->sgrp_additional = 0;
     }
     if ($this->virtuemart_shoppergroup_id == 2) {
         $this->default = 1;
         $this->sgrp_additional = 0;
     }
     return parent::check();
 }
Exemplo n.º 7
0
 function display($tpl = null)
 {
     $document = JFactory::getDocument();
     $document->setMimeEncoding('application/json');
     if ($virtuemart_media_id = vRequest::getInt('virtuemart_media_id')) {
         //JResponse::setHeader( 'Content-Disposition', 'attachment; filename="media'.$virtuemart_media_id.'.json"' );
         $model = VmModel::getModel('Media');
         $image = $model->createMediaByIds($virtuemart_media_id);
         // 			echo '<pre>'.print_r($image,1).'</pre>';
         $this->json = $image[0];
         //echo json_encode($this->json);
         if (isset($this->json->file_url)) {
             $this->json->file_root = JURI::root(true) . '/';
             $this->json->msg = 'OK';
             echo @json_encode($this->json);
         } else {
             $this->json->msg = '<b>' . vmText::_('COM_VIRTUEMART_NO_IMAGE_SET') . '</b>';
             echo @json_encode($this->json);
         }
     } else {
         if (!class_exists('VmMediaHandler')) {
             require VMPATH_ADMIN . DS . 'helpers' . DS . 'mediahandler.php';
         }
         $start = vRequest::getInt('start', 0);
         $type = vRequest::getCmd('mediatype', 0);
         $list = VmMediaHandler::displayImages($type, $start);
         echo @json_encode($list);
     }
     jExit();
 }
Exemplo n.º 8
0
 function getInput()
 {
     $dynamic_url = JURI::root() . 'index.php?option=com_virtuemart&amp;view=pluginresponse&amp;task=pluginnotification&amp;tmpl=component&amp;po=';
     $accepted_url = JURI::root() . 'index.php?option=com_virtuemart&amp;view=pluginresponse&amp;task=pluginresponsereceived&amp;po=';
     $refused_url = JURI::root() . 'index.php?option=com_virtuemart&amp;view=pluginresponse&amp;task=pluginUserPaymentCancel&amp;po=';
     $msg = "";
     $msg .= '<div>';
     $msg .= "<strong>" . vmText::_('VMPAYMENT_KLIKANDPAY_CONF_DYNAMIC_RETURN_URL') . "</strong>";
     $msg .= "<br />";
     $msg .= vmText::_('VMPAYMENT_KLIKANDPAY_CONF_DYNAMIC_RETURN_URL_TIP');
     $msg .= "<br />";
     $msg .= '<input class="required" readonly size="180" value="' . $dynamic_url . '" />';
     $msg .= "</div>";
     $msg .= '<div style="margin-top: 10px ;">';
     $msg .= "<strong>" . vmText::_('VMPAYMENT_KLIKANDPAY_CONF_URL_TRANSACTION_ACCEPTED') . "</strong>";
     $msg .= "<br />";
     $msg .= vmText::_('VMPAYMENT_KLIKANDPAY_CONF_URL_TRANSACTION_ACCEPTED_TIP');
     $msg .= "<br />";
     $msg .= '<input class="required" readonly size="180" value="' . $accepted_url . '" />';
     $msg .= "</div>";
     $msg .= '<div style="margin-top: 10px ;">';
     $msg .= "<strong>" . vmText::_('VMPAYMENT_KLIKANDPAY_CONF_URL_TRANSACTION_REFUSED') . "</strong>";
     $msg .= "<br />";
     $msg .= vmText::_('VMPAYMENT_KLIKANDPAY_CONF_URL_TRANSACTION_REFUSED_TIP');
     $msg .= "<br />";
     //$msg .=   $refused_url  ;
     $msg .= '<input class="required" readonly size="180" value="' . $refused_url . '" />';
     $msg .= "</div>";
     return $msg;
 }
Exemplo n.º 9
0
 function __construct($method, $paypalPlugin)
 {
     parent::__construct($method, $paypalPlugin);
     //Set the credentials
     if ($this->_method->sandbox) {
         $this->api_login_id = trim($this->_method->sandbox_api_login_id);
         $this->api_signature = trim($this->_method->sandbox_api_signature);
         $this->api_password = trim($this->_method->sandbox_api_password);
         $this->payflow_partner = trim($this->_method->sandbox_payflow_partner);
         $this->payflow_vendor = trim($this->_method->sandbox_payflow_vendor);
     } else {
         $this->api_login_id = trim($this->_method->api_login_id);
         $this->api_signature = trim($this->_method->api_signature);
         $this->api_password = trim($this->_method->api_password);
     }
     if (empty($this->api_login_id) || empty($this->api_signature) || empty($this->api_password)) {
         $text = vmText::sprintf('VMPAYMENT_PAYPAL_CREDENTIALS_NOT_SET', $this->_method->payment_name, $this->_method->virtuemart_paymentmethod_id);
         vmError($text, $text);
     }
     if (empty($this->_method->payflow_partner) or empty($this->_method->sandbox_payflow_partner)) {
         $sandbox = "";
         if ($this->_method->sandbox) {
             $sandbox = 'SANDBOX_';
         }
         $text = vmText::sprintf('VMPAYMENT_PAYPAL_PARAMETER_REQUIRED', vmText::_('VMPAYMENT_PAYPAL_' . $sandbox . 'PAYFLOW_PARTNER'), $this->_method->payment_name, $this->_method->virtuemart_paymentmethod_id);
         vmError($text);
     }
 }
Exemplo n.º 10
0
 function linkIcon($link, $altText = '', $boutonName, $verifyConfigValue = false, $modal = true, $use_icon = true, $use_text = false, $class = '')
 {
     if ($verifyConfigValue) {
         if (!VmConfig::get($verifyConfigValue, 0)) {
             return '';
         }
     }
     $folder = 'media/system/images/';
     //shouldn't be root slash before media, as it automatically tells to look in root directory, for media/system/ which is wrong it should append to root directory.
     $text = '';
     if ($use_icon) {
         $text .= JHtml::_('image', $folder . $boutonName . '.png', vmText::_($altText), null, false, false);
     }
     //$folder shouldn't be as alt text, here it is: image(string $file, string $alt, mixed $attribs = null, boolean $relative = false, mixed $path_rel = false) : string, you should change first false to true if images are in templates media folder
     if ($use_text) {
         $text .= '&nbsp;' . vmText::_($altText);
     }
     if ($text == '') {
         $text .= '&nbsp;' . vmText::_($altText);
     }
     if ($modal) {
         return '<a ' . $class . ' class="modal" rel="{handler: \'iframe\', size: {x: 700, y: 550}}" title="' . vmText::_($altText) . '" href="' . JRoute::_($link, FALSE) . '">' . $text . '</a>';
     } else {
         return '<a ' . $class . ' title="' . vmText::_($altText) . '" href="' . JRoute::_($link, FALSE) . '">' . $text . '</a>';
     }
 }
Exemplo n.º 11
0
	/**
	 * if asynchronous mode= state= pending
	 * if asynchronous mode=> timeOut was set to > 0
	 * if synchronous mode=> timeOut ==0
	 * -- if InvalidPaymentMethod and asynchronous mode, the state= suspended ==> send an email
	 * -- if InvalidPaymentMethod and synchronous mode: return to cart, redisplay wallet widget
	 * -- AmazonRejected: if state == open, then retry authorization, else Declined
	 * -- Processing failure: retry the request in 2 minutes ???
	 * --
	 * @return mixed
	 */


	public function onResponseUpdateOrderHistory ($order) {

		$order_history = array();
		$amazonState = "";
		$reasonCode = "";
		$authorizeResponse = $this->amazonData;
		// if am

		$authorizeResult = $authorizeResponse->getAuthorizeResult();
		$authorizationDetails = $authorizeResult->getAuthorizationDetails();
		if ($authorizationDetails->isSetAuthorizationStatus()) {
			$authorizationStatus = $authorizationDetails->getAuthorizationStatus();
			if (!$authorizationStatus->isSetState()) {
				return false;
			}
			$amazonState = $authorizationStatus->getState();

			if ($authorizationStatus->isSetReasonCode()) {
				$reasonCode = $authorizationStatus->getReasonCode();
			}
		}
		// In asynchronous mode, AuthorizationResponse is always Pending. Order status is not updated
		if ($amazonState == 'Pending') {
			return $amazonState;
		}

		// SYNCHRONOUS MODE: amazon returns in real time the final process status
		if ($amazonState == 'Open') {
			// it should always be the case if the CaptureNow == false
			$order_history['order_status'] = $this->_currentMethod->status_authorization;
			$order_history['comments'] = vmText::_('VMPAYMENT_AMAZON_COMMENT_STATUS_AUTHORIZATION_OPEN');
			$order_history['customer_notified'] = 1;
		} elseif ($amazonState == 'Closed') {
			// it should always be the case if the CaptureNow == true
			if (!($authorizationDetails->isSetCaptureNow() and $authorizationDetails->getCaptureNow())) {
				$this->debugLog('SYNCHRONOUS , capture Now, and Amazon State is NOT CLOSED' . __FUNCTION__ . var_export($authorizeResponse, true), 'error');
				return $amazonState;
			}
			$order_history['order_status'] = $this->_currentMethod->status_capture;
			$order_history['comments'] = vmText::_('VMPAYMENT_AMAZON_COMMENT_STATUS_CAPTURED');
			$order_history['customer_notified'] = 1;

		} elseif ($amazonState == 'Declined') {
			// handling Declined Authorizations
			$order_history['order_status'] = $this->_currentMethod->status_cancel;
			$order_history['comments'] = $reasonCode;
			if ($authorizationStatus->isSetReasonDescription()) {
				$order_history['comments'] .= " " . $authorizationStatus->getReasonDescription();
			}
			$order_history['customer_notified'] = 0;

		}
		$order_history['amazonState'] = $amazonState;
		$modelOrder = VmModel::getModel('orders');
		$modelOrder->updateStatusForOneOrder($order['details']['BT']->virtuemart_order_id, $order_history, false);


		return $amazonState;
	}
Exemplo n.º 12
0
 function fetchElement($name, $value, &$node, $control_name)
 {
     if (!function_exists('curl_init') or !function_exists('curl_exec')) {
         return vmText::_('VMPAYMENT_AUTHORIZENET_CURL_LIBRARY_NOT_INSTALLED');
     } else {
         return vmText::_('VMPAYMENT_AUTHORIZENET_CURL_LIBRARY_INSTALLED');
     }
 }
Exemplo n.º 13
0
 function check()
 {
     if (empty($this->notify_email) || !filter_var($this->notify_email, FILTER_VALIDATE_EMAIL)) {
         vmError(vmText::_('COM_VIRTUEMART_ENTER_A_VALID_EMAIL_ADDRESS'), vmText::_('COM_VIRTUEMART_ENTER_A_VALID_EMAIL_ADDRESS'));
         return false;
     }
     return parent::check();
 }
 /**
  * Only send an email if the ERP is enabled, and authorization is done by ERP
  * IN all other cases, there will be an authorization after OrderConfirmed, that will send an email
  * @param $order
  */
 function onResponseUpdateOrderHistory($order)
 {
     $order_history['order_status'] = $this->_currentMethod->status_orderconfirmed;
     $order_history['customer_notified'] = $this->getCustomerNotified();
     $order_history['comments'] = vmText::_('VMPAYMENT_AMAZON_COMMENT_STATUS_ORDERCONFIRMED');
     $modelOrder = VmModel::getModel('orders');
     $modelOrder->updateStatusForOneOrder($order['details']['BT']->virtuemart_order_id, $order_history, false);
 }
Exemplo n.º 15
0
	function display($tpl = null) {
			$db = JFactory::getDBO();
		if ( $virtuemart_media_id = vRequest::getInt('virtuemart_media_id') ) {
			//$db = JFactory::getDBO();
			$query='SELECT `file_url`,`file_title` FROM `#__virtuemart_medias` where `virtuemart_media_id`='.$virtuemart_media_id;
			$db->setQuery( $query );
			$json = $db->loadObject();
			if (isset($json->file_url)) {
				$json->file_url = JURI::root().$json->file_url;
				$json->msg =  'OK';
				echo json_encode($json);
			} else {
				$json->msg =  '<b>'.vmText::_('COM_VIRTUEMART_NO_IMAGE_SET').'</b>';
				echo json_encode($json);
			}
		}
		elseif ( $custom_jplugin_id = vRequest::getInt('custom_jplugin_id') ) {

			$table = '#__extensions';
			$ext_id = 'extension_id';

			$q = 'SELECT `params`,`element` FROM `' . $table . '` WHERE `' . $ext_id . '` = "'.$custom_jplugin_id.'"';
			$db ->setQuery($q);
			$this->jCustom = $db ->loadObject();

			$customModel = VmModel::getModel('custom');
			$this->custom = $customModel -> getCustom();

			// Get the payment XML.
			$formFile	= JPath::clean( VMPATH_ROOT .DS. 'plugins' .DS. 'vmcustom' .DS . $this->jCustom->element . DS . $this->jCustom->element . '.xml');
			if (file_exists($formFile)){
				VmConfig::loadJLang('plg_vmpsplugin', false);
				if (!class_exists('vmPlugin')) require(VMPATH_PLUGINLIBS . DS . 'vmplugin.php');
				$filename = 'plg_vmcustom_' .  $this->jCustom->element;
				vmPlugin::loadJLang($filename,'vmcustom',$this->jCustom->element);

				$this->custom = VmModel::getModel('custom')->getCustom();
				$varsToPush = vmPlugin::getVarsToPushByXML($formFile,'customForm');
				$this->custom->form = JForm::getInstance($this->jCustom->element, $formFile, array(),false, '//vmconfig | //config[not(//vmconfig)]');
				$this->custom->params = new stdClass();

				foreach($varsToPush as $k => $field){
					if(strpos($k,'_')!=0){
						$this->custom->params->$k = $field[0];
					}
				}
				$this->custom->form->bind($this->custom->getProperties());
				$form = $this->custom->form;
				include(VMPATH_ADMIN.DS.'fields'.DS.'formrenderer.php');
				echo '<input type="hidden" value="'.$this->jCustom->element.'" name="custom_value">';
			} else {
				$this->custom->form = null;
				VmConfig::$echoDebug = 1;
				vmdebug ('File does not exist '.$formFile);
			}
		}
		jExit();
	}
Exemplo n.º 16
0
 function getInput()
 {
     $flag = $this->value;
     if ($this->value == 'NB') {
         $flag = 'NO';
     }
     $flagImg = JURI::root(TRUE) . '/media/mod_languages/images/' . strtolower($flag) . '.gif';
     return '<strong>' . vmText::_('VMPAYMENT_KLARNA_CONF_SETTINGS_' . $this->value) . '</strong><img style="margin-left: 5px;" src="' . $flagImg . '" />';
 }
 protected function getOptions()
 {
     $creditcards = PaypalHelperPaypal::getPaypalCreditCards();
     $prefix = 'VMPAYMENT_PAYPAL_CC_';
     foreach ($creditcards as $creditcard) {
         $options[] = JHtml::_('select.option', $creditcard, vmText::_($prefix . strtoupper($creditcard)));
     }
     return $options;
 }
Exemplo n.º 18
0
 protected function getOptions()
 {
     $creditcards = RealexHelperRealex::getRealexCreditCards();
     $prefix = 'VMPAYMENT_REALEX_HPP_API_CC_';
     foreach ($creditcards as $creditcard) {
         $options[] = JHtml::_('select.option', $creditcard, vmText::_($prefix . strtoupper($creditcard)));
     }
     return $options;
 }
Exemplo n.º 19
0
 /**
  * Check if the given coupon code exists, is (still) valid and valid for the total order amount
  * @param string $_code Coupon code
  * @param float $_billTotal Total amount for the order
  * @author Oscar van Eijk
  * @author Max Milbers
  * @return string Empty when the code is valid, otherwise the error message
  */
 public static function ValidateCouponCode($_code, $_billTotal)
 {
     if (empty($_code) or $_code == vmText::_('COM_VIRTUEMART_COUPON_CODE_ENTER')) {
         return '';
     }
     $couponData = 0;
     JPluginHelper::importPlugin('vmcoupon');
     $dispatcher = JDispatcher::getInstance();
     $returnValues = $dispatcher->trigger('plgVmValidateCouponCode', array($_code, $_billTotal));
     if (!empty($returnValues)) {
         foreach ($returnValues as $returnValue) {
             if ($returnValue !== null) {
                 //Take a look on this seyi, I am not sure about that, but it should work at least simular note by Max
                 return $returnValue;
             }
         }
     }
     if (empty($couponData)) {
         $_db = JFactory::getDBO();
         $_q = 'SELECT IFNULL( NOW() >= `coupon_start_date` OR `coupon_start_date`="0000-00-00 00:00:00" , 1 ) AS started
 				, `coupon_start_date`
 				,  IFNULL (`coupon_expiry_date`!="0000-00-00 00:00:00" and NOW() > `coupon_expiry_date`,0) AS `ended`
 				, `coupon_expiry_date`
 				, `coupon_value_valid`
 				, `coupon_used`
 				FROM `#__virtuemart_coupons`
 				WHERE `coupon_code` = "' . $_db->escape($_code) . '"';
         $_db->setQuery($_q);
         $couponData = $_db->loadObject();
     }
     if (!$couponData) {
         return vmText::_('COM_VIRTUEMART_COUPON_CODE_INVALID');
     }
     if ($couponData->coupon_used) {
         $session = JFactory::getSession();
         $session_id = $session->getId();
         if ($couponData->coupon_used != $session_id) {
             return vmText::_('COM_VIRTUEMART_COUPON_CODE_INVALID');
         }
     }
     if (!$couponData->started) {
         return vmText::_('COM_VIRTUEMART_COUPON_CODE_NOTYET') . $couponData->coupon_start_date;
     }
     if ($couponData->ended) {
         self::RemoveCoupon($_code, true);
         return vmText::_('COM_VIRTUEMART_COUPON_CODE_EXPIRED');
     }
     if ($_billTotal < $couponData->coupon_value_valid) {
         if (!class_exists('CurrencyDisplay')) {
             require VMPATH_ADMIN . DS . 'helpers' . DS . 'currencydisplay.php';
         }
         $currency = CurrencyDisplay::getInstance();
         $coupon_value_valid = $currency->priceDisplay($couponData->coupon_value_valid);
         return vmText::_('COM_VIRTUEMART_COUPON_CODE_TOOLOW') . " " . $coupon_value_valid;
     }
     return '';
 }
Exemplo n.º 20
0
 /**
  * Send the ask question email.
  * @author Kohl Patrick, Christopher Roussel
  */
 public function mailAskquestion()
 {
     vRequest::vmCheckToken();
     if (!class_exists('shopFunctionsF')) {
         require VMPATH_SITE . DS . 'helpers' . DS . 'shopfunctionsf.php';
     }
     $model = VmModel::getModel('vendor');
     $mainframe = JFactory::getApplication();
     $vars = array();
     $min = VmConfig::get('asks_minimum_comment_length', 50) + 1;
     $max = VmConfig::get('asks_maximum_comment_length', 2000) - 1;
     $commentSize = vRequest::getString('comment');
     if (function_exists('mb_strlen')) {
         $commentSize = mb_strlen($commentSize);
     } else {
         $commentSize = strlen($commentSize);
     }
     $validMail = filter_var(vRequest::getVar('email'), FILTER_VALIDATE_EMAIL);
     $virtuemart_vendor_id = vRequest::getInt('virtuemart_vendor_id', 1);
     if (!class_exists('VirtueMartModelVendor')) {
         require VMPATH_ADMIN . DS . 'models' . DS . 'vendor.php';
     }
     $userId = VirtueMartModelVendor::getUserIdByVendorId($virtuemart_vendor_id);
     //$vendorUser = JFactory::getUser($userId);
     if ($commentSize < $min || $commentSize > $max || !$validMail) {
         $this->setRedirect(JRoute::_('index.php?option=com_virtuemart&view=vendor&task=contact&virtuemart_vendor_id=' . $virtuemart_vendor_id, FALSE), vmText::_('COM_VIRTUEMART_COMMENT_NOT_VALID_JS'));
         return;
     }
     $user = JFactory::getUser();
     $fromMail = vRequest::getVar('email');
     //is sanitized then
     $fromName = vRequest::getVar('name', '');
     //is sanitized then
     $fromMail = str_replace(array('\'', '"', ',', '%', '*', '/', '\\', '?', '^', '`', '{', '}', '|', '~'), array(''), $fromMail);
     $fromName = str_replace(array('\'', '"', ',', '%', '*', '/', '\\', '?', '^', '`', '{', '}', '|', '~'), array(''), $fromName);
     if (!empty($user->id)) {
         if (empty($fromMail)) {
             $fromMail = $user->email;
         }
         if (empty($fromName)) {
             $fromName = $user->name;
         }
     }
     $vars['user'] = array('name' => $fromName, 'email' => $fromMail);
     $VendorEmail = $model->getVendorEmail($virtuemart_vendor_id);
     $vars['vendor'] = array('vendor_store_name' => $fromName);
     if (shopFunctionsF::renderMail('vendor', $VendorEmail, $vars, 'vendor')) {
         $string = 'COM_VIRTUEMART_MAIL_SEND_SUCCESSFULLY';
     } else {
         $string = 'COM_VIRTUEMART_MAIL_NOT_SEND_SUCCESSFULLY';
     }
     $mainframe->enqueueMessage(vmText::_($string));
     // Display it all
     $view = $this->getView('vendor', 'html');
     $view->setLayout('mail_confirmed');
     $view->display();
 }
Exemplo n.º 21
0
    function fetchElement($name, $value, &$node, $control_name)
    {
        $js = '
//<![CDATA[
		jQuery(document).ready(function( $ ) {

		    jQuery("#heidelpay_getheidelpay_link").click( function() {
				 if ( $("#heidelpay_getheidelpay_show_hide").is(":visible") ) {
				  $("#heidelpay_getheidelpay_show_hide").hide("slow");
			        $("#heidelpay_getheidelpay_link").html("' . addslashes(JText::_('VMPAYMENT_HEIDELPAY_CREATE_ACCOUNT')) . '");
				} else {
				 $("#heidelpay_getheidelpay_show_hide").show("slow");
			       $("#heidelpay_getheidelpay_link").html("' . addslashes(JText::_('VMPAYMENT_HEIDELPAY_GET_HEIDELPAY_HIDE')) . '");
			    }
		    });
		});
//]]>
';
        $doc = JFactory::getDocument();
        $doc->addScriptDeclaration($js);
        $cid = jrequest::getvar('cid', NULL, 'array');
        if (is_Array($cid)) {
            $virtuemart_paymentmethod_id = $cid[0];
        } else {
            $virtuemart_paymentmethod_id = $cid;
        }
        $query = "SELECT payment_params FROM `#__virtuemart_paymentmethods` WHERE  virtuemart_paymentmethod_id = '" . $virtuemart_paymentmethod_id . "'";
        $db = JFactory::getDBO();
        $db->setQuery($query);
        $params = $db->loadResult();
        $payment_params = explode("|", $params);
        foreach ($payment_params as $payment_param) {
            if (empty($payment_param)) {
                continue;
            }
            $param = explode('=', $payment_param);
            $payment_params[$param[0]] = substr($param[1], 1, -1);
        }
        $id = "";
        if ($payment_params['HEIDELPAY_SECURITY_SENDER'] == '31HA07BC8124AD82A9E96D9A35FAFD2A' or $payment_params['HEIDELPAY_SECURITY_SENDER'] == '') {
            $id = "heidelpay_getheidelpay_link";
            $display = '';
            $html = '<a href="#" id="' . $id . '" class="signin-button-link">' . JText::_('VMPAYMENT_HEIDELPAY_ALREADY_ACCOUNT') . '</a>';
        } else {
            $id = "heidelpay_getheidelpay_link";
            $display = ' style="display: none;"';
            $html = '<a href="#" id="' . $id . '" class="signin-button-link">' . JText::_('VMPAYMENT_HEIDELPAY_CREATE_ACCOUNT') . '</a>';
        }
        $lang = $this->getLang();
        $html .= '<div id="heidelpay_getheidelpay_show_hide" align=""' . $display . '  >';
        $url = "http://demoshops.heidelpay.de/contactform/?campaign=vituemart&shop=vituemart&lang=" . $lang;
        $html .= '<iframe src="' . $url . '" scrolling="yes" style="x-overflow: none;" frameborder="0" height="1400px" width="300px"></iframe>';
        $html .= "</div>";
        $html .= '<a target="_blank" href="http://docs.virtuemart.net/manual/shop-menu/payment-methods/heidelpay.html"  class="signin-button-link">' . vmText::_('VMPAYMENT_AMAZON_DOCUMENTATION') . '</a></p></div>';
        return $html;
    }
Exemplo n.º 22
0
    function getInput()
    {
        $js = '
//<![CDATA[
		jQuery(document).ready(function( $ ) {

		    jQuery("#paybox_getpaybox_link").click( function() {
				 if ( $("#paybox_getpaybox_show_hide").is(":visible") ) {
				  $("#paybox_getpaybox_show_hide").hide("slow");
			        $("#paybox_getpaybox_link").html("' . addslashes(vmText::_('VMPAYMENT_PAYBOX_ALREADY_ACCOUNT')) . '");
				} else {
				 $("#paybox_getpaybox_show_hide").show("slow");
			       $("#paybox_getpaybox_link").html("' . addslashes(vmText::_('VMPAYMENT_PAYBOX_GET_PAYBOX_HIDE')) . '");
			    }
		    });
		});
//]]>
';
        $doc = JFactory::getDocument();
        $doc->addScriptDeclaration($js);
        if (!class_exists('pbxRequest')) {
            require JPATH_SITE . DS . 'plugins' . DS . 'vmpayment' . DS . 'paybox' . DS . 'paybox' . DS . 'helpers' . DS . 'pbxrequest.php';
        }
        $cid = pbxRequest::getvar('cid', NULL, 'array');
        if (is_Array($cid)) {
            $virtuemart_paymentmethod_id = $cid[0];
        } else {
            $virtuemart_paymentmethod_id = $cid;
        }
        $query = "SELECT * FROM `#__virtuemart_paymentmethods` WHERE  virtuemart_paymentmethod_id = '" . $virtuemart_paymentmethod_id . "'";
        $db = JFactory::getDBO();
        $db->setQuery($query);
        $params = $db->loadObject();
        $html = '<img src="http://virtuemart.boutique-paybox.com/PayboxLogo.jpg" width="200px"/><br />';
        if ($params->created_on == $params->modified_on) {
            $id = "paybox_getpaybox_link";
            $html .= '<a href="#" id="' . $id . '">' . vmText::_('VMPAYMENT_PAYBOX_GET_PAYBOX_HIDE') . '</a>';
            $display = '';
            $html .= '<div id="paybox_getpaybox_show_hide" align=""' . $display . ' >';
        } else {
            $id = "paybox_getpaybox_link";
            $html .= '<a href="#" id="' . $id . '">' . vmText::_('VMPAYMENT_PAYBOX_ALREADY_ACCOUNT') . '</a>';
            $display = ' style="display: none;"';
            $html .= '<div id="paybox_getpaybox_show_hide" align=""' . $display . ' >';
        }
        $id = "";
        $lang = $this->getLang();
        if ($lang == 'fr') {
            $url = "http://virtuemart.boutique-paybox.com/PayboxPres.html";
        } else {
            $url = "http://virtuemart.boutique-paybox.com/PayboxPres.html";
        }
        $html .= '<iframe src="' . $url . '" scrolling="yes" style="x-overflow: none;" frameborder="0" height="1400px" width="800px"></iframe>';
        $html .= "</div>";
        return $html;
    }
Exemplo n.º 23
0
 function getInput()
 {
     $key = $this->element['key_field'] ? $this->element['key_field'] : 'value';
     $val = $this->element['value_field'] ? $this->element['value_field'] : $this->name;
     $model = VmModel::getModel('Manufacturer');
     $manufacturers = $model->getManufacturers(true, true, false);
     $emptyOption = JHtml::_('select.option', '', vmText::_('COM_VIRTUEMART_LIST_EMPTY_OPTION'), 'virtuemart_manufacturer_id', 'mf_name');
     array_unshift($manufacturers, $emptyOption);
     return JHtml::_('select.genericlist', $manufacturers, $this->name, 'class="inputbox"  size="1"', 'virtuemart_manufacturer_id', 'mf_name', $this->value, $this->id);
 }
Exemplo n.º 24
0
 protected function getInput()
 {
     if (empty($this->element['description'])) {
         return '';
     }
     $description = (string) $this->element['description'];
     $class = $this->element['class'] ? ' class="' . trim((string) $this->element['class']) . '"' : '';
     $html = !empty($description) ? vmText::_($description) : '';
     return '<span ' . $class . '>' . $html . '</span>';
 }
Exemplo n.º 25
0
 protected function getInput()
 {
     //VmConfig::loadJLang('com_virtuemart');
     $categorylist = ShopFunctions::categoryListTree(array($this->value));
     $html = '<select multiple="true" class="inputbox ' . $this->class . '"   name="' . $this->name . '" >';
     $html .= '<option value="0">' . vmText::_('COM_VIRTUEMART_NONE') . '</option>';
     $html .= $categorylist;
     $html .= "</select>";
     return $html;
 }
Exemplo n.º 26
0
 protected function getInput()
 {
     vmJsApi::addJScript('/plugins/vmpayment/realex_hpp_api/realex_hpp_api/assets/js/admin.js');
     vmJsApi::css('admin', 'plugins/vmpayment/realex_hpp_api/realex_hpp_api/assets/css/');
     $url = "http://www.realexpayments.com/partner-referral?id=virtuemart";
     $logo = '<img src="http://www.realexpayments.com/images/logo_realex_large.png" width="150"/>';
     $html = '<p><a target="_blank" href="' . $url . '"  >' . $logo . '</a></p>';
     $html .= '<p><a target="_blank" href="' . $url . '" class="signin-button-link">' . vmText::_('VMPAYMENT_REALEX_HPP_API_REGISTER') . '</a>';
     $html .= ' <a target="_blank" href="http://docs.virtuemart.net/manual/shop-menu/payment-methods/realex-hpp-and-api.html" class="signin-button-link">' . vmText::_('VMPAYMENT_REALEX_HPP_API_DOCUMENTATION') . '</a></p>';
     return $html;
 }
Exemplo n.º 27
0
 protected function getInput()
 {
     $doc = JFactory::getDocument();
     $doc->addScript(JURI::root(true) . '/plugins/vmpayment/realex_hpp_api/realex_hpp_api/assets/js/admin.js');
     $doc->addStyleSheet(JURI::root(true) . '/plugins/vmpayment/realex_hpp_api/realex_hpp_api/assets/css/admin.css');
     $url = "http://www.realexpayments.com/partner-referral?id=virtuemart";
     $logo = '<img src="http://www.realexpayments.com/images/logo_realex_large.png" width="150"/>';
     $html = '<a target="_blank" href="' . $url . '" id="getrealex_link" ">' . $logo . '</a><br />';
     $html .= '<a target="_blank" href="' . $url . '" id="getrealex_link" ">' . vmText::_('VMPAYMENT_REALEX_HPP_API_REGISTER') . '</a>';
     return $html;
 }
Exemplo n.º 28
0
 function fetchElement($name, $value, &$node, $control_name)
 {
     JPlugin::loadLanguage('com_virtuemart', JPATH_ADMINISTRATOR);
     $categorylist = ShopFunctions::categoryListTree(array($value));
     $class = $node->attributes('class') ? 'class="' . $node->attributes('class') . '"' : '';
     $html = '<select multiple="true" class="inputbox ' . $class . '"   name="' . $control_name . '[' . $name . ']' . '" >';
     $html .= '<option value="0">' . vmText::_('COM_VIRTUEMART_NONE') . '</option>';
     $html .= $categorylist;
     $html .= "</select>";
     return $html;
 }
Exemplo n.º 29
0
 /**
  * Method to get the field input markup.
  *
  * @return	string	The field input markup.
  * @since	1.6
  */
 protected function getInput()
 {
     VmConfig::loadConfig();
     VmConfig::loadJLang('com_virtuemart');
     $categorylist = ShopFunctions::categoryListTree(array($this->value));
     $html = '<select class="inputbox"   name="' . $this->name . '" >';
     $html .= '<option value="0">' . vmText::_('COM_VIRTUEMART_CATEGORY_FORM_TOP_LEVEL') . '</option>';
     $html .= $categorylist;
     $html .= "</select>";
     return $html;
 }
Exemplo n.º 30
0
 protected function getOptions()
 {
     VmConfig::loadJLang('com_virtuemart', false);
     $cModel = VmModel::getModel('currency');
     $values = $cModel->getVendorAcceptedCurrrenciesList();
     $options[] = JHtml::_('select.option', 0, vmText::_('COM_VIRTUEMART_DEFAULT_VENDOR_CURRENCY'));
     foreach ($values as $v) {
         $options[] = JHtml::_('select.option', $v->virtuemart_currency_id, $v->currency_txt);
     }
     return $options;
 }