protected function _prepareForm() { $form = new Varien_Data_Form(); $this->setForm($form); $fieldset = $form->addFieldset('customergroup', array('legend' => Mage::helper('pointofsale')->__('Customer Group Selection'))); $model = Mage::getModel('pointofsale/pointofsale'); $model->load($this->getRequest()->getParam('place_id')); $_customer_group = array(); $customer_group = new Mage_Customer_Model_Group(); $allGroups = $customer_group->getCollection()->toOptionHash(); foreach ($allGroups as $key => $allGroup) { $_customer_group[$key] = array('value' => $key, 'label' => $allGroup); } array_unshift($_customer_group, array('value' => "-1", 'label' => Mage::helper('pointofsale')->__('No Customer Group'))); $fieldset->addField('customer_group', 'multiselect', array('name' => 'customer_group[]', 'label' => Mage::helper('cms')->__('Customer Group'), 'title' => Mage::helper('cms')->__('Customer Group'), 'class' => 'validate-select', 'required' => true, 'values' => $_customer_group)); if (Mage::getSingleton('adminhtml/session')->getPointofsalePlaceData()) { $form->setValues(Mage::getSingleton('adminhtml/session')->getPointofsalePlaceData()); Mage::getSingleton('adminhtml/session')->getPointofsalePlaceData(null); } elseif (Mage::registry('pointofsale_data') && $this->getRequest()->getParam('place_id')) { $form->setValues($model); $values = array(); if ($model->getCustomerGroup() != null) { foreach (explode(',', $model->getCustomerGroup()) as $k => $v) { $values[] = $v; } $form->getElement('customer_group')->setValue($values); } else { $form->getElement('customer_group')->setValue(-1); } } return parent::_prepareForm(); }
function getGroups() { $customer_group = new Mage_Customer_Model_Group(); $allGroups = $customer_group->getCollection()->toOptionHash(); $customerGroup[99] = array('value' => "99", 'label' => "User Logined"); foreach ($allGroups as $key => $allGroup) { $customerGroup[$key] = array('value' => $key, 'label' => $allGroup); } return $customerGroup; }
/** * Define which customer groups are selectable * * @return array */ public function toOptionArray() { $customerGroups = new Mage_Customer_Model_Group(); $allGroups = $customerGroups->getCollection()->toOptionHash(); $listGroups = array(array('value' => "ALL", 'label' => Mage::helper('ratepaypayment')->__('All Customers')), array('label' => "-------------------", 'value' => false)); foreach ($allGroups as $value => $label) { $listGroups[] = array('label' => $label, 'value' => $value); } return $listGroups; }
public function toOptionArray() { $customer_group = new Mage_Customer_Model_Group(); $allGroups = $customer_group->getCollection(); $allSet = array(); foreach ($allGroups as $attributeSet) { $allSet[] = array('value' => $attributeSet->getCustomerGroupId(), 'label' => $attributeSet->getCustomerGroupCode()); } return $allSet; }
public static function getCustomerGroupsArray() { // Make sure the static property is only populated once if (count(self::$_customerGroups) == 0) { $customer_group = new Mage_Customer_Model_Group(); $customer_groups = $customer_group->getCollection()->toOptionHash(); self::$_customerGroups = $customer_groups; } return self::$_customerGroups; }
public function toOptionArray() { $customerGroup = array(); $customer_group = new Mage_Customer_Model_Group(); $allGroups = $customer_group->getCollection()->toOptionHash(); // $customerGroup[-1]=array('value'=>-1,'label'=>'Please select'); foreach ($allGroups as $key => $allGroup) { $customerGroup[$key] = array('value' => $key, 'label' => $allGroup); } return $customerGroup; }
/** * Unfortunately, Magento does not consistently use a single path to request a customer's tax class id. * Therefore, we need to overwrite this function, which is called occasionally and circumvents the getTaxClassId() * function in Mage_Customer_Model_Customer. * If we are to use the Avectra Tax Exempt Status, this function never returns and we rely on the value set in * ICC_Customer_Model_Customer::getTaxClassId(); * * @param null $groupId * @return mixed */ public function getTaxClassId($groupId = null) { $useAvectraTaxExemptStatus = Mage::getModel('customer/customer')->useAvectraTaxExemptStatus(); if ($useAvectraTaxExemptStatus) { return parent::getTaxClassId(null); } return parent::getTaxClassId($groupId); }
public function render(Varien_Object $row) { $_customer_group = array(); $output = null; $customer_group = new Mage_Customer_Model_Group(); $allGroups = $customer_group->getCollection()->toOptionHash(); foreach ($allGroups as $key => $allGroup) { $_customer_group[$key] = $allGroup; } $selection = explode(',', $row->getCustomerGroup()); if (in_array('-1', $selection) || count($selection) < 1) { echo Mage::helper('pointofsale')->__("No Customer Group"); return; } else { foreach ($selection as $v) { $output .= $_customer_group[$v] . "<br>"; } } echo $output; return; }
protected function _createNewCoupon($store, $email) { $couponamount = Mage::getStoreConfig(Ebizmarts_Autoresponder_Model_Config::REVIEW_COUPON_DISCOUNT, $store); $couponexpiredays = Mage::getStoreConfig(Ebizmarts_Autoresponder_Model_Config::REVIEW_COUPON_EXPIRE, $store); $coupontype = Mage::getStoreConfig(Ebizmarts_Autoresponder_Model_Config::REVIEW_COUPON_DISCOUNT_TYPE, $store); $couponlength = Mage::getStoreConfig(Ebizmarts_Autoresponder_Model_Config::REVIEW_COUPON_LENGTH, $store); $couponlabel = Mage::getStoreConfig(Ebizmarts_Autoresponder_Model_Config::REVIEW_COUPON_LABEL, $store); $websiteid = Mage::getModel('core/store')->load($store)->getWebsiteId(); $fromDate = date("Y-m-d"); $toDate = date('Y-m-d', strtotime($fromDate . " + {$couponexpiredays} day")); if ($coupontype == 1) { $action = 'cart_fixed'; $discount = Mage::app()->getStore($store)->getCurrentCurrencyCode() . "{$couponamount}"; } elseif ($coupontype == 2) { $action = 'by_percent'; $discount = "{$couponamount}%"; } $customer_group = new Mage_Customer_Model_Group(); $allGroups = $customer_group->getCollection()->toOptionHash(); $groups = array(); foreach ($allGroups as $groupid => $name) { $groups[] = $groupid; } $coupon_rule = Mage::getModel('salesrule/rule'); $coupon_rule->setName("Review coupon {$email}")->setDescription("Review coupon {$email}")->setFromDate($fromDate)->setToDate($toDate)->setIsActive(1)->setCouponType(2)->setUsesPerCoupon(1)->setUsesPerCustomer(1)->setCustomerGroupIds($groups)->setProductIds('')->setLengthMin($couponlength)->setLengthMax($couponlength)->setSortOrder(0)->setStoreLabels(array($couponlabel))->setSimpleAction($action)->setDiscountAmount($couponamount)->setDiscountQty(0)->setDiscountStep('0')->setSimpleFreeShipping('0')->setApplyToShipping('0')->setIsRss(0)->setWebsiteIds($websiteid); $uniqueId = Mage::getSingleton('salesrule/coupon_codegenerator', array('length' => $couponlength))->generateCode(); $coupon_rule->setCouponCode($uniqueId); $coupon_rule->save(); return array($uniqueId, $discount, $toDate); }
public function testCRUD() { $this->_model->setCustomerGroupCode('test'); $crud = new Magento_Test_Entity($this->_model, array('customer_group_code' => uniqid())); $crud->testCrud(); }
public function getGroups() { $customer_group = new Mage_Customer_Model_Group(); $allGroups = $customer_group->getCollection()->toOptionHash(); $data = array(); foreach ($allGroups as $label => $allGroup) { $data[] = array('label' => $allGroup, 'value' => $label); } return $data; }
public function getOptionsGroup() { $customer_group = new Mage_Customer_Model_Group(); $allGroups = $customer_group->getCollection()->toOptionHash(); $data = array(); foreach ($allGroups as $label => $allGroup) { $data['g/' . $label] = $allGroup; } return $data; }
/** * @param $store * @param $email * @return array */ protected function _createNewCoupon($store, $email) { $collection = Mage::getModel('salesrule/rule')->getCollection()->addFieldToFilter('name', array('like' => 'Abandoned coupon ' . $email)); if (!count($collection)) { $websiteid = Mage::getModel('core/store')->load($store)->getWebsiteId(); $fromDate = date("Y-m-d"); $toDate = date('Y-m-d', strtotime($fromDate . " + {$this->couponexpiredays} day")); if ($this->coupontype == 1) { $action = 'cart_fixed'; $discount = Mage::app()->getStore($store)->getCurrentCurrencyCode() . "{$this->couponamount}"; } elseif ($this->coupontype == 2) { $action = 'by_percent'; $discount = "{$this->couponamount}%"; } $customer_group = new Mage_Customer_Model_Group(); $allGroups = $customer_group->getCollection()->toOptionHash(); $groups = array(); foreach ($allGroups as $groupid => $name) { $groups[] = $groupid; } $coupon_rule = Mage::getModel('salesrule/rule'); $coupon_rule->setName("Abandoned coupon {$email}")->setDescription("Abandoned coupon {$email}")->setStopRulesProcessing(0)->setFromDate($fromDate)->setToDate($toDate)->setIsActive(1)->setCouponType(2)->setUsesPerCoupon(1)->setUsesPerCustomer(1)->setCustomerGroupIds($groups)->setProductIds('')->setLengthMin($this->couponlength)->setLengthMax($this->couponlength)->setSortOrder(0)->setStoreLabels(array($this->couponlabel))->setSimpleAction($action)->setDiscountAmount($this->couponamount)->setDiscountQty(0)->setDiscountStep('0')->setSimpleFreeShipping('0')->setApplyToShipping('0')->setIsRss(0)->setWebsiteIds($websiteid); $uniqueId = Mage::getSingleton('salesrule/coupon_codegenerator', array('length' => $this->couponlength))->generateCode(); $coupon_rule->setCouponCode($uniqueId); $coupon_rule->save(); return array($uniqueId, $discount, $toDate); } else { $coupon = $collection->getFirstItem(); if ($coupon->getSimpleAction() == 'cart_fixed') { $discount = Mage::app()->getStore($store)->getCurrentCurrencyCode() . ($coupon->getDiscountAmount() + 0); } else { $discount = $coupon->getDiscountAmount() + 0; } return array($coupon->getCode(), $discount, $coupon->getToDate()); } }
/** * Set the posted allowed payment methods on the customer group model. * * @param Mage_Customer_Model_Group $group * @return null */ protected function _setPaymentFilterOnGroup(Mage_Customer_Model_Group $group) { if (Mage::app()->getRequest()->getParam('payment_methods_posted')) { $allowedPaymentMethds = Mage::app()->getRequest()->getParam('allowed_payment_methods'); $group->setAllowedPaymentMethods($allowedPaymentMethds); } }
/** * Retrieve fixed bundle base price (with special price and rules) * * @param int $productId * @param array $priceData * @param Mage_Core_Model_Website $website * @param Mage_Customer_Model_Group $customerGroup * @return float */ protected function _getBasePrice($productId, array $priceData, $website, $customerGroup) { $store = $website->getDefaultStore(); $storeTimeStamp = Mage::app()->getLocale()->storeTimeStamp($store); $finalPrice = $this->_calculateSpecialPrice($priceData['price'], $priceData, $website); $rulePrice = Mage::getResourceModel('catalogrule/rule')->getRulePrice($storeTimeStamp, $website->getId(), $customerGroup->getId(), $productId); if ($rulePrice !== null && $rulePrice !== false) { $finalPrice = min($finalPrice, $rulePrice); } return $finalPrice; }
private function getGroupIdOf($name) { $claz = new Mage_Customer_Model_Group(); $coll = $claz->getCollection(); foreach ($coll as $group) { $code = $group->getCustomerGroupCode(); $id = $group->getCustomerGroupId(); switch ($code) { case "NOT_LOGGED_IN": $res = $id; break; case "" . $name: $res = $id; continue; } } return $res; }
/** * @return bool */ public function indexAction() { $dealerNumber = $this->decrypt($this->getRequest()->getParam('dealer_number')); $dealerName = $this->decrypt($this->getRequest()->getParam('dealer_name')); $dealerCountry = $this->decrypt($this->getRequest()->getParam('dealer_country')); $dealerAddress = $this->decrypt($this->getRequest()->getParam('address')); $dealerCity = $this->decrypt($this->getRequest()->getParam('city')); $dealerState = $this->decrypt($this->getRequest()->getParam('state')); $dealerZip = $this->decrypt($this->getRequest()->getParam('zipcode')); $dealerPhone = $this->decrypt($this->getRequest()->getParam('phone')); $firstName = $this->decrypt($this->getRequest()->getParam('first_name')); $lastName = $this->decrypt($this->getRequest()->getParam('last_name')); $emailAddress = $this->decrypt($this->getRequest()->getParam('email_address')); $customer = Mage::getModel('customer/customer'); $customer->setWebsiteId(Mage::app()->getWebsite()->getId()); $customer->loadByEmail($emailAddress); /* * Check if the email exist on the system. * If YES, it will not create a user account. */ if (!$customer->getId()) { //setting data such as email, firstname, lastname, and password $customer->setEmail($emailAddress); $customer->setUsername($dealerNumber); $customer_group = new Mage_Customer_Model_Group(); $allGroups = $customer_group->getCollection()->toOptionHash(); if ($dealerCountry == 'USA') { foreach ($allGroups as $key => $allGroup) { if (strtolower($allGroup) == 'usa') { $customer->setData('group_id', $key); break; } } } else { if ($dealerCountry == 'Canada') { foreach ($allGroups as $key => $allGroup) { if (strtolower($allGroup) == 'canada') { $customer->setData('group_id', $key); break; } } } else { foreach ($allGroups as $key => $allGroup) { if (strtolower($allGroup) == 'europe') { $customer->setData('group_id', $key); break; } } } } $customer->setFirstname($firstName); $customer->setLastname($lastName); $customer->setPassword($customer->generatePassword(8)); } try { //the save the data and send the new account email. $customer->save(); $customer->setConfirmation(null); $customer->save(); //$customer->sendNewAccountEmail(); } catch (Exception $ex) { return false; } if ($dealerCountry == "USA") { $dealerCountry = 'United States'; } else { $dealerCountry = 'Canada'; } $collection = Mage::getModel('directory/country')->getCollection(); foreach ($collection as $country) { $cname = $country->getName(); if ($cname == $dealerCountry) { $cid = $country->getId(); //$ccode = $country->getCode(); break; } } $regionModel = Mage::getModel('directory/region')->loadByCode($dealerState, $cid); $regionId = $regionModel->getId(); //$addresses = Mage::getModel("customer/address")->getCollection(); if (count($customer->getAddresses()) == 0) { $address = Mage::getModel("customer/address"); $address->setCustomerId($customer->getId()); $address->setFirstname($customer->getFirstname()); $address->setLastname($customer->getLastname()); $address->setCountryId($cid); //Country code here $address->setStreet($dealerAddress); $address->setPostcode($dealerZip); $address->setCity($dealerCity); $address->setRegionId($regionId); $address->setTelephone($dealerPhone); $address->setIsDefaultShipping(true); $address->setIsDefaultBilling(true); $address->save(); } $session = Mage::getSingleton('customer/session'); try { //echo 'fff'.$customer->getEmail().'----'.$customer->getPassword(); $session->loginById($customer->getId()); $session->setCustomerAsLoggedIn($session->getCustomer()); } catch (Exception $e) { return false; } Mage::app()->getResponse()->setRedirect(Mage::getUrl('customer/account/index')); return true; }