.
if (!defined('EG')) die('Direct access not allowed!');
class SoundcardsController extends GenericController
{
public function __construct($model, $controller, $queryString)
{
$this->_topMenuClasses['hardware'] = " class='currentitem'";
parent::__construct($model, $controller, $queryString);
//load the model
$this->model('HardwareModel');
$this->model('RevisionsModel');
$this->model('SoundcardsModel');
$this->model('TalkModel');
$this->mod = $this->m['SoundcardsModel'];
$this->m['HardwareModel']->id_user = $this->s['registered']->status['id_user'];
$this->m['HardwareModel']->type = 'soundcard';
//hardware conditions
$this->m['HardwareModel']->strongConditions['update'] = array(
"checkNotEmpty" => "model|you have to fill the model name entry",
"checkMatch|/^[a-zA-Z0-9\-\_\.\+\s\(\)\@\[\]\/]+$/" => "model|characters not allowed in the model name entry",
"+checkMatch|/^[a-zA-Z0-9]{4}(\:)[a-zA-Z0-9]{4}$/" => "pci_id|VendorID:ProductID has to have the following format: [a-zA-Z0-9]{4}(\:)[a-zA-Z0-9]{4}",
"checkLength|99" => "model",
"+checkLength|299" => "distribution",
"++checkIsStrings|".Wifi::$commYear => "comm_year",
"+++checkIsStrings|".Soundcards::$audioSelect => "sound_card_works",
"++++checkIsStrings|".Soundcards::$interface => "interface",
);
$this->m['HardwareModel']->strongConditions['insert'] = array(
"checkNotEmpty" => "model|you have to fill the model name entry",
"checkMatch|/^[a-zA-Z0-9\-\_\.\+\s\(\)\@\[\]\/]+$/" => "model|characters not allowed in the model name entry",
"+checkMatch|/^[a-zA-Z0-9]{4}(\:)[a-zA-Z0-9]{4}$/" => "pci_id|VendorID:ProductID has to have the following format: [a-zA-Z0-9]{4}(\:)[a-zA-Z0-9]{4}",
"checkLength|99" => "model",
"+checkLength|299" => "distribution",
"++checkIsStrings|".Wifi::$commYear => "comm_year",
"+++checkIsStrings|".Soundcards::$audioSelect => "sound_card_works",
"++++checkIsStrings|".Soundcards::$interface => "interface",
);
$this->m['HardwareModel']->softConditions['update'] = array(
"checkMatch|/^[a-zA-Z0-9\-\_\.\+\s]+$/" => "kernel|characters not allowed in the kernel entry",
"checkLength|20000" => "description",
"+checkLength|49" => "kernel",
"++checkLength|49" => "driver",
"++checkMatch|/^[a-zA-Z0-9\-\_\.\+\s\/\,\:\;\(\)\[\]]+$/" => "driver|only the following characters are allowed for the driver entry: a-z A-Z 0-9 - _ . + s / , : ; ( ) [ ]",
"+++checkLength|1000" => "other_names|the other names entry exceeds the value of 1000 characters",
);
$this->m['HardwareModel']->softConditions['insert'] = array(
"checkMatch|/^[a-zA-Z0-9\-\_\.\+\s]+$/" => "kernel|characters not allowed in the kernel entry",
"checkLength|20000" => "description",
"+checkLength|49" => "kernel",
"++checkLength|49" => "driver",
"++checkMatch|/^[a-zA-Z0-9\-\_\.\+\s\/\,\:\;\(\)\[\]]+$/" => "driver|only the following characters are allowed for the driver entry: a-z A-Z 0-9 - _ . + s / , : ; ( ) [ ]",
"+++checkLength|1000" => "other_names|the other names entry exceeds the value of 1000 characters",
);
$this->m['HardwareModel']->setFields('model,kernel,description,distribution,comm_year,sound_card_works,pci_id,interface,driver,other_names','sanitizeAll');
$argKeys = array(
'page:forceNat' => 1,
'history_page:forceNat' => 1,
'vendor:sanitizeString' => 'undef',
'comm_year:sanitizeString' => 'undef',
'sound_card_works:sanitizeString' => 'undef',
'interface:sanitizeString' => 'undef',
'sort-by:sanitizeString' => 'undef'
);
$this->setArgKeys($argKeys);
$data['title'] = 'Soundcard';
$data['intefaceOptions'] = Soundcards::$interface;
$data['worksOptions'] = Soundcards::$audioSelect;
$data['worksField'] = 'sound_card_works';
$this->append($data);
}
public function catalogue($lang = 'en')
{
$this->shift(1);
$whereArray = array(
'type' => $this->mod->type,
'vendor' => $this->viewArgs['vendor'],
'comm_year' => $this->viewArgs['comm_year'],
'sound_card_works' => $this->viewArgs['sound_card_works'],
'interface' => $this->viewArgs['interface'],
);
$this->mod->setWhereQueryClause($whereArray);
parent::catalogue($lang);
}
public function view($lang = 'en', $id = 0, $name = null)
{
parent::view($lang, $id, $name);
}
public function history($lang = 'en', $id = 0)
{
parent::history($lang, $id);
}
public function revision($lang = 'en', $id_rev = 0)
{
parent::revision($lang, $id_rev);
}
public function insert($lang = 'en', $token = '')
{
parent::insert($lang, $token);
}
public function update($lang = 'en', $token = '')
{
parent::update($lang, $token);
}
public function differences($lang = 'en', $id_hard = 0, $id_rev = 0)
{
parent::differences($lang, $id_hard, $id_rev);
}
public function climb($lang = 'en', $id_rev = 0, $token = '')
{
parent::climb($lang, $id_rev, $token);
}
public function talk($lang = 'en', $id_hard = 0, $token = '')
{
parent::talk($lang, $id_hard, $token);
}
}