/** * grid * create the configuration of the grid */ public static function grid($rowNum = 10) { $translator = Shineisp_Registry::getInstance()->Zend_Translate; $config['datagrid']['columns'][] = array('label' => null, 'field' => 's.subscriber_id', 'alias' => 'subscriber_id', 'type' => 'selectall'); $config['datagrid']['columns'][] = array('label' => $translator->translate('ID'), 'field' => 's.subscriber_id', 'alias' => 'subscriber_id', 'sortable' => true, 'searchable' => true, 'type' => 'string'); $config['datagrid']['columns'][] = array('label' => $translator->translate('Email'), 'field' => 's.email', 'alias' => 'email', 'sortable' => true, 'searchable' => true, 'type' => 'string'); $config['datagrid']['columns'][] = array('label' => $translator->translate('Subscription Date'), 'field' => 's.subscriptiondate', 'alias' => 'subscriptiondate', 'sortable' => true, 'searchable' => true, 'type' => 'date'); $config['datagrid']['fields'] = "s.subscriber_id, s.email as email, DATE_FORMAT(s.subscriptiondate, '" . Settings::getMySQLDateFormat('dateformat') . " %H:%i:%s') as subscriptiondate"; $config['datagrid']['rownum'] = $rowNum; $config['datagrid']['dqrecordset'] = Doctrine_Query::create()->select($config['datagrid']['fields'])->from('NewslettersSubscribers s'); $config['datagrid']['basepath'] = "/admin/subscribers/"; $config['datagrid']['index'] = "subscriber_id"; $config['datagrid']['rowlist'] = array('10', '50', '100', '1000'); $config['datagrid']['buttons']['edit']['label'] = $translator->translate('Edit'); $config['datagrid']['buttons']['edit']['cssicon'] = "edit"; $config['datagrid']['buttons']['edit']['action'] = "/admin/subscribers/edit/id/%d"; $config['datagrid']['buttons']['delete']['label'] = $translator->translate('Delete'); $config['datagrid']['buttons']['delete']['cssicon'] = "delete"; $config['datagrid']['buttons']['delete']['action'] = "/admin/subscribers/delete/id/%d"; $config['datagrid']['massactions'] = array('massdelete' => 'Mass Delete', 'bulkexport' => 'Export'); $bulkmailinglist = array(); $mailchimplists = Newsletters::get_mailchimp_list(); if (!empty($mailchimplists)) { foreach ($mailchimplists as $id => $name) { $bulkmailinglist['bulk_mailchimp_optin&list=' . $id] = "Add to ({$name})"; $bulkmailinglist['bulk_mailchimp_optout&list=' . $id] = "Remove from ({$name})"; } } $config['datagrid']['massactions']['commons'] = array_merge($config['datagrid']['massactions'], $bulkmailinglist); return $config; }