File: D:/HostingSpaces/RClaassen/stay-on-track.nl/wwwroot/vacatures/application/libraries/listview.php
<?php
if ( ! defined('BASEPATH')) {
exit('No direct script access allowed');
}
class Listview {
protected $actions = array();
protected $list;
protected $key;
protected $baseUrl;
protected $omitColumns;
public function __construct() {
$this->omitColumns = array();
$this->actions = array('show', 'edit', 'delete');
}
public function renderlist() {
if(is_array($this->list) && sizeof($this->list) > 0) {
$firstRow = get_object_vars($this->list[0]);
$listKeys = array_keys($firstRow);
$returnList = '<table>' . PHP_EOL;
$returnList .= '<tr>';
foreach($listKeys as $columnName) {
if($columnName !== $this->key && !in_array($columnName, $this->omitColumns)) {
$returnList .= '<th>' . $columnName . '</th>';
}
}
$returnList .= '</tr>' . PHP_EOL;
foreach($this->list as $row) {
$returnList .= '<tr>';
foreach($listKeys as $columnName) {
if($columnName !== $this->key && !in_array($columnName, $this->omitColumns)) {
$returnList .= '<td>';
if(strlen($row->$columnName) > 0) {
$returnList .= $row->$columnName;
} else {
$returnList .= ' ';
}
$returnList .= '</td>';
}
}
$returnList .= '<td>';
foreach($this->actions as $action) {
$key = $this->key;
$returnList .= '<a href="' . $this->baseUrl . '/' . $action . '/' . $row->$key . '" class="icon ' . $action . '"></span>';
}
$returnList .= '</tr>' . PHP_EOL;
}
$returnList .= '</table>' . PHP_EOL;
} else {
$returnList = 'Geen resultaten gevonden';
}
return $returnList;
}
public function setList($list) {
$this->list = $list;
}
public function setKey($key) {
$this->key = $key;
}
public function setBaseUrl($baseUrl) {
$this->baseUrl = $baseUrl;
}
public function setOmitColumns($omitColumns) {
$this->omitColumns = $omitColumns;
}
}