Пример #1
0
 public function autocompleteAction()
 {
     $term = '%' . $this->getParam('term') . '%';
     $exclude = $this->getInt('exclude');
     if (!$term) {
         return null;
     }
     $q = new Am_Query($this->getDi()->userTable);
     $q->addWhere('((t.login LIKE ?) OR (t.email LIKE ?) OR (t.name_f LIKE ?) OR (t.name_l LIKE ?))', $term, $term, $term, $term);
     if ($exclude) {
         $q->addWhere('user_id<>?', $exclude);
     }
     $q->addWhere('is_affiliate>?', 0);
     $qq = $q->query(0, 10);
     $ret = array();
     while ($r = $this->getDi()->db->fetchRow($qq)) {
         $ret[] = array('label' => sprintf('%s / "%s" <%s>', $r['login'], $r['name_f'] . ' ' . $r['name_l'], $r['email']), 'value' => $r['login']);
     }
     if ($q->getFoundRows() > 10) {
         $ret[] = array('label' => sprintf("... %d more rows found ...", $q->getFoundRows() - 10), 'value' => null);
     }
     $this->ajaxResponse($ret);
 }
Пример #2
0
 public function autocompleteAction()
 {
     $term = '%' . $this->getParam('term') . '%';
     if (!$term) {
         return null;
     }
     $q = new Am_Query($this->getDi()->userTable);
     $q->addWhere('(t.login LIKE ?) OR (t.email LIKE ?) OR (t.name_f LIKE ?) OR (t.name_l LIKE ?)', $term, $term, $term, $term);
     $this->getDi()->hook->call(Am_Event::ADMIN_USERS_AUTOCOMPLETE, array('query' => $q, 'term' => $term));
     $qq = $q->query(0, 10);
     $ret = array();
     while ($r = $this->getDi()->db->fetchRow($qq)) {
         $ret[] = array('label' => sprintf('%s / "%s" <%s>', $r['login'], $r['name_f'] . ' ' . $r['name_l'], $r['email']), 'value' => $r['login']);
     }
     if ($q->getFoundRows() > 10) {
         $ret[] = array('label' => sprintf("... %d more rows found ...", $q->getFoundRows() - 10), 'value' => null);
     }
     $this->ajaxResponse($ret);
 }
Пример #3
0
 /**
  * Return allowed product emails as objects
  * @return array of ResourceAbstract
  * @see self::selectAllowedResources
  */
 function getProductWelcomeEmails($product_ids)
 {
     $ret = array();
     $groups = $this->getDi()->db->selectCol("SELECT product_category_id from ?_product_product_category where product_id IN (?a)", $product_ids);
     $groups[] = -1;
     $q = new Am_Query($this, 'r');
     $q->clearFields();
     $q->addField('DISTINCT r.resource_id', 'resource_id');
     $q->leftJoin('?_email_template', 'et', '(r.resource_id = et.email_template_id)');
     $q->addWhere("resource_type = ?", ResourceAccess::EMAILTEMPLATE);
     $q->addWhere("(r.fn = 'product_id' AND r.id IN (?a) ) OR (r.fn = 'product_category_id' AND r.id IN (?a) )", $product_ids, $groups);
     $q->addWhere('et.name=?', EmailTemplate::PRODUCTWELCOME);
     $q->groupBy('resource_id');
     $res = $this->_db->fetchRows($q->query());
     $ret = array();
     foreach ($res as $r) {
         $ret[] = $this->getDi()->emailTemplateTable->load($r['resource_id']);
     }
     return $ret;
 }
 public function autocompleteAction()
 {
     $term = '%' . $this->getParam('term') . '%';
     if (!$term) {
         return null;
     }
     $q = new Am_Query($this->getDi()->couponTable);
     $q->addWhere('code LIKE ?', $term);
     $qq = $q->query(0, 10);
     $ret = array();
     $options = $this->getDi()->couponBatchTable->getOptions();
     while ($r = $this->getDi()->db->fetchRow($qq)) {
         $ret[] = array('label' => $r['code'] . ' - ' . $options[$r['batch_id']], 'value' => $r['code']);
     }
     if ($q->getFoundRows() > 10) {
         $ret[] = array('label' => sprintf("... %d more rows found ...", $q->getFoundRows() - 10), 'value' => null);
     }
     $this->ajaxResponse($ret);
 }
Пример #5
0
 public function export(AffPayout $payout, Am_Query $details, Zend_Controller_Response_Http $response)
 {
     $q = $details->query();
     while ($d = $payout->getDi()->db->fetchRow($q)) {
         $d = $payout->getDi()->affPayoutDetailTable->createRecord($d);
         /* @var $d AffPayoutDetail */
         $aff = $d->getAff();
         $rows[] = array($aff->data()->get('aff_bitcoin_wallet'), moneyRound($d->amount), Am_Currency::getDefault(), $aff->user_id, "Affiliate commission to " . amDate($payout->thresehold_date));
     }
     $this->sendCsv("bitcoint-commission-" . $payout->payout_id . ".txt", $rows, $response);
 }