Add helper for tree views and use it
This commit is contained in:
@@ -6,19 +6,23 @@ class Projects extends CI_Controller {
|
||||
* List all projects the user has access to.
|
||||
*/
|
||||
public function getAvailable() {
|
||||
$this->load->model('Project');
|
||||
$this->load->model('project');
|
||||
$this->load->helper('tree');
|
||||
|
||||
$path = $this->input->get_post('node');
|
||||
|
||||
switch($path) {
|
||||
case '/projects/own':
|
||||
$projects = $this->Project->getOwn();
|
||||
$projects = $this->project->getOwn();
|
||||
array_walk($projects, 'set_tree_icons', base_url() . 'assets/images/icons/document.png');
|
||||
break;
|
||||
case '/projects/shared':
|
||||
$projects = $this->Project->getShared();
|
||||
$projects = $this->project->getShared();
|
||||
array_walk($projects, 'set_tree_icons', base_url() . 'assets/images/icons/document.png');
|
||||
break;
|
||||
case '/projects/public':
|
||||
$projects = $this->Project->getPublic();
|
||||
$projects = $this->project->getPublic();
|
||||
array_walk($projects, 'set_tree_icons', base_url() . 'assets/images/icons/document.png');
|
||||
break;
|
||||
default:
|
||||
$projects = array(
|
||||
|
||||
9
application/helpers/tree_helper.php
Normal file
9
application/helpers/tree_helper.php
Normal file
@@ -0,0 +1,9 @@
|
||||
<?php defined('BASEPATH') || exit("No direct script access allowed");
|
||||
|
||||
if (!function_exists('set_tree_icons')) {
|
||||
function set_tree_icons(&$value, $key, $icon) {
|
||||
if (isset($value['text']) && !isset($value['icon'])) {
|
||||
$value['icon'] = $icon;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,7 +1,7 @@
|
||||
<?php
|
||||
|
||||
class Project extends CI_Model {
|
||||
|
||||
|
||||
public function getOwn() {
|
||||
$query = $this->db->where(array('owner' => '215cd70f310ae6ae'))
|
||||
->order_by('lastaccess', 'desc')
|
||||
@@ -15,18 +15,17 @@ class Project extends CI_Model {
|
||||
$ownProjects[$i]['cls'] = 'folder';
|
||||
$ownProjects[$i]['text'] = $project['name'];
|
||||
$ownProjects[$i]['leaf'] = true;
|
||||
$ownProjects[$i]['icon'] = "/ScattPort/assets/images/icons/document.png";
|
||||
$i++;
|
||||
}
|
||||
|
||||
|
||||
return $ownProjects;
|
||||
}
|
||||
|
||||
|
||||
public function getShared() {
|
||||
$this->db->select('*')->from('shares')->order_by('lastaccess', 'desc')->where(array('user_id' => '215cd70f310ae6ae'));
|
||||
$this->db->join('projects', 'projects.id = shares.project_id');
|
||||
$query = $this->db->get();
|
||||
|
||||
|
||||
$projects = $query->result_array();
|
||||
$sharedCount = $query->num_rows();
|
||||
|
||||
@@ -36,13 +35,12 @@ class Project extends CI_Model {
|
||||
$sharedProjects[$i]['cls'] = 'folder';
|
||||
$sharedProjects[$i]['text'] = $project['name'];
|
||||
$sharedProjects[$i]['leaf'] = true;
|
||||
$sharedProjects[$i]['icon'] = "/ScattPort/assets/images/icons/document.png";
|
||||
$i++;
|
||||
}
|
||||
|
||||
|
||||
return $sharedProjects;
|
||||
}
|
||||
|
||||
|
||||
public function getPublic() {
|
||||
$query = $this->db->where(array('public' => '1'))
|
||||
->order_by('name', 'asc')
|
||||
@@ -56,10 +54,9 @@ class Project extends CI_Model {
|
||||
$publicProjects[$i]['cls'] = 'folder';
|
||||
$publicProjects[$i]['text'] = $project['name'];
|
||||
$publicProjects[$i]['leaf'] = true;
|
||||
$publicProjects[$i]['icon'] = "/ScattPort/assets/images/icons/document.png";
|
||||
$i++;
|
||||
}
|
||||
|
||||
|
||||
return $publicProjects;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user