Example #1
0
File: Aktual.php Project: jager/cms
 public static function getByLink($link)
 {
     if ($link == '') {
         return self::findList()->execute();
     }
     return Doctrine_Core::getTable('Aktual')->findOneByLink($link);
 }
Example #2
0
 public static function sendNotification($c, $projects, $send_to, $sf_user)
 {
     foreach ($send_to as $type => $users) {
         switch ($type) {
             case 'status':
                 $subject = t::__('Project Status Updated');
                 break;
             default:
                 $subject = t::__('New Project');
                 break;
         }
         $to = array();
         foreach ($users as $v) {
             if ($u = Doctrine_Core::getTable('Users')->find($v)) {
                 $to[$u->getEmail()] = $u->getName();
             }
         }
         $user = $sf_user->getAttribute('user');
         $from[$user->getEmail()] = $user->getName();
         $to[$projects->getUsers()->getEmail()] = $projects->getUsers()->getName();
         $to[$user->getEmail()] = $user->getName();
         if (sfConfig::get('app_send_email_to_owner') == 'off') {
             unset($to[$user->getEmail()]);
         }
         $subject .= ': ' . $projects->getName() . ($projects->getProjectsStatusId() > 0 ? ' [' . $projects->getProjectsStatus()->getName() . ']' : '');
         $body = $c->getComponent('projects', 'emailBody', array('projects' => $projects));
         Users::sendEmail($from, $to, $subject, $body, $sf_user);
     }
 }
Example #3
0
 public function executeDelete(sfWebRequest $request)
 {
     $request->checkCSRFProtection();
     $this->forward404Unless($scss_troop_enrollment = Doctrine_Core::getTable('ScssTroopEnrollment')->find(array($request->getParameter('id'))), sprintf('Object scss_troop_enrollment does not exist (%s).', $request->getParameter('id')));
     $scss_troop_enrollment->delete();
     $this->redirect('troopEnrollment/index');
 }
 public function executeDelete(sfWebRequest $request)
 {
     $request->checkCSRFProtection();
     $this->forward404Unless($vehiculo = Doctrine_Core::getTable('vehiculo')->find(array($request->getParameter('id'))), sprintf('Object vehiculo does not exist (%s).', $request->getParameter('id')));
     $vehiculo->delete();
     $this->redirect('vehiculo/index');
 }
 public function executeDelete(sfWebRequest $request)
 {
     $request->checkCSRFProtection();
     $this->forward404Unless($activities = Doctrine_Core::getTable('Activities')->find(array($request->getParameter('activity_id'))), sprintf('Object activities does not exist (%s).', $request->getParameter('activity_id')));
     $activities->delete();
     $this->redirect('activities/index');
 }
 public function save(Doctrine_Connection $conn = null)
 {
     try {
         $this->setIsTosync(1);
         parent::save($conn);
         if ($this->getGainId() != null) {
             $send_email_visiteur_template_id = $this->getGain()->getSendEmailVisiteurTemplateId();
             $send_email_admin_template_id = $this->getGain()->getSendEmailAdminTemplateId();
             if ($send_email_visiteur_template_id || $send_email_admin_template_id) {
                 $visiteur = Doctrine_Core::getTable('Visiteur')->findOneBy('guid', $this->getVisiteurId());
                 $gain = $this->getGain();
                 $univers_status = $this->getUniversStatus();
                 $visiteur_email = $visiteur->getEmail();
                 $admin_email = sfConfig::get('app_gain_admin_email', null);
                 $array_replace = array('$visiteur_pseudo' => $visiteur->getPseudoSon(), '$visiteur_nom' => $visiteur->getNom(), '$visiteur_prenom' => $visiteur->getPrenom(), '$visiteur_adresse1' => $visiteur->getAdresse(), '$visiteur_adresse2' => $visiteur->getAdresse2(), '$visiteur_cp' => $visiteur->getCodePostal(), '$visiteur_ville' => $visiteur->getVille(), '$visiteur_num_mobile' => $visiteur->getNumMobile(), '$visiteur_email' => $visiteur->getEmail(), '$host_image_src' => sfConfig::get('app_host_image_src'), '$gain_libelle' => $gain->getLibelle(), '$gain_image' => $gain->getImage(), '$gain_description' => $gain->getDescription(), '$gain_start_at' => $gain->getStartAt(), '$gain_end_at' => $gain->getEndAt(), '$univers_status_level' => $univers_status->getLevel(), '$univers_status_level_name' => $univers_status->getLevelName(), '$univers_status_description' => $univers_status->getDescription(), '$univers_status_libelle' => $univers_status->getLibelle());
             }
             // envoi d'un email au visiteur
             if ($send_email_visiteur_template_id && $visiteur_email) {
                 $template = Doctrine_Query::create()->from('TemplateMail t')->where('t.guid = ?', $send_email_visiteur_template_id)->fetchOne();
                 if ($template !== false) {
                     $template->sendEmail($visiteur_email, $array_replace);
                 }
             }
             // envoi d'un email a l'admin
             if ($send_email_admin_template_id && $admin_email) {
                 $template = Doctrine_Query::create()->from('TemplateMail t')->where('t.guid = ?', $send_email_admin_template_id)->fetchOne();
                 if ($template !== false) {
                     $template->sendEmail($admin_email, $array_replace);
                 }
             }
         }
     } catch (Exception $e) {
         throw new Exception($e->getMessage());
     }
 }
Example #7
0
 public function executeDelete(sfWebRequest $request)
 {
     $request->checkCSRFProtection();
     $this->forward404Unless($jobeet_job = Doctrine_Core::getTable('JobeetJob')->find(array($request->getParameter('id'))), sprintf('Object jobeet_job does not exist (%s).', $request->getParameter('id')));
     $jobeet_job->delete();
     $this->redirect('job/index');
 }
Example #8
0
 public function executeDelete(sfWebRequest $request)
 {
     $request->checkCSRFProtection();
     $this->forward404Unless($phases_status = Doctrine_Core::getTable('PhasesStatus')->find(array($request->getParameter('id'))), sprintf('Object phases_status does not exist (%s).', $request->getParameter('id')));
     $phases_status->delete();
     $this->redirect('phasesStatus/index');
 }
Example #9
0
 public function executeDelete(sfWebRequest $request)
 {
     $request->checkCSRFProtection();
     $this->forward404Unless($theme_scorecard = Doctrine_Core::getTable('Theme_Scorecard')->find(array($request->getParameter('id'))), sprintf('Object theme_scorecard does not exist (%s).', $request->getParameter('id')));
     $theme_scorecard->delete();
     $this->redirect('themescorecard/index');
 }
Example #10
0
 public function executeChangestatus()
 {
     $object = Doctrine_Core::getTable('mycvExperiences')->findOneById($this->getRequestParameter('id'));
     $object->changeStatus();
     $this->getUser()->setFlash('notice', 'Status was modified successfully');
     $this->redirect('@nd_adminExperiences');
 }
Example #11
0
 public function executeDelete(sfWebRequest $request)
 {
     $request->checkCSRFProtection();
     $this->forward404Unless($account_invoice = Doctrine_Core::getTable('AccountInvoice')->find(array($request->getParameter('id'))), sprintf('Object account_invoice does not exist (%s).', $request->getParameter('id')));
     $account_invoice->delete();
     $this->redirect('invoice/index');
 }
 public function getChoices()
 {
     $choices = array();
     if (false !== $this->getOption('add_empty')) {
         $choices[''] = true === $this->getOption('add_empty') ? '' : $this->getOption('add_empty');
     }
     if (null === $this->getOption('table_method')) {
         $query = null === $this->getOption('query') ? Doctrine_Core::getTable($this->getOption('model'))->createQuery() : $this->getOption('query');
         $query->addOrderBy('root_id asc')->addOrderBy('lft asc');
         $objects = $query->execute();
     } else {
         $tableMethod = $this->getOption('table_method');
         $results = Doctrine_Core::getTable($this->getOption('model'))->{$tableMethod}();
         if ($results instanceof Doctrine_Query) {
             $objects = $results->execute();
         } else {
             if ($results instanceof Doctrine_Collection) {
                 $objects = $results;
             } else {
                 if ($results instanceof Doctrine_Record) {
                     $objects = new Doctrine_Collection($this->getOption('model'));
                     $objects[] = $results;
                 } else {
                     $objects = array();
                 }
             }
         }
     }
     $method = $this->getOption('method');
     $keyMethod = $this->getOption('key_method');
     foreach ($objects as $object) {
         $choices[$object->{$keyMethod}()] = str_repeat(' ', $object['level'] * 4) . $object->{$method}();
     }
     return $choices;
 }
Example #13
0
 public function executeDelete(sfWebRequest $request)
 {
     $request->checkCSRFProtection();
     $this->forward404Unless($scss_course = Doctrine_Core::getTable('ScssCourse')->find(array($request->getParameter('id'))), sprintf('Object scss_course does not exist (%s).', $request->getParameter('id')));
     $scss_course->delete();
     $this->redirect('course/index');
 }
Example #14
0
 public function testColumnAggregation()
 {
     $animal = Doctrine_Core::getTable('mkNode')->findOneById(1);
     $this->assertTrue($animal instanceof mkAnimal);
     $plant = Doctrine_Core::getTable('mkOrganism')->findOneById(2);
     $this->assertTrue($plant instanceof mkPlant);
 }
 public function executeDelete(sfWebRequest $request)
 {
     $request->checkCSRFProtection();
     $this->forward404Unless($user = Doctrine_Core::getTable('User')->find(array($request->getParameter('user_id'))), sprintf('Object user does not exist (%s).', $request->getParameter('user_id')));
     $user->delete();
     $this->redirect('my_ruckus/index');
 }
Example #16
0
 public function executeGoto(sfWebRequest $request)
 {
     $q = Doctrine_Core::getTable('Discussions')->createQuery('d')->leftJoin('d.DiscussionsStatus ds')->leftJoin('d.Projects p')->leftJoin('d.Users');
     $q->addWhere('projects_id=?', $request->getParameter('projects_id'));
     if (Users::hasAccess('view_own', 'discussions', $this->getUser(), $request->getParameter('projects_id'))) {
         $q->addWhere("find_in_set('" . $this->getUser()->getAttribute('id') . "',d.assigned_to) or d.users_id='" . $this->getUser()->getAttribute('id') . "'");
     }
     $q = Discussions::addFiltersToQuery($q, $this->getUser()->getAttribute('discussions_filter' . ((int) $request->getParameter('projects_id') > 0 ? $request->getParameter('projects_id') : '')));
     $q = app::addListingOrder($q, 'discussions', $this->getUser(), (int) $request->getParameter('projects_id'));
     $this->menu = array();
     $ids = array();
     foreach ($q->fetchArray() as $v) {
         if (strlen($sn = app::getArrayName($v, 'DiscussionsStatus')) > 0) {
             $sn = $sn . ': ';
         } else {
             $sn = '';
         }
         if ($request->getParameter('discussions_id') == $v['id']) {
             $v['name'] = '<b>' . $v['name'] . '</b>';
         }
         $this->menu[] = array('title' => $sn . $v['name'], 'url' => 'discussionsComments/index?projects_id=' . $request->getParameter('projects_id') . '&discussions_id=' . $v['id']);
         $ids[] = $v['id'];
     }
     $current_key = array_search($request->getParameter('discussions_id'), $ids);
     $this->previous_item_id = false;
     $this->next_item_id = false;
     if (isset($ids[$current_key - 1])) {
         $this->previous_item_id = $ids[$current_key - 1];
     }
     if (isset($ids[$current_key + 1])) {
         $this->next_item_id = $ids[$current_key + 1];
     }
 }
Example #17
0
 public function isClient()
 {
     if ($this->getUserType() == 'client') {
         return Doctrine_Core::getTable('Client')->getByUserId($this->getId());
     }
     return false;
 }
 public function executeDelete(sfWebRequest $request)
 {
     $request->checkCSRFProtection();
     $this->forward404Unless($usuario = Doctrine_Core::getTable('usuario')->find(array($request->getParameter('cod_usuario'))), sprintf('Object usuario does not exist (%s).', $request->getParameter('cod_usuario')));
     $usuario->delete();
     $this->redirect('login/index');
 }
 public function __construct($modelName, $alias = null)
 {
     if (is_string($modelName)) {
         $this->_modelName = $modelName;
         $query = Doctrine_Core::getTable($modelName)->createQuery($alias);
         $this->_query = $query;
         $this->_pager = new sfDoctrinePager($this->_modelName);
         $this->_pager->setQuery($this->_query);
     } else {
         if ($modelName instanceof Doctrine_Query) {
             $this->_query = $modelName;
             $this->_query->getSqlQuery(array(), false);
             $this->_modelName = $this->_query->getRoot()->getOption('name');
             $this->_pager = new sfDoctrinePager($this->_modelName);
             $this->_pager->setQuery($this->_query);
         } else {
             if ($modelName instanceof sfDoctrinePager) {
                 $this->_pager = $modelName;
                 $this->_query = $this->_pager->getQuery();
                 $this->_query->getSqlQuery(array(), false);
                 $this->_modelName = $this->_query->getRoot()->getOption('name');
             } else {
                 throw new Doctrine_Exception('First argument should be either the name of a model or an existing Doctrine_Query object');
             }
         }
     }
     $this->_table = Doctrine_Core::getTable($this->_modelName);
     if (!self::$_symfonyContext) {
         throw new sfException('In order to use the Sympal data grid you must set the Symfony context to use with setSymfonyContext()');
     }
 }
 protected function getBaseQuery()
 {
   //$q = Doctrine_Core::getTable('dsTeacher')->createQuery();
   $q = Doctrine_Core::getTable('dsTeacher')->joinPersonQuery(); // braucht es, sonst gibt's eine unleserliche fehlermeldung (table method offset)
   
   return $q;
 }
Example #21
0
 public function executeDelete(sfWebRequest $request)
 {
     $request->checkCSRFProtection();
     $this->forward404Unless($student_center = Doctrine_Core::getTable('StudentCenter')->find(array($request->getParameter('id'))), sprintf('Object student_center does not exist (%s).', $request->getParameter('id')));
     $student_center->delete();
     $this->redirect('studentcenter/index');
 }
 public function testTest()
 {
     $user = new User();
     $record1 = $user->getTable()->find(4);
     $record2 = Doctrine_Core::getTable('User')->find(4);
     $this->assertIdentical($record1, $record2);
 }
 public function executeSave_slots(sfWebRequest $request)
 {
     $this->contentSlots = array();
     $this->failedContentSlots = array();
     $this->errors = array();
     $slotIds = $request->getParameter('slot_ids');
     $contentIds = $request->getParameter('content_ids');
     foreach ($slotIds as $slotId) {
         $content = Doctrine_Core::getTable('sfSympalContent')->find($contentIds[$slotId]);
         $contentSlot = Doctrine_Core::getTable('sfSympalContentSlot')->find($slotId);
         $contentSlot->setContentRenderedFor($content);
         $form = $contentSlot->getEditForm();
         $form->bind($request->getParameter($form->getName()));
         if ($form->isValid()) {
             if ($request->getParameter('preview')) {
                 $form->updateObject();
             } else {
                 $form->save();
             }
             $this->contentSlots[] = $contentSlot;
         } else {
             $this->failedContentSlots[] = $contentSlot;
             foreach ($form as $name => $field) {
                 if ($field->hasError()) {
                     $this->errors[$contentSlot->getName()] = $field->getError();
                 }
             }
         }
     }
 }
  /**
   * Configures this generator.
   */
  public function configure()
  {
    $this->table = Doctrine_Core::getTable($this->modelClass);

    // load all primary keys
    $this->loadPrimaryKeys();
  }
 public function postAction()
 {
     $email = $this->_request->getParam('email');
     $response = $this->_helper->response();
     if (Kebab_Validation_Email::isValid($email)) {
         // Create user object
         $user = Doctrine_Core::getTable('Model_Entity_User')->findOneBy('email', $email);
         $password = Kebab_Security::createPassword();
         if ($user !== false) {
             $user->password = md5($password);
             $user->save();
             $configParam = Zend_Registry::get('config')->kebab->mail;
             $smtpServer = $configParam->smtpServer;
             $config = $configParam->config->toArray();
             // Mail phtml
             $view = new Zend_View();
             $view->setScriptPath(APPLICATION_PATH . '/views/mails/');
             $view->assign('password', $password);
             $transport = new Zend_Mail_Transport_Smtp($smtpServer, $config);
             $mail = new Zend_Mail('UTF-8');
             $mail->setFrom($configParam->from, 'Kebab Project');
             $mail->addTo($user->email, $user->fullName);
             $mail->setSubject('Reset Password');
             $mail->setBodyHtml($view->render('forgot-password.phtml'));
             $mail->send($transport);
             $response->setSuccess(true)->getResponse();
         } else {
             $response->addNotification(Kebab_Notification::ERR, 'There isn\'t user with this email')->getResponse();
         }
     } else {
         $response->addError('email', 'Invalid email format')->getResponse();
     }
 }
Example #26
0
 public function execute()
 {
     try {
         $migrationsPath = $this->getArgument('migrations_path');
         $yamlSchemaPath = $this->getArgument('yaml_schema_path');
         $migration = new Doctrine_Migration($migrationsPath);
         $result1 = false;
         if (!count($migration->getMigrationClasses())) {
             $result1 = Doctrine_Core::generateMigrationsFromDb($migrationsPath);
         }
         $connections = array();
         foreach (Doctrine_Manager::getInstance() as $connection) {
             $connections[] = $connection->getName();
         }
         $changes = Doctrine_Core::generateMigrationsFromDiff($migrationsPath, $connections, $yamlSchemaPath);
         $numChanges = count($changes, true) - count($changes);
         $result = $result1 || $numChanges ? true : false;
     } catch (Exception $e) {
         $result = false;
     }
     if (!$result) {
         throw new Doctrine_Task_Exception('Could not generate migration classes from database');
     } else {
         $this->notify('Generated migration classes successfully from database');
     }
 }
Example #27
0
 public function testCachedResultsAreSpecificToDsn()
 {
     $cacheDriver = new Doctrine_Cache_Array();
     $conn1 = Doctrine_Manager::connection('sqlite::memory:', 'conn_1');
     $conn1->setAttribute(Doctrine_Core::ATTR_RESULT_CACHE, $cacheDriver);
     $conn2 = Doctrine_Manager::connection('sqlite::memory:', 'conn_2');
     $conn2->setAttribute(Doctrine_Core::ATTR_RESULT_CACHE, $cacheDriver);
     $this->assertNotEqual($conn1, $conn2);
     $manager = Doctrine_Manager::getInstance();
     $manager->setCurrentConnection('conn_1');
     $this->assertEqual($conn1, Doctrine_Manager::connection());
     Doctrine_Core::createTablesFromArray(array('Ticket_1706_User'));
     $user = new Ticket_1706_User();
     $user->name = 'Allen';
     $user->save();
     $manager->setCurrentConnection('conn_2');
     $this->assertEqual($conn2, Doctrine_Manager::connection());
     Doctrine_Core::createTablesFromArray(array('Ticket_1706_User'));
     $user = new Ticket_1706_User();
     $user->name = 'Bob';
     $user->save();
     $manager->setCurrentConnection('conn_1');
     $u1 = Doctrine_Query::create()->from('Ticket_1706_User u')->useResultCache()->execute();
     $this->assertEqual(1, count($u1));
     $this->assertEqual('Allen', $u1[0]->name);
     $manager->setCurrentConnection('conn_2');
     $u2 = Doctrine_Query::create()->from('Ticket_1706_User u')->useResultCache()->execute();
     $this->assertEqual(1, count($u2));
     $this->assertEqual('Bob', $u2[0]->name);
 }
 /**
  * Returns the choices associated to the model.
  *
  * @return array An array of choices
  */
 public function getChoices()
 {
     $choices = array();
     if (false !== $this->getOption('add_empty')) {
         $choices[''] = true === $this->getOption('add_empty') ? '' : $this->getOption('add_empty');
     }
     if (null === $this->getOption('table_method')) {
         $query = null === $this->getOption('query') ? Doctrine_Core::getTable($this->getOption('model'))->createQuery() : $this->getOption('query');
         if ($order = $this->getOption('order_by')) {
             $query->addOrderBy($order[0] . ' ' . $order[1]);
         }
         $objects = $query->execute();
     } else {
         $results = $this->callTableMethod();
         if ($results instanceof Doctrine_Query) {
             $objects = $results->execute();
         } elseif ($results instanceof Doctrine_Collection) {
             $objects = $results;
         } elseif ($results instanceof Doctrine_Record) {
             $objects = new Doctrine_Collection($this->getOption('model'));
             $objects[] = $results;
         } elseif (is_array($results)) {
             $results = array_replace($choices, $results);
             return $results;
         } else {
             $objects = array();
         }
     }
     $method = $this->getOption('method');
     $keyMethod = $this->getOption('key_method');
     foreach ($objects as $object) {
         $choices[$object->{$keyMethod}()] = $object->{$method}();
     }
     return $choices;
 }
 function checkIfAllSubjectAreClose($validator, $values, $arguments)
 {
     if ($this->getObject()->isNew()) {
         return $values;
     }
     // C'est une nouvelle livraison , on retourne les valeurs du formulaire
     $closeStates = Doctrine_Core::getTable('EiDeliveryState')->findByProjectIdAndProjectRefAndCloseState($values['project_id'], $values['project_ref'], 1);
     //Statuts de livraison clos
     /* Si le statut de  livraison est different de statut "Clos" , on retourne les valeurs */
     if (count($closeStates) > 0) {
         $k = 0;
         foreach ($closeStates as $closeState) {
             if ($values['delivery_state_id'] == $closeState->getId()) {
                 $k++;
             }
         }
     }
     if ($k == 0) {
         return $values;
     }
     //Si la livraison ne passe pas en statut close
     //On récupère les bugs de la livraison
     $ei_delivery_subjects = $this->getObject()->getDeliverySubjectsQuery()->andWhere("st.close_del_state=0")->fetchArray();
     if (count($ei_delivery_subjects) > 0) {
         throw new sfValidatorError($validator, 'Can\'t close delivery because there are subjects still opened');
     }
     return $values;
 }
 protected function execute($arguments = array(), $options = array())
 {
     $databaseManager = new sfDatabaseManager($this->configuration);
     if (!$options['skip-build']) {
         $buildModel = new sfDoctrineBuildModelTask($this->dispatcher, $this->formatter);
         $buildModel->setCommandApplication($this->commandApplication);
         $buildModel->setConfiguration($this->configuration);
         $buildModel->run();
     }
     $connections = array();
     $models = $arguments['models'];
     foreach ($models as $key => $model) {
         $model = trim($model);
         $conn = Doctrine_Core::getTable($model)->getConnection();
         $connections[$conn->getName()][] = $model;
     }
     foreach ($connections as $name => $models) {
         $this->logSection('doctrine', 'dropping model tables for connection "' . $name . '"');
         $conn = Doctrine_Manager::getInstance()->getConnection($name);
         $models = $conn->unitOfWork->buildFlushTree($models);
         $models = array_reverse($models);
         foreach ($models as $model) {
             $tableName = Doctrine_Core::getTable($model)->getOption('tableName');
             $this->logSection('doctrine', 'dropping table "' . $tableName . '"');
             try {
                 $conn->export->dropTable($tableName);
             } catch (Exception $e) {
                 $this->logSection('doctrine', 'dropping table failed: ' . $e->getMessage());
             }
         }
         $this->logSection('doctrine', 'recreating tables for models');
         Doctrine_Core::createTablesFromArray($models);
     }
 }