Ejemplo n.º 1
0
 /**
  * add status to default persistent filter
  */
 public function update_2()
 {
     $pfe = new Tinebase_PersistentFilter_Backend_Sql();
     $defaultFavorite = $pfe->getByProperty(Tasks_Preference::DEFAULTPERSISTENTFILTER_NAME, 'name');
     $defaultFavorite->bypassFilters = TRUE;
     $closedIds = $this->_getClosedStatusIds();
     $defaultFavorite->filters = array(array('field' => 'container_id', 'operator' => 'equals', 'value' => '/personal/' . Tinebase_Model_User::CURRENTACCOUNT), array('field' => 'status_id', 'operator' => 'notin', 'value' => $closedIds));
     $pfe->update($defaultFavorite);
     $this->setApplicationVersion('Tasks', '3.3');
 }
Ejemplo n.º 2
0
 /**
  * add status to default persistent filter
  */
 public function update_2()
 {
     $pfe = new Tinebase_PersistentFilter_Backend_Sql();
     $defaultFavorite = $pfe->getByProperty(Crm_Preference::DEFAULTPERSISTENTFILTER_NAME, 'name');
     $defaultFavorite->bypassFilters = TRUE;
     $closedStatus = Crm_Controller::getInstance()->getConfigSettings()->getEndedLeadstates(TRUE);
     $defaultFavorite->filters = array(array('field' => 'leadstate_id', 'operator' => 'notin', 'value' => $closedStatus));
     $pfe->update($defaultFavorite);
     $this->setApplicationVersion('Crm', '3.3');
 }
Ejemplo n.º 3
0
 /**
  * update favorites to new filter syntax and update to 5.2
  *
  * @return void
  */
 public function update_1()
 {
     $filters = Tinebase_PersistentFilter::getInstance()->getAll();
     $timetrackerFilters = $filters->filter('application_id', Tinebase_Application::getInstance()->getApplicationByName('Timetracker')->getId());
     $pfBackend = new Tinebase_PersistentFilter_Backend_Sql();
     foreach ($timetrackerFilters as $pfilter) {
         foreach ($pfilter->filters as $filter) {
             if (in_array($filter->getField(), array('timeaccount_id')) && $filter instanceof Tinebase_Model_Filter_ForeignId) {
                 $values = array();
                 foreach ($filter->getValue() as $idx => $subfilter) {
                     $values[$idx] = $subfilter;
                     if (in_array($subfilter['field'], array('id'))) {
                         $values[$idx]['field'] = ':' . $subfilter['field'];
                     }
                 }
                 $filter->setValue($values);
                 $pfBackend->update($pfilter);
             }
         }
     }
     $this->setApplicationVersion('Timetracker', '5.2');
 }
Ejemplo n.º 4
0
 /**
  * update favorites to new filter syntax and update to 5.0 
  * 
  * @return void
  */
 public function update_0()
 {
     $filters = Tinebase_PersistentFilter::getInstance()->getAll();
     $crmFilters = $filters->filter('application_id', Tinebase_Application::getInstance()->getApplicationByName('Crm')->getId());
     $pfBackend = new Tinebase_PersistentFilter_Backend_Sql();
     foreach ($crmFilters as $pfilter) {
         foreach ($pfilter->filters as $filter) {
             if (in_array($filter->getField(), array('contact', 'product', 'task')) && $filter instanceof Tinebase_Model_Filter_Relation) {
                 $values = array();
                 foreach ($filter->getValue() as $idx => $subfilter) {
                     $values[$idx] = $subfilter;
                     if (in_array($subfilter['field'], array('relation_type', 'id'))) {
                         $values[$idx]['field'] = ':' . $subfilter['field'];
                     }
                 }
                 $filter->setValue($values);
                 $pfBackend->update($pfilter);
             }
         }
     }
     $this->setApplicationVersion('Crm', '5.1');
 }
Ejemplo n.º 5
0
 /**
  * add attendee status to default persistent filter
  */
 public function update_4()
 {
     $pfe = new Tinebase_PersistentFilter_Backend_Sql();
     $defaultFavorite = $pfe->getByProperty(Calendar_Preference::DEFAULTPERSISTENTFILTER_NAME, 'name');
     $defaultFavorite->bypassFilters = TRUE;
     $defaultFavorite->filters = array(array('field' => 'attender', 'operator' => 'equals', 'value' => array('user_type' => Calendar_Model_Attender::USERTYPE_USER, 'user_id' => Addressbook_Model_Contact::CURRENTCONTACT)), array('field' => 'attender_status', 'operator' => 'notin', 'value' => array('DECLINED')));
     $pfe->update($defaultFavorite);
     $this->setApplicationVersion('Calendar', '3.5');
 }