Moving some of the monitor options to the controller

This commit is contained in:
Kyle Johnson 2013-09-06 15:00:01 -04:00
parent c5196407a9
commit 6a9ce02870
1 changed files with 109 additions and 4 deletions

View File

@ -4,7 +4,8 @@
public function index() { public function index() {
$zmBandwidth = $this->Cookie->read('zmBandwidth'); $zmBandwidth = $this->Cookie->read('zmBandwidth');
$monitoroptions = array( 'fields' => array('Name', 'Id', 'Function'), 'recursive' => -1); $this->set('thumb_width', Configure::read('ZM_WEB_LIST_THUMB_WIDTH'));
$monitoroptions = array( 'fields' => array('Name', 'Id', 'Function', 'Enabled'), 'recursive' => -1);
$this->set('monitors', $this->Monitor->find('all', $monitoroptions)); $this->set('monitors', $this->Monitor->find('all', $monitoroptions));
$monitors = $this->Monitor->find('all', array('recursive' => -1, 'fields' => array('Id', 'StreamReplayBuffer'))); $monitors = $this->Monitor->find('all', array('recursive' => -1, 'fields' => array('Id', 'StreamReplayBuffer')));
foreach ($monitors as $monitor => $mon) { foreach ($monitors as $monitor => $mon) {
@ -40,6 +41,110 @@
if (!$monitor) { if (!$monitor) {
throw new NotFoundException(__('Invalid monitor')); throw new NotFoundException(__('Invalid monitor'));
} }
$this->set('monitor', $monitor['Monitor']);
$typeoptions = array(
'Local' => 'Local',
'Remote' => 'Remote',
'File' => 'File',
'Ffmpeg' => 'Ffmpeg'
);
$this->set('typeoptions', $typeoptions);
$functionoptions = array(
'Modect' => 'Modect',
'Monitor' => 'Monitor',
'Record' => 'Record',
'None' => 'None',
'Nodect' => 'Nodect',
'Mocord' => 'Mocord'
);
$this->set('functionoptions', $functionoptions);
$protocoloptions = array(
'rtsp' => 'RTSP',
'http' => 'HTTP'
);
$this->set('protocoloptions', $protocoloptions);
$methodoptions = array(
'simple' => 'Simple',
'regexp' => 'Regexp'
);
$this->set('methodoptions', $methodoptions);
$optionsColours = array(
1 => '8 bit grayscale',
3 => '24 bit color',
4 => '32 bit color'
);
$this->set('optionsColours', $optionsColours);
$channeloptions = array();
for ($i=1; $i<32; $i++) {
array_push($channeloptions, $i);
}
$this->set('channeloptions', $channeloptions);
$formatoptions = array(
255 => "PAL",
45056 => "NTSC",
1 => "PAL B",
2 => "PAL B1",
4 => "PAL G",
8 => "PAL H",
16 => "PAL I",
32 => "PAL D",
64 => "PAL D1",
128 => "PAL K",
256 => "PAL M",
512 => "PAL N",
1024 => "PAL Nc",
2048 => "PAL 60",
4096 => "NTSC M",
8192 => "NTSC M JP",
16384 => "NTSC 443",
32768 => "NTSC M KR",
65536 => "SECAM B",
131072 => "SECAM D",
262144 => "SECAM G",
524288 => "SECAM H",
1048576 => "SECAM K",
2097152 => "SECAM K1",
4194304 => "SECAM L",
8388608 => "SECAM LC",
16777216 => "ATSC 8 VSB",
33554432 => "ATSC 16 VSB"
);
$this->set('formatoptions', $formatoptions);
$optionsPalette = array(
0 => 'Auto',
1497715271 => 'Gray',
877807426 => 'BGR32',
876758866 => 'RGB32',
861030210 => 'BGR24',
859981650 => 'RGB24',
1448695129 => '*YUYV',
1195724874 => '*JPEG',
1196444237 => '*MJPEG',
875836498 => '*RGB444',
1329743698 => '*RGB555',
1346520914 => '*RGB565',
1345466932 => '*YUV422P',
1345401140 => '*YUV411P',
875836505 => '*YUV444',
961959257 => '*YUV410',
842093913 => '*YUV420'
);
$this->set('optionsPalette', $optionsPalette);
$optionsMethod = array(
'v4l2' => 'Video For Linux 2'
);
$this->set('optionsMethod', $optionsMethod);
$this->set('linkedMonitors', $this->Monitor->find('list', array('fields' => array('Id', 'Name'))));
if ($this->request->is('put') || $this->request->is('post')) { if ($this->request->is('put') || $this->request->is('post')) {
$this->Monitor->id = $id; $this->Monitor->id = $id;