getTasklists() public method

public getTasklists ( $notify = false ) : array
return array
Example #1
0
 /**
  * @param boolean $static  Ignored in this driver.
  */
 public function getTree($static = false)
 {
     global $injector;
     $this->_nodes = $this->_tree->getNodes();
     $filter = $injector->createInstance('Horde_Text_Filter');
     $view = new Horde_View(array('templatePath' => IMP_TEMPLATES . '/flist'));
     $view->addHelper('FormTag');
     $view->addHelper('Tag');
     $view->optgroup = $this->getOption('optgroup');
     /* Custom HTML. */
     if ($customhtml = $this->getOption('customhtml')) {
         $view->customhtml = $customhtml;
     }
     /* Heading. */
     if (($heading = $this->getOption('heading')) && strlen($heading) > 0) {
         $view->heading = $heading;
     }
     /* New mailbox entry. */
     if ($this->getOption('new_mbox')) {
         $imp_imap = $injector->getInstance('IMP_Factory_Imap')->create();
         if ($imp_imap->access(IMP_Imap::ACCESS_CREATEMBOX) && $imp_imap->access(IMP_Imap::ACCESS_CREATEMBOX_MAX)) {
             $view->new_mbox = true;
         }
     }
     /* Virtual folders. */
     if ($this->getOption('inc_vfolder')) {
         $iterator = IMP_Search_IteratorFilter::create(IMP_Search_IteratorFilter::VFOLDER);
         $vfolder_list = array();
         foreach ($iterator as $val) {
             $form_to = IMP_Mailbox::formTo($val);
             $vfolder_list[] = array('l' => $filter->filter($val->label, 'space2html', array('encode' => true)), 'sel' => !empty($this->_nodes[$form_to]['selected']), 'v' => $form_to);
         }
         if (!empty($vfolder_list)) {
             $view->vfolder = $vfolder_list;
         }
     }
     /* Add the list of editable tasklists to the list. */
     if ($this->getOption('inc_tasklists')) {
         $tasklist = new IMP_Indices_Copy_Tasklist();
         $view->tasklist = array();
         foreach ($tasklist->getTasklists() as $key => $val) {
             $view->tasklist[] = array('l' => $filter->filter($val->get('name'), 'space2html', array('encode' => true)), 'v' => $key);
         }
     }
     /* Add the list of editable notepads to the list. */
     if ($this->getOption('inc_notepads')) {
         $notepad = new IMP_Indices_Copy_Notepad();
         $view->notepad = array();
         foreach ($notepad->getNotepads() as $key => $val) {
             $view->notepad[] = array('l' => $filter->filter($val->get('name'), 'space2html', array('encode' => true)), 'v' => $key);
         }
     }
     /* Prepare filter list. */
     $this->_filter = ($filter = $this->getOption('filter')) ? array_flip($filter) : array();
     $tree = '';
     foreach ($this->_tree->getRootNodes() as $node_id) {
         $tree .= $this->_buildTree($node_id);
     }
     $view->tree = $tree;
     return $view->render('flist');
 }