protected function execute($arguments = array(), $options = array())
 {
     parent::execute($arguments, $options);
     sfContext::createInstance($this->createConfiguration('pc_frontend', 'prod'), 'pc_frontend');
     $pcGadgets = Doctrine::getTable('Gadget')->retrieveGadgetsByTypesName('dailyNews');
     $mobileGadgets = Doctrine::getTable('Gadget')->retrieveGadgetsByTypesName('mobileDailyNews');
     $targetMembers = Doctrine::getTable('Member')->findAll();
     foreach ($targetMembers as $member) {
         if (!$member->getConfig('daily_news')) {
             continue;
         }
         if (1 == $member->getConfig('daily_news') && !$this->isDailyNewsDay()) {
             continue;
         }
         $address = $member->getEmailAddress();
         $gadgets = $pcGadgets['dailyNewsContents'];
         if (opToolkit::isMobileEmailAddress($address)) {
             $gadgets = $mobileGadgets['mobileDailyNewsContents'];
         }
         $filteredGadgets = array();
         if ($gadgets) {
             foreach ($gadgets as $gadget) {
                 if ($gadget->isEnabled()) {
                     $filteredGadgets[] = array('component' => array('module' => $gadget->getComponentModule(), 'action' => $gadget->getComponentAction()), 'gadget' => $gadget, 'member' => $member);
                 }
             }
         }
         $context = $this->getContextByEmailAddress($address);
         $params = array('member' => $member, 'gadgets' => $filteredGadgets, 'subject' => $context->getI18N()->__('デイリーニュース'), 'today' => time());
         opMailSend::sendTemplateMail('dailyNews', $address, opConfig::get('admin_mail_address'), $params, $context);
     }
 }
 protected function execute($arguments = array(), $options = array())
 {
     parent::execute($arguments, $options);
     $connection = Doctrine_Manager::connection();
     $this->connectionOptions = $connection->getOptions();
     sfContext::createInstance($this->createConfiguration('pc_frontend', 'prod'), 'pc_frontend');
     sfOpenPNEApplicationConfiguration::registerZend();
     $this->adminMailAddress = opConfig::get('admin_mail_address');
     $helpers = array_unique(array_merge(array('Helper', 'Url', 'Asset', 'Tag', 'Escaping'), sfConfig::get('sf_standard_helpers')));
     sfContext::getInstance()->getConfiguration()->loadHelpers($helpers);
     if (null !== $options['log-file']) {
         $this->logger = new sfFileLogger($this->dispatcher, array('file' => $options['log-file']));
     }
 }
 protected function execute($arguments = array(), $options = array())
 {
     parent::execute($arguments, $options);
     $expectedOptions = array('pc_frontend', 'mobile_frontend');
     if (isset($options['app'])) {
         if (in_array($options['app'], $expectedOptions)) {
             $this->sendDailyNews($options['app']);
         } else {
             throw new Exception('invalid option');
         }
     } else {
         $php = $this->findPhpBinary();
         foreach ($expectedOptions as $app) {
             exec($php . ' ' . sfConfig::get('sf_root_dir') . '/symfony openpne:send-daily-news --app=' . $app);
         }
     }
 }
 protected function execute($arguments = array(), $options = array())
 {
     parent::execute($arguments, $options);
     opApplicationConfiguration::unregisterZend();
     $birthday = Doctrine::getTable('Profile')->retrieveByName('op_preset_birthday');
     if (!$birthday) {
         throw new sfException('This project doesn\'t have the op_preset_birthday profile item.');
     }
     $profiles = Doctrine::getTable('MemberProfile')->createQuery()->where('profile_id = ?', $birthday->id)->andWhere('DATE_FORMAT(value_datetime, ?) = ?', array('%m-%d', date('m-d', strtotime('+ 1 week'))))->execute();
     opApplicationConfiguration::registerZend();
     $context = sfContext::createInstance($this->createConfiguration('pc_frontend', 'prod'));
     $i18n = $context->getI18N();
     foreach ($profiles as $profile) {
         $birthMember = $profile->getMember();
         foreach ($birthMember->getFriends() as $member) {
             $params = array('member' => $member, 'birthMember' => $birthMember, 'subject' => $i18n->__('There is your %my_friend% that its birthday is coming soon'));
             opMailSend::sendTemplateMailToMember('birthday', $member, $params, array(), $context);
         }
     }
 }