/** * Create the set of panels to use. * @access private */ protected function _add_panels() { parent::_add_panels(); $this->add_panels_after('project'); if (!$this->_folder->is_organizational()) { $branch_panel_class_name = $this->app->final_class_name('BRANCH_PANEL', ''); $branch_query = $this->_folder->branch_query(); $panel = new $branch_panel_class_name($this, $branch_query); $this->add_panel($panel); $comp_panel_class_name = $this->app->final_class_name('COMPONENT_PANEL', ''); $comp_query = $this->_folder->component_query(); $panel = new $comp_panel_class_name($this, $comp_query); $this->add_panel($panel); $release_panel_class_name = $this->app->final_class_name('RELEASE_PANEL', ''); $release_query = $this->_folder->release_query(); $panel = new $release_panel_class_name($this, $release_query); $this->add_panel($panel); $pending_release_query = $this->_folder->release_query(); $pending_release_query->set_up_pending(); $panel = new $release_panel_class_name($this, $pending_release_query); $panel->id = 'pending_releases'; $panel->title = 'Pending releases'; $this->add_panel($panel); $job_panel_class_name = $this->app->final_class_name('ENTRY_PANEL', '', 'job'); $job_type_info = $this->app->type_info_for('JOB', 'projects/obj/job.php'); $job_query = $this->_folder->entry_query(); $job_query->set_type('job'); $this->add_panels_after('job'); $in_progress_job_query = clone $job_query; $in_progress_job_query->restrict("status = 3"); $panel = new $job_panel_class_name($this, $in_progress_job_query, $job_type_info); $panel->id = 'in_progress_jobs'; $panel->title = 'Jobs in progress'; $this->add_panel($panel); $scheduled_job_query = clone $job_query; restrict_to_open($scheduled_job_query); restrict_to_scheduled($scheduled_job_query); $panel = new $job_panel_class_name($this, $scheduled_job_query, $job_type_info); $panel->id = 'scheduled_jobs'; $panel->title = 'Scheduled jobs'; $this->add_panel($panel); $unscheduled_job_query = clone $job_query; restrict_to_open($unscheduled_job_query); restrict_to_unscheduled($unscheduled_job_query); $panel = new $job_panel_class_name($this, $unscheduled_job_query, $job_type_info); $panel->id = 'unscheduled_jobs'; $panel->title = 'Unscheduled jobs'; $this->add_panel($panel); $open_job_query = clone $job_query; restrict_to_open($open_job_query); $panel = new $job_panel_class_name($this, $open_job_query, $job_type_info); $panel->id = 'open_jobs'; $panel->title = 'Open jobs'; $this->add_panel($panel); $closed_job_query = clone $job_query; restrict_to_closed($closed_job_query); $panel = new $job_panel_class_name($this, $closed_job_query, $job_type_info); $panel->id = 'closed_jobs'; $panel->title = 'Closed jobs'; $this->add_panel($panel); $unassigned_job_query = clone $job_query; $unassigned_job_query->restrict("assignee_id = 0"); $panel = new $job_panel_class_name($this, $unassigned_job_query, $job_type_info); $panel->id = 'unassigned_jobs'; $panel->title = 'Unassigned jobs'; $this->add_panel($panel); $this->move_panel_to('pending_releases', 0, Panel_selection); $this->move_panel_to('in_progress_jobs', 1, Panel_selection); $this->move_panel_to('scheduled_jobs', 2, Panel_selection); $this->move_panel_to('open_jobs', 3, Panel_selection); $this->move_panel_to('unassigned_jobs', 4, Panel_selection); $this->move_panel_to('job', 5, Panel_selection); $this->move_panel_to('change', 6, Panel_selection); } }
/** * Create the set of panels to use. * @access private */ protected function _add_panels() { parent::_add_panels(); _configure_album_panels($this); /* Select albums if there are any, then pictures and journals. */ $this->move_panel_to('album', 0, Panel_selection); if (!$this->_folder->is_organizational()) { $this->move_panel_to('picture', 1, Panel_selection); $this->move_panel_to('journal', 2, Panel_selection); } }