#!/usr/bin/php
<?php

namespace {

if ($argc < 4) { throw new \Exception('Insufficient arguments'); }
require_once('/usr/share/ombutel/www/includes/cli.php');

} //namespace

namespace status_report {

use config;
use ombutel\db;
use ombutel\extension;
use ombutel\room;

list(, $extension_number, $status, $user) = $argv;

if(($extension = extension::find_by_extension($extension_number)) != null) {
	if(($room = room::find_by_extension_id($extension->extension_id)) != null) {
		$output_code = "RE|RN{$room->number}|RS{$status}|";
		if ($user != '') {
			$output_code .= "ID{$user}|";
		}

		$result = db::query("select `value` from `hospitality`.`settings` where `name` = 'pms_timezone'");
		foreach ($result as $row) {
			$datetime = new \DateTime('now', new \DateTimeZone($row->value));
			$date = $datetime->format('ymd');
			$time = $datetime->format('His');
			$output_code .= "DA{$date}|TI{$time}|";
			break;
		}

		db::query("insert into `hospitality`.`bufferout` (`buffer`, `date`)
			values (?, date_format(now(),'%y/%m/%d %H:%i:%s'))",
			$output_code);
	}
}

} //namespace

?>
