public function createGrid() { $ds = new Am_Query($this->getDi()->newsletterGuestTable); $g = new Am_Grid_Editable('_guest', ___("Newsletter Guest Subscribers"), $ds, $this->_request, $this->view); $g->setPermissionId('newsletter'); $g->setForm(array($this, 'createForm')); $g->setFilter(new Am_Grid_Filter_Text(___('Filter by e-mail or name'), array('name_f' => 'LIKE', 'name_l' => 'LIKE', 'email' => 'LIKE'))); $g->addGridField('name_f', ___('First Name')); $g->addGridField('name_l', ___('Last name')); $g->addGridField('email', ___('E-Mail')); $g->addGridField('subscriptions', ___('Subscriptions'))->setGetFunction(array($this, 'getGuestSubscriptions')); $g->setFormValueCallback('_s', array('RECORD', 'getLists'), array('RECORD', 'setLists')); return $g; }
public function createGrid() { $ds = new Am_Query($this->getDi()->productTable); $ds->addWhere('t.is_archived = ?', 0); $ds->addOrder('sort_order')->addOrder('title'); $grid = new Am_Grid_Editable('_product', ___("Products"), $ds, $this->_request, $this->view); $grid->setRecordTitle(___('Product')); $grid->actionAdd(new Am_Grid_Action_Group_ProductEnable(false)); $grid->actionAdd(new Am_Grid_Action_Group_ProductEnable(true)); $grid->actionAdd(new Am_Grid_Action_Group_ProductAssignCategory(false)); $grid->actionAdd(new Am_Grid_Action_Group_ProductAssignCategory(true)); $grid->actionAdd(new Am_Grid_Action_Group_ChangeOrder())->setTitle(___('Change Order')); $grid->actionAdd(new Am_Grid_Action_Group_Archive(true)); $grid->addField(new Am_Grid_Field('product_id', '#', true, '', null, '1%')); $grid->addField(new Am_Grid_Field('title', ___('Title'), true, '', null, '50%'))->setGetFunction(function ($r, $g, $f) { return strip_tags($r->{$f}); }); if ($this->getDi()->db->selectCell("SELECT COUNT(*) FROM ?_product_product_category")) { $grid->addField(new Am_Grid_Field('pgroup', ___('Product Categories'), false))->setRenderFunction(array($this, 'renderPGroup')); } $grid->addField(new Am_Grid_Field('terms', ___('Billing Terms'), false))->setRenderFunction(array($this, 'renderTerms')); if ($this->getDi()->plugins_tax->getEnabled()) { $grid->addField(new Am_Grid_Field('tax_group', ___('Tax'))); $grid->actionAdd(new Am_Grid_Action_LiveCheckbox('tax_group'))->setValue(IProduct::ALL_TAX)->setEmptyValue(IProduct::NO_TAX); } $grid->actionGet('edit')->setTarget('_top'); $grid->actionDelete('delete'); $grid->actionAdd(new Am_Grid_Action_Archive('delete', 1)); $grid->actionAdd(new Am_Grid_Action_LiveEdit('title')); $grid->actionAdd(new Am_Grid_Action_Sort_Product()); $grid->setFormValueCallback('start_date', array('RECORD', 'getStartDate'), array('RECORD', 'setStartDate')); $grid->setFormValueCallback('require_other', array('RECORD', 'unserializeList'), array('RECORD', 'serializeList')); $grid->setFormValueCallback('prevent_if_other', array('RECORD', 'unserializeList'), array('RECORD', 'serializeList')); $grid->addCallback(Am_Grid_Editable::CB_AFTER_SAVE, array($this, 'afterSave')); $grid->addCallback(Am_Grid_Editable::CB_VALUES_TO_FORM, array($this, 'valuesToForm')); $grid->addCallback(Am_Grid_ReadOnly::CB_TR_ATTRIBS, array($this, 'getTrAttribs')); $grid->setForm(array($this, 'createForm')); $grid->setFilter(new Am_Grid_Filter_Product()); $grid->setEventId('gridProduct'); $grid->actionAdd(new Am_Grid_Action_Url('categories', ___('Edit Categories'), REL_ROOT_URL . '/admin-product-categories'))->setType(Am_Grid_Action_Abstract::NORECORD)->setTarget('_top')->setCssClass('link')->setPrivilegeId('edit'); $grid->actionAdd(new Am_Grid_Action_Url('upgrades', ___('Manage Product Upgrade Paths'), REL_ROOT_URL . '/admin-products/upgrades'))->setType(Am_Grid_Action_Abstract::NORECORD)->setTarget('_top')->setCssClass('link')->setPrivilegeId('edit'); $grid->actionAdd(new Am_Grid_Action_CopyProduct())->setTarget('_top'); $ar_count = $this->getArchivedCount(1); if ($ar_count) { $grid->actionAdd(new Am_Grid_Action_Url('archived', ___("Archived products") . " ({$ar_count})", REL_ROOT_URL . '/admin-products/archived'))->setType(Am_Grid_Action_Abstract::NORECORD)->setTarget('_top')->setCssClass('link')->setPrivilegeId('browse'); } return $grid; }
public function createGrid() { $ds = new Am_Query($this->getDi()->otoTable); $grid = new Am_Grid_Editable('_oto', ___('One Time Offer'), $ds, $this->_request, $this->view, $this->getDi()); $grid->setPermissionId(Am_Plugin_Oto::ADMIN_PERM_ID); $grid->addField('comment', ___('Comment')); $grid->addField(new Am_Grid_Field_IsDisabled()); $grid->setForm(array($this, 'createForm')); $grid->setFormValueCallback('conditions', array('RECORD', 'getConditions'), array('RECORD', 'setConditions')); $grid->setFormValueCallback('view', array('RECORD', 'getView'), array('RECORD', 'setView')); $grid->actionGet('edit')->setTarget('_top'); $grid->addCallback(Am_Grid_Editable::CB_VALUES_TO_FORM, array($this, 'valuesToForm')); $grid->addCallback(Am_Grid_Editable::CB_VALUES_FROM_FORM, array($this, 'valuesFromForm')); $grid->actionAdd(new Am_Grid_Action_Url('preview', ___('Preview'), REL_ROOT_URL . '/admin-one-time-offer/preview?id=__ID__'))->setTarget('_blank'); $grid->actionAdd(new Am_Grid_Action_CopyOto())->setTarget('_top'); $grid->actionAdd(new Am_Grid_Action_Group_Callback('disable', ___('Disable'), array($this, 'disableOto'))); $grid->actionAdd(new Am_Grid_Action_Group_Callback('enable', ___('Enable'), array($this, 'enableOto'))); $grid->actionAdd(new Am_Grid_Action_Group_Delete()); $grid->actionAdd(new Am_Grid_Action_LiveEdit('comment')); $grid->setRecordTitle(___('One Time Offer')); return $grid; }
public function createGrid() { $ds = new Am_Query($this->getDi()->productTable); $ds->setOrderRaw("0+IFNULL(sort_order,0),title"); $grid = new Am_Grid_Editable('_product', ___("Products"), $ds, $this->_request, $this->view); $grid->setRecordTitle(___('Product')); $grid->actionAdd(new Am_Grid_Action_Group_ProductAssignCategory(false)); $grid->actionAdd(new Am_Grid_Action_Group_ProductAssignCategory(true)); $grid->actionAdd(new Am_Grid_Action_Group_Delete()); $grid->addGridField(new Am_Grid_Field('product_id', '#', true, '', null, '5%')); $grid->addGridField(new Am_Grid_Field('title', ___('Title'), true, '', null, '50%'))->setRenderFunction(array($this, 'renderTitle')); $grid->addGridField(new Am_Grid_Field('pgroup', ___('Product Categories'), false))->setRenderFunction(array($this, 'renderPGroup')); $grid->addGridField(new Am_Grid_Field('terms', ___('Default Billing Terms')))->setRenderFunction(array($this, 'renderTerms')); $grid->addGridField(new Am_Grid_Field('sort_order', ___('Sort Order'))); $grid->actionGet('edit')->setTarget('_top'); $grid->actionAdd(new Am_Grid_Action_LiveEdit('sort_order')); $grid->setFormValueCallback('start_date', array('RECORD', 'getStartDate'), array('RECORD', 'setStartDate')); $grid->setFormValueCallback('require_other', array('RECORD', 'unserializeList'), array('RECORD', 'serializeList')); $grid->setFormValueCallback('prevent_if_other', array('RECORD', 'unserializeList'), array('RECORD', 'serializeList')); $grid->addCallback(Am_Grid_Editable::CB_AFTER_SAVE, array($this, 'afterSave')); $grid->addCallback(Am_Grid_Editable::CB_VALUES_TO_FORM, array($this, 'valuesToForm')); // ->setInputSize(3)->setGetFunction(array($this, 'getSortOrder')); /// protected $liveEditFields = array('title', 'sort_order'); $grid->setForm(array($this, 'createForm')); $grid->setFilter(new Am_Grid_Filter_Product()); $grid->actionAdd(new Am_Grid_Action_Url('categories', ___('Edit Groups'), REL_ROOT_URL . '/admin-product-categories'))->setType(Am_Grid_Action_Abstract::NORECORD)->setTarget('_top'); // product upgrades are hidden until fully implemented // $grid->addCallback(Am_Grid_Editable::CB_RENDER_STATIC, array($this, 'renderProductStatic')); return $grid; }
public function createGrid() { $ds = new Am_Query($this->getDi()->couponBatchTable); $ds->addField('COUNT(c.coupon_id) AS coupons_count'); $ds->addField('SUM(c.used_count) AS used_count'); $ds->leftJoin('?_coupon', 'c', 't.batch_id = c.batch_id'); $ds->setOrder('batch_id', 'desc'); $grid = new Am_Grid_Editable('_coupon', ___('Coupons Batches'), $ds, $this->_request, $this->view); $grid->setRecordTitle(array($this, 'getRecordTitle')); $grid->setEventId('gridCouponBatch'); $grid->addField('batch_id', '#', true, '', null, '1%'); $grid->addField(new Am_Grid_Field_Date('begin_date', ___('Begin Date')))->setFormatDate(); $grid->addField(new Am_Grid_Field_Date('expire_date', ___('Expire Date')))->setFormatDate(); $grid->addField(new Am_Grid_Field_IsDisabled()); $grid->addField('is_recurring', ___('Recurring'), true, 'center', null, '1%'); $grid->addField('discount', ___('Discount'), true, '', array($this, 'renderDiscount'), '5%'); $grid->addField('product_ids', ___('Products'), false, '', array($this, 'renderProducts'), '25%'); $grid->addField('comment', ___('Comment'), true, '', null, '15%'); $grid->addField('used_count', ___('Used'), true, 'center', array($this, 'renderUsedCount'), '5%'); $grid->addField('coupons_count', ___('Coupons'), true, 'center', null, '5%')->setRenderFunction(array($this, 'renderCoupons')); $grid->setForm(array($this, 'createForm')); $grid->actionGet('edit')->setTarget('_top'); $grid->actionAdd(new Am_Grid_Action_Url('view', ___('View Coupons'), 'javascript:amOpenCoupons(__ID__)'))->setAttribute("class", "coupons-link"); $grid->actionAdd(new Am_Grid_Action_Url('export', ___('Export'), REL_ROOT_URL . '/admin-coupons/export/id/__ID__'))->setTarget('_top'); $grid->actionAdd(new Am_Grid_Action_LiveEdit('comment')); $grid->actionAdd(new Am_Grid_Action_LiveCheckbox('is_recurring')); $grid->setFormValueCallback('product_ids', array('RECORD', 'unserializeList'), array('RECORD', 'serializeList')); $grid->setFormValueCallback('require_product', array('RECORD', 'unserializeList'), array('RECORD', 'serializeList')); $grid->setFormValueCallback('prevent_if_product', array('RECORD', 'unserializeList'), array('RECORD', 'serializeList')); $grid->addCallback(Am_Grid_Editable::CB_BEFORE_SAVE, array($this, 'beforeSave')); $grid->addCallback(Am_Grid_Editable::CB_AFTER_INSERT, array($this, 'afterInsert')); $grid->setFilter(new Am_Grid_Filter_Coupon()); return $grid; }
public function createGrid() { $ds = new Am_Query($this->getDi()->couponBatchTable); $ds->addField('COUNT(c.coupon_id) AS coupons_count'); $ds->leftJoin('?_coupon', 'c', 't.batch_id = c.batch_id'); $ds->setOrder('batch_id', 'desc'); $grid = new Am_Grid_Editable('_coupon', ___("Coupons Batches"), $ds, $this->_request, $this->view); $grid->addField('batch_id', ___('Batch ID'), true, '', null, '5%'); $grid->addField(new Am_Grid_Field_Date('begin_date', ___('Begin Date')))->setFormatDate(); $grid->addField(new Am_Grid_Field_Date('expire_date', ___('Expire Date')))->setFormatDate(); $grid->addField('id_disabled', ___('Disabled?'), false, '', array($this, 'renderDisabled'), '10%'); $grid->addField('is_recurring', ___('Recurring'), true, '', null, '5%'); $grid->addField('discount', ___('Discount'), true, '', array($this, 'renderDiscount'), '5%'); $grid->addField('product_ids', ___('Products'), false, '', array($this, 'renderProducts'), '25%'); $grid->addField('comment', ___('Comment'), true, '', null, '15%'); $grid->addField('coupons_count', ___('Coupons Count'), true, '', null, '5%'); $grid->setForm(array($this, 'createForm')); $grid->actionGet('edit')->setTarget('_top'); $grid->actionAdd(new Am_Grid_Action_Url("view", ___("View Coupons"), "javascript:amOpenCoupons(__ID__)"))->setAttribute("class", "coupons-link"); $grid->actionAdd(new Am_Grid_Action_LiveEdit('comment')); $grid->setFormValueCallback('product_ids', array('RECORD', 'unserializeIds'), array('RECORD', 'serializeIds')); $grid->addCallback(Am_Grid_Editable::CB_BEFORE_SAVE, array($this, 'beforeSave')); $grid->addCallback(Am_Grid_Editable::CB_AFTER_INSERT, array($this, 'afterInsert')); $grid->setFilter(new Am_Grid_Filter_Coupon()); return $grid; }