示例#1
0
文件: Grid.php 项目: grlf/eyedock
 public function indexAction()
 {
     if (is_null($this->layout)) {
         echo $this->grid->run();
     } else {
         $this->grid->runWithLayout($this->layout);
     }
 }
示例#2
0
 public function indexAction()
 {
     $ds = new Am_Query($this->getDi()->apiKeyTable);
     $grid = new Am_Grid_Editable('_api', ___("API Keys"), $ds, $this->_request, $this->view, $this->getDi());
     $grid->addField('comment', ___('Comment'));
     $grid->addField(new Am_Grid_Field_Expandable('key', ___('Key')))->setPlaceholder(array($this, 'truncateKey'));
     $grid->addField(new Am_Grid_Field_IsDisabled());
     $grid->setForm(array($this, 'createForm'));
     $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->addCallback(Am_Grid_ReadOnly::CB_RENDER_CONTENT, array($this, 'renderContent'));
     return $grid->runWithLayout('admin/layout.phtml');
 }
示例#3
0
 public function upgradesAction()
 {
     $billingTableRecords = $this->getDi()->billingPlanTable->findBy();
     $productOptions = $this->getDi()->productTable->getOptions();
     $planOptions = array();
     foreach ($billingTableRecords as $bp) {
         if (!isset($productOptions[$bp->product_id])) {
             continue;
         }
         /* @var $bp BillingPlan */
         if (!($terms = $bp->terms)) {
             $tt = new Am_TermsText($bp);
             $terms = $tt->getString();
         }
         $planOptions[$bp->pk()] = $productOptions[$bp->product_id] . '/' . $bp->title . ' (' . $terms . ')';
     }
     $ds = new Am_Query($this->getDi()->productUpgradeTable);
     $grid = new Am_Grid_Editable('_upgrades', ___("Product Upgrades"), $ds, $this->_request, $this->view);
     $grid->setPermissionId('grid_product');
     $grid->_planOptions = $planOptions;
     $grid->addField(new Am_Grid_Field_Enum('from_billing_plan_id', ___('Upgrade From')))->setTranslations($planOptions);
     $grid->addField(new Am_Grid_Field_Enum('to_billing_plan_id', ___('Upgrade To')))->setTranslations($planOptions);
     $grid->addField('surcharge', ___('Surcharge'))->setGetFunction(create_function('$r', 'return Am_Currency::render($r->surcharge);'));
     $grid->setForm(array($this, 'createUpgradesForm'));
     $grid->runWithLayout('admin/layout.phtml');
 }
示例#4
0
 function commTabAction()
 {
     $this->setActiveMenu('users-browse');
     $ds = new Am_Query($this->getDi()->affCommissionTable);
     $ds->leftJoin('?_invoice', 'i', 'i.invoice_id=t.invoice_id');
     $ds->leftJoin('?_user', 'u', 'u.user_id=i.user_id');
     $ds->leftJoin('?_product', 'p', 't.product_id=p.product_id')->addField('u.user_id', 'user_id')->addField('CONCAT(u.login, \' (\',u.name_f, \' \',u.name_l,\') [#\', u.user_id, \']\')', 'user_name')->addField('p.title', 'product_title')->addField('IF(payout_detail_id IS NULL, \'no\', \'yes\')', 'is_paid');
     $ds->setOrder('date', 'desc')->addWhere('t.aff_id=?', $this->getParam('user_id'));
     $grid = new Am_Grid_Editable('_affcomm', ___('Affiliate Commission'), $ds, $this->_request, $this->view);
     $grid->setPermissionId(Bootstrap_Aff::ADMIN_PERM_ID);
     $grid->actionsClear();
     $userUrl = new Am_View_Helper_UserUrl();
     $grid->addField(new Am_Grid_Field_Date('date', ___('Date')))->setFormatDate();
     $grid->addField('user_name', ___('User'))->addDecorator(new Am_Grid_Field_Decorator_Link($userUrl->userUrl('{user_id}'), '_top'));
     $grid->addField('product_title', ___('Product'));
     $grid->addField('record_type', ___('Type'))->setRenderFunction(array($this, 'renderType'));
     $fieldAmount = $grid->addField('amount', ___('Commission'))->setRenderFunction(array($this, 'renderCommAmount'));
     $grid->addField('is_paid', ___('Paid'));
     $grid->addField('tier', ___('Tier'))->setRenderFunction(array($this, 'renderTier'));
     $grid->addCallback(Am_Grid_ReadOnly::CB_TR_ATTRIBS, array($this, 'commCbGetTrAttribs'));
     $grid->setFilter(new Am_Grid_Filter_AffCommission());
     $grid->actionAdd(new Am_Grid_Action_Total())->addField($fieldAmount, "IF(record_type='void', -1*%1\$s, %1\$s)");
     $grid->actionAdd(new Am_Grid_Action_Aff_Void());
     $grid->runWithLayout('admin/user-layout.phtml');
 }
示例#5
0
 public function indexAction()
 {
     $this->grid->runWithLayout($this->layout);
 }
示例#6
0
 public function categoryAction()
 {
     $ret = array();
     foreach ($this->getDi()->helpdeskFaqTable->getCategories() as $category) {
         $cat = new stdClass();
         $cat->name = $category;
         $ret[] = $cat;
     }
     $ds = new Am_Grid_DataSource_FaqCategory($ret);
     $grid = new Am_Grid_Editable('_helpdesk_faq_category', ___('Categories'), $ds, $this->_request, $this->view);
     $grid->setPermissionId(Bootstrap_Helpdesk::ADMIN_PERM_FAQ);
     $grid->addField(new Am_Grid_Field('name', ___('Title')));
     $grid->actionsClear();
     $grid->actionAdd(new Am_Grid_Action_Back('faq-edit-category-back', ___('Back to FAQ List')));
     $grid->actionAdd(new Am_Grid_Action_LiveEdit('name'));
     $grid->runWithLayout('admin/layout.phtml');
 }
 function viewAction()
 {
     // display payouts list date | method | total | paid |
     $id = $this->getInt('payout_id');
     if (!$id) {
         throw new Am_Exception_InputError("Not payout_id passed");
     }
     $ds = new Am_Query($this->getDi()->affPayoutDetailTable);
     $ds->leftJoin('?_aff_payout', 'p', 'p.payout_id=t.payout_id');
     $ds->leftJoin('?_user', 'u', 't.aff_id=u.user_id');
     $ds->addField('u.*');
     $ds->addField('p.type', 'type');
     $ds->addWhere('t.payout_id=?d', $id);
     $grid = new Am_Grid_Editable('_d', ___("Payout %d Details", $id), $ds, $this->_request, $this->view);
     $grid->setPermissionId('affiliates');
     $grid->addCallback(Am_Grid_Editable::CB_RENDER_TABLE, array($this, 'addBackLink'));
     $grid->addField('email', ___('E-Mail'));
     $grid->addField('name_f', ___('First Name'));
     $grid->addField('name_l', ___('Last Name'));
     $grid->addField('type', ___('Payout Method'));
     $grid->addField('amount', ___('Amount'));
     //        $grid->addField('receipt_id', ___('Receipt Id'));
     $grid->addField('is_paid', ___('Is Paid?'));
     $grid->addField(new Am_Grid_Field_Expandable('_details', ___('Payout Details')))->setGetFunction(array($this, 'getPayoutDetails'));
     $grid->actionsClear();
     //$grid->actionAdd(new Am_Grid_Action_LiveEdit('receipt_id'));
     $grid->actionAdd(new Am_Grid_Action_PayoutMarkPaid('mark_paid', ___("Mark Paid")));
     $grid->actionAdd(new Am_Grid_Action_PayoutMarkNotPaid('mark_notpaid', ___("Mark NOT Paid")));
     $grid->runWithLayout();
     // detail payout records date | method | paid | receipt_id | aff. payout fields
 }
 public function paymentAction()
 {
     $totalFields = array();
     $query = new Am_Query($this->getDi()->invoicePaymentTable);
     $query->leftJoin('?_user', 'm', 'm.user_id=t.user_id')->addField("(SELECT GROUP_CONCAT(item_title SEPARATOR ', ') FROM ?_invoice_item WHERE invoice_id=t.invoice_id)", 'items')->addField('m.login', 'login')->addField('m.email', 'email')->addField('m.street', 'street')->addField('m.city', 'city')->addField('m.state', 'state')->addField('m.country', 'country')->addField('m.phone', 'phone')->addField('m.zip', 'zip')->addField("concat(m.name_f,' ',m.name_l)", 'name')->addField('t.invoice_public_id', 'public_id')->addWhere('t.user_id=?', $this->user_id);
     $query->setOrder("invoice_payment_id", "desc");
     $grid = new Am_Grid_Editable('_payment', ___('Payments'), $query, $this->_request, $this->view);
     $grid->actionsClear();
     $grid->addField(new Am_Grid_Field_Date('dattm', ___('Date/Time')));
     $grid->addField('invoice_id', ___('Invoice'))->setGetFunction(array($this, '_getInvoiceNum'))->addDecorator(new Am_Grid_Field_Decorator_Link('admin-user-payments/index/user_id/{user_id}#invoice-{invoice_id}', '_top'));
     $grid->addField('receipt_id', ___('Receipt'));
     $grid->addField('paysys_id', ___('Payment System'));
     array_push($totalFields, $grid->addField('amount', ___('Amount'))->setGetFunction(array($this, '_getAmount')));
     if ($this->getDi()->plugins_tax->getEnabled()) {
         array_push($totalFields, $grid->addField('tax', ___('Tax'))->setGetFunction(array($this, '_getTax')));
     }
     $grid->addField(new Am_Grid_Field_Date('refund_dattm', ___('Refunded')))->setFormatDatetime();
     $grid->addField('items', ___('Items'));
     $grid->setFilter(new Am_Grid_Filter_Payments());
     $action = new Am_Grid_Action_Export();
     $action->addField(new Am_Grid_Field('dattm', ___('Date Time')))->addField(new Am_Grid_Field('receipt_id', ___('Receipt')))->addField(new Am_Grid_Field('paysys_id', ___('Payment System')))->addField(new Am_Grid_Field('amount', ___('Amount')))->addField(new Am_Grid_Field('tax', ___('Tax')))->addField(new Am_Grid_Field_Date('refund_dattm', ___('Refunded')))->addField(new Am_Grid_Field('login', ___('Username')))->addField(new Am_Grid_Field('name', ___('Name')))->addField(new Am_Grid_Field('email', ___('Email')))->addField(new Am_Grid_Field('street', ___('Street')))->addField(new Am_Grid_Field('city', ___('City')))->addField(new Am_Grid_Field('state', ___('State')))->addField(new Am_Grid_Field('country', ___('Country')))->addField(new Am_Grid_Field('phone', ___('Phone')))->addField(new Am_Grid_Field('zip', ___('Zip Code')))->addField(new Am_Grid_Field('items', ___('Items')))->addField(new Am_Grid_Field('invoice_id', ___('Invoice')))->addField(new Am_Grid_Field('public_id', ___('Invoice (Public Id)')));
     $grid->actionAdd($action);
     if ($this->getDi()->config->get('send_pdf_invoice')) {
         $grid->actionAdd(new Am_Grid_Action_ExportPdf());
     }
     $action = $grid->actionAdd(new Am_Grid_Action_Total());
     foreach ($totalFields as $f) {
         $action->addField($f, 'ROUND(%s / base_currency_multi, 2)');
     }
     $grid->runWithLayout('admin/user-layout.phtml');
 }
示例#9
0
 function viewAction()
 {
     Am_Aff_PayoutMethod::static_addFields();
     // display payouts list date | method | total | paid |
     $id = $this->getInt('payout_id');
     if (!$id) {
         throw new Am_Exception_InputError("Not payout_id passed");
     }
     $ds = new Am_Query($this->getDi()->affPayoutDetailTable);
     $ds->leftJoin('?_aff_payout', 'p', 'p.payout_id=t.payout_id');
     $ds->leftJoin('?_user', 'u', 't.aff_id=u.user_id');
     $ds->addField('u.*');
     $ds->addField('p.type', 'type');
     $ds->addWhere('t.payout_id=?d', $id);
     $grid = new Am_Grid_Editable('_d', ___("Payout %d Details", $id), $ds, $this->_request, $this->view);
     $grid->setEventId('gridAffPayoutDetail');
     $grid->setPermissionId(Bootstrap_Aff::ADMIN_PERM_ID);
     $grid->addCallback(Am_Grid_Editable::CB_RENDER_TABLE, array($this, 'addBackLink'));
     $userUrl = new Am_View_Helper_UserUrl();
     $grid->addField('email', ___('E-Mail'))->addDecorator(new Am_Grid_Field_Decorator_Link($userUrl->userUrl('{user_id}'), '_top'));
     $grid->addField('name_f', ___('First Name'));
     $grid->addField('name_l', ___('Last Name'));
     $grid->addField(new Am_Grid_Field_Enum('type', ___('Payout Method')))->setTranslations(Am_Aff_PayoutMethod::getAvailableOptions());
     $grid->addField('amount', ___('Amount'))->setGetFunction(array($this, 'getAmount'));
     //        $grid->addField('receipt_id', ___('Receipt Id'));
     $grid->addField(new Am_Grid_Field_Enum('is_paid', ___('Is Paid?')))->setTranslations(array(0 => ___('No'), 1 => ___('Yes')));
     $grid->addField(new Am_Grid_Field_Expandable('_details', ___('Payout Details')))->setGetFunction(array($this, 'getPayoutDetails'));
     $grid->actionsClear();
     //$grid->actionAdd(new Am_Grid_Action_LiveEdit('receipt_id'));
     $grid->actionAdd(new Am_Grid_Action_PayoutMarkPaid('mark_paid', ___('Mark Paid')));
     $grid->actionAdd(new Am_Grid_Action_PayoutMarkNotPaid('mark_notpaid', ___('Mark NOT Paid')));
     $grid->addCallback(Am_Grid_ReadOnly::CB_TR_ATTRIBS, array($this, 'detailCbGetTrAttribs'));
     $grid->runWithLayout();
 }
 public function upgradesAction()
 {
     $planOptions = $this->getDi()->db->selectCol("SELECT concat(b.plan_id) AS ARRAY_KEY, concat(p.title, '/',b.title)\n            FROM ?_billing_plan b RIGHT JOIN ?_product p USING (product_id)\n            ORDER BY b.product_id");
     $ds = new Am_Query($this->getDi()->productUpgradeTable);
     $grid = new Am_Grid_Editable('_upgrades', ___("Product Upgrades"), $ds, $this->_request, $this->view);
     $grid->addField(new Am_Grid_Field_Enum('from_billing_plan_id', ___('Upgrade From')))->setTranslations($planOptions);
     $grid->addField(new Am_Grid_Field_Enum('to_billing_plan_id', ___('Upgrade To')))->setTranslations($planOptions);
     $grid->addField('surcharge', ___('Surcharge'));
     $grid->setForm(array($this, 'createUpgradesForm'));
     $grid->runWithLayout('admin/layout.phtml');
 }
 public function notConfirmedAction()
 {
     $arr = array();
     foreach ($this->getDi()->db->select("SELECT `blob_value`, expires FROM ?_store\n            WHERE name LIKE 'signup_record-%' AND CHAR_LENGTH(blob_value)>10") as $row) {
         $v = unserialize($row['blob_value']);
         $rec = array();
         foreach ($v['values'] as $page) {
             $rec = array_merge($rec, $page);
         }
         $rec['expires'] = $row['expires'];
         $link = Am_Controller::escape($v['opaque']['ConfirmUrl']);
         $rec['link'] = 'Give this link to customer if e-mail confirmation has not been received:' . '<br /><br /><pre>' . $link . '</pre><br />';
         if (empty($rec['login'])) {
             $rec['login'] = null;
         }
         if (empty($rec['name_f'])) {
             $rec['name_f'] = null;
         }
         if (empty($rec['name_l'])) {
             $rec['name_l'] = null;
         }
         $arr[] = (object) $rec;
     }
     $ds = new Am_Grid_DataSource_Array($arr);
     $grid = new Am_Grid_Editable('_usernc', ___("Not Confirmed Users"), $ds, $this->_request, $this->view, $this->getDi());
     $grid->setPermissionId('grid_u');
     $grid->addField('login', ___('Username'));
     $grid->addField('email', ___('E-Mail'));
     $grid->addField('name_f', ___('First Name'));
     $grid->addField('name_l', ___('Last Name'));
     $grid->addField(new Am_Grid_Field_Date('expires', ___('Expires')))->setFormatDate();
     $grid->addField(new Am_Grid_Field_Expandable('link', ___('Link')))->setEscape(false);
     $grid->actionsClear();
     $this->view->content = $grid->runWithLayout('admin/layout.phtml');
 }