diff options
Diffstat (limited to 'codebase')
269 files changed, 11561 insertions, 1827 deletions
diff --git a/codebase/connector/base_connector.php b/codebase/connector/base_connector.php index 26f1f8b..cb44b15 100644 --- a/codebase/connector/base_connector.php +++ b/codebase/connector/base_connector.php @@ -282,38 +282,38 @@ class DataItem{ Can be used on its own to provide raw data. **/ class Connector { + + private $id_seed=0; //!< default value, used to generate auto-IDs + private $db; //!< db connection resource + protected $config;//DataConfig instance protected $request;//DataRequestConfig instance protected $names;//!< hash of names for used classes protected $encoding="utf-8";//!< assigned encoding (UTF-8 by default) protected $editing=false;//!< flag of edit mode ( response for dataprocessor ) + protected $updating=false;//!< flag of update mode ( response for data-update ) + protected $dload;//!< flag of dyn. loading mode + protected $data_separator = "\n"; + protected $live_update = false; // actions table name for autoupdating + protected $live_update_data_type = "DataUpdate"; + protected $extra_output="";//!< extra info which need to be sent to client side + protected $options=array();//!< hash of OptionsConnector + protected $as_string = false; // render() returns string, don't send result in response + protected $simple = false; // render only data without any other info + protected $filters; + protected $sorts; + protected $mix; + protected $order = false; public static $filter_var="dhx_filter"; public static $sort_var="dhx_sort"; public static $kids_var="dhx_kids"; - public $model=false; - - private $updating=false;//!< flag of update mode ( response for data-update ) - private $db; //!< db connection resource - protected $dload;//!< flag of dyn. loading mode - public $access; //!< AccessMaster instance - protected $data_separator = "\n"; - - public $sql; //DataWrapper instance - public $event; //EventMaster instance - public $limit=false; - - private $id_seed=0; //!< default value, used to generate auto-IDs - protected $live_update = false; // actions table name for autoupdating - protected $extra_output="";//!< extra info which need to be sent to client side - protected $options=array();//!< hash of OptionsConnector - protected $as_string = false; // render() returns string, don't send result in response - protected $simple = false; // render only data without any other info - protected $filters; - protected $sorts; - protected $mix; - protected $order = false; + public $model=false; + public $access; //!< AccessMaster instance + public $sql; //DataWrapper instance + public $event; //EventMaster instance + public $limit=false; /*! constructor @@ -419,7 +419,7 @@ class Connector { $id = $info["key"]; } $this->config->init($id,$fields,$extra,$relation_id); - if (strpos(trim($table), " ")!==false) + if (is_string($table) && strpos(trim($table), " ")!==false) $this->request->parse_sql($table); else $this->request->set_source($table); @@ -700,6 +700,9 @@ class Connector { */ public function set_encoding($encoding){ $this->encoding=$encoding; + if ($this->live_update !== false) { + $this->live_update->set_encoding($this->encoding); + } } /*! enable or disable dynamic loading mode @@ -810,6 +813,10 @@ class Connector { $this->options[$name]=$options; } + public function get_options() { + return $this->options; + } + public function insert($data) { $action = new DataAction('inserted', false, $data); @@ -850,9 +857,10 @@ class Connector { @param url url used for update notifications */ - public function enable_live_update($table, $url=false){ - $this->live_update = new DataUpdate($this->sql, $this->config, $this->request, $table,$url); + public function enable_live_update($table, $url=false, $origin_table = false){ + $this->live_update = new $this->live_update_data_type($this->sql, $this->config, $this->request, $table,$url, array("connector" => $this, "table" => $origin_table)); $this->live_update->set_event($this->event,$this->names["item_class"]); + $this->live_update->set_encoding($this->encoding); $this->event->attach("beforeOutput", Array($this->live_update, "version_output")); $this->event->attach("beforeFiltering", Array($this->live_update, "get_updates")); $this->event->attach("beforeProcessing", Array($this->live_update, "check_collision")); diff --git a/codebase/connector/combo_connector.php b/codebase/connector/combo_connector.php index 8fb5416..0e2fb85 100644 --- a/codebase/connector/combo_connector.php +++ b/codebase/connector/combo_connector.php @@ -25,7 +25,7 @@ class ComboDataItem extends DataItem{ function to_xml_start(){ if ($this->skip) return ""; - return "<option ".($this->selected?"selected='true'":"")."value='".$this->xmlentities($this->get_id())."'><![CDATA[".$this->data[$this->config->text[0]["name"]]."]]>"; + return "<option ".($this->selected?"selected='true' ":"")."value='".$this->xmlentities($this->get_id())."'><![CDATA[".$this->data[$this->config->text[0]["name"]]."]]>"; } /*! return self as XML string, ending part */ diff --git a/codebase/connector/db_common.php b/codebase/connector/db_common.php index f6391d2..eddc7ad 100644 --- a/codebase/connector/db_common.php +++ b/codebase/connector/db_common.php @@ -8,6 +8,8 @@ require_once("tools.php"); /*! manager of data request **/ class DataRequestConfig{ + + private $action_mode = ""; private $filters; //!< array of filtering rules private $relation=false; //!< ID or other element used for linking hierarchy private $sort_by; //!< sorting field @@ -52,6 +54,7 @@ class DataRequestConfig{ $this->relation =$proto->get_relation(); $this->user = $proto->user; $this->version = $proto->version; + $this->action_mode = $proto->action_mode; } /*! convert self to string ( for logs ) @@ -69,6 +72,15 @@ class DataRequestConfig{ return $str; } + public function set_action_mode($action_mode) { + $this->action_mode = $action_mode; + return $this; + } + + public function get_action_mode() { + return $this->action_mode; + } + /*! returns set of filtering rules @return set of filtering rules @@ -205,7 +217,6 @@ class DataRequestConfig{ if (is_string($value)) $value = trim($value); $this->source = $value; - if (!$this->source) throw new Exception("Source of data can't be empty"); } /*! sets data limits diff --git a/codebase/connector/db_phpcake.php b/codebase/connector/db_phpcake.php index 4df0289..92b5134 100644 --- a/codebase/connector/db_phpcake.php +++ b/codebase/connector/db_phpcake.php @@ -11,75 +11,76 @@ require_once("db_common.php"); if you plan to use it for Oracle - use Oracle connection type instead **/ -class PHPCakeDBDataWrapper extends ArrayDBDataWrapper{ - public function select($sql){ - $source = $sql->get_source(); - if (is_array($source)) //result of find - $res = $source; - else - $res = $this->connection->find("all"); - - $temp = array(); - if (sizeof($res)){ - $name = get_class($this->connection); - for ($i=sizeof($res)-1; $i>=0; $i--) - $temp[]=&$res[$i][$name]; - } - return new ArrayQueryWrapper($temp); - } - - protected function getErrorMessage(){ - $errors = $this->connection->invalidFields(); - $text = array(); - foreach ($errors as $key => $value){ - $text[] = $key." - ".$value[0]; - } - return implode("\n", $text); - } - - public function insert($data,$source){ - $name = get_class($this->connection); - $save = array(); - $temp_data = $data->get_data(); - unset($temp_data[$this->config->id['db_name']]); - unset($temp_data["!nativeeditor_status"]); - $save[$name] = $temp_data; - - if ($this->connection->save($save)){ - $data->success($this->connection->getLastInsertID()); - } else { - $data->set_response_attribute("details", $this->getErrorMessage()); - $data->invalid(); - } - } - public function delete($data,$source){ - $id = $data->get_id(); - $this->connection->delete($id); - $data->success(); - } - public function update($data,$source){ - $name = get_class($this->connection); - $save = array(); - $save[$name] = &$data->get_data(); - - if ($this->connection->save($save)){ - $data->success(); - } else { - $data->set_response_attribute("details", $this->getErrorMessage()); - $data->invalid(); - } - } - - - public function escape($str){ - throw new Exception("Not implemented"); - } - public function query($str){ - throw new Exception("Not implemented"); - } - public function get_new_id(){ - throw new Exception("Not implemented"); - } +class PHPCakeDBDataWrapper extends ArrayDBDataWrapper { + + public function select($source) { + $sourceData = $source->get_source(); + if(is_array($sourceData)) //result of find + $query = $sourceData; + else + $query = $sourceData->find("all"); + + $temp = array(); + foreach($query as $row) + $temp[] = $row->toArray(); + + return new ArrayQueryWrapper($temp); + } + + protected function getErrorMessage() { + $errors = $this->connection->invalidFields(); + $text = array(); + foreach ($errors as $key => $value){ + $text[] = $key." - ".$value[0]; + } + return implode("\n", $text); + } + + public function insert($data, $source) { + $sourceData = $source->get_source(); + $obj = $sourceData->newEntity(); + $obj = $this->fillModel($obj, $data); + $savedResult = $source->get_source()->save($obj); + $data->success($savedResult->get($this->config->id["db_name"])); + } + + public function delete($data, $source) { + $sourceData = $source->get_source(); + $obj = $sourceData->get($data->get_id()); + $source->get_source()->delete($obj); + } + + public function update($data, $source) { + $sourceData = $source->get_source(); + $obj = $sourceData->get($data->get_id()); + $obj = $this->fillModel($obj, $data); + $sourceData->save($obj); + } + + private function fillModel($obj, $data) { + //Map data to model object. + for($i = 0; $i < count($this->config->text); $i++) { + $step=$this->config->text[$i]; + $obj->set($step["name"], $data->get_value($step["name"])); + } + + if($relation = $this->config->relation_id["db_name"]) + $obj->set($relation, $data->get_value($relation)); + + return $obj; + } + + public function escape($str){ + throw new Exception("Not implemented"); + } + + public function query($str){ + throw new Exception("Not implemented"); + } + + public function get_new_id(){ + throw new Exception("Not implemented"); + } } ?>
\ No newline at end of file diff --git a/codebase/connector/db_phpcake2.php b/codebase/connector/db_phpcake2.php new file mode 100644 index 0000000..76a941d --- /dev/null +++ b/codebase/connector/db_phpcake2.php @@ -0,0 +1,85 @@ +<?php +/* + @author dhtmlx.com + @license GPL, see license.txt +*/ +require_once("db_common.php"); + +//DataProcessor::$action_param ="dhx_editor_status"; + +/*! Implementation of DataWrapper for PDO + +if you plan to use it for Oracle - use Oracle connection type instead +**/ +class PHPCake2DBDataWrapper extends ArrayDBDataWrapper{ + public function select($sql){ + $source = $sql->get_source(); + if (is_array($source)) //result of find + $res = $source; + else + $res = $this->connection->find("all"); + + $temp = array(); + if (sizeof($res)){ + $name = get_class($this->connection); + for ($i=sizeof($res)-1; $i>=0; $i--) + $temp[]=&$res[$i][$name]; + } + return new ArrayQueryWrapper($temp); + } + + protected function getErrorMessage(){ + $errors = $this->connection->invalidFields(); + $text = array(); + foreach ($errors as $key => $value){ + $text[] = $key." - ".$value[0]; + } + return implode("\n", $text); + } + + public function insert($data,$source){ + $name = get_class($this->connection); + $save = array(); + $temp_data = $data->get_data(); + unset($temp_data[$this->config->id['db_name']]); + unset($temp_data["!nativeeditor_status"]); + $save[$name] = $temp_data; + + if ($this->connection->save($save)){ + $data->success($this->connection->getLastInsertID()); + } else { + $data->set_response_attribute("details", $this->getErrorMessage()); + $data->invalid(); + } + } + public function delete($data,$source){ + $id = $data->get_id(); + $this->connection->delete($id); + $data->success(); + } + public function update($data,$source){ + $name = get_class($this->connection); + $save = array(); + $save[$name] = &$data->get_data(); + + if ($this->connection->save($save)){ + $data->success(); + } else { + $data->set_response_attribute("details", $this->getErrorMessage()); + $data->invalid(); + } + } + + + public function escape($str){ + throw new Exception("Not implemented"); + } + public function query($str){ + throw new Exception("Not implemented"); + } + public function get_new_id(){ + throw new Exception("Not implemented"); + } +} + +?>
\ No newline at end of file diff --git a/codebase/connector/db_phpci.php b/codebase/connector/db_phpci.php index e38d831..15ed95f 100644 --- a/codebase/connector/db_phpci.php +++ b/codebase/connector/db_phpci.php @@ -44,16 +44,24 @@ class PHPCIDBDataWrapper extends DBDataWrapper{ } class PHPCIResultSet{ + private $is_result_done = false; private $res; private $start; private $count; public function __construct($res){ + if(is_bool($res)) { + $this->$is_result_done = true; + return $this; + } $this->res = $res; $this->start = $res->current_row; - $this->count = $res->num_rows; + $this->count = $res->num_rows(); } public function next(){ + if($this->is_result_done) + return null; + if ($this->start != $this->count){ return $this->res->row($this->start++,'array'); } else { diff --git a/codebase/connector/db_phpci2.php b/codebase/connector/db_phpci2.php new file mode 100644 index 0000000..e963211 --- /dev/null +++ b/codebase/connector/db_phpci2.php @@ -0,0 +1,65 @@ +<?php +/* + @author dhtmlx.com + @license GPL, see license.txt +*/ +require_once("db_common.php"); + +/*! Implementation of DataWrapper for PDO + +if you plan to use it for Oracle - use Oracle connection type instead +**/ +class PHPCI2DBDataWrapper extends DBDataWrapper{ + private $last_result;//!< store result or last operation + + public function query($sql){ + LogMaster::log($sql); + + $res=$this->connection->query($sql); + if ($res===false) { + throw new Exception("CI - sql execution failed"); + } + + if (is_object($res)) + return new PHPCIResultSet($res); + return new ArrayQueryWrapper(array()); + } + + public function get_next($res){ + $data = $res->next(); + return $data; + } + + public function get_new_id(){ + return $this->connection->insert_id(); + } + + public function escape($str){ + return $this->connection->escape_str($str); + } + + public function escape_name($data){ + return $this->connection->protect_identifiers($data); + } +} + +class PHPCIResultSet{ + private $res; + private $start; + private $count; + + public function __construct($res){ + $this->res = $res; + $this->start = $res->current_row; + $this->count = $res->num_rows; + } + public function next(){ + if ($this->start != $this->count){ + return $this->res->row($this->start++,'array'); + } else { + $this->res->free_result(); + return null; + } + } +} +?>
\ No newline at end of file diff --git a/codebase/connector/db_phpyii.php b/codebase/connector/db_phpyii.php index 616d7f3..1d8d5d1 100644 --- a/codebase/connector/db_phpyii.php +++ b/codebase/connector/db_phpyii.php @@ -6,86 +6,94 @@ require_once("db_common.php"); -class PHPYiiDBDataWrapper extends ArrayDBDataWrapper{ - public function select($sql){ - if (is_array($this->connection)) //result of findAll - $res = $this->connection; - else - $res = $this->connection->findAll(); - - $temp = array(); - if (sizeof($res)){ - foreach ($res as $obj) - $temp[]=$obj->getAttributes(); - } - return new ArrayQueryWrapper($temp); - } - - protected function getErrorMessage(){ - $errors = $this->connection->invalidFields(); - $text = array(); - foreach ($errors as $key => $value){ - $text[] = $key." - ".$value[0]; - } - return implode("\n", $text); - } - public function insert($data,$source){ - $name = get_class($this->connection); - $obj = new $name(); - - $this->fill_model_and_save($obj, $data); - } - public function delete($data,$source){ - $obj = $this->connection->findByPk($data->get_id()); - if ($obj->delete()){ - $data->success(); - $data->set_new_id($obj->getPrimaryKey()); - } else { - $data->set_response_attribute("details", $this->errors_to_string($obj->getErrors())); - $data->invalid(); - } - } - public function update($data,$source){ - $obj = $this->connection->findByPk($data->get_id()); - $this->fill_model_and_save($obj, $data); - } - - protected function fill_model_and_save($obj, $data){ - $values = $data->get_data(); - - //map data to model object - for ($i=0; $i < sizeof($this->config->text); $i++){ - $step=$this->config->text[$i]; - $obj->setAttribute($step["name"], $data->get_value($step["name"])); - } - if ($relation = $this->config->relation_id["db_name"]) - $obj->setAttribute($relation, $data->get_value($relation)); - - //save model - if ($obj->save()){ - $data->success(); - $data->set_new_id($obj->getPrimaryKey()); - } else { - $data->set_response_attribute("details", $this->errors_to_string($obj->getErrors())); - $data->invalid(); - } - } - - protected function errors_to_string($errors){ - $text = array(); - foreach($errors as $value) - $text[]=implode("\n", $value); - return implode("\n",$text); - } - public function escape($str){ - throw new Exception("Not implemented"); - } - public function query($str){ - throw new Exception("Not implemented"); - } - public function get_new_id(){ - throw new Exception("Not implemented"); - } +class PHPYiiDBDataWrapper extends ArrayDBDataWrapper { + + public function select($source) { + $sourceData = $source->get_source(); + if(is_array($sourceData)) //result of find + $res = $sourceData; + else + $res = $sourceData->find()->all(); + + $temp = array(); + if(sizeof($res)) { + foreach($res as $obj) + $temp[] = $obj->getAttributes(); + } + return new ArrayQueryWrapper($temp); + } + + protected function getErrorMessage() { + $errors = $this->connection->getErrors(); + $text = array(); + foreach($errors as $key => $value) + $text[] = $key." - ".$value[0]; + + return implode("\n", $text); + } + public function insert($data, $source) { + $name = get_class($source->get_source()); + $obj = new $name(); + $this->fill_model_and_save($obj, $data); + } + + public function delete($data, $source) { + $obj = $source->get_source()->findOne($data->get_id()); + if($obj->delete()) { + $data->success(); + $data->set_new_id($obj->getPrimaryKey()); + } + else { + $data->set_response_attribute("details", $this->errors_to_string($obj->getErrors())); + $data->invalid(); + } + } + + public function update($data, $source) { + $obj = $source->get_source()->findOne($data->get_id()); + $this->fill_model_and_save($obj, $data); + } + + protected function fill_model_and_save($obj, $data) { + //Map data to model object. + for($i=0; $i < sizeof($this->config->text); $i++) { + $step=$this->config->text[$i]; + $obj->setAttribute($step["name"], $data->get_value($step["name"])); + } + + if($relation = $this->config->relation_id["db_name"]) + $obj->setAttribute($relation, $data->get_value($relation)); + + //Save model. + if($obj->save()) { + $data->success(); + $data->set_new_id($obj->getPrimaryKey()); + } + else { + $data->set_response_attribute("details", $this->errors_to_string($obj->getErrors())); + $data->invalid(); + } + } + + protected function errors_to_string($errors) { + $text = array(); + foreach($errors as $value) + $text[] = implode("\n", $value); + + return implode("\n",$text); + } + + public function escape($str) { + throw new Exception("Not implemented"); + } + + public function query($str) { + throw new Exception("Not implemented"); + } + + public function get_new_id() { + throw new Exception("Not implemented"); + } } ?>
\ No newline at end of file diff --git a/codebase/connector/db_phpyii1.php b/codebase/connector/db_phpyii1.php new file mode 100644 index 0000000..bbbd943 --- /dev/null +++ b/codebase/connector/db_phpyii1.php @@ -0,0 +1,91 @@ +<?php +/* + @author dhtmlx.com + @license GPL, see license.txt +*/ + +require_once("db_common.php"); + +class PHPYii1DBDataWrapper extends ArrayDBDataWrapper{ + public function select($sql){ + if (is_array($this->connection)) //result of findAll + $res = $this->connection; + else + $res = $this->connection->findAll(); + + $temp = array(); + if (sizeof($res)){ + foreach ($res as $obj) + $temp[]=$obj->getAttributes(); + } + return new ArrayQueryWrapper($temp); + } + + protected function getErrorMessage(){ + $errors = $this->connection->invalidFields(); + $text = array(); + foreach ($errors as $key => $value){ + $text[] = $key." - ".$value[0]; + } + return implode("\n", $text); + } + public function insert($data,$source){ + $name = get_class($this->connection); + $obj = new $name(); + + $this->fill_model_and_save($obj, $data); + } + public function delete($data,$source){ + $obj = $this->connection->findByPk($data->get_id()); + if ($obj->delete()){ + $data->success(); + $data->set_new_id($obj->getPrimaryKey()); + } else { + $data->set_response_attribute("details", $this->errors_to_string($obj->getErrors())); + $data->invalid(); + } + } + public function update($data,$source){ + $obj = $this->connection->findByPk($data->get_id()); + $this->fill_model_and_save($obj, $data); + } + + protected function fill_model_and_save($obj, $data){ + $values = $data->get_data(); + + //map data to model object + for ($i=0; $i < sizeof($this->config->text); $i++){ + $step=$this->config->text[$i]; + $obj->setAttribute($step["name"], $data->get_value($step["name"])); + } + if ($relation = $this->config->relation_id["db_name"]) + $obj->setAttribute($relation, $data->get_value($relation)); + + //save model + if ($obj->save()){ + $data->success(); + $data->set_new_id($obj->getPrimaryKey()); + } else { + $data->set_response_attribute("details", $this->errors_to_string($obj->getErrors())); + $data->invalid(); + } + } + + protected function errors_to_string($errors){ + $text = array(); + foreach($errors as $value) + $text[]=implode("\n", $value); + return implode("\n",$text); + } + public function escape($str){ + throw new Exception("Not implemented"); + } + public function query($str){ + throw new Exception("Not implemented"); + } + public function get_new_id(){ + throw new Exception("Not implemented"); + } +} + +?>
\ No newline at end of file diff --git a/codebase/connector/gantt_connector.php b/codebase/connector/gantt_connector.php index 3577835..9bd9422 100644 --- a/codebase/connector/gantt_connector.php +++ b/codebase/connector/gantt_connector.php @@ -31,15 +31,36 @@ class GanttDataItem extends DataItem{ } } +class GanttLinkDataItem extends DataItem { + + public function to_xml_start(){ + $str="<item id='".$this->xmlentities($this->get_id())."'"; + for ($i=0; $i < sizeof($this->config->data); $i++){ + $name=$this->config->data[$i]["name"]; + $db_name=$this->config->data[$i]["db_name"]; + $str.=" ".$name."='".$this->xmlentities($this->data[$name])."'"; + } + //output custom data + if ($this->userdata !== false) + foreach ($this->userdata as $key => $value){ + $str.=" ".$key."='".$this->xmlentities($value)."'"; + } + + return $str.">"; + } + +} /*! Connector class for dhtmlxGantt **/ class GanttConnector extends Connector{ + private $action_mode = ""; + public $links_table = ""; + + protected $live_update_data_type = "GanttDataUpdate"; protected $extra_output="";//!< extra info which need to be sent to client side protected $options=array();//!< hash of OptionsConnector - protected $links_mode = false; - /*! assign options collection to the column @@ -87,8 +108,14 @@ class GanttConnector extends Connector{ function parse_request(){ parent::parse_request(); - if (isset($_GET["gantt_mode"]) && $_GET["gantt_mode"] == "links") - $this->links_mode = true; + $action_links = "links"; + if(isset($_GET["gantt_mode"]) && $_GET["gantt_mode"] == $action_links) { + $this->action_mode = $action_links; + $this->request->set_action_mode($action_links); + $this->options[$action_links]->request->set_action_mode($action_links); + $this->options[$action_links]->request->set_user($this->request->get_user()); + } + if (count($this->config->text)){ if (isset($_GET["to"])) @@ -119,11 +146,70 @@ class GanttConnector extends Connector{ } } - public function render_links($table,$id="",$fields=false,$extra=false,$relation_id=false) { + public function render_links($table,$id="",$fields=false,$extra=false) { $links = new GanttLinksConnector($this->get_connection(),$this->names["db_class"]); + + if($this->live_update) + $links->enable_live_update($this->live_update->get_table()); + $links->render_table($table,$id,$fields,$extra); $this->set_options("links", $links); + $this->links_table = $table; + } + + + /*! render self + process commands, output requested data as XML + */ + public function render(){ + $this->event->trigger("onInit", $this); + EventMaster::trigger_static("connectorInit",$this); + + if (!$this->as_string) + $this->parse_request(); + $this->set_relation(); + + if ($this->live_update !== false && $this->updating!==false) { + $this->live_update->get_updates(); + } else { + if ($this->editing){ + if (($this->action_mode == "links") && isset($this->options["links"])) { + $this->options["links"]->save(); + } else { + $dp = new $this->names["data_class"]($this,$this->config,$this->request); + $dp->process($this->config,$this->request); + } + } else { + if (!$this->access->check("read")){ + LogMaster::log("Access control: read operation blocked"); + echo "Access denied"; + die(); + } + $wrap = new SortInterface($this->request); + $this->apply_sorts($wrap); + $this->event->trigger("beforeSort",$wrap); + $wrap->store(); + + $wrap = new FilterInterface($this->request); + $this->apply_filters($wrap); + $this->event->trigger("beforeFilter",$wrap); + $wrap->store(); + + if ($this->model && method_exists($this->model, "get")){ + $this->sql = new ArrayDBDataWrapper(); + $result = new ArrayQueryWrapper(call_user_func(array($this->model, "get"), $this->request)); + $out = $this->output_as_xml($result); + } else { + $out = $this->output_as_xml($this->get_resource()); + + if ($out !== null) return $out; + } + + } + } + $this->end_run(); } + } /*! DataProcessor class for Gantt component @@ -174,6 +260,7 @@ class JSONGanttDataItem extends GanttDataItem{ class JSONGanttConnector extends GanttConnector { protected $data_separator = ","; + protected $live_update_data_type = "JSONGanttDataUpdate"; /*! constructor @@ -267,66 +354,25 @@ class JSONGanttConnector extends GanttConnector { public function render_links($table,$id="",$fields=false,$extra=false,$relation_id=false) { $links = new JSONGanttLinksConnector($this->get_connection(),$this->names["db_class"]); + + if($this->live_update) + $links->enable_live_update($this->live_update->get_table()); + $links->render_table($table,$id,$fields,$extra); $this->set_options("links", $links); } +} - /*! render self - process commands, output requested data as XML - */ - public function render(){ - $this->event->trigger("onInit", $this); - EventMaster::trigger_static("connectorInit",$this); - - if (!$this->as_string) - $this->parse_request(); - $this->set_relation(); - - if ($this->live_update !== false && $this->updating!==false) { - $this->live_update->get_updates(); - } else { - if ($this->editing){ - if ($this->links_mode && isset($this->options["links"])) { - $this->options["links"]->save(); - } else { - $dp = new $this->names["data_class"]($this,$this->config,$this->request); - $dp->process($this->config,$this->request); - } - } else { - if (!$this->access->check("read")){ - LogMaster::log("Access control: read operation blocked"); - echo "Access denied"; - die(); - } - $wrap = new SortInterface($this->request); - $this->apply_sorts($wrap); - $this->event->trigger("beforeSort",$wrap); - $wrap->store(); - - $wrap = new FilterInterface($this->request); - $this->apply_filters($wrap); - $this->event->trigger("beforeFilter",$wrap); - $wrap->store(); - - if ($this->model && method_exists($this->model, "get")){ - $this->sql = new ArrayDBDataWrapper(); - $result = new ArrayQueryWrapper(call_user_func(array($this->model, "get"), $this->request)); - $out = $this->output_as_xml($result); - } else { - $out = $this->output_as_xml($this->get_resource()); - if ($out !== null) return $out; - } +class GanttLinksConnector extends OptionsConnector { + protected $live_update_data_type = "GanttDataUpdate"; - } - } - $this->end_run(); + public function __construct($res,$type=false,$item_type=false,$data_type=false,$render_type=false){ + if (!$item_type) $item_type="GanttLinkDataItem"; + parent::__construct($res,$type,$item_type,$data_type,$render_type); } -} - -class GanttLinksConnector extends OptionsConnector { public function render(){ if (!$this->init_flag){ $this->init_flag=true; @@ -345,6 +391,7 @@ class GanttLinksConnector extends OptionsConnector { class JSONGanttLinksConnector extends JSONOptionsConnector { + protected $live_update_data_type = "JSONGanttDataUpdate"; public function render(){ if (!$this->init_flag){ $this->init_flag=true; @@ -361,4 +408,60 @@ class JSONGanttLinksConnector extends JSONOptionsConnector { } } +class JSONGanttDataUpdate extends JSONDataUpdate { + + public function get_updates() { + $updates = $this->get_data_updates(); + //ToDo: Add rendering for data. + } + + + private function get_data_updates() { + $actions_table = $this->table; + $version = $this->request->get_version(); + $user = $this->request->get_user(); + + $select_actions = "SELECT DATAID, TYPE, USER FROM {$actions_table}"; + $select_actions .= " WHERE {$actions_table}.ID > '{$version}' AND {$actions_table}.USER <> '{$user}'"; + + + $output = array(); + $index = 0; + $actions_query = $this->sql->query($select_actions); + while($action_data=$this->sql->get_next($actions_query)){ + $action_type = $action_data["TYPE"]; + $type_parts = explode("#", $action_type); + $action_mode = $type_parts[1]; + if($action_mode == "links") { + $data = $this->select_links_for_action($action_data["DATAID"]); + $data = new DataItemUpdate($data, $this->config, $index, $this->item_class); + } + else { + $data = $this->select_task_for_action($action_data["DATAID"]); + $data = new DataItemUpdate($data, $this->config, $index, $this->item_class); + } + + array_push($output, $data); + $index++; + } + + return $output; + } + + protected function select_task_for_action($taskId) { + $tasks_table = $this->request->get_source(); + $field_task_id = $this->config->id['db_name']; + $select_actions_tasks = "SELECT * FROM {$tasks_table} WHERE {$taskId} = {$tasks_table}.{$field_task_id}"; + return $this->sql->get_next($this->sql->query($select_actions_tasks)); + } + + protected function select_links_for_action($taskId) { + $links_connector_options = $this->options["connector"]->get_options(); + $links_table = $links_connector_options["links"]->get_request()->get_source(); + $field_task_id = $this->config->id['db_name']; + $select_actions_tasks = "SELECT * FROM {$links_table} WHERE {$taskId} = {$links_table}.{$field_task_id}"; + return $this->sql->get_next($this->sql->query($select_actions_tasks)); + } +} + ?>
\ No newline at end of file diff --git a/codebase/connector/mixed_connector.php b/codebase/connector/mixed_connector.php index 461d6ec..bbef8d4 100644 --- a/codebase/connector/mixed_connector.php +++ b/codebase/connector/mixed_connector.php @@ -7,22 +7,53 @@ require_once("base_connector.php"); class MixedConnector extends Connector { - protected $connectors = array(); - - public function add($name, $conn) { - $this->connectors[$name] = $conn; - } - - public function render() { - $result = "{"; - $parts = array(); - foreach($this->connectors as $name => $conn) { - $conn->asString(true); - $parts[] = "\"".$name."\":".($conn->render())."\n"; - } - $result .= implode(",\n", $parts)."}"; - echo $result; - } + private $_data_type = null; + + function __construct($dataType = "json") { + $this->_data_type = $dataType; + } + + protected $attributes = array(); + protected $connectors = array(); + + public function add($name, $conn) { + $this->connectors[$name] = $conn; + $conn->simple = true; + } + + public function render() { + if($this->_data_type == "json") + $this->render_json(); + else + $this->render_xml(); + } + + private function render_json() { + $result = "{"; + $parts = array(); + foreach($this->connectors as $name => $conn) { + $conn->asString(true); + $parts[] = "\"".$name."\":".($conn->render())."\n"; + } + $result .= implode(",\n", $parts)."}"; + echo $result; + } + + private function render_xml() { + $result = ""; + $parts = array(); + + foreach($this->connectors as $name => $conn) { + $conn->asString(true); + $parts[] = "<".$name.">".($conn->render())."</".$name.">\n"; + } + $result .= implode("", $parts); + $this->output_as_xml($result); + } + + protected function output_as_xml($res) { + echo "<?xml version='1.0' encoding='".$this->encoding."' ?>".$this->xml_start().$res.$this->xml_end(); + } } ?>
\ No newline at end of file diff --git a/codebase/connector/scheduler_connector.php b/codebase/connector/scheduler_connector.php index ee0cd20..b7049db 100644 --- a/codebase/connector/scheduler_connector.php +++ b/codebase/connector/scheduler_connector.php @@ -136,6 +136,7 @@ class JSONSchedulerDataItem extends SchedulerDataItem{ class JSONSchedulerConnector extends SchedulerConnector { protected $data_separator = ","; + protected $live_update_data_type = "JSONDataUpdate"; /*! constructor diff --git a/codebase/connector/update.php b/codebase/connector/update.php index dacc211..4f8ec6e 100644 --- a/codebase/connector/update.php +++ b/codebase/connector/update.php @@ -43,7 +43,7 @@ class DataItemUpdate extends DataItem { */ public function to_xml(){ $str= "<update "; - $str .= 'status="'.$this->data['type'].'" '; + $str .= 'status="'.$this->data['action_table_type'].'" '; $str .= 'id="'.$this->data['dataId'].'" '; $str .= 'parent="'.$this->get_parent_id().'"'; $str .= '>'; @@ -56,7 +56,7 @@ class DataItemUpdate extends DataItem { */ public function to_xml_start(){ $str="<update "; - $str .= 'status="'.$this->data['type'].'" '; + $str .= 'status="'.$this->data['action_table_type'].'" '; $str .= 'id="'.$this->data['dataId'].'" '; $str .= 'parent="'.$this->get_parent_id().'"'; $str .= '>'; @@ -100,17 +100,17 @@ class DataItemUpdate extends DataItem { } } - class DataUpdate{ protected $table; //!< table , where actions are stored protected $url; //!< url for notification service, optional - protected $sql; //!< DB wrapper object - protected $config; //!< DBConfig object - protected $request; //!< DBRequestConfig object - protected $event; - protected $item_class; - protected $demu; + protected $sql; //!< DB wrapper object + protected $config; //!< DBConfig object + protected $request; //!< DBRequestConfig object + protected $encoding="utf-8"; + protected $event; + protected $item_class; + protected $demu; //protected $config;//!< DataConfig instance //protected $request;//!< DataRequestConfig instance @@ -124,13 +124,14 @@ class DataUpdate{ @param request DataRequestConfig object */ - function __construct($sql, $config, $request, $table, $url){ + function __construct($sql, $config, $request, $table, $url, $options){ $this->config= $config; $this->request= $request; $this->sql = $sql; $this->table=$table; $this->url=$url; $this->demu = false; + $this->options = $options; } public function set_demultiplexor($path){ @@ -141,16 +142,24 @@ class DataUpdate{ $this->event = $master; $this->item_class = $name; } + + public function set_encoding($encoding){ + $this->encoding = $encoding; + } - private function select_update($actions_table, $join_table, $id_field_name, $version, $user) { - $sql = "SELECT * FROM {$actions_table}"; + protected function select_update($actions_table, $join_table, $id_field_name, $version, $user) { + + if ($this->options["table"] !== false) + $join_table = $this->options["table"]; + + $sql = "SELECT $join_table.*, {$actions_table}.id, {$actions_table}.dataId, {$actions_table}.type as action_table_type, {$actions_table}.user FROM {$actions_table}"; $sql .= " LEFT OUTER JOIN {$join_table} ON "; $sql .= "{$actions_table}.DATAID = {$join_table}.{$id_field_name} "; $sql .= "WHERE {$actions_table}.ID > '{$version}' AND {$actions_table}.USER <> '{$user}'"; return $sql; } - private function get_update_max_version() { + protected function get_update_max_version() { $sql = "SELECT MAX(id) as VERSION FROM {$this->table}"; $res = $this->sql->query($sql); $data = $this->sql->get_next($res); @@ -168,8 +177,9 @@ class DataUpdate{ file_get_contents($this->demu); } - - + public function get_table() { + return $this->table; + } /*! records operations in actions_table @param action @@ -180,6 +190,10 @@ class DataUpdate{ $dataId = $this->sql->escape($action->get_new_id()); $user = $this->sql->escape($this->request->get_user()); if ($type!="error" && $type!="invalid" && $type !="collision") { + $action_mode = $this->request->get_action_mode(); + if(!empty($action_mode)) + $type .= "#".$action_mode; + $this->log_update_action($this->table, $dataId, $type, $user); } } @@ -213,8 +227,8 @@ class DataUpdate{ $output = $this->render_set($this->sql->select($sub_request), $this->item_class); ob_clean(); - header("Content-type:text/xml"); - + header("Content-type:text/xml; charset=".$this->encoding); + echo $this->updates_start(); echo $this->get_version(); echo $output; @@ -262,5 +276,79 @@ class DataUpdate{ } } } + + +class JSONDataItemUpdate extends DataItemUpdate { + + public function to_xml() { + return array( + "status" => $this->data["action_table_type"], + "id" => $this->data["dataId"], + "parent" => $this->get_parent_id(), + "data" => $this->child->to_xml() + ); + } + +} + +class JSONDataUpdate extends DataUpdate { + + /*! adds action version in output XML as userdata +*/ + public function version_output($conn, $out) { + $outJson = json_decode($out->__toString(), true); + if(!isset($outJson["userdata"])) + $outJson["userdata"] = array(); + + $outJson["userdata"] = array_merge($outJson["userdata"], $this->get_version()); + $out->reset(); + $out->add(json_encode($outJson)); + } + + /*! return action version in XMl format + */ + public function get_version() { + $version = array("version" => $this->get_update_max_version()); + return $version; + } + + public function get_updates() { + $sub_request = new DataRequestConfig($this->request); + $version = $this->request->get_version(); + $user = $this->request->get_user(); + + $sub_request->parse_sql($this->select_update($this->table, $this->request->get_source(), $this->config->id['db_name'], $version, $user)); + $sub_request->set_relation(false); + + $output = $this->render_set($this->sql->select($sub_request), $this->item_class); + + if(!isset($output["userdata"])) + $output["userdata"] = array(); + + $output["userdata"] = array_merge($output["userdata"], $this->get_version()); + $this->output(json_encode($output)); + } + + protected function render_set($res, $name){ + $output = array(); + $index = 0; + while($data = $this->sql->get_next($res)) { + $data = new JSONDataItemUpdate($data, $this->config, $index, $name); + $this->event->trigger("beforeRender", $data); + array_push($output, $data->to_xml()); + $index++; + } + + return array("updates" => $output); + } + + protected function output($res){ + $out = new OutputWriter($res, ""); + $out->set_type("json"); + $this->event->trigger("beforeOutput", $this, $out); + $out->output("", true, $this->encoding); + } + +} -?>
\ No newline at end of file +?> diff --git a/codebase/dhtmlxscheduler.css b/codebase/dhtmlxscheduler.css index 2734270..ccc2244 100644 --- a/codebase/dhtmlxscheduler.css +++ b/codebase/dhtmlxscheduler.css @@ -1,9 +1,9 @@ /* @license -dhtmlxScheduler v.4.3.1 Stardard +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. (c) Dinamenta, UAB. */ -.dhtmlx_message_area{position:fixed;right:5px;width:250px;z-index:1000}.dhtmlx-info{min-width:120px;font-family:Tahoma;z-index:10000;overflow:hidden;margin:5px 5px 10px;-webkit-transition:all .5s ease;-moz-transition:all .5s ease;-o-transition:all .5s ease;transition:all .5s ease}.dhtmlx-info.hidden{height:0;padding:0;border-width:0;margin:0;overflow:hidden}.dhtmlx_modal_box{overflow:hidden;display:inline-block;min-width:300px;text-align:center;position:fixed;box-shadow:0 0 14px #888;font-family:Tahoma;z-index:20000;border-radius:6px;border:1px solid #fff}.dhtmlx_popup_title{border-top-left-radius:5px;border-top-right-radius:5px;border-width:0;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAoCAMAAAAIaGBFAAAAhFBMVEVwcHBubm5sbGxqampoaGhmZmZlZWVjY2NhYWFfX19dXV1bW1taWlpYWFhWVlZUVFRSUlJRUVFPT09NTU1LS0tJSUlHR0dGRkZERERCQkJAQEA+Pj49PT09PT0+Pj5AQEBBQUFDQ0NERERGRkZHR0dJSUlKSkpMTExMTEw5OTk5OTk5OTkny8YEAAAAQklEQVQImQXBCRJCAAAAwKVSQqdyjSPXNP7/QLsIhA6OTiJnF7GrRCpzc/fw9PKW+/gqlCq1RqvTG/yMJrPF6m/bAVEhAxxnHG0oAAAAAElFTkSuQmCC);background:-webkit-linear-gradient(top,#707070 1%,#3d3d3d 70%,#4c4c4c 97%,#393939 97%);background:-moz-linear-gradient(top,#707070 1%,#3d3d3d 70%,#4c4c4c 97%,#393939 97%)}.dhtmlx-info,.dhtmlx_button,.dhtmlx_popup_button{user-select:none;-webkit-user-select:none;-moz-user-select:-moz-none;cursor:pointer}.dhtmlx_popup_text{overflow:hidden}.dhtmlx_popup_controls{border-radius:6px;padding:5px}.dhtmlx_button,.dhtmlx_popup_button{height:30px;line-height:30px;display:inline-block;margin:0 5px;border-radius:6px;color:#FFF}.dhtmlx_popup_button{min-width:120px}div.dhx_modal_cover{background-color:#000;cursor:default;filter:alpha(opacity=20);opacity:.2;position:fixed;z-index:19999;left:0;top:0;width:100%;height:100%;border:none;zoom:1}.dhtmlx-info img,.dhtmlx_modal_box img{float:left;margin-right:20px}.dhtmlx-alert-error .dhtmlx_popup_title,.dhtmlx-confirm-error .dhtmlx_popup_title{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAsCAIAAAArRUU2AAAATklEQVR4nIWLuw2AMBBDjVuQiBT2oWbRDATrnB0KQOJoqPzRe3BrHI6dcBASYREKovtK6/6DsDOX+stN+3H1YX9ciRgnYq5EWYhS2dftBIuLT4JyIrPCAAAAAElFTkSuQmCC)}.dhtmlx-alert-error,.dhtmlx-confirm-error{border:1px solid red}.dhtmlx_button,.dhtmlx_popup_button{box-shadow:0 0 4px #888;border:1px solid #838383}.dhtmlx_button input,.dhtmlx_popup_button div{border:1px solid #FFF;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAeCAMAAADaS4T1AAAAYFBMVEVwcHBtbW1ra2toaGhmZmZjY2NhYWFeXl5cXFxaWlpXV1dVVVVSUlJQUFBNTU1LS0tJSUlGRkZERERBQUE/Pz88PDw9PT0+Pj5AQEBCQkJDQ0NFRUVHR0dISEhKSkpMTEzqthaMAAAAMklEQVQImQXBhQ2AMAAAsOIMlwWH/8+kRSKVyRVKlVrQaHV6g9FktlhFm93hdLk9Xt8PIfgBvdUqyskAAAAASUVORK5CYII=);background:-webkit-linear-gradient(top,#707070 1%,#3d3d3d 70%,#4c4c4c 99%);background:-moz-linear-gradient(top,#707070 1%,#3d3d3d 70%,#4c4c4c 99%);border-radius:6px;font-size:15px;font-weight:400;-moz-box-sizing:content-box;box-sizing:content-box;color:#fff;padding:0;margin:0;vertical-align:top;height:28px;line-height:28px}.dhtmlx_button input:active,.dhtmlx_button input:focus,.dhtmlx_popup_button div:active,.dhtmlx_popup_button div:focus{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAeCAMAAADaS4T1AAAAXVBMVEVwcHBubm5tbW1sbGxra2tpaWloaGhnZ2dmZmZlZWVjY2NiYmJhYWFgYGBfX19dXV1cXFxbW1taWlpZWVlXV1dWVlZVVVVUVFRTU1NRUVFQUFBPT09OTk5NTU1LS0tT9SY0AAAAMUlEQVQImQXBhQGAMAAAIGxnx2z9/00BiVQmVyhVakGj1ekNRpPZYhVtdofT5fZ4fT8hpwG05JjexgAAAABJRU5ErkJggg==);background:-webkit-linear-gradient(top,#707070 1%,#4c4c4c 99%);background:-moz-linear-gradient(top,#707070 1%,#4c4c4c 99%)}.dhtmlx_popup_title{color:#fff;text-shadow:1px 1px #000;height:40px;line-height:40px;font-size:20px}.dhtmlx_popup_text{margin:15px 15px 5px;font-size:14px;color:#000;min-height:30px;border-radius:6px}.dhtmlx-error,.dhtmlx-info{font-size:14px;color:#000;box-shadow:0 0 10px #888;padding:0;background-color:#FFF;border-radius:3px;border:1px solid #fff}.dhtmlx-info div{padding:5px 10px;background-color:#fff;border-radius:3px;border:1px solid #B8B8B8}.dhtmlx-error{background-color:#d81b1b;border:1px solid #ff3c3c;box-shadow:0 0 10px #000}.dhtmlx-error div{background-color:#d81b1b;border:1px solid #940000;color:#FFF}.dhx_cal_event .dhx_body,.dhx_cal_event .dhx_footer,.dhx_cal_event .dhx_header,.dhx_cal_event .dhx_title{border:1px solid #B7A543;overflow:hidden;width:100%;font-family:Tahoma;font-size:8pt}.dhx_move_denied .dhx_cal_event .dhx_header,.dhx_move_denied .dhx_cal_event .dhx_title{cursor:default}.dhx_cal_event .dhx_header{height:1px;margin-left:1px;border-width:1px 1px 0;cursor:pointer}.dhx_cal_event .dhx_title{height:12px;border-bottom-style:dotted;text-align:center;background-position:right;background-repeat:no-repeat;cursor:pointer}.dhx_cal_event .dhx_body,.dhx_cal_event.dhx_cal_select_menu .dhx_body{border-width:0 1px 1px;padding:5px}.dhx_resize_denied,.dhx_resize_denied .dhx_event_resize{cursor:default!important}.dhx_cal_event .dhx_event_resize{cursor:s-resize}.dhx_cal_event .dhx_footer,.dhx_cal_event .dhx_select_menu_footer{height:1px;margin-left:2px;border-width:0 1px 1px;position:relative}.dhx_cal_event_line{padding-left:10px;cursor:pointer;overflow:hidden}.dhx_cal_event_clear{font-family:Tahoma;font-size:8pt;height:13px;padding-left:2px;white-space:nowrap;overflow:hidden;cursor:pointer}.dhx_in_move{background-color:#FFFF80}.dhx_cal_event.dhx_cal_editor{z-index:999;position:absolute;overflow:hidden}textarea.dhx_cal_editor{width:100%;height:100%;border:0 solid #000;margin:0;padding:0;overflow:auto}div.dhx_menu_head{background-position:0 -43px;width:10px;height:10px;margin-left:5px;margin-top:1px;border:none;cursor:default}div.dhx_menu_icon{width:20px;height:20px;margin-left:-5px;margin-top:0;border:none;cursor:pointer}div.icon_details{background-position:0 0}div.icon_edit{background-position:-22px 0}div.icon_save{background-position:-84px -1px}div.icon_cancel{background-position:-62px 0}div.icon_delete{background-position:-42px 0}.dhx_month_link{position:absolute;box-sizing:border-box;-moz-box-sizing:border-box;text-align:right;cursor:pointer;padding-right:10px}.dhx_month_link a{color:#00f}.dhx_month_link a:hover{text-decoration:underline}.dhx_global_tip{font-family:Tahoma,Helvetica;text-align:center;font-size:20px;position:fixed;top:60px;right:20px;background-color:rgba(255,255,255,.7);color:#000;z-index:10000;padding:20px 30px;width:190px}.dhx_global_tip div{font-size:30px}@media (-moz-touch-enabled){.dhx_cal_container{user-select:none;-moz-user-select:none}}.dhx_unselectable,.dhx_unselectable div{-webkit-user-select:none;-moz-user-select:none;-moz-user-select:-moz-none}.dhx_cal_light{-webkit-tap-highlight-color:transparent;border-radius:5px;font-family:Tahoma;font-size:8pt;position:absolute;z-index:10001;width:580px;height:300px;box-shadow:5px 5px 5px #888}.dhx_mark{position:relative;top:3px;background-image:url(imgs/controls.gif);background-position:0 -43px;padding-left:10px}.dhx_ie6 .dhx_mark{background-position:6px -41px}.dhx_cal_light select{font-family:Tahoma;font-size:8pt;padding:2px;margin:0}.dhx_cal_ltitle{padding:2px 0 2px 5px;overflow:hidden;white-space:nowrap}.dhx_cal_ltitle span{white-space:nowrap}.dhx_cal_lsection{font-weight:700;padding:5px 0 3px 10px}.dhx_section_time{white-space:nowrap}.dhx_cal_lsection .dhx_fullday{float:right;margin-right:5px;font-size:12px;font-weight:400;line-height:20px;vertical-align:top;cursor:pointer}.dhx_cal_lsection{font-size:18px;font-family:Arial}.dhx_cal_ltext{padding:2px 0 2px 10px;overflow:hidden}.dhx_cal_ltext textarea{overflow:auto;height:100%;width:100%;outline:0!important;resize:none}.dhx_time{font-weight:700}.dhx_cal_larea{overflow:hidden;width:572px;height:1px}.dhx_btn_set{float:left}.dhx_btn_set div{float:left;vertical-align:middle;cursor:pointer}.dhx_save_btn{background-image:url(imgs/controls.gif);background-position:-84px 0;width:21px}.dhx_cancel_btn{background-image:url(imgs/controls.gif);background-position:-63px 0;width:20px}.dhx_delete_btn{background-image:url(imgs/controls.gif);background-position:-42px 0;width:20px}.dhx_cal_cover{width:100%;height:100%;position:absolute;z-index:10000;top:0;left:0;background-color:#000;opacity:.1;filter:alpha(opacity=10)}.dhx_custom_button{padding:0 3px;font-family:Tahoma;font-size:8pt;font-weight:400;margin-right:5px;margin-top:0;cursor:pointer}.dhx_custom_button div{cursor:pointer;float:left;height:21px;line-height:21px;vertical-align:middle}.dhx_cal_light_wide .dhx_cal_larea{border-top-width:0}.dhx_cal_light_wide .dhx_cal_lsection{border:0;float:left;text-align:right;width:100px;height:20px;padding:5px 0 0 10px}.dhx_cal_light_wide .dhx_wrap_section{position:relative;overflow:hidden}.dhx_cal_light_wide .dhx_section_time{padding-top:2px!important;height:20px!important}.dhx_section_time{text-align:center}.dhx_cal_light_wide .dhx_cal_larea{width:730px}.dhx_cal_light_wide{width:738px}.dhx_cal_light_wide .dhx_section_time{background:0 0}.dhx_cal_light_wide .dhx_cal_checkbox label{padding-left:0}.dhx_cal_wide_checkbox input{margin-top:8px;margin-left:14px}.dhx_cal_light input{font-family:Tahoma;font-size:8pt}.dhx_cal_light_wide .dhx_cal_lsection .dhx_fullday{float:none;margin-right:0;font-weight:700;font-family:Arial;cursor:pointer}.dhx_custom_button{float:right;height:21px}.dhx_cal_light_wide .dhx_custom_button{position:absolute;top:0;right:0}.dhx_cal_light_wide .dhx_repeat_right{margin-right:55px}.dhx_minical_popup{position:absolute;z-index:10100;width:251px;height:175px}.dhx_scale_bar_header{position:absolute;border-bottom:1px dotted #8894A3;width:100%}.dhx_expand_icon{position:absolute;right:0;background-image:url(imgs/collapse_expand_icon.gif);width:18px;height:18px;cursor:pointer;background-position:0 18px;z-index:16}.dhx_scheduler_agenda .dhx_cal_data{background-image:url(imgs/databg.png)}.dhx_agenda_area{width:100%;overflow-y:auto;background-image:url(imgs/databg.png)}.dhx_agenda_line{height:21px;clear:both;overflow:hidden}.dhx_agenda_line div{float:left;width:188px;text-align:center;line-height:21px;overflow:hidden}.dhx_agenda_area .dhx_agenda_line div{border-right:0 dotted #8894A3}.dhx_v_border{position:absolute;left:187px;top:0;width:1px;height:100%}.dhx_agenda_line .dhx_event_icon{width:20px;border-width:0;background:url(imgs/icon.png) 5px 4px no-repeat;cursor:pointer}.dhx_agenda_line span{padding-left:5px;line-height:21px}.dhx_year_week{position:relative}.dhx_year_month{height:18px;padding-top:3px;text-align:center;vertical-align:middle}.dhx_year_body .dhx_after .dhx_month_head,.dhx_year_body .dhx_after .dhx_month_head a,.dhx_year_body .dhx_before .dhx_month_head,.dhx_year_body .dhx_before .dhx_month_head a{color:#E2E3E6!important}.dhx_year_body .dhx_month_body{height:0;overflow:hidden}.dhx_month_head.dhx_year_event{background-color:#FFE763}.dhx_year_body .dhx_after .dhx_month_head,.dhx_year_body .dhx_before .dhx_month_head{cursor:default}.dhx_year_tooltip{border:1px solid #BBB;background-image:url(imgs/databg.png);position:absolute;z-index:9998;width:300px;height:auto;font-family:Tahoma;font-size:8pt;overflow:hidden}.dhx_tooltip_line{line-height:20px;height:20px;overflow:hidden}.dhx_tooltip_line .dhx_event_icon{width:20px;height:20px;padding-right:10px;float:left;border-width:0;position:relative;background:url(imgs/icon.png) 5px 4px no-repeat;cursor:pointer}.dhx_tooltip_date{float:left;width:auto;padding-left:5px;text-align:center}.dhx_text_disabled{font-family:Tahoma;font-size:8pt}.dhx_mini_calendar{-moz-box-shadow:5px 5px 5px #888;-khtml-box-shadow:5px 5px 5px #888;-moz-user-select:-moz-none;-webkit-user-select:none;-user-select:none}.dhx_mini_calendar .dhx_month_head{cursor:pointer}.dhx_mini_calendar .dhx_calendar_click{background-color:#C2D5FC}.dhx_cal_navline div.dhx_minical_icon{cursor:pointer;background-image:url(imgs/calendar.gif)}.dhx_matrix_scell{height:100%}.dhx_matrix_cell,.dhx_matrix_scell{overflow:hidden;text-align:center;vertical-align:middle}.dhx_matrix_cell{background-color:#fff}.dhx_matrix_line{overflow:hidden}.dhx_matrix_cell div,.dhx_matrix_scell div{overflow:hidden;text-align:center;height:auto}.dhx_cal_lsection .dhx_readonly{font-size:9pt;font-size:8pt;padding:2px;color:#887A2E}.dhx_cal_event_line .dhx_event_resize{cursor:w-resize;position:absolute;top:0;width:4px;height:100%}.dhx_event_resize_start{left:0}.dhx_event_resize_end{right:0}.dhx_data_table.folder .dhx_matrix_cell,.dhx_matrix_scell.folder{background-color:#969394;cursor:pointer}.dhx_matrix_scell .dhx_scell_level0{padding-left:5px}.dhx_matrix_scell .dhx_scell_level1{padding-left:20px}.dhx_matrix_scell .dhx_scell_level2{padding-left:35px}.dhx_matrix_scell .dhx_scell_level3{padding-left:50px}.dhx_matrix_scell .dhx_scell_level4{padding-left:65px}.dhx_matrix_scell.folder{font-weight:700;text-align:left}.dhx_matrix_scell.folder .dhx_scell_expand{float:left;width:10px;padding-right:3px}.dhx_matrix_scell.folder .dhx_scell_name{float:left;width:auto}.dhx_matrix_scell.item .dhx_scell_name{padding-left:15px;text-align:left}.dhx_data_table.folder .dhx_matrix_cell{border-right:0}.dhx_section_timeline{overflow:hidden;padding:4px 0 2px 10px}.dhx_section_timeline select{width:552px}.dhx_map_area{width:100%;height:100%;overflow-y:auto;overflow-x:hidden;background-image:url(imgs/databg.png)}.dhx_map_line .dhx_event_icon{width:20px;border-width:0;background:url(imgs/icon.png) 5px 4px no-repeat;cursor:pointer}.dhx_map_line{height:21px;clear:both;overflow:hidden}.dhx_map{position:absolute}.dhx_map_line .headline_description,.dhx_map_line div{float:left;border-right:1px dotted #8894A3;text-align:center;line-height:21px;overflow:hidden}.dhx_map_line .dhx_map_description{float:left;border-right:0 dotted #8894A3;text-align:center;line-height:21px;overflow:hidden}.dhx_map_line .line_description{float:left;border-right:1px dotted #8894A3;text-align:left;padding-left:5px;line-height:21px;overflow:hidden}.dhx_map_line.highlight{background-color:#C4C5CC}.dhx_map_area .dhx_map_line div{border-right:0 dotted #8894A3}.dhtmlXTooltip.tooltip{-moz-box-shadow:3px 3px 3px #888;-webkit-box-shadow:3px 3px 3px #888;-o-box-shadow:3px 3px 3px #888;box-shadow:3px 3px 3px #888;filter:progid:DXImageTransform.Microsoft.Shadow(color='#888888', Direction=135, Strength=5);background-color:#fff;cursor:default;padding:10px;position:absolute;z-index:500;font-family:Tahoma;opacity:1}.dhx_cal_checkbox label{padding-left:5px}.dhx_cal_light .radio{padding:2px 0 2px 10px}.dhx_cal_light .radio input,.dhx_cal_light .radio label{line-height:15px}.dhx_cal_light .radio input{vertical-align:middle;margin:0;padding:0}.dhx_cal_light .radio label{vertical-align:middle;padding-right:10px}.dhx_cal_light .combo{padding:4px}.dhx_cal_light_wide .dhx_combo_box{width:608px!important;left:10px}.dhx_wa_column{float:left}.dhx_wa_scale_bar{font-family:Tahoma;padding-left:10px;font-size:11px}.dhx_wa_day_data{background-color:#FCFEFC;overflow-y:auto}.dhx_wa_ev_body{font-size:12px;padding:5px 0 5px 7px}.dhx_wa_dnd{font-family:Tahoma;position:absolute;padding-right:7px;color:#887AE2!important;background-color:#FFE763!important}.dhx_cal_event_selected{background-color:#9cc1db;color:#fff}.dhx_second_scale_bar{padding-top:2px}.dhx_grid_area{width:100%;height:100%;overflow-y:auto;background-color:#FCFEFC}.dhx_grid_area table{border-collapse:collapse;border-spacing:0;width:100%;table-layout:fixed}.dhx_grid_area td{table-layout:fixed;text-align:center}.dhx_grid_line{height:21px;clear:both;overflow:hidden}.dhx_grid_line div{float:left;cursor:default;padding-top:0;padding-bottom:0;text-align:center;line-height:21px;overflow:hidden}.dhx_grid_area td,.dhx_grid_line div{padding-left:8px;padding-right:8px}.dhx_grid_area tr.dhx_grid_event{height:21px;overflow:hidden;margin:0 0 1px}.dhx_grid_area tr.dhx_grid_event td{border-bottom:1px solid #ECEEF4}.dhx_grid_area tr.dhx_grid_event:nth-child(2n) td,.dhx_grid_area tr.dhx_grid_event:nth-child(2n+1) td{border-bottom-width:0;border-bottom-style:none}.dhx_grid_area tr.dhx_grid_event:nth-child(2n){background-color:#ECEEF4}.dhx_grid_area .dhx_grid_dummy{table-layout:auto;margin:0!important;padding:0!important}.dhx_grid_v_border{position:absolute;border-right:1px solid #A4BED4;width:1px;height:100%}.dhx_grid_event_selected{background-color:#9cc1db!important;color:#fff!important}.dhx_grid_sort_desc .dhx_grid_view_sort{background-position:0 -55px}.dhx_grid_sort_asc .dhx_grid_view_sort{background-position:0 -66px}.dhx_grid_view_sort{width:10px;height:10px;position:absolute;border:none!important;top:5px;background-repeat:no-repeat;background-image:url(imgs/images.png)}.dhx_marked_timespan{position:absolute;width:100%;margin-left:0}.dhx_time_block{position:absolute;width:100%;background:silver;opacity:.4;filter:alpha(opacity=40);z-index:1}.dhx_time_block_reset{opacity:1;filter:alpha(opacity=100)}.dhx_mini_calendar .dhx_marked_timespan,.dhx_scheduler_month .dhx_marked_timespan{display:none}.dhx_now_time{width:100%;border-bottom:2px solid red;z-index:1}.dhx_scheduler_month .dhx_now_time{border-bottom:0;border-left:2px solid red}.dhx_matrix_now_time{border-left:2px solid red;z-index:1}.dhx_matrix_now_time,.dhx_now_time{opacity:.5}.dhx_cal_quick_info{border:2px solid #888;border-radius:5px;position:absolute;z-index:300;background-color:#8e99ae;background-color:rgba(98,107,127,.5);padding-left:7px;width:300px;transition:left .5s ease,right .5s;-moz-transition:left .5s ease,right .5s;-webkit-transition:left .5s ease,right .5s;-o-transition:left .5s ease,right .5s}.dhx_no_animate{transition:none;-moz-transition:none;-webkit-transition:none;-o-transition:none}.dhx_cal_quick_info.dhx_qi_left .dhx_qi_big_icon{float:right}.dhx_cal_qi_title{padding:5px 0 10px 5px;color:#FFF;letter-spacing:1px}.dhx_cal_qi_tdate{font-size:14px}.dhx_cal_qi_tcontent{font-size:18px;font-weight:700}.dhx_cal_qi_content{border:1px solid #888;background-color:#fefefe;padding:16px 8px;font-size:14px;color:#444;width:275px;overflow:hidden}.dhx_qi_big_icon{border-radius:3px;margin:5px 9px 5px 0;min-width:60px;line-height:20px;vertical-align:middle;padding:5px 10px 5px 5px;cursor:pointer;background-color:#fefefe;border-bottom:1px solid #666;border-right:1px solid #666;float:left}.dhx_cal_qi_controls div{float:left;height:20px;text-align:center;line-height:20px}.dhx_qi_big_icon .dhx_menu_icon{margin:0 8px 0 0}.dhx_drag_marker{width:100%;filter:alpha(Opacity=50);opacity:.5;background-color:#FFE763;position:absolute;box-sizing:border-box!important;border-top:1px solid #B6B6B6;border-bottom:1px solid #b6b6b6}.dhx_cal_data,.dhx_cal_data div,.dhx_cal_data table *,.dhx_cal_header,.dhx_cal_header div,.dhx_cal_navline div,.dhx_cal_quick_info,.dhx_cal_quick_info div,.dhx_multi_day,.dhx_multi_day div,.dhx_tooltip_line div{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}.dhx_cal_data table{border-collapse:separate}.dhx_cal_light .dhx_cal_radio label{margin-bottom:0}.dhx_cal_event div{line-height:normal}.dhx_cal_container{font-family:Tahoma;font-size:8pt;position:relative;overflow:hidden}.dhx_cal_container div{-moz-user-select:none;-moz-user-select:-moz-none}.dhx_cal_navline{height:20px;position:absolute;z-index:3;width:750px;color:#2F3A48}.dhx_cal_navline div{position:absolute;white-space:nowrap}.dhx_cal_navline .dhx_cal_date{padding-top:1px}.dhx_cal_button .dhx_left_bg{width:1px;overflow:hidden;height:17px;z-index:20;top:0}.dhx_cal_prev_button{background-image:url(imgs/buttons.png);background-position:0 0;cursor:pointer}.dhx_cal_next_button{background-image:url(imgs/buttons.png);background-position:-30px 0;cursor:pointer}.dhx_cal_today_button{background-image:url(imgs/buttons.png);background-position:-60px 0;cursor:pointer;text-align:center}.dhx_cal_tab{text-align:center;cursor:pointer;background-color:#D8E1EA;-webkit-border-top-left-radius:4px;-webkit-border-top-right-radius:4px;-moz-border-radius-topleft:4px;-moz-border-radius-topright:4px;border-top-left-radius:4px;border-top-right-radius:4px}.dhx_cal_tab.active{text-decoration:none;cursor:default;font-weight:700}.dhx_cal_header{position:absolute;left:10px;top:23px;width:750px;z-index:2;overflow:hidden;color:#2F3A48}.dhx_cal_data{-webkit-tap-highlight-color:transparent;position:absolute;top:44px;width:600px;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;-ms-touch-action:pan-y}.dhx_cal_event,.dhx_cal_event_clear,.dhx_cal_event_line{-ms-touch-action:none}.dhx_scale_bar{position:absolute;text-align:center}.dhx_scale_holder,.dhx_scale_holder_now{position:absolute}.dhx_scale_hour{height:41px;width:50px;text-align:center;line-height:40px;overflow:hidden}.dhx_month_head{padding-right:5px;text-align:right}.dhx_month_body{background-color:#FFF}.dhx_scale_ignore{display:none}.dhx_cal_drag{position:absolute;z-index:9999;background-color:#FFE763;border:1px solid #B7A543;opacity:.5;filter:alpha(opacity=50)}.dhx_loading{position:absolute;width:128px;height:15px;background-image:url(imgs/loading.gif);z-index:9999}.dhx_multi_day,.dhx_multi_day_icon{background-color:#E1E6FF;background-repeat:no-repeat;border-right:1px dotted #8894A3}.dhx_multi_day{position:absolute}.dhx_multi_day_icon,.dhx_multi_day_icon_small{background-position:center center;background-repeat:no-repeat}.dhtmlxLayoutPolyContainer_dhx_skyblue .dhx_cal_container{background-color:#d0e5ff}.dhx_form_repeat,.dhx_form_repeat input{padding:0 0 0 5px;margin:0;font-family:Tahoma,Verdana;font-size:11px;line-height:24px}.dhx_form_repeat{overflow:hidden;background-color:#FFF4B5}.dhx_cal_light_wide .dhx_form_repeat{background-color:transparent}.dhx_repeat_center,.dhx_repeat_divider,.dhx_repeat_left,.dhx_repeat_right{height:115px;-moz-box-sizing:border-box;box-sizing:border-box}.dhx_repeat_center,.dhx_repeat_left{padding:10px 0 0 10px;float:left}.dhx_repeat_left{width:105px}.dhx_repeat_center{width:345px;padding-top:22px}.dhx_repeat_divider{float:left;width:1px}.dhx_repeat_right{float:right;width:173px;padding:17px 3px 0 10px}input.dhx_repeat_text{height:16px;width:27px;margin:0 4px;line-height:18px;padding:0 0 0 2px}.dhx_form_repeat select{height:20px;width:87px;padding:0 0 0 2px;margin:0 4px}input.dhx_repeat_date{height:18px;width:80px;padding:0 0 0 2px;margin:0 4px;background-repeat:no-repeat;background-position:64px 0;border:1px solid #7f9db9;line-height:18px}input.dhx_repeat_radio{margin-right:4px}input.dhx_repeat_checkbox{margin:4px 4px 0 0}.dhx_repeat_days td{padding-right:5px}.dhx_repeat_days label{font-size:10px}.dhx_custom_button{width:90px;-webkit-border-radius:4px;-moz-border-radius:4px;-ms-border-radius:4px;-o-border-radius:4px;border-radius:4px}.dhx_custom_button_recurring{background-position:-5px 20px;width:20px;margin-right:10px}.dhx_cal_light_rec{width:640px}.dhx_cal_light_rec .dhx_cal_larea{width:632px}.dhx_cal_light_rec.dhx_cal_light_wide{width:816px}.dhx_cal_light_rec.dhx_cal_light_wide .dhx_cal_larea{width:808px}.dhx_cal_event .dhx_title{border-width:1px 1px 0;padding-top:1px;-webkit-border-top-left-radius:4px;-webkit-border-top-right-radius:4px;-moz-border-radius-topleft:4px;-moz-border-radius-topright:4px;border-top-left-radius:4px;border-top-right-radius:4px;font-family:arial;font-weight:700;font-size:12px;line-height:12px}.dhx_cal_event .dhx_body,.dhx_cal_event.dhx_cal_select_menu .dhx_body{padding-bottom:8px;-webkit-border-bottom-right-radius:4px;-webkit-border-bottom-left-radius:4px;-moz-border-radius-bottomright:4px;-moz-border-radius-bottomleft:4px;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.dhx_cal_event .dhx_header,.dhx_cal_event.dhx_cal_select_menu .dhx_footer{display:none}.dhx_cal_event.dhx_cal_select_menu{-webkit-box-shadow:0 0 1px #FFF;-moz-box-shadow:0 0 1px #FFF;box-shadow:0 0 1px #FFF}.dhx_cal_event .dhx_footer{height:5px;border:0;margin-top:-6px;background:url(imgs_dhx_terrace/resizing.png) center center no-repeat}.dhx_cal_event .dhx_body,.dhx_cal_event .dhx_footer,.dhx_cal_event .dhx_header,.dhx_cal_event .dhx_title{background-color:#1796b0;border-color:transparent;color:#fff}.dhx_cal_event.dhx_cal_editor{border:1px solid transparent}.dhx_cal_editor{font-size:12px;font-family:Arial,sans-serif}div.dhx_menu_head,div.dhx_menu_icon{background-image:url(imgs_dhx_terrace/controls.png)}.dhx_cal_event_line{border:1px solid transparent;background-color:#1796b0;color:#fff;height:17px;line-height:17px;-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px}.dhx_cal_event_line_start{-webkit-border-top-left-radius:9px;-webkit-border-bottom-left-radius:9px;-moz-border-radius-topleft:9px;-moz-border-radius-bottomleft:9px;border-top-left-radius:9px;border-bottom-left-radius:9px}.dhx_cal_event_line_end{-webkit-border-top-right-radius:9px;-webkit-border-bottom-right-radius:9px;-moz-border-radius-topright:9px;-moz-border-radius-bottomright:9px;border-top-right-radius:9px;border-bottom-right-radius:9px}.dhx_cal_event .dhx_body,.dhx_cal_event_line{font-size:12px;font-family:Arial,sans-serif}.dhx_cal_container{background-color:#fff}.dhx_cal_data{border-top:1px solid #CECECE}.dhx_scale_holder{background-image:url(imgs_dhx_terrace/databg.png);border-right:1px solid #CECECE}.dhx_scale_holder_now{background-image:url(imgs_dhx_terrace/databg_now.png);border-right:1px solid #CECECE}.dhx_scale_hour{border-bottom:1px solid #CECECE;background-color:#fff;font:11px/44px Arial;color:#767676}.dhx_cal_header{border:1px solid #CECECE;border-left:0;border-bottom:0}.dhx_scale_bar{border-left:1px solid #CECECE;font:11px/16px Arial;color:#767676;padding-top:2px;background-color:#fff}.dhx_cal_navline div{top:14px}.dhx_cal_date,.dhx_cal_next_button,.dhx_cal_prev_button,.dhx_cal_tab,.dhx_cal_today_button{color:#454544;height:30px;line-height:30px;background:0 0;border:1px solid #CECECE}.dhx_cal_navline .dhx_cal_date{border:0;font-size:18px;font-weight:400;font-family:arial;width:100%;top:14px;text-align:center;position:absolute;left:0;z-index:-1}.dhx_cal_today_button{color:#747473;left:auto;right:123px;background:0 0;text-decoration:none;width:80px;font-size:12px;font-weight:700;font-family:arial;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}.dhx_cal_next_button,.dhx_cal_prev_button{left:auto;width:46px}.dhx_cal_prev_button{right:61px;background:url(imgs_dhx_terrace/arrow_left.png) center center no-repeat;-webkit-border-top-left-radius:5px;-webkit-border-bottom-left-radius:5px;-moz-border-radius-topleft:5px;-moz-border-radius-bottomleft:5px;border-top-left-radius:5px;border-bottom-left-radius:5px}.dhx_cal_next_button{right:14px;background:url(imgs_dhx_terrace/arrow_right.png) center center no-repeat;-webkit-border-top-right-radius:5px;-webkit-border-bottom-right-radius:5px;-moz-border-radius-topright:5px;-moz-border-radius-bottomright:5px;border-top-right-radius:5px;border-bottom-right-radius:5px}.dhx_cal_tab{color:#747473;width:60px;padding-top:0;text-decoration:none;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0;font-weight:700;font-family:arial;font-size:12px}.dhx_cal_tab.active{background-color:#F0EDE7;color:#454544;border:1px solid #CECECE;text-shadow:0 1px 0 #fff}.dhx_cal_tab_first{-webkit-border-top-left-radius:5px;-webkit-border-bottom-left-radius:5px;-moz-border-radius-topleft:5px;-moz-border-radius-bottomleft:5px;border-top-left-radius:5px;border-bottom-left-radius:5px}.dhx_cal_tab_last{-webkit-border-top-right-radius:5px;-webkit-border-bottom-right-radius:5px;-moz-border-radius-topright:5px;-moz-border-radius-bottomright:5px;border-top-right-radius:5px;border-bottom-right-radius:5px}.dhx_cal_tab_standalone{-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px;padding:0 5px}.dhx_multi_day,.dhx_multi_day_icon,.dhx_multi_day_icon_small{background-color:#fff}.dhx_multi_day{border-top:1px solid #CECECE}.dhx_multi_day_icon,.dhx_multi_day_icon_small{border-bottom:1px solid #CECECE;border-right:1px solid #CECECE}.dhx_multi_day_icon_small{background-image:url(imgs_dhx_terrace/clock_small.gif)}.dhx_multi_day_icon{background-image:url(imgs_dhx_terrace/clock_big.gif)}.dhx_after .dhx_month_body,.dhx_after .dhx_month_head,.dhx_before .dhx_month_body,.dhx_before .dhx_month_head,.dhx_month_head{background-color:#fff}.dhx_month_head{height:21px;padding-top:0;font:12px/21px Arial;color:#362d26;border-right:1px solid #CECECE}.dhx_after .dhx_month_head,.dhx_before .dhx_month_head{color:#bbb}.dhx_month_body{border-right:1px solid #CECECE;border-bottom:1px solid #CECECE}.dhx_now .dhx_month_body,.dhx_now .dhx_month_head{background-color:#FFF3A1;font-weight:400}.dhx_cal_event_clear{color:#0E64A0}.dhx_cal_larea{margin-left:0}.dhx_cal_light_wide .dhx_cal_larea{margin-left:3px}.dhx_cal_light_wide .dhx_wrap_section{padding:5px 0}.dhx_cal_larea,.dhx_cal_light,.dhx_cal_light_wide .dhx_wrap_section,.dhx_cal_lsection,.dhx_cal_ltext textarea,.dhx_wrap_section{background-color:#fff}.dhx_cal_light input,.dhx_cal_light_wide .dhx_cal_lsection .dhx_fullday,.dhx_cal_lsection,.dhx_cal_lsection .dhx_fullday{color:#747473}.dhx_cal_light_wide .dhx_wrap_section{border-top:0;border-bottom:1px solid #CECECE}.dhx_cal_larea{border:1px solid transparent}.dhx_cal_light,.dhx_cal_light select,.dhx_cal_ltext textarea{color:#2E2E2E}.dhx_cal_light{border:1px solid #CECECE}.dhx_cal_light_wide .dhx_cal_lsection,.dhx_cal_light_wide .dhx_cal_lsection .dhx_fullday{font-size:13px}.dhx_section_time{background-color:transparent}.dhx_btn_set div:first-child,.dhx_cancel_btn,.dhx_delete_btn,.dhx_save_btn{display:none}.dhx_btn_set,.dhx_btn_set div{height:30px;padding:0 20px;line-height:30px}.dhx_btn_set{margin:12px 0 0;padding:0;font-size:12px;color:#454544;font-weight:700;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.dhx_left_btn_set{margin-left:20px}.dhx_right_btn_set{margin-right:20px}.dhx_save_btn_set{border:1px solid #22A1BC;color:#fff;text-shadow:0 -1px 0 #6f6f6f;background-color:#22A1BC}.dhx_btn_set,.dhx_cancel_btn_set{border:1px solid #CECECE}.dhx_delete_btn_set{border:1px solid #FF8831;background-color:#FF8831;color:#fff;text-shadow:0 -1px 0 #93755f}.dhx_cal_ltitle{height:30px;line-height:30px;border-bottom:1px solid #CECECE}.dhx_cal_ltitle span{float:left}.dhx_cal_light .dhx_title{padding-left:13px}.dhx_mark{display:none}.dhx_time{padding-left:10px}.dhx_close_icon{float:right;width:9px;height:9px;background:url(imgs_dhx_terrace/close_icon.png) center center no-repeat;padding:10px;margin-top:1px}.dhx_cal_light_wide .dhx_cal_ltext.dhx_cal_template{line-height:22px}.dhx_cal_ltext textarea{line-height:20px;box-sizing:border-box;-moz-box-sizing:border-box;border:1px solid #CECECE;background-color:#F9F9F9}.dhtmlx_modal_box{background:#fff;width:330px}.dhtmlx_popup_controls{padding-bottom:9px}.dhtmlx_popup_button,.dhtmlx_popup_button div,.dhtmlx_popup_button div:active,.dhtmlx_popup_button:active{color:#444;background:#fff;box-shadow:none}.dhtmlx_popup_button.dhtmlx_ok_button{border:1px solid #22A1BC;background-color:#22A1BC}.dhtmlx_popup_button.dhtmlx_ok_button div{background:#22A1BC;border:1px solid #22A1BC;color:#fff;text-shadow:0 -1px 0 #6f6f6f}.dhx_cal_container.dhx_mini_calendar{box-sizing:border-box;border:1px solid #CECECE;box-shadow:2px 2px 5px #CCC;border-radius:3px}.dhx_mini_calendar .dhx_year_month{border:1px solid #CECECE;font-family:Arial}.dhx_mini_calendar .dhx_month_body,.dhx_mini_calendar .dhx_month_head,.dhx_mini_calendar .dhx_scale_bar,.dhx_mini_calendar .dhx_year_body,.dhx_mini_calendar .dhx_year_month{border-color:transparent}.dhx_mini_calendar .dhx_year_body{padding-top:1px}.dhx_mini_calendar .dhx_scale_bar{border-width:0}.dhx_mini_calendar .dhx_year_week{border-bottom:1px solid #CECECE;padding-top:1px}.dhx_mini_calendar .dhx_month_head{padding-right:0;text-align:center}.dhx_mini_calendar .dhx_cal_next_button,.dhx_mini_calendar .dhx_cal_prev_button{border:0;height:20px}.dhx_cal_navline div.dhx_minical_icon{left:210px;top:14px;width:30px;height:30px;background:url(imgs_dhx_terrace/calendar.gif) 3px 5px no-repeat}.dhx_cal_event_line .dhx_event_resize{background:url(imgs_dhx_terrace/resize_dots.png) repeat-y}.dhx_matrix_cell,.dhx_matrix_scell{border-bottom:1px solid #CECECE;border-right:1px solid #CECECE}.dhx_cal_header div div{border-left:1px solid #CECECE}.dhx_matrix_scell.folder{border-right:0}.dhx_second_scale_bar{border-bottom:1px solid #CECECE}.dhx_repeat_divider{border-left:1px solid #CECECE}.dhx_custom_button{background-color:#fff;border:1px solid #CECECE;color:#747473}.dhx_cal_light_wide .dhx_custom_button{margin-top:6px}.dhx_custom_button_recurring{background-image:url(imgs_dhx_terrace/but_repeat.gif)}.dhx_agenda_line div,.dhx_v_border{border-right:1px solid #CECECE}.dhx_year_month{border:1px solid #CECECE}.dhx_scale_bar_last{border-right:1px solid #CECECE}.dhx_year_body{border-left:1px solid #CECECE}.dhx_expand_icon{top:-3px}.dhx_scale_bar .dhx_cal_next_button,.dhx_scale_bar .dhx_cal_prev_button{width:20px;height:20px;top:0!important;border:0}.dhx_scale_bar .dhx_cal_next_button{right:1px!important;border-left:1px solid #CECECE}.dhx_scale_bar .dhx_cal_prev_button{left:1px!important;border-right:1px solid #CECECE}.dhx_map_line .headline_date,.dhx_map_line .headline_description{border:0}.dhx_map_line .headline_date{border-right:1px solid #CECECE}.dhtmlXTooltip.tooltip{border-left:1px solid #CECECE;border-top:1px solid #CECECE;color:#747473;font-size:12px;line-height:16px}.dhx_wa_scale_bar{border-top:1px solid #CECECE;border-bottom:1px solid #CECECE}.dhx_wa_column_last .dhx_wa_day_cont{border-left:1px solid #CECECE}.dhx_wa_ev_body{border-bottom:1px solid #CECECE}.dhx_wa_scale_bar{background-color:#f0ede7}.dhx_wa_ev_body.dhx_cal_event_selected{background-color:#fff3a1;color:#362d26}.dhx_wa_dnd{background-color:#fddb93!important;color:#747473!important;border:1px solid #ccb177}.dhx_text_disabled{color:#2E2E2E}.dhx_cal_ltext .dhx_text_disabled{line-height:22px}.dhx_grid_v_border{border-right-color:#CECECE}.dhx_month_body_border,.dhx_month_head_border,.dhx_scale_bar_border,.dhx_scale_hour_border{border-left:1px solid #CECECE}.dhx_cal_quick_info{background:rgba(50,50,50,.5)}.dhx_qi_big_icon{background:#1796b0;color:#fff}.dhx_cal_navline .dhx_cal_export{width:32px;height:32px;margin:2px;cursor:pointer;top:12px}.dhx_cal_navline .dhx_cal_export.pdf{left:auto;right:249px;background-image:url(imgs_dhx_terrace/export_pdf.png)}.dhx_cal_navline .dhx_cal_export.ical{left:auto;right:210px;background-image:url(imgs_dhx_terrace/export_ical.png)}.dhx_mini_calendar{padding:5px}.dhx_mini_calendar .dhx_calendar_click,.dhx_mini_calendar .dhx_year_event{border-radius:7px}.dhx_mini_calendar .dhx_month_head{margin:2px}.dhx_mini_calendar .dhx_year_month{line-height:20px;height:25px;font-size:14px}.dhx_mini_calendar .dhx_cal_next_button,.dhx_mini_calendar .dhx_cal_prev_button{top:8px!important}
\ No newline at end of file +.dhtmlx_message_area{position:fixed;right:5px;width:250px;z-index:11}.dhtmlx-info{min-width:120px;font-family:Tahoma;z-index:14;overflow:hidden;margin:5px 5px 10px;-webkit-transition:all .5s ease;-moz-transition:all .5s ease;-o-transition:all .5s ease;transition:all .5s ease}.dhtmlx-info.hidden{height:0;padding:0;border-width:0;margin:0;overflow:hidden}.dhtmlx_modal_box{overflow:hidden;display:inline-block;min-width:300px;text-align:center;position:fixed;box-shadow:0 0 14px #888;font-family:Tahoma;z-index:18;border-radius:6px;border:1px solid #fff}.dhtmlx_popup_title{border-top-left-radius:5px;border-top-right-radius:5px;border-width:0;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAoCAMAAAAIaGBFAAAAhFBMVEVwcHBubm5sbGxqampoaGhmZmZlZWVjY2NhYWFfX19dXV1bW1taWlpYWFhWVlZUVFRSUlJRUVFPT09NTU1LS0tJSUlHR0dGRkZERERCQkJAQEA+Pj49PT09PT0+Pj5AQEBBQUFDQ0NERERGRkZHR0dJSUlKSkpMTExMTEw5OTk5OTk5OTkny8YEAAAAQklEQVQImQXBCRJCAAAAwKVSQqdyjSPXNP7/QLsIhA6OTiJnF7GrRCpzc/fw9PKW+/gqlCq1RqvTG/yMJrPF6m/bAVEhAxxnHG0oAAAAAElFTkSuQmCC);background:-webkit-linear-gradient(top,#707070 1%,#3d3d3d 70%,#4c4c4c 97%,#393939 97%);background:-moz-linear-gradient(top,#707070 1%,#3d3d3d 70%,#4c4c4c 97%,#393939 97%)}.dhtmlx-info,.dhtmlx_button,.dhtmlx_popup_button{user-select:none;-webkit-user-select:none;-moz-user-select:-moz-none;cursor:pointer}.dhtmlx_popup_text{overflow:hidden}.dhtmlx_popup_controls{border-radius:6px;padding:5px}.dhtmlx_button,.dhtmlx_popup_button{height:30px;line-height:30px;display:inline-block;margin:0 5px;border-radius:6px;color:#FFF}.dhtmlx_popup_button{min-width:120px}div.dhx_modal_cover{background-color:#000;cursor:default;filter:alpha(opacity=20);opacity:.2;position:fixed;z-index:17;left:0;top:0;width:100%;height:100%;border:none;zoom:1}.dhtmlx-info img,.dhtmlx_modal_box img{float:left;margin-right:20px}.dhtmlx-alert-error .dhtmlx_popup_title,.dhtmlx-confirm-error .dhtmlx_popup_title{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAsCAIAAAArRUU2AAAATklEQVR4nIWLuw2AMBBDjVuQiBT2oWbRDATrnB0KQOJoqPzRe3BrHI6dcBASYREKovtK6/6DsDOX+stN+3H1YX9ciRgnYq5EWYhS2dftBIuLT4JyIrPCAAAAAElFTkSuQmCC)}.dhtmlx-alert-error,.dhtmlx-confirm-error{border:1px solid red}.dhtmlx_button,.dhtmlx_popup_button{box-shadow:0 0 4px #888;border:1px solid #838383}.dhtmlx_button input,.dhtmlx_popup_button div{border:1px solid #FFF;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAeCAMAAADaS4T1AAAAYFBMVEVwcHBtbW1ra2toaGhmZmZjY2NhYWFeXl5cXFxaWlpXV1dVVVVSUlJQUFBNTU1LS0tJSUlGRkZERERBQUE/Pz88PDw9PT0+Pj5AQEBCQkJDQ0NFRUVHR0dISEhKSkpMTEzqthaMAAAAMklEQVQImQXBhQ2AMAAAsOIMlwWH/8+kRSKVyRVKlVrQaHV6g9FktlhFm93hdLk9Xt8PIfgBvdUqyskAAAAASUVORK5CYII=);background:-webkit-linear-gradient(top,#707070 1%,#3d3d3d 70%,#4c4c4c 99%);background:-moz-linear-gradient(top,#707070 1%,#3d3d3d 70%,#4c4c4c 99%);border-radius:6px;font-size:15px;font-weight:400;-moz-box-sizing:content-box;box-sizing:content-box;color:#fff;padding:0;margin:0;vertical-align:top;height:28px;line-height:28px}.dhtmlx_button input:active,.dhtmlx_button input:focus,.dhtmlx_popup_button div:active,.dhtmlx_popup_button div:focus{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAeCAMAAADaS4T1AAAAXVBMVEVwcHBubm5tbW1sbGxra2tpaWloaGhnZ2dmZmZlZWVjY2NiYmJhYWFgYGBfX19dXV1cXFxbW1taWlpZWVlXV1dWVlZVVVVUVFRTU1NRUVFQUFBPT09OTk5NTU1LS0tT9SY0AAAAMUlEQVQImQXBhQGAMAAAIGxnx2z9/00BiVQmVyhVakGj1ekNRpPZYhVtdofT5fZ4fT8hpwG05JjexgAAAABJRU5ErkJggg==);background:-webkit-linear-gradient(top,#707070 1%,#4c4c4c 99%);background:-moz-linear-gradient(top,#707070 1%,#4c4c4c 99%)}.dhtmlx_popup_title{color:#fff;text-shadow:1px 1px #000;height:40px;line-height:40px;font-size:20px}.dhtmlx_popup_text{margin:15px 15px 5px;font-size:14px;color:#000;min-height:30px;border-radius:6px}.dhtmlx-error,.dhtmlx-info{font-size:14px;color:#000;box-shadow:0 0 10px #888;padding:0;background-color:#FFF;border-radius:3px;border:1px solid #fff}.dhtmlx-info div{padding:5px 10px;background-color:#fff;border-radius:3px;border:1px solid #B8B8B8}.dhtmlx-error{background-color:#d81b1b;border:1px solid #ff3c3c;box-shadow:0 0 10px #000}.dhtmlx-error div{background-color:#d81b1b;border:1px solid #940000;color:#FFF}.dhx_cal_event .dhx_body,.dhx_cal_event .dhx_footer,.dhx_cal_event .dhx_header,.dhx_cal_event .dhx_title{border:1px solid #B7A543;overflow:hidden;width:100%;font-family:Tahoma;font-size:8pt}.dhx_move_denied .dhx_cal_event .dhx_header,.dhx_move_denied .dhx_cal_event .dhx_title{cursor:default}.dhx_cal_event .dhx_header{height:1px;margin-left:1px;border-width:1px 1px 0;cursor:pointer}.dhx_cal_event .dhx_title{height:12px;border-bottom-style:dotted;text-align:center;background-position:right;background-repeat:no-repeat;cursor:pointer}.dhx_cal_event .dhx_body,.dhx_cal_event.dhx_cal_select_menu .dhx_body{border-width:0 1px 1px;padding:5px}.dhx_resize_denied,.dhx_resize_denied .dhx_event_resize{cursor:default!important}.dhx_cal_event .dhx_event_resize{cursor:s-resize}.dhx_cal_event .dhx_footer,.dhx_cal_event .dhx_select_menu_footer{height:1px;margin-left:2px;border-width:0 1px 1px;position:relative}.dhx_cal_event_line{padding-left:10px;cursor:pointer;overflow:hidden}.dhx_cal_event_clear{font-family:Tahoma;font-size:8pt;height:13px;padding-left:2px;white-space:nowrap;overflow:hidden;cursor:pointer}.dhx_in_move{background-color:#FFFF80}.dhx_cal_event.dhx_cal_editor{z-index:10;position:absolute;overflow:hidden}textarea.dhx_cal_editor{width:100%;height:100%;border:0 solid #000;margin:0;padding:0;overflow:auto}div.dhx_menu_head{background-position:0 -43px;width:10px;height:10px;margin-left:5px;margin-top:1px;border:none;cursor:default}div.dhx_menu_icon{width:20px;height:20px;margin-left:-5px;margin-top:0;border:none;cursor:pointer}div.icon_details{background-position:0 0}div.icon_edit{background-position:-22px 0}div.icon_save{background-position:-84px -1px}div.icon_cancel{background-position:-62px 0}div.icon_delete{background-position:-42px 0}.dhx_month_link{position:absolute;box-sizing:border-box;-moz-box-sizing:border-box;text-align:right;cursor:pointer;padding-right:10px}.dhx_month_link a{color:#00f}.dhx_month_link a:hover{text-decoration:underline}.dhx_global_tip{font-family:Tahoma,Helvetica;text-align:center;font-size:20px;position:fixed;top:60px;right:20px;background-color:rgba(255,255,255,.7);color:#000;z-index:14;padding:20px 30px;width:190px}.dhx_global_tip div{font-size:30px}@media (-moz-touch-enabled){.dhx_cal_container{user-select:none;-moz-user-select:none}}.dhx_unselectable,.dhx_unselectable div{-webkit-user-select:none;-moz-user-select:none;-moz-user-select:-moz-none}.dhx_cal_light{-webkit-tap-highlight-color:transparent;border-radius:5px;font-family:Tahoma;font-size:8pt;position:absolute;z-index:15;width:580px;height:300px;box-shadow:5px 5px 5px #888}.dhx_mark{position:relative;top:3px;background-image:url(imgs/controls.gif);background-position:0 -43px;padding-left:10px}.dhx_ie6 .dhx_mark{background-position:6px -41px}.dhx_cal_light select{font-family:Tahoma;font-size:8pt;padding:2px;margin:0}.dhx_cal_ltitle{padding:2px 0 2px 5px;overflow:hidden;white-space:nowrap}.dhx_cal_ltitle span{white-space:nowrap}.dhx_cal_lsection{font-weight:700;padding:5px 0 3px 10px}.dhx_section_time{white-space:nowrap}.dhx_cal_lsection .dhx_fullday{float:right;margin-right:5px;font-size:12px;font-weight:400;line-height:20px;vertical-align:top;cursor:pointer}.dhx_cal_lsection{font-size:18px;font-family:Arial}.dhx_cal_ltext{padding:2px 0 2px 10px;overflow:hidden}.dhx_cal_ltext textarea{overflow:auto;height:100%;width:100%;outline:0!important;resize:none}.dhx_time{font-weight:700}.dhx_cal_larea{overflow:hidden;width:572px;height:1px}.dhx_btn_set{float:left}.dhx_btn_set div{float:left;vertical-align:middle;cursor:pointer}.dhx_save_btn{background-image:url(imgs/controls.gif);background-position:-84px 0;width:21px}.dhx_cancel_btn{background-image:url(imgs/controls.gif);background-position:-63px 0;width:20px}.dhx_delete_btn{background-image:url(imgs/controls.gif);background-position:-42px 0;width:20px}.dhx_cal_cover{width:100%;height:100%;position:absolute;z-index:14;top:0;left:0;background-color:#000;opacity:.1;filter:alpha(opacity=10)}.dhx_custom_button{padding:0 3px;font-family:Tahoma;font-size:8pt;font-weight:400;margin-right:5px;margin-top:0;cursor:pointer}.dhx_custom_button div{cursor:pointer;float:left;height:21px;line-height:21px;vertical-align:middle}.dhx_cal_light_wide .dhx_cal_larea{border-top-width:0}.dhx_cal_light_wide .dhx_cal_lsection{border:0;float:left;text-align:right;width:100px;height:20px;padding:5px 0 0 10px}.dhx_cal_light_wide .dhx_wrap_section{position:relative;overflow:hidden}.dhx_cal_light_wide .dhx_section_time{padding-top:2px!important;height:20px!important}.dhx_section_time{text-align:center}.dhx_cal_light_wide .dhx_cal_larea{width:730px}.dhx_cal_light_wide{width:738px}.dhx_cal_light_wide .dhx_section_time{background:0 0}.dhx_cal_light_wide .dhx_cal_checkbox label{padding-left:0}.dhx_cal_wide_checkbox input{margin-top:8px;margin-left:14px}.dhx_cal_light input{font-family:Tahoma;font-size:8pt}.dhx_cal_light_wide .dhx_cal_lsection .dhx_fullday{float:none;margin-right:0;font-weight:700;font-family:Arial;cursor:pointer}.dhx_custom_button{float:right;height:21px}.dhx_cal_light_wide .dhx_custom_button{position:absolute;top:0;right:0}.dhx_cal_light_wide .dhx_repeat_right{margin-right:55px}.dhx_minical_popup{position:absolute;z-index:16;width:251px;height:175px}.dhx_scale_bar_header{position:absolute;border-bottom:1px dotted #8894A3;width:100%}.dhx_expand_icon{position:absolute;right:0;background-image:url(imgs/collapse_expand_icon.gif);width:18px;height:18px;cursor:pointer;background-position:0 18px;z-index:4}.dhx_scheduler_agenda .dhx_cal_data{background-image:url(imgs/databg.png)}.dhx_agenda_area{width:100%;overflow-y:auto;background-image:url(imgs/databg.png)}.dhx_agenda_line{height:21px;clear:both;overflow:hidden}.dhx_agenda_line div{float:left;width:188px;text-align:center;line-height:21px;overflow:hidden}.dhx_agenda_area .dhx_agenda_line div{border-right:0 dotted #8894A3}.dhx_v_border{position:absolute;left:187px;top:0;width:1px;height:100%}.dhx_agenda_line .dhx_event_icon{width:20px;border-width:0;background:url(imgs/icon.png) 5px 4px no-repeat;cursor:pointer}.dhx_agenda_line span{padding-left:5px;line-height:21px}.dhx_year_week{position:relative}.dhx_year_month{height:18px;padding-top:3px;text-align:center;vertical-align:middle}.dhx_year_body .dhx_after .dhx_month_head,.dhx_year_body .dhx_after .dhx_month_head a,.dhx_year_body .dhx_before .dhx_month_head,.dhx_year_body .dhx_before .dhx_month_head a{color:#E2E3E6!important}.dhx_year_body .dhx_month_body{height:0;overflow:hidden}.dhx_month_head.dhx_year_event{background-color:#FFE763}.dhx_year_body .dhx_after .dhx_month_head,.dhx_year_body .dhx_before .dhx_month_head{cursor:default}.dhx_year_tooltip{border:1px solid #BBB;background-image:url(imgs/databg.png);position:absolute;z-index:12;width:300px;height:auto;font-family:Tahoma;font-size:8pt;overflow:hidden}.dhx_tooltip_line{line-height:20px;height:20px;overflow:hidden}.dhx_tooltip_line .dhx_event_icon{width:20px;height:20px;padding-right:10px;float:left;border-width:0;position:relative;background:url(imgs/icon.png) 5px 4px no-repeat;cursor:pointer}.dhx_tooltip_date{float:left;width:auto;padding-left:5px;text-align:center}.dhx_text_disabled{font-family:Tahoma;font-size:8pt}.dhx_mini_calendar{-moz-box-shadow:5px 5px 5px #888;-khtml-box-shadow:5px 5px 5px #888;-moz-user-select:-moz-none;-webkit-user-select:none;-user-select:none}.dhx_mini_calendar .dhx_month_head{cursor:pointer}.dhx_mini_calendar .dhx_calendar_click{background-color:#C2D5FC}.dhx_cal_navline div.dhx_minical_icon{cursor:pointer;background-image:url(imgs/calendar.gif)}.dhx_matrix_scell{height:100%}.dhx_matrix_cell,.dhx_matrix_scell{overflow:hidden;text-align:center;vertical-align:middle}.dhx_matrix_cell{background-color:#fff}.dhx_matrix_line{overflow:hidden}.dhx_matrix_cell div,.dhx_matrix_scell div{overflow:hidden;text-align:center;height:auto}.dhx_cal_lsection .dhx_readonly{font-size:9pt;font-size:8pt;padding:2px;color:#887A2E}.dhx_cal_event_line .dhx_event_resize{cursor:w-resize;position:absolute;top:0;width:4px;height:100%}.dhx_event_resize_start{left:0}.dhx_event_resize_end{right:0}.dhx_data_table.folder .dhx_matrix_cell,.dhx_matrix_scell.folder{background-color:#969394;cursor:pointer}.dhx_matrix_scell .dhx_scell_level0{padding-left:5px}.dhx_matrix_scell .dhx_scell_level1{padding-left:20px}.dhx_matrix_scell .dhx_scell_level2{padding-left:35px}.dhx_matrix_scell .dhx_scell_level3{padding-left:50px}.dhx_matrix_scell .dhx_scell_level4{padding-left:65px}.dhx_matrix_scell.folder{font-weight:700;text-align:left}.dhx_matrix_scell.folder .dhx_scell_expand{float:left;width:10px;padding-right:3px}.dhx_matrix_scell.folder .dhx_scell_name{float:left;width:auto}.dhx_matrix_scell.item .dhx_scell_name{padding-left:15px;text-align:left}.dhx_data_table.folder .dhx_matrix_cell{border-right:0}.dhx_section_timeline{overflow:hidden;padding:4px 0 2px 10px}.dhx_section_timeline select{width:552px}.dhx_map_area{width:100%;height:100%;overflow-y:auto;overflow-x:hidden;background-image:url(imgs/databg.png)}.dhx_map_line .dhx_event_icon{width:20px;border-width:0;background:url(imgs/icon.png) 5px 4px no-repeat;cursor:pointer}.dhx_map_line{height:21px;clear:both;overflow:hidden}.dhx_map{position:absolute}.dhx_map_line .headline_description,.dhx_map_line div{float:left;border-right:1px dotted #8894A3;text-align:center;line-height:21px;overflow:hidden}.dhx_map_line .dhx_map_description{float:left;border-right:0 dotted #8894A3;text-align:center;line-height:21px;overflow:hidden}.dhx_map_line .line_description{float:left;border-right:1px dotted #8894A3;text-align:left;padding-left:5px;line-height:21px;overflow:hidden}.dhx_map_line.highlight{background-color:#C4C5CC}.dhx_map_area .dhx_map_line div{border-right:0 dotted #8894A3}.dhtmlXTooltip.tooltip{-moz-box-shadow:3px 3px 3px #888;-webkit-box-shadow:3px 3px 3px #888;-o-box-shadow:3px 3px 3px #888;box-shadow:3px 3px 3px #888;filter:progid:DXImageTransform.Microsoft.Shadow(color='#888888', Direction=135, Strength=5);background-color:#fff;cursor:default;padding:10px;position:fixed;z-index:9;font-family:Tahoma;opacity:1}.dhx_cal_checkbox label{padding-left:5px}.dhx_cal_light .radio{padding:2px 0 2px 10px}.dhx_cal_light .radio input,.dhx_cal_light .radio label{line-height:15px}.dhx_cal_light .radio input{vertical-align:middle;margin:0;padding:0}.dhx_cal_light .radio label{vertical-align:middle;padding-right:10px}.dhx_cal_light .combo{padding:4px}.dhx_cal_light_wide .combo>div,.dhx_cal_light_wide .dhx_combo_box{width:608px!important;left:10px}.dhx_wa_column{float:left}.dhx_wa_scale_bar{font-family:Tahoma;padding-left:10px;font-size:11px}.dhx_wa_day_data{background-color:#FCFEFC;overflow-y:auto}.dhx_wa_ev_body{font-size:12px;padding:5px 0 5px 7px}.dhx_wa_dnd{font-family:Tahoma;position:absolute;padding-right:7px;color:#887AE2!important;background-color:#FFE763!important}.dhx_cal_event_selected{background-color:#9cc1db;color:#fff}.dhx_second_scale_bar{padding-top:2px}.dhx_grid_area{width:100%;height:100%;overflow-y:auto;background-color:#FCFEFC}.dhx_grid_area table{border-collapse:collapse;border-spacing:0;width:100%;table-layout:fixed}.dhx_grid_area td{table-layout:fixed;text-align:center}.dhx_grid_line{height:21px;clear:both;overflow:hidden}.dhx_grid_line div{float:left;cursor:default;padding-top:0;padding-bottom:0;text-align:center;line-height:21px;overflow:hidden}.dhx_grid_area td,.dhx_grid_line div{padding-left:8px;padding-right:8px}.dhx_grid_area tr.dhx_grid_event{height:21px;overflow:hidden;margin:0 0 1px}.dhx_grid_area tr.dhx_grid_event td{border-bottom:1px solid #ECEEF4}.dhx_grid_area tr.dhx_grid_event:nth-child(2n) td,.dhx_grid_area tr.dhx_grid_event:nth-child(2n+1) td{border-bottom-width:0;border-bottom-style:none}.dhx_grid_area tr.dhx_grid_event:nth-child(2n){background-color:#ECEEF4}.dhx_grid_area .dhx_grid_dummy{table-layout:auto;margin:0!important;padding:0!important}.dhx_grid_v_border{position:absolute;border-right:1px solid #A4BED4;width:1px;height:100%}.dhx_grid_event_selected{background-color:#9cc1db!important;color:#fff!important}.dhx_grid_sort_desc .dhx_grid_view_sort{background-position:0 -55px}.dhx_grid_sort_asc .dhx_grid_view_sort{background-position:0 -66px}.dhx_grid_view_sort{width:10px;height:10px;position:absolute;border:none!important;top:5px;background-repeat:no-repeat;background-image:url(imgs/images.png)}.dhx_marked_timespan{position:absolute;width:100%;margin-left:0}.dhx_time_block{position:absolute;width:100%;background:silver;opacity:.4;filter:alpha(opacity=40);z-index:1}.dhx_time_block_reset{opacity:1;filter:alpha(opacity=100)}.dhx_mini_calendar .dhx_marked_timespan,.dhx_scheduler_month .dhx_marked_timespan{display:none}.dhx_now_time{width:100%;border-bottom:2px solid red;z-index:1}.dhx_scheduler_month .dhx_now_time{border-bottom:0;border-left:2px solid red}.dhx_matrix_now_time{border-left:2px solid red;z-index:1}.dhx_matrix_now_time,.dhx_now_time{opacity:.5}.dhx_cal_quick_info{border:2px solid #888;border-radius:5px;position:absolute;z-index:8;background-color:#8e99ae;background-color:rgba(98,107,127,.5);padding-left:7px;width:300px;transition:left .5s ease,right .5s;-moz-transition:left .5s ease,right .5s;-webkit-transition:left .5s ease,right .5s;-o-transition:left .5s ease,right .5s}.dhx_no_animate{transition:none;-moz-transition:none;-webkit-transition:none;-o-transition:none}.dhx_cal_quick_info.dhx_qi_left .dhx_qi_big_icon{float:right}.dhx_cal_qi_title{padding:5px 0 10px 5px;color:#FFF;letter-spacing:1px}.dhx_cal_qi_tdate{font-size:14px}.dhx_cal_qi_tcontent{font-size:18px;font-weight:700}.dhx_cal_qi_content{border:1px solid #888;background-color:#fefefe;padding:16px 8px;font-size:14px;color:#444;width:275px;overflow:hidden}.dhx_qi_big_icon{border-radius:3px;margin:5px 9px 5px 0;min-width:60px;line-height:20px;vertical-align:middle;padding:5px 10px 5px 5px;cursor:pointer;background-color:#fefefe;border-bottom:1px solid #666;border-right:1px solid #666;float:left}.dhx_cal_qi_controls div{float:left;height:20px;text-align:center;line-height:20px}.dhx_qi_big_icon .dhx_menu_icon{margin:0 8px 0 0}.dhx_drag_marker{width:100%;filter:alpha(Opacity=50);opacity:.5;background-color:#FFE763;position:absolute;box-sizing:border-box!important;border-top:1px solid #B6B6B6;border-bottom:1px solid #b6b6b6}.dhx_focus_slot{background:#FFE763;position:absolute;pointer-events:none;opacity:.3}.dhx_cal_container :focus{outline-style:auto}.dhtmlx_modal_box *,.dhx_cal_data,.dhx_cal_data div,.dhx_cal_data table *,.dhx_cal_header,.dhx_cal_header div,.dhx_cal_light .dhx_cal_lsection,.dhx_cal_light .dhx_wrap_section,.dhx_cal_navline div,.dhx_cal_quick_info,.dhx_cal_quick_info div,.dhx_multi_day,.dhx_multi_day div,.dhx_tooltip_line div{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}.dhx_cal_data div.dhx_scale_hour,.dhx_cal_data table .dhx_matrix_cell,.dhx_cal_data table .dhx_matrix_scell{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.dhx_cal_data table{border-collapse:separate}.dhx_cal_light .dhx_cal_radio label{margin-bottom:0}.dhx_cal_event div{line-height:normal}.dhx_cal_container{font-family:Tahoma;font-size:8pt;position:relative;overflow:hidden}.dhx_cal_container div{-moz-user-select:none;-moz-user-select:-moz-none}.dhx_cal_navline{height:20px;position:absolute;z-index:3;width:750px;color:#2F3A48}.dhx_cal_navline div{position:absolute;white-space:nowrap}.dhx_cal_navline .dhx_cal_date{padding-top:1px}.dhx_cal_button .dhx_left_bg{width:1px;overflow:hidden;height:17px;z-index:5;top:0}.dhx_cal_prev_button{background-image:url(imgs/buttons.png);background-position:0 0;cursor:pointer}.dhx_cal_next_button{background-image:url(imgs/buttons.png);background-position:-30px 0;cursor:pointer}.dhx_cal_today_button{background-image:url(imgs/buttons.png);background-position:-60px 0;cursor:pointer;text-align:center}.dhx_cal_tab{text-align:center;cursor:pointer;background-color:#D8E1EA;-webkit-border-top-left-radius:4px;-webkit-border-top-right-radius:4px;-moz-border-radius-topleft:4px;-moz-border-radius-topright:4px;border-top-left-radius:4px;border-top-right-radius:4px}.dhx_cal_tab.active{text-decoration:none;cursor:default;font-weight:700}.dhx_cal_header{position:absolute;left:10px;top:23px;width:750px;z-index:2;overflow:hidden;color:#2F3A48}.dhx_cal_data{-webkit-tap-highlight-color:transparent;position:absolute;top:44px;width:600px;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;-ms-touch-action:pan-y}.dhx_cal_event,.dhx_cal_event_clear,.dhx_cal_event_line{-ms-touch-action:none}.dhx_scale_bar{position:absolute;text-align:center}.dhx_scale_holder,.dhx_scale_holder_now{position:absolute}.dhx_scale_hour{height:41px;width:50px;text-align:center;line-height:40px;overflow:hidden}.dhx_month_head{padding-right:5px;text-align:right}.dhx_month_body{background-color:#FFF}.dhx_scale_ignore{display:none}.dhx_cal_drag{position:absolute;z-index:13;background-color:#FFE763;border:1px solid #B7A543;opacity:.5;filter:alpha(opacity=50)}.dhx_loading{position:absolute;width:128px;height:15px;background-image:url(imgs/loading.gif);z-index:13}.dhx_multi_day,.dhx_multi_day_icon{background-color:#E1E6FF;background-repeat:no-repeat;border-right:1px dotted #8894A3}.dhx_multi_day{position:absolute}.dhx_multi_day_icon,.dhx_multi_day_icon_small{background-position:center center;background-repeat:no-repeat}.dhtmlxLayoutPolyContainer_dhx_skyblue .dhx_cal_container{background-color:#d0e5ff}.dhx_form_repeat,.dhx_form_repeat input{padding:0 0 0 5px;margin:0;font-family:Tahoma,Verdana;font-size:11px;line-height:24px}.dhx_form_repeat{overflow:hidden;background-color:#FFF4B5}.dhx_cal_light_wide .dhx_form_repeat{background-color:transparent}.dhx_repeat_center,.dhx_repeat_divider,.dhx_repeat_left,.dhx_repeat_right{height:115px;-moz-box-sizing:border-box;box-sizing:border-box}.dhx_repeat_center,.dhx_repeat_left{padding:10px 0 0 10px;float:left}.dhx_repeat_left{width:105px}.dhx_repeat_center{width:345px;padding-top:22px}.dhx_repeat_divider{float:left;width:1px}.dhx_repeat_right{float:right;width:173px;padding:17px 3px 0 10px}input.dhx_repeat_text{height:16px;width:27px;margin:0 4px;line-height:18px;padding:0 0 0 2px}.dhx_form_repeat select{height:20px;width:87px;padding:0 0 0 2px;margin:0 4px}input.dhx_repeat_date{height:18px;width:80px;padding:0 0 0 2px;margin:0 4px;background-repeat:no-repeat;background-position:64px 0;border:1px solid #7f9db9;line-height:18px}input.dhx_repeat_radio{margin-right:4px}input.dhx_repeat_checkbox{margin:4px 4px 0 0}.dhx_repeat_days td{padding-right:5px}.dhx_repeat_days label{font-size:10px}.dhx_custom_button{width:90px;-webkit-border-radius:4px;-moz-border-radius:4px;-ms-border-radius:4px;-o-border-radius:4px;border-radius:4px}.dhx_custom_button_recurring{background-position:-5px 20px;width:20px;margin-right:10px}.dhx_cal_light_rec{width:640px}.dhx_cal_light_rec .dhx_cal_larea{width:632px}.dhx_cal_light_rec.dhx_cal_light_wide{width:816px}.dhx_cal_light_rec.dhx_cal_light_wide .dhx_cal_larea{width:808px}.dhx_cal_event .dhx_title{border-width:1px 1px 0;padding-top:1px;-webkit-border-top-left-radius:4px;-webkit-border-top-right-radius:4px;-moz-border-radius-topleft:4px;-moz-border-radius-topright:4px;border-top-left-radius:4px;border-top-right-radius:4px;font-family:arial;font-weight:700;font-size:12px;line-height:12px}.dhx_cal_event .dhx_body,.dhx_cal_event.dhx_cal_select_menu .dhx_body{padding-bottom:8px;-webkit-border-bottom-right-radius:4px;-webkit-border-bottom-left-radius:4px;-moz-border-radius-bottomright:4px;-moz-border-radius-bottomleft:4px;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.dhx_cal_event .dhx_header,.dhx_cal_event.dhx_cal_select_menu .dhx_footer{display:none}.dhx_cal_event.dhx_cal_select_menu{-webkit-box-shadow:0 0 1px #FFF;-moz-box-shadow:0 0 1px #FFF;box-shadow:0 0 1px #FFF}.dhx_cal_event .dhx_footer{height:5px;border:0;margin-top:-6px;background:url(imgs_dhx_terrace/resizing.png) center center no-repeat}.dhx_cal_event .dhx_body,.dhx_cal_event .dhx_footer,.dhx_cal_event .dhx_header,.dhx_cal_event .dhx_title{background-color:#1796b0;border-color:transparent;color:#fff}.dhx_cal_event.dhx_cal_editor{border:1px solid transparent}.dhx_cal_editor{font-size:12px;font-family:Arial,sans-serif}div.dhx_menu_head,div.dhx_menu_icon{background-image:url(imgs_dhx_terrace/controls.png)}.dhx_cal_event_line{border:1px solid transparent;background-color:#1796b0;color:#fff;height:17px;line-height:17px;-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px}.dhx_cal_event_line_start{-webkit-border-top-left-radius:9px;-webkit-border-bottom-left-radius:9px;-moz-border-radius-topleft:9px;-moz-border-radius-bottomleft:9px;border-top-left-radius:9px;border-bottom-left-radius:9px}.dhx_cal_event_line_end{-webkit-border-top-right-radius:9px;-webkit-border-bottom-right-radius:9px;-moz-border-radius-topright:9px;-moz-border-radius-bottomright:9px;border-top-right-radius:9px;border-bottom-right-radius:9px}.dhx_cal_event .dhx_body,.dhx_cal_event_line{font-size:12px;font-family:Arial,sans-serif}.dhx_cal_container{background-color:#fff}.dhx_cal_data{border-top:1px solid #CECECE}.dhx_scale_holder{background-image:url(imgs_dhx_terrace/databg.png);border-right:1px solid #CECECE}.dhx_scale_holder_now{background-image:url(imgs_dhx_terrace/databg_now.png);border-right:1px solid #CECECE}.dhx_scale_hour{border-bottom:1px solid #CECECE;background-color:#fff;font:11px/44px Arial;color:#767676}.dhx_cal_header{border:1px solid #CECECE;border-left:0;border-bottom:0}.dhx_scale_bar{border-left:1px solid #CECECE;font:11px/16px Arial;color:#767676;padding-top:2px;background-color:#fff}.dhx_cal_navline div{top:14px}.dhx_cal_date,.dhx_cal_next_button,.dhx_cal_prev_button,.dhx_cal_tab,.dhx_cal_today_button{color:#454544;height:30px;line-height:30px;background:0 0;border:1px solid #CECECE}.dhx_cal_navline .dhx_cal_date{border:0;font-size:18px;font-weight:400;font-family:arial;width:100%;top:14px;text-align:center;position:absolute;left:0;z-index:-1}.dhx_cal_today_button{color:#747473;left:auto;right:123px;background:0 0;text-decoration:none;width:80px;font-size:12px;font-weight:700;font-family:arial;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}.dhx_cal_next_button,.dhx_cal_prev_button{left:auto;width:46px}.dhx_cal_prev_button{right:61px;background:url(imgs_dhx_terrace/arrow_left.png) center center no-repeat;-webkit-border-top-left-radius:5px;-webkit-border-bottom-left-radius:5px;-moz-border-radius-topleft:5px;-moz-border-radius-bottomleft:5px;border-top-left-radius:5px;border-bottom-left-radius:5px}.dhx_cal_next_button{right:14px;background:url(imgs_dhx_terrace/arrow_right.png) center center no-repeat;-webkit-border-top-right-radius:5px;-webkit-border-bottom-right-radius:5px;-moz-border-radius-topright:5px;-moz-border-radius-bottomright:5px;border-top-right-radius:5px;border-bottom-right-radius:5px}.dhx_cal_tab{color:#747473;width:60px;padding-top:0;text-decoration:none;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0;font-weight:700;font-family:arial;font-size:12px}.dhx_cal_tab.active{background-color:#F0EDE7;color:#454544;border:1px solid #CECECE;text-shadow:0 1px 0 #fff}.dhx_cal_tab_first{-webkit-border-top-left-radius:5px;-webkit-border-bottom-left-radius:5px;-moz-border-radius-topleft:5px;-moz-border-radius-bottomleft:5px;border-top-left-radius:5px;border-bottom-left-radius:5px}.dhx_cal_tab_last{-webkit-border-top-right-radius:5px;-webkit-border-bottom-right-radius:5px;-moz-border-radius-topright:5px;-moz-border-radius-bottomright:5px;border-top-right-radius:5px;border-bottom-right-radius:5px}.dhx_cal_tab_standalone{-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px;padding:0 5px}.dhx_multi_day,.dhx_multi_day_icon,.dhx_multi_day_icon_small{background-color:#fff}.dhx_multi_day{border-top:1px solid #CECECE}.dhx_multi_day_icon,.dhx_multi_day_icon_small{border-bottom:1px solid #CECECE;border-right:1px solid #CECECE}.dhx_multi_day_icon_small{background-image:url(imgs_dhx_terrace/clock_small.gif)}.dhx_multi_day_icon{background-image:url(imgs_dhx_terrace/clock_big.gif)}.dhx_after .dhx_month_body,.dhx_after .dhx_month_head,.dhx_before .dhx_month_body,.dhx_before .dhx_month_head,.dhx_month_head{background-color:#fff}.dhx_month_head{height:21px;padding-top:0;font:12px/21px Arial;color:#362d26;border-right:1px solid #CECECE}.dhx_after .dhx_month_head,.dhx_before .dhx_month_head{color:#bbb}.dhx_month_body{border-right:1px solid #CECECE;border-bottom:1px solid #CECECE}.dhx_now .dhx_month_body,.dhx_now .dhx_month_head{background-color:#FFF3A1;font-weight:400}.dhx_cal_event_clear{color:#0E64A0}.dhx_cal_larea{margin-left:0}.dhx_cal_light_wide .dhx_cal_larea{margin-left:3px}.dhx_cal_light_wide .dhx_wrap_section{padding:5px 0}.dhx_cal_larea,.dhx_cal_light,.dhx_cal_light_wide .dhx_wrap_section,.dhx_cal_lsection,.dhx_cal_ltext textarea,.dhx_wrap_section{background-color:#fff}.dhx_cal_light input,.dhx_cal_light_wide .dhx_cal_lsection .dhx_fullday,.dhx_cal_lsection,.dhx_cal_lsection .dhx_fullday{color:#747473}.dhx_cal_light_wide .dhx_wrap_section{border-top:0;border-bottom:1px solid #CECECE}.dhx_cal_larea{border:1px solid transparent}.dhx_cal_light,.dhx_cal_light select,.dhx_cal_ltext textarea{color:#2E2E2E}.dhx_cal_light{border:1px solid #CECECE}.dhx_cal_light_wide .dhx_cal_lsection,.dhx_cal_light_wide .dhx_cal_lsection .dhx_fullday{font-size:13px}.dhx_section_time{background-color:transparent}.dhx_btn_set div:first-child,.dhx_cancel_btn,.dhx_delete_btn,.dhx_save_btn{display:none}.dhx_btn_set,.dhx_btn_set div{height:30px;padding:0 20px;line-height:30px}.dhx_btn_set{margin:12px 0 0;padding:0;font-size:12px;color:#454544;font-weight:700;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.dhx_left_btn_set{margin-left:20px}.dhx_right_btn_set{margin-right:20px}.dhx_save_btn_set{border:1px solid #22A1BC;color:#fff;text-shadow:0 -1px 0 #6f6f6f;background-color:#22A1BC}.dhx_btn_set,.dhx_cancel_btn_set{border:1px solid #CECECE}.dhx_delete_btn_set{border:1px solid #FF8831;background-color:#FF8831;color:#fff;text-shadow:0 -1px 0 #93755f}.dhx_cal_ltitle{height:30px;line-height:30px;border-bottom:1px solid #CECECE}.dhx_cal_ltitle span{float:left}.dhx_cal_light .dhx_title{padding-left:13px}.dhx_mark{display:none}.dhx_time{padding-left:10px}.dhx_close_icon{float:right;width:9px;height:9px;background:url(imgs_dhx_terrace/close_icon.png) center center no-repeat;padding:10px;margin-top:1px}.dhx_cal_light_wide .dhx_cal_ltext.dhx_cal_template{line-height:22px}.dhx_cal_ltext textarea{line-height:20px;box-sizing:border-box;-moz-box-sizing:border-box;border:1px solid #CECECE;background-color:#F9F9F9}.dhtmlx_modal_box{background:#fff;width:330px}.dhtmlx_popup_controls{padding-bottom:9px}.dhtmlx_popup_button,.dhtmlx_popup_button div,.dhtmlx_popup_button div:active,.dhtmlx_popup_button:active{color:#444;background:#fff;box-shadow:none}.dhtmlx_popup_button.dhtmlx_ok_button{border:1px solid #22A1BC;background-color:#22A1BC}.dhtmlx_popup_button.dhtmlx_ok_button div{background:#22A1BC;border:1px solid #22A1BC;color:#fff;text-shadow:0 -1px 0 #6f6f6f}.dhx_cal_container.dhx_mini_calendar{box-sizing:border-box;border:1px solid #CECECE;box-shadow:2px 2px 5px #CCC;border-radius:3px}.dhx_mini_calendar .dhx_year_month{border:1px solid #CECECE;font-family:Arial}.dhx_mini_calendar .dhx_month_body,.dhx_mini_calendar .dhx_month_head,.dhx_mini_calendar .dhx_scale_bar,.dhx_mini_calendar .dhx_year_body,.dhx_mini_calendar .dhx_year_month{border-color:transparent}.dhx_mini_calendar .dhx_year_body{padding-top:1px}.dhx_mini_calendar .dhx_scale_bar{border-width:0}.dhx_mini_calendar .dhx_year_week{border-bottom:1px solid #CECECE;padding-top:1px}.dhx_mini_calendar .dhx_month_head{padding-right:0;text-align:center}.dhx_mini_calendar .dhx_cal_next_button,.dhx_mini_calendar .dhx_cal_prev_button{border:0;height:20px}.dhx_cal_navline div.dhx_minical_icon{left:210px;top:14px;width:30px;height:30px;background:url(imgs_dhx_terrace/calendar.gif) 3px 5px no-repeat}.dhx_cal_event_line .dhx_event_resize{background:url(imgs_dhx_terrace/resize_dots.png) repeat-y}.dhx_matrix_cell,.dhx_matrix_scell{border-bottom:1px solid #CECECE;border-right:1px solid #CECECE}.dhx_cal_header div div{border-left:1px solid #CECECE}.dhx_matrix_scell.folder{border-right:0}.dhx_second_scale_bar{border-bottom:1px solid #CECECE}.dhx_repeat_divider{border-left:1px solid #CECECE}.dhx_custom_button{background-color:#fff;border:1px solid #CECECE;color:#747473}.dhx_cal_light_wide .dhx_custom_button{margin-top:6px}.dhx_custom_button_recurring{background-image:url(imgs_dhx_terrace/but_repeat.gif)}.dhx_agenda_line div,.dhx_v_border{border-right:1px solid #CECECE}.dhx_year_month{border:1px solid #CECECE}.dhx_scale_bar_last{border-right:1px solid #CECECE}.dhx_year_body{border-left:1px solid #CECECE}.dhx_expand_icon{top:-3px}.dhx_scale_bar .dhx_cal_next_button,.dhx_scale_bar .dhx_cal_prev_button{width:20px;height:20px;top:0!important;border:0}.dhx_scale_bar .dhx_cal_next_button{right:1px!important;border-left:1px solid #CECECE}.dhx_scale_bar .dhx_cal_prev_button{left:1px!important;border-right:1px solid #CECECE}.dhx_map_line .headline_date,.dhx_map_line .headline_description{border:0}.dhx_map_line .headline_date{border-right:1px solid #CECECE}.dhtmlXTooltip.tooltip{border-left:1px solid #CECECE;border-top:1px solid #CECECE;color:#747473;font-size:12px;line-height:16px}.dhx_wa_scale_bar{border-top:1px solid #CECECE;border-bottom:1px solid #CECECE}.dhx_wa_column_last .dhx_wa_day_cont{border-left:1px solid #CECECE}.dhx_wa_ev_body{border-bottom:1px solid #CECECE}.dhx_wa_scale_bar{background-color:#f0ede7}.dhx_wa_ev_body.dhx_cal_event_selected{background-color:#fff3a1;color:#362d26}.dhx_wa_dnd{background-color:#fddb93!important;color:#747473!important;border:1px solid #ccb177}.dhx_text_disabled{color:#2E2E2E}.dhx_cal_ltext .dhx_text_disabled{line-height:22px}.dhx_grid_v_border{border-right-color:#CECECE}.dhx_month_body_border,.dhx_month_head_border,.dhx_scale_bar_border,.dhx_scale_hour_border{border-left:1px solid #CECECE}.dhx_cal_quick_info{background:rgba(50,50,50,.5)}.dhx_qi_big_icon{background:#1796b0;color:#fff}.dhx_cal_navline .dhx_cal_export{width:32px;height:32px;margin:2px;cursor:pointer;top:12px}.dhx_cal_navline .dhx_cal_export.pdf{left:auto;right:249px;background-image:url(imgs_dhx_terrace/export_pdf.png)}.dhx_cal_navline .dhx_cal_export.ical{left:auto;right:210px;background-image:url(imgs_dhx_terrace/export_ical.png)}.dhx_mini_calendar{padding:5px}.dhx_mini_calendar .dhx_calendar_click,.dhx_mini_calendar .dhx_year_event{border-radius:7px}.dhx_mini_calendar .dhx_month_head{margin:2px}.dhx_mini_calendar .dhx_year_month{line-height:20px;height:25px;font-size:14px}.dhx_mini_calendar .dhx_cal_next_button,.dhx_mini_calendar .dhx_cal_prev_button{top:8px!important}
\ No newline at end of file diff --git a/codebase/dhtmlxscheduler.js b/codebase/dhtmlxscheduler.js index 2ea2293..829db2c 100644 --- a/codebase/dhtmlxscheduler.js +++ b/codebase/dhtmlxscheduler.js @@ -1,318 +1,260 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. (c) Dinamenta, UAB. */ -function dtmlXMLLoaderObject(e,t,i,s){return this.xmlDoc="","undefined"!=typeof i?this.async=i:this.async=!0,this.onloadAction=e||null,this.mainObject=t||null,this.waitCall=null,this.rSeed=s||!1,this}function callerFunction(e,t){return this.handler=function(i){return i||(i=window.event),e(i,t),!0},this.handler}function getAbsoluteLeft(e){return getOffset(e).left}function getAbsoluteTop(e){return getOffset(e).top}function getOffsetSum(e){for(var t=0,i=0;e;)t+=parseInt(e.offsetTop),i+=parseInt(e.offsetLeft), -e=e.offsetParent;return{top:t,left:i}}function getOffsetRect(e){var t=e.getBoundingClientRect(),i=document.body,s=document.documentElement,a=window.pageYOffset||s.scrollTop||i.scrollTop,n=window.pageXOffset||s.scrollLeft||i.scrollLeft,r=s.clientTop||i.clientTop||0,d=s.clientLeft||i.clientLeft||0,o=t.top+a-r,l=t.left+n-d;return{top:Math.round(o),left:Math.round(l)}}function getOffset(e){return e.getBoundingClientRect?getOffsetRect(e):getOffsetSum(e)}function convertStringToBoolean(e){switch("string"==typeof e&&(e=e.toLowerCase()), +function dtmlXMLLoaderObject(e,t,i,a){return this.xmlDoc="","undefined"!=typeof i?this.async=i:this.async=!0,this.onloadAction=e||null,this.mainObject=t||null,this.waitCall=null,this.rSeed=a||!1,this}function callerFunction(e,t){return this.handler=function(i){return i||(i=window.event),e(i,t),!0},this.handler}function getAbsoluteLeft(e){return getOffset(e).left}function getAbsoluteTop(e){return getOffset(e).top}function getOffsetSum(e){for(var t=0,i=0;e;)t+=parseInt(e.offsetTop),i+=parseInt(e.offsetLeft), +e=e.offsetParent;return{top:t,left:i}}function getOffsetRect(e){var t=e.getBoundingClientRect(),i=document.body,a=document.documentElement,r=window.pageYOffset||a.scrollTop||i.scrollTop,s=window.pageXOffset||a.scrollLeft||i.scrollLeft,n=a.clientTop||i.clientTop||0,d=a.clientLeft||i.clientLeft||0,l=t.top+r-n,o=t.left+s-d;return{top:Math.round(l),left:Math.round(o)}}function getOffset(e){return e.getBoundingClientRect?getOffsetRect(e):getOffsetSum(e)}function convertStringToBoolean(e){switch("string"==typeof e&&(e=e.toLowerCase()), e){case"1":case"true":case"yes":case"y":case 1:case!0:return!0;default:return!1}}function getUrlSymbol(e){return-1!=e.indexOf("?")?"&":"?"}function dhtmlDragAndDropObject(){return window.dhtmlDragAndDrop?window.dhtmlDragAndDrop:(this.lastLanding=0,this.dragNode=0,this.dragStartNode=0,this.dragStartObject=0,this.tempDOMU=null,this.tempDOMM=null,this.waitDrag=0,window.dhtmlDragAndDrop=this,this)}function _dhtmlxError(e,t,i){return this.catches||(this.catches=[]),this}function dhtmlXHeir(e,t){for(var i in t)"function"==typeof t[i]&&(e[i]=t[i]); - return e}function dataProcessor(e){return this.serverProcessor=e,this.action_param="!nativeeditor_status",this.object=null,this.updatedRows=[],this.autoUpdate=!0,this.updateMode="cell",this._tMode="GET",this.post_delim="_",this._waitMode=0,this._in_progress={},this._invalid={},this.mandatoryFields=[],this.messages=[],this.styles={updated:"font-weight:bold;",inserted:"font-weight:bold;",deleted:"text-decoration : line-through;",invalid:"background-color:FFE0E0;",invalid_cell:"border-bottom:2px solid red;", -error:"color:red;",clear:"font-weight:normal;text-decoration:none;"},this.enableUTFencoding(!0),dhtmlxEventable(this),this}window.dhtmlXScheduler=window.scheduler={version:"4.3.1"},window.dhtmlx||(dhtmlx=function(e){for(var t in e)dhtmlx[t]=e[t];return dhtmlx}),dhtmlx.extend_api=function(e,t,i){var s=window[e];s&&(window[e]=function(e){var i;if(e&&"object"==typeof e&&!e.tagName){i=s.apply(this,t._init?t._init(e):arguments);for(var a in dhtmlx)t[a]&&this[t[a]](dhtmlx[a]);for(var a in e)t[a]?this[t[a]](e[a]):0===a.indexOf("on")&&this.attachEvent(a,e[a]); - -}else i=s.apply(this,arguments);return t._patch&&t._patch(this),i||this},window[e].prototype=s.prototype,i&&dhtmlXHeir(window[e].prototype,i))},dhtmlxAjax={get:function(e,t){var i=new dtmlXMLLoaderObject(!0);return i.async=arguments.length<3,i.waitCall=t,i.loadXML(e),i},post:function(e,t,i){var s=new dtmlXMLLoaderObject(!0);return s.async=arguments.length<4,s.waitCall=i,s.loadXML(e,!0,t),s},getSync:function(e){return this.get(e,null,!0)},postSync:function(e,t){return this.post(e,t,null,!0)}},dtmlXMLLoaderObject.count=0, -dtmlXMLLoaderObject.prototype.waitLoadFunction=function(e){var t=!0;return this.check=function(){if(e&&e.onloadAction&&(!e.xmlDoc.readyState||4==e.xmlDoc.readyState)){if(!t)return;t=!1,dtmlXMLLoaderObject.count++,"function"==typeof e.onloadAction&&e.onloadAction(e.mainObject,null,null,null,e),e.waitCall&&(e.waitCall.call(this,e),e.waitCall=null)}},this.check},dtmlXMLLoaderObject.prototype.getXMLTopNode=function(e,t){var i;if(this.xmlDoc.responseXML){var s=this.xmlDoc.responseXML.getElementsByTagName(e); - -if(0===s.length&&-1!=e.indexOf(":"))var s=this.xmlDoc.responseXML.getElementsByTagName(e.split(":")[1]);i=s[0]}else i=this.xmlDoc.documentElement;if(i)return this._retry=!1,i;if(!this._retry&&_isIE){this._retry=!0;var t=this.xmlDoc;return this.loadXMLString(this.xmlDoc.responseText.replace(/^[\s]+/,""),!0),this.getXMLTopNode(e,t)}return dhtmlxError.throwError("LoadXML","Incorrect XML",[t||this.xmlDoc,this.mainObject]),document.createElement("DIV")},dtmlXMLLoaderObject.prototype.loadXMLString=function(e,t){ -if(_isIE)this.xmlDoc=new ActiveXObject("Microsoft.XMLDOM"),this.xmlDoc.async=this.async,this.xmlDoc.onreadystatechange=function(){},this.xmlDoc.loadXML(e);else{var i=new DOMParser;this.xmlDoc=i.parseFromString(e,"text/xml")}t||(this.onloadAction&&this.onloadAction(this.mainObject,null,null,null,this),this.waitCall&&(this.waitCall(),this.waitCall=null))},dtmlXMLLoaderObject.prototype.loadXML=function(e,t,i,s){this.rSeed&&(e+=(-1!=e.indexOf("?")?"&":"?")+"a_dhx_rSeed="+(new Date).valueOf()),this.filePath=e, -!_isIE&&window.XMLHttpRequest?this.xmlDoc=new XMLHttpRequest:this.xmlDoc=new ActiveXObject("Microsoft.XMLHTTP"),this.async&&(this.xmlDoc.onreadystatechange=new this.waitLoadFunction(this)),"string"==typeof t?this.xmlDoc.open(t,e,this.async):this.xmlDoc.open(t?"POST":"GET",e,this.async),s?(this.xmlDoc.setRequestHeader("User-Agent","dhtmlxRPC v0.1 ("+navigator.userAgent+")"),this.xmlDoc.setRequestHeader("Content-type","text/xml")):t&&this.xmlDoc.setRequestHeader("Content-type","application/x-www-form-urlencoded"), -this.xmlDoc.setRequestHeader("X-Requested-With","XMLHttpRequest"),this.xmlDoc.send(null||i),this.async||new this.waitLoadFunction(this)()},dtmlXMLLoaderObject.prototype.destructor=function(){return this._filterXPath=null,this._getAllNamedChilds=null,this._retry=null,this.async=null,this.rSeed=null,this.filePath=null,this.onloadAction=null,this.mainObject=null,this.xmlDoc=null,this.doXPath=null,this.doXPathOpera=null,this.doXSLTransToObject=null,this.doXSLTransToString=null,this.loadXML=null,this.loadXMLString=null, -this.doSerialization=null,this.xmlNodeToJSON=null,this.getXMLTopNode=null,this.setXSLParamValue=null,null},dtmlXMLLoaderObject.prototype.xmlNodeToJSON=function(e){for(var t={},i=0;i<e.attributes.length;i++)t[e.attributes[i].name]=e.attributes[i].value;t._tagvalue=e.firstChild?e.firstChild.nodeValue:"";for(var i=0;i<e.childNodes.length;i++){var s=e.childNodes[i].tagName;s&&(t[s]||(t[s]=[]),t[s].push(this.xmlNodeToJSON(e.childNodes[i])))}return t},dhtmlDragAndDropObject.prototype.removeDraggableItem=function(e){ +error:"color:red;",clear:"font-weight:normal;text-decoration:none;"},this.enableUTFencoding(!0),dhtmlxEventable(this),this}window.dhtmlXScheduler=window.scheduler={version:"4.4.0"},window.dhtmlx||(dhtmlx=function(e){for(var t in e)dhtmlx[t]=e[t];return dhtmlx}),dhtmlx.extend_api=function(e,t,i){var a=window[e];a&&(window[e]=function(e){var i;if(e&&"object"==typeof e&&!e.tagName){i=a.apply(this,t._init?t._init(e):arguments);for(var r in dhtmlx)t[r]&&this[t[r]](dhtmlx[r]);for(var r in e)t[r]?this[t[r]](e[r]):0===r.indexOf("on")&&this.attachEvent(r,e[r]); +}else i=a.apply(this,arguments);return t._patch&&t._patch(this),i||this},window[e].prototype=a.prototype,i&&dhtmlXHeir(window[e].prototype,i))},dhtmlxAjax={get:function(e,t){var i=new dtmlXMLLoaderObject(!0);return i.async=arguments.length<3,i.waitCall=t,i.loadXML(e),i},post:function(e,t,i){var a=new dtmlXMLLoaderObject(!0);return a.async=arguments.length<4,a.waitCall=i,a.loadXML(e,!0,t),a},getSync:function(e){return this.get(e,null,!0)},postSync:function(e,t){return this.post(e,t,null,!0)}},dtmlXMLLoaderObject.count=0, +dtmlXMLLoaderObject.prototype.waitLoadFunction=function(e){var t=!0;return this.check=function(){if(e&&e.onloadAction&&(!e.xmlDoc.readyState||4==e.xmlDoc.readyState)){if(!t)return;t=!1,dtmlXMLLoaderObject.count++,"function"==typeof e.onloadAction&&e.onloadAction(e.mainObject,null,null,null,e),e.waitCall&&(e.waitCall.call(this,e),e.waitCall=null)}},this.check},dtmlXMLLoaderObject.prototype.getXMLTopNode=function(e,t){var i;if(this.xmlDoc.responseXML){var a=this.xmlDoc.responseXML.getElementsByTagName(e); +if(0===a.length&&-1!=e.indexOf(":"))var a=this.xmlDoc.responseXML.getElementsByTagName(e.split(":")[1]);i=a[0]}else i=this.xmlDoc.documentElement;if(i)return this._retry=!1,i;if(!this._retry&&_isIE){this._retry=!0;var t=this.xmlDoc;return this.loadXMLString(this.xmlDoc.responseText.replace(/^[\s]+/,""),!0),this.getXMLTopNode(e,t)}return dhtmlxError.throwError("LoadXML","Incorrect XML",[t||this.xmlDoc,this.mainObject]),document.createElement("DIV")},dtmlXMLLoaderObject.prototype.loadXMLString=function(e,t){ +if(_isIE)this.xmlDoc=new ActiveXObject("Microsoft.XMLDOM"),this.xmlDoc.async=this.async,this.xmlDoc.onreadystatechange=function(){},this.xmlDoc.loadXML(e);else{var i=new DOMParser;this.xmlDoc=i.parseFromString(e,"text/xml")}t||(this.onloadAction&&this.onloadAction(this.mainObject,null,null,null,this),this.waitCall&&(this.waitCall(),this.waitCall=null))},dtmlXMLLoaderObject.prototype.loadXML=function(e,t,i,a){this.rSeed&&(e+=(-1!=e.indexOf("?")?"&":"?")+"a_dhx_rSeed="+(new Date).valueOf()),this.filePath=e, +!_isIE&&window.XMLHttpRequest?this.xmlDoc=new XMLHttpRequest:this.xmlDoc=new ActiveXObject("Microsoft.XMLHTTP"),this.async&&(this.xmlDoc.onreadystatechange=new this.waitLoadFunction(this)),"string"==typeof t?this.xmlDoc.open(t,e,this.async):this.xmlDoc.open(t?"POST":"GET",e,this.async),a?(this.xmlDoc.setRequestHeader("User-Agent","dhtmlxRPC v0.1 ("+navigator.userAgent+")"),this.xmlDoc.setRequestHeader("Content-type","text/xml")):t&&this.xmlDoc.setRequestHeader("Content-type","application/x-www-form-urlencoded"), +this.xmlDoc.setRequestHeader("X-Requested-With","XMLHttpRequest"),this.xmlDoc.send(i),this.async||new this.waitLoadFunction(this)()},dtmlXMLLoaderObject.prototype.destructor=function(){return this._filterXPath=null,this._getAllNamedChilds=null,this._retry=null,this.async=null,this.rSeed=null,this.filePath=null,this.onloadAction=null,this.mainObject=null,this.xmlDoc=null,this.doXPath=null,this.doXPathOpera=null,this.doXSLTransToObject=null,this.doXSLTransToString=null,this.loadXML=null,this.loadXMLString=null, +this.doSerialization=null,this.xmlNodeToJSON=null,this.getXMLTopNode=null,this.setXSLParamValue=null,null},dtmlXMLLoaderObject.prototype.xmlNodeToJSON=function(e){for(var t={},i=0;i<e.attributes.length;i++)t[e.attributes[i].name]=e.attributes[i].value;t._tagvalue=e.firstChild?e.firstChild.nodeValue:"";for(var i=0;i<e.childNodes.length;i++){var a=e.childNodes[i].tagName;a&&(t[a]||(t[a]=[]),t[a].push(this.xmlNodeToJSON(e.childNodes[i])))}return t},dhtmlDragAndDropObject.prototype.removeDraggableItem=function(e){ e.onmousedown=null,e.dragStarter=null,e.dragLanding=null},dhtmlDragAndDropObject.prototype.addDraggableItem=function(e,t){e.onmousedown=this.preCreateDragCopy,e.dragStarter=t,this.addDragLanding(e,t)},dhtmlDragAndDropObject.prototype.addDragLanding=function(e,t){e.dragLanding=t},dhtmlDragAndDropObject.prototype.preCreateDragCopy=function(e){return!e&&!window.event||2!=(e||event).button?window.dhtmlDragAndDrop.waitDrag?(window.dhtmlDragAndDrop.waitDrag=0,document.body.onmouseup=window.dhtmlDragAndDrop.tempDOMU, document.body.onmousemove=window.dhtmlDragAndDrop.tempDOMM,!1):(window.dhtmlDragAndDrop.dragNode&&window.dhtmlDragAndDrop.stopDrag(e),window.dhtmlDragAndDrop.waitDrag=1,window.dhtmlDragAndDrop.tempDOMU=document.body.onmouseup,window.dhtmlDragAndDrop.tempDOMM=document.body.onmousemove,window.dhtmlDragAndDrop.dragStartNode=this,window.dhtmlDragAndDrop.dragStartObject=this.dragStarter,document.body.onmouseup=window.dhtmlDragAndDrop.preCreateDragCopy,document.body.onmousemove=window.dhtmlDragAndDrop.callDrag, window.dhtmlDragAndDrop.downtime=(new Date).valueOf(),e&&e.preventDefault?(e.preventDefault(),!1):!1):void 0},dhtmlDragAndDropObject.prototype.callDrag=function(e){e||(e=window.event);var t=window.dhtmlDragAndDrop;if(!((new Date).valueOf()-t.downtime<100)){if(!t.dragNode){if(!t.waitDrag)return t.stopDrag(e,!0);if(t.dragNode=t.dragStartObject._createDragNode(t.dragStartNode,e),!t.dragNode)return t.stopDrag();t.dragNode.onselectstart=function(){return!1},t.gldragNode=t.dragNode,document.body.appendChild(t.dragNode), -document.body.onmouseup=t.stopDrag,t.waitDrag=0,t.dragNode.pWindow=window,t.initFrameRoute()}if(t.dragNode.parentNode!=window.document.body&&t.gldragNode){var i=t.gldragNode;t.gldragNode.old&&(i=t.gldragNode.old),i.parentNode.removeChild(i);var s=t.dragNode.pWindow;if(i.pWindow&&i.pWindow.dhtmlDragAndDrop.lastLanding&&i.pWindow.dhtmlDragAndDrop.lastLanding.dragLanding._dragOut(i.pWindow.dhtmlDragAndDrop.lastLanding),_isIE){var a=document.createElement("Div");a.innerHTML=t.dragNode.outerHTML,t.dragNode=a.childNodes[0]; - -}else t.dragNode=t.dragNode.cloneNode(!0);t.dragNode.pWindow=window,t.gldragNode.old=t.dragNode,document.body.appendChild(t.dragNode),s.dhtmlDragAndDrop.dragNode=t.dragNode}t.dragNode.style.left=e.clientX+15+(t.fx?-1*t.fx:0)+(document.body.scrollLeft||document.documentElement.scrollLeft)+"px",t.dragNode.style.top=e.clientY+3+(t.fy?-1*t.fy:0)+(document.body.scrollTop||document.documentElement.scrollTop)+"px";var n;n=e.srcElement?e.srcElement:e.target,t.checkLanding(n,e)}},dhtmlDragAndDropObject.prototype.calculateFramePosition=function(e){ -if(window.name){for(var t=parent.frames[window.name].frameElement.offsetParent,i=0,s=0;t;)i+=t.offsetLeft,s+=t.offsetTop,t=t.offsetParent;if(parent.dhtmlDragAndDrop){var a=parent.dhtmlDragAndDrop.calculateFramePosition(1);i+=1*a.split("_")[0],s+=1*a.split("_")[1]}if(e)return i+"_"+s;this.fx=i,this.fy=s}return"0_0"},dhtmlDragAndDropObject.prototype.checkLanding=function(e,t){e&&e.dragLanding?(this.lastLanding&&this.lastLanding.dragLanding._dragOut(this.lastLanding),this.lastLanding=e,this.lastLanding=this.lastLanding.dragLanding._dragIn(this.lastLanding,this.dragStartNode,t.clientX,t.clientY,t), -this.lastLanding_scr=_isIE?t.srcElement:t.target):e&&"BODY"!=e.tagName?this.checkLanding(e.parentNode,t):(this.lastLanding&&this.lastLanding.dragLanding._dragOut(this.lastLanding,t.clientX,t.clientY,t),this.lastLanding=0,this._onNotFound&&this._onNotFound())},dhtmlDragAndDropObject.prototype.stopDrag=function(e,t){var i=window.dhtmlDragAndDrop;if(!t){i.stopFrameRoute();var s=i.lastLanding;i.lastLanding=null,s&&s.dragLanding._drag(i.dragStartNode,i.dragStartObject,s,_isIE?event.srcElement:e.target); - +document.body.onmouseup=t.stopDrag,t.waitDrag=0,t.dragNode.pWindow=window,t.initFrameRoute()}if(t.dragNode.parentNode!=window.document.body&&t.gldragNode){var i=t.gldragNode;t.gldragNode.old&&(i=t.gldragNode.old),i.parentNode.removeChild(i);var a=t.dragNode.pWindow;if(i.pWindow&&i.pWindow.dhtmlDragAndDrop.lastLanding&&i.pWindow.dhtmlDragAndDrop.lastLanding.dragLanding._dragOut(i.pWindow.dhtmlDragAndDrop.lastLanding),_isIE){var r=document.createElement("Div");r.innerHTML=t.dragNode.outerHTML,t.dragNode=r.childNodes[0]; +}else t.dragNode=t.dragNode.cloneNode(!0);t.dragNode.pWindow=window,t.gldragNode.old=t.dragNode,document.body.appendChild(t.dragNode),a.dhtmlDragAndDrop.dragNode=t.dragNode}t.dragNode.style.left=e.clientX+15+(t.fx?-1*t.fx:0)+(document.body.scrollLeft||document.documentElement.scrollLeft)+"px",t.dragNode.style.top=e.clientY+3+(t.fy?-1*t.fy:0)+(document.body.scrollTop||document.documentElement.scrollTop)+"px";var s;s=e.srcElement?e.srcElement:e.target,t.checkLanding(s,e)}},dhtmlDragAndDropObject.prototype.calculateFramePosition=function(e){ +if(window.name){for(var t=parent.frames[window.name].frameElement.offsetParent,i=0,a=0;t;)i+=t.offsetLeft,a+=t.offsetTop,t=t.offsetParent;if(parent.dhtmlDragAndDrop){var r=parent.dhtmlDragAndDrop.calculateFramePosition(1);i+=1*r.split("_")[0],a+=1*r.split("_")[1]}if(e)return i+"_"+a;this.fx=i,this.fy=a}return"0_0"},dhtmlDragAndDropObject.prototype.checkLanding=function(e,t){e&&e.dragLanding?(this.lastLanding&&this.lastLanding.dragLanding._dragOut(this.lastLanding),this.lastLanding=e,this.lastLanding=this.lastLanding.dragLanding._dragIn(this.lastLanding,this.dragStartNode,t.clientX,t.clientY,t), +this.lastLanding_scr=_isIE?t.srcElement:t.target):e&&"BODY"!=e.tagName?this.checkLanding(e.parentNode,t):(this.lastLanding&&this.lastLanding.dragLanding._dragOut(this.lastLanding,t.clientX,t.clientY,t),this.lastLanding=0,this._onNotFound&&this._onNotFound())},dhtmlDragAndDropObject.prototype.stopDrag=function(e,t){var i=window.dhtmlDragAndDrop;if(!t){i.stopFrameRoute();var a=i.lastLanding;i.lastLanding=null,a&&a.dragLanding._drag(i.dragStartNode,i.dragStartObject,a,_isIE?event.srcElement:e.target); }i.lastLanding=null,i.dragNode&&i.dragNode.parentNode==document.body&&i.dragNode.parentNode.removeChild(i.dragNode),i.dragNode=0,i.gldragNode=0,i.fx=0,i.fy=0,i.dragStartNode=0,i.dragStartObject=0,document.body.onmouseup=i.tempDOMU,document.body.onmousemove=i.tempDOMM,i.tempDOMU=null,i.tempDOMM=null,i.waitDrag=0},dhtmlDragAndDropObject.prototype.stopFrameRoute=function(e){e&&window.dhtmlDragAndDrop.stopDrag(1,1);for(var t=0;t<window.frames.length;t++)try{window.frames[t]!=e&&window.frames[t].dhtmlDragAndDrop&&window.frames[t].dhtmlDragAndDrop.stopFrameRoute(window); - }catch(i){}try{parent.dhtmlDragAndDrop&&parent!=window&&parent!=e&&parent.dhtmlDragAndDrop.stopFrameRoute(window)}catch(i){}},dhtmlDragAndDropObject.prototype.initFrameRoute=function(e,t){e&&(window.dhtmlDragAndDrop.preCreateDragCopy(),window.dhtmlDragAndDrop.dragStartNode=e.dhtmlDragAndDrop.dragStartNode,window.dhtmlDragAndDrop.dragStartObject=e.dhtmlDragAndDrop.dragStartObject,window.dhtmlDragAndDrop.dragNode=e.dhtmlDragAndDrop.dragNode,window.dhtmlDragAndDrop.gldragNode=e.dhtmlDragAndDrop.dragNode, -window.document.body.onmouseup=window.dhtmlDragAndDrop.stopDrag,window.waitDrag=0,!_isIE&&t&&(!_isFF||_FFrv<1.8)&&window.dhtmlDragAndDrop.calculateFramePosition());try{parent.dhtmlDragAndDrop&&parent!=window&&parent!=e&&parent.dhtmlDragAndDrop.initFrameRoute(window)}catch(i){}for(var s=0;s<window.frames.length;s++)try{window.frames[s]!=e&&window.frames[s].dhtmlDragAndDrop&&window.frames[s].dhtmlDragAndDrop.initFrameRoute(window,!e||t?1:0)}catch(i){}},_isFF=!1,_isIE=!1,_isOpera=!1,_isKHTML=!1,_isMacOS=!1, +window.document.body.onmouseup=window.dhtmlDragAndDrop.stopDrag,window.waitDrag=0,!_isIE&&t&&(!_isFF||_FFrv<1.8)&&window.dhtmlDragAndDrop.calculateFramePosition());try{parent.dhtmlDragAndDrop&&parent!=window&&parent!=e&&parent.dhtmlDragAndDrop.initFrameRoute(window)}catch(i){}for(var a=0;a<window.frames.length;a++)try{window.frames[a]!=e&&window.frames[a].dhtmlDragAndDrop&&window.frames[a].dhtmlDragAndDrop.initFrameRoute(window,!e||t?1:0)}catch(i){}},_isFF=!1,_isIE=!1,_isOpera=!1,_isKHTML=!1,_isMacOS=!1, _isChrome=!1,_FFrv=!1,_KHTMLrv=!1,_OperaRv=!1,-1!=navigator.userAgent.indexOf("Macintosh")&&(_isMacOS=!0),navigator.userAgent.toLowerCase().indexOf("chrome")>-1&&(_isChrome=!0),-1!=navigator.userAgent.indexOf("Safari")||-1!=navigator.userAgent.indexOf("Konqueror")?(_KHTMLrv=parseFloat(navigator.userAgent.substr(navigator.userAgent.indexOf("Safari")+7,5)),_KHTMLrv>525?(_isFF=!0,_FFrv=1.9):_isKHTML=!0):-1!=navigator.userAgent.indexOf("Opera")?(_isOpera=!0,_OperaRv=parseFloat(navigator.userAgent.substr(navigator.userAgent.indexOf("Opera")+6,3))):-1!=navigator.appName.indexOf("Microsoft")?(_isIE=!0, --1==navigator.appVersion.indexOf("MSIE 8.0")&&-1==navigator.appVersion.indexOf("MSIE 9.0")&&-1==navigator.appVersion.indexOf("MSIE 10.0")||"BackCompat"==document.compatMode||(_isIE=8)):"Netscape"==navigator.appName&&-1!=navigator.userAgent.indexOf("Trident")?_isIE=8:(_isFF=!0,_FFrv=parseFloat(navigator.userAgent.split("rv:")[1])),dtmlXMLLoaderObject.prototype.doXPath=function(e,t,i,s){if(_isKHTML||!_isIE&&!window.XPathResult)return this.doXPathOpera(e,t);if(_isIE)return t||(t=this.xmlDoc.nodeName?this.xmlDoc:this.xmlDoc.responseXML), -t||dhtmlxError.throwError("LoadXML","Incorrect XML",[t||this.xmlDoc,this.mainObject]),i&&t.setProperty("SelectionNamespaces","xmlns:xsl='"+i+"'"),"single"==s?t.selectSingleNode(e):t.selectNodes(e)||new Array(0);var a=t;t||(t=this.xmlDoc.nodeName?this.xmlDoc:this.xmlDoc.responseXML),t||dhtmlxError.throwError("LoadXML","Incorrect XML",[t||this.xmlDoc,this.mainObject]),-1!=t.nodeName.indexOf("document")?a=t:(a=t,t=t.ownerDocument);var n=XPathResult.ANY_TYPE;"single"==s&&(n=XPathResult.FIRST_ORDERED_NODE_TYPE); - -var r=[],d=t.evaluate(e,a,function(e){return i},n,null);if(n==XPathResult.FIRST_ORDERED_NODE_TYPE)return d.singleNodeValue;for(var o=d.iterateNext();o;)r[r.length]=o,o=d.iterateNext();return r},_dhtmlxError.prototype.catchError=function(e,t){this.catches[e]=t},_dhtmlxError.prototype.throwError=function(e,t,i){return this.catches[e]?this.catches[e](e,t,i):this.catches.ALL?this.catches.ALL(e,t,i):(window.alert("Error type: "+arguments[0]+"\nDescription: "+arguments[1]),null)},window.dhtmlxError=new _dhtmlxError, -dtmlXMLLoaderObject.prototype.doXPathOpera=function(e,t){var i=e.replace(/[\/]+/gi,"/").split("/"),s=null,a=1;if(!i.length)return[];if("."==i[0])s=[t];else{if(""!==i[0])return[];s=(this.xmlDoc.responseXML||this.xmlDoc).getElementsByTagName(i[a].replace(/\[[^\]]*\]/g,"")),a++}for(a;a<i.length;a++)s=this._getAllNamedChilds(s,i[a]);return-1!=i[a-1].indexOf("[")&&(s=this._filterXPath(s,i[a-1])),s},dtmlXMLLoaderObject.prototype._filterXPath=function(e,t){for(var i=[],t=t.replace(/[^\[]*\[\@/g,"").replace(/[\[\]\@]*/g,""),s=0;s<e.length;s++)e[s].getAttribute(t)&&(i[i.length]=e[s]); - -return i},dtmlXMLLoaderObject.prototype._getAllNamedChilds=function(e,t){var i=[];_isKHTML&&(t=t.toUpperCase());for(var s=0;s<e.length;s++)for(var a=0;a<e[s].childNodes.length;a++)_isKHTML?e[s].childNodes[a].tagName&&e[s].childNodes[a].tagName.toUpperCase()==t&&(i[i.length]=e[s].childNodes[a]):e[s].childNodes[a].tagName==t&&(i[i.length]=e[s].childNodes[a]);return i},"undefined"==typeof window.dhtmlxEvent&&(window.dhtmlxEvent=function(e,t,i){e.addEventListener?e.addEventListener(t,i,!1):e.attachEvent&&e.attachEvent("on"+t,i); - -}),dtmlXMLLoaderObject.prototype.xslDoc=null,dtmlXMLLoaderObject.prototype.setXSLParamValue=function(e,t,i){i||(i=this.xslDoc),i.responseXML&&(i=i.responseXML);var s=this.doXPath("/xsl:stylesheet/xsl:variable[@name='"+e+"']",i,"http://www.w3.org/1999/XSL/Transform","single");s&&(s.firstChild.nodeValue=t)},dtmlXMLLoaderObject.prototype.doXSLTransToObject=function(e,t){e||(e=this.xslDoc),e.responseXML&&(e=e.responseXML),t||(t=this.xmlDoc),t.responseXML&&(t=t.responseXML);var i;if(_isIE){i=new ActiveXObject("Msxml2.DOMDocument.3.0"); - -try{t.transformNodeToObject(e,i)}catch(s){i=t.transformNode(e)}}else this.XSLProcessor||(this.XSLProcessor=new XSLTProcessor,this.XSLProcessor.importStylesheet(e)),i=this.XSLProcessor.transformToDocument(t);return i},dtmlXMLLoaderObject.prototype.doXSLTransToString=function(e,t){var i=this.doXSLTransToObject(e,t);return"string"==typeof i?i:this.doSerialization(i)},dtmlXMLLoaderObject.prototype.doSerialization=function(e){if(e||(e=this.xmlDoc),e.responseXML&&(e=e.responseXML),_isIE)return e.xml;var t=new XMLSerializer; - +-1==navigator.appVersion.indexOf("MSIE 8.0")&&-1==navigator.appVersion.indexOf("MSIE 9.0")&&-1==navigator.appVersion.indexOf("MSIE 10.0")||"BackCompat"==document.compatMode||(_isIE=8)):"Netscape"==navigator.appName&&-1!=navigator.userAgent.indexOf("Trident")?_isIE=8:(_isFF=!0,_FFrv=parseFloat(navigator.userAgent.split("rv:")[1])),dtmlXMLLoaderObject.prototype.doXPath=function(e,t,i,a){if(_isKHTML||!_isIE&&!window.XPathResult)return this.doXPathOpera(e,t);if(_isIE)return t||(t=this.xmlDoc.nodeName?this.xmlDoc:this.xmlDoc.responseXML), +t||dhtmlxError.throwError("LoadXML","Incorrect XML",[t||this.xmlDoc,this.mainObject]),i&&t.setProperty("SelectionNamespaces","xmlns:xsl='"+i+"'"),"single"==a?t.selectSingleNode(e):t.selectNodes(e)||new Array(0);var r=t;t||(t=this.xmlDoc.nodeName?this.xmlDoc:this.xmlDoc.responseXML),t||dhtmlxError.throwError("LoadXML","Incorrect XML",[t||this.xmlDoc,this.mainObject]),-1!=t.nodeName.indexOf("document")?r=t:(r=t,t=t.ownerDocument);var s=XPathResult.ANY_TYPE;"single"==a&&(s=XPathResult.FIRST_ORDERED_NODE_TYPE); +var n=[],d=t.evaluate(e,r,function(e){return i},s,null);if(s==XPathResult.FIRST_ORDERED_NODE_TYPE)return d.singleNodeValue;for(var l=d.iterateNext();l;)n[n.length]=l,l=d.iterateNext();return n},_dhtmlxError.prototype.catchError=function(e,t){this.catches[e]=t},_dhtmlxError.prototype.throwError=function(e,t,i){return this.catches[e]?this.catches[e](e,t,i):this.catches.ALL?this.catches.ALL(e,t,i):(window.alert("Error type: "+arguments[0]+"\nDescription: "+arguments[1]),null)},window.dhtmlxError=new _dhtmlxError, +dtmlXMLLoaderObject.prototype.doXPathOpera=function(e,t){var i=e.replace(/[\/]+/gi,"/").split("/"),a=null,r=1;if(!i.length)return[];if("."==i[0])a=[t];else{if(""!==i[0])return[];a=(this.xmlDoc.responseXML||this.xmlDoc).getElementsByTagName(i[r].replace(/\[[^\]]*\]/g,"")),r++}for(r;r<i.length;r++)a=this._getAllNamedChilds(a,i[r]);return-1!=i[r-1].indexOf("[")&&(a=this._filterXPath(a,i[r-1])),a},dtmlXMLLoaderObject.prototype._filterXPath=function(e,t){for(var i=[],t=t.replace(/[^\[]*\[\@/g,"").replace(/[\[\]\@]*/g,""),a=0;a<e.length;a++)e[a].getAttribute(t)&&(i[i.length]=e[a]); +return i},dtmlXMLLoaderObject.prototype._getAllNamedChilds=function(e,t){var i=[];_isKHTML&&(t=t.toUpperCase());for(var a=0;a<e.length;a++)for(var r=0;r<e[a].childNodes.length;r++)_isKHTML?e[a].childNodes[r].tagName&&e[a].childNodes[r].tagName.toUpperCase()==t&&(i[i.length]=e[a].childNodes[r]):e[a].childNodes[r].tagName==t&&(i[i.length]=e[a].childNodes[r]);return i},"undefined"==typeof window.dhtmlxEvent&&(window.dhtmlxEvent=function(e,t,i){e.addEventListener?e.addEventListener(t,i,!1):e.attachEvent&&e.attachEvent("on"+t,i); +}),dtmlXMLLoaderObject.prototype.xslDoc=null,dtmlXMLLoaderObject.prototype.setXSLParamValue=function(e,t,i){i||(i=this.xslDoc),i.responseXML&&(i=i.responseXML);var a=this.doXPath("/xsl:stylesheet/xsl:variable[@name='"+e+"']",i,"http://www.w3.org/1999/XSL/Transform","single");a&&(a.firstChild.nodeValue=t)},dtmlXMLLoaderObject.prototype.doXSLTransToObject=function(e,t){e||(e=this.xslDoc),e.responseXML&&(e=e.responseXML),t||(t=this.xmlDoc),t.responseXML&&(t=t.responseXML);var i;if(_isIE){i=new ActiveXObject("Msxml2.DOMDocument.3.0"); +try{t.transformNodeToObject(e,i)}catch(a){i=t.transformNode(e)}}else this.XSLProcessor||(this.XSLProcessor=new XSLTProcessor,this.XSLProcessor.importStylesheet(e)),i=this.XSLProcessor.transformToDocument(t);return i},dtmlXMLLoaderObject.prototype.doXSLTransToString=function(e,t){var i=this.doXSLTransToObject(e,t);return"string"==typeof i?i:this.doSerialization(i)},dtmlXMLLoaderObject.prototype.doSerialization=function(e){if(e||(e=this.xmlDoc),e.responseXML&&(e=e.responseXML),_isIE)return e.xml;var t=new XMLSerializer; return t.serializeToString(e)},dhtmlxEventable=function(obj){obj.attachEvent=function(e,t,i){return e="ev_"+e.toLowerCase(),this[e]||(this[e]=new this.eventCatcher(i||this)),e+":"+this[e].addEvent(t)},obj.callEvent=function(e,t){return e="ev_"+e.toLowerCase(),this[e]?this[e].apply(this,t):!0},obj.checkEvent=function(e){return!!this["ev_"+e.toLowerCase()]},obj.eventCatcher=function(obj){var dhx_catch=[],z=function(){for(var e=!0,t=0;t<dhx_catch.length;t++)if(dhx_catch[t]){var i=dhx_catch[t].apply(obj,arguments); - -e=e&&i}return e};return z.addEvent=function(ev){return"function"!=typeof ev&&(ev=eval(ev)),ev?dhx_catch.push(ev)-1:!1},z.removeEvent=function(e){dhx_catch[e]=null},z},obj.detachEvent=function(e){if(e){var t=e.split(":");this[t[0]].removeEvent(t[1])}},obj.detachAllEvents=function(){for(var e in this)0===e.indexOf("ev_")&&(this.detachEvent(e),this[e]=null)},obj=null},window.dhtmlx||(window.dhtmlx={}),function(){function e(e,t){var s=e.callback;i(!1),e.box.parentNode.removeChild(e.box),c=e.box=null, -s&&s(t)}function t(t){if(c){t=t||event;var i=t.which||event.keyCode;return dhtmlx.message.keyboard&&((13==i||32==i)&&e(c,!0),27==i&&e(c,!1)),t.preventDefault&&t.preventDefault(),!(t.cancelBubble=!0)}}function i(e){i.cover||(i.cover=document.createElement("DIV"),i.cover.onkeydown=t,i.cover.className="dhx_modal_cover",document.body.appendChild(i.cover));document.body.scrollHeight;i.cover.style.display=e?"inline-block":"none"}function s(e,t,i){var s=i?i:e||"",a="dhtmlx_"+s.toLowerCase().replace(/ /g,"_")+"_button"; - -return"<div class='dhtmlx_popup_button "+a+"' result='"+t+"' ><div>"+e+"</div></div>"}function a(e){u.area||(u.area=document.createElement("DIV"),u.area.className="dhtmlx_message_area",u.area.style[u.position]="5px",document.body.appendChild(u.area)),u.hide(e.id);var t=document.createElement("DIV");return t.innerHTML="<div>"+e.text+"</div>",t.className="dhtmlx-info dhtmlx-"+e.type,t.onclick=function(){u.hide(e.id),e=null},"bottom"==u.position&&u.area.firstChild?u.area.insertBefore(t,u.area.firstChild):u.area.appendChild(t), -e.expire>0&&(u.timers[e.id]=window.setTimeout(function(){u.hide(e.id)},e.expire)),u.pull[e.id]=t,t=null,e.id}function n(t,i,a){var n=document.createElement("DIV");n.className=" dhtmlx_modal_box dhtmlx-"+t.type,n.setAttribute("dhxbox",1);var r="";if(t.width&&(n.style.width=t.width),t.height&&(n.style.height=t.height),t.title&&(r+='<div class="dhtmlx_popup_title">'+t.title+"</div>"),r+='<div class="dhtmlx_popup_text"><span>'+(t.content?"":t.text)+'</span></div><div class="dhtmlx_popup_controls">', -i){var d=t.ok||scheduler.locale.labels.message_ok;void 0===d&&(d="OK"),r+=s(d,!0,"ok")}if(a){var o=t.cancel||scheduler.locale.labels.message_cancel;void 0===o&&(o="Cancel"),r+=s(o,!1,"cancel")}if(t.buttons)for(var l=0;l<t.buttons.length;l++)r+=s(t.buttons[l],l);if(r+="</div>",n.innerHTML=r,t.content){var h=t.content;"string"==typeof h&&(h=document.getElementById(h)),"none"==h.style.display&&(h.style.display=""),n.childNodes[t.title?1:0].appendChild(h)}return n.onclick=function(i){i=i||event;var s=i.target||i.srcElement; - -if(s.className||(s=s.parentNode),"dhtmlx_popup_button"==s.className.split(" ")[0]){var a=s.getAttribute("result");a="true"==a||("false"==a?!1:a),e(t,a)}},t.box=n,(i||a)&&(c=t),n}function r(e,s,a){var r=e.tagName?e:n(e,s,a);e.hidden||i(!0),document.body.appendChild(r);var d=Math.abs(Math.floor(((window.innerWidth||document.documentElement.offsetWidth)-r.offsetWidth)/2)),o=Math.abs(Math.floor(((window.innerHeight||document.documentElement.offsetHeight)-r.offsetHeight)/2));return"top"==e.position?r.style.top="-3px":r.style.top=o+"px", -r.style.left=d+"px",r.onkeydown=t,r.focus(),e.hidden&&dhtmlx.modalbox.hide(r),r}function d(e){return r(e,!0,!1)}function o(e){return r(e,!0,!0)}function l(e){return r(e)}function h(e,t,i){return"object"!=typeof e&&("function"==typeof t&&(i=t,t=""),e={text:e,type:t,callback:i}),e}function _(e,t,i,s){return"object"!=typeof e&&(e={text:e,type:t,expire:i,id:s}),e.id=e.id||u.uid(),e.expire=e.expire||u.expire,e}var c=null;document.attachEvent?document.attachEvent("onkeydown",t):document.addEventListener("keydown",t,!0), -dhtmlx.alert=function(){var e=h.apply(this,arguments);return e.type=e.type||"confirm",d(e)},dhtmlx.confirm=function(){var e=h.apply(this,arguments);return e.type=e.type||"alert",o(e)},dhtmlx.modalbox=function(){var e=h.apply(this,arguments);return e.type=e.type||"alert",l(e)},dhtmlx.modalbox.hide=function(e){for(;e&&e.getAttribute&&!e.getAttribute("dhxbox");)e=e.parentNode;e&&(e.parentNode.removeChild(e),i(!1))};var u=dhtmlx.message=function(e,t,i,s){e=_.apply(this,arguments),e.type=e.type||"info"; - -var n=e.type.split("-")[0];switch(n){case"alert":return d(e);case"confirm":return o(e);case"modalbox":return l(e);default:return a(e)}};u.seed=(new Date).valueOf(),u.uid=function(){return u.seed++},u.expire=4e3,u.keyboard=!0,u.position="top",u.pull={},u.timers={},u.hideAll=function(){for(var e in u.pull)u.hide(e)},u.hide=function(e){var t=u.pull[e];t&&t.parentNode&&(window.setTimeout(function(){t.parentNode.removeChild(t),t=null},2e3),t.className+=" hidden",u.timers[e]&&window.clearTimeout(u.timers[e]), -delete u.pull[e])}}(),dataProcessor.prototype={setTransactionMode:function(e,t){this._tMode=e,this._tSend=t,"REST"==e&&(this._tSend=!1,this._endnm=!0)},escape:function(e){return this._utf?encodeURIComponent(e):escape(e)},enableUTFencoding:function(e){this._utf=convertStringToBoolean(e)},setDataColumns:function(e){this._columns="string"==typeof e?e.split(","):e},getSyncState:function(){return!this.updatedRows.length},enableDataNames:function(e){this._endnm=convertStringToBoolean(e)},enablePartialDataSend:function(e){ -this._changed=convertStringToBoolean(e)},setUpdateMode:function(e,t){this.autoUpdate="cell"==e,this.updateMode=e,this.dnd=t},ignore:function(e,t){this._silent_mode=!0,e.call(t||window),this._silent_mode=!1},setUpdated:function(e,t,i){if(!this._silent_mode){var s=this.findRow(e);i=i||"updated";var a=this.obj.getUserData(e,this.action_param);a&&"updated"==i&&(i=a),t?(this.set_invalid(e,!1),this.updatedRows[s]=e,this.obj.setUserData(e,this.action_param,i),this._in_progress[e]&&(this._in_progress[e]="wait")):this.is_invalid(e)||(this.updatedRows.splice(s,1), -this.obj.setUserData(e,this.action_param,"")),t||this._clearUpdateFlag(e),this.markRow(e,t,i),t&&this.autoUpdate&&this.sendData(e)}},_clearUpdateFlag:function(e){},markRow:function(e,t,i){var s="",a=this.is_invalid(e);if(a&&(s=this.styles[a],t=!0),this.callEvent("onRowMark",[e,t,i,a])&&(s=this.styles[t?i:"clear"]+s,this.obj[this._methods[0]](e,s),a&&a.details)){s+=this.styles[a+"_cell"];for(var n=0;n<a.details.length;n++)a.details[n]&&this.obj[this._methods[1]](e,n,s)}},getState:function(e){return this.obj.getUserData(e,this.action_param); - -},is_invalid:function(e){return this._invalid[e]},set_invalid:function(e,t,i){i&&(t={value:t,details:i,toString:function(){return this.value.toString()}}),this._invalid[e]=t},checkBeforeUpdate:function(e){return!0},sendData:function(e){return!this._waitMode||"tree"!=this.obj.mytype&&!this.obj._h2?(this.obj.editStop&&this.obj.editStop(),"undefined"==typeof e||this._tSend?this.sendAllData():this._in_progress[e]?!1:(this.messages=[],!this.checkBeforeUpdate(e)&&this.callEvent("onValidationError",[e,this.messages])?!1:void this._beforeSendData(this._getRowData(e),e))):void 0; - -},_beforeSendData:function(e,t){return this.callEvent("onBeforeUpdate",[t,this.getState(t),e])?void this._sendData(e,t):!1},serialize:function(e,t){if("string"==typeof e)return e;if("undefined"!=typeof t)return this.serialize_one(e,"");var i=[],s=[];for(var a in e)e.hasOwnProperty(a)&&(i.push(this.serialize_one(e[a],a+this.post_delim)),s.push(a));return i.push("ids="+this.escape(s.join(","))),dhtmlx.security_key&&i.push("dhx_security="+dhtmlx.security_key),i.join("&")},serialize_one:function(e,t){ -if("string"==typeof e)return e;var i=[];for(var s in e)if(e.hasOwnProperty(s)){if(("id"==s||s==this.action_param)&&"REST"==this._tMode)continue;i.push(this.escape((t||"")+s)+"="+this.escape(e[s]))}return i.join("&")},_sendData:function(e,t){if(e){if(!this.callEvent("onBeforeDataSending",t?[t,this.getState(t),e]:[null,null,e]))return!1;t&&(this._in_progress[t]=(new Date).valueOf());var i=new dtmlXMLLoaderObject(function(i,s,a,n,r){var d=[];if(t)d.push(t);else if(e)for(var o in e)d.push(o);return i.afterUpdate(i,r,d); - -},this,!0),s=this.serverProcessor+(this._user?getUrlSymbol(this.serverProcessor)+["dhx_user="+this._user,"dhx_version="+this.obj.getUserData(0,"version")].join("&"):"");if("GET"==this._tMode)i.loadXML(s+(-1!=s.indexOf("?")?"&":"?")+this.serialize(e,t));else if("POST"==this._tMode)i.loadXML(s,!0,this.serialize(e,t));else if("REST"==this._tMode){var a=this.getState(t),n=s.replace(/(\&|\?)editing\=true/,"");"inserted"==a?i.loadXML(n+t,"POST",this.serialize(e,t)):"deleted"==a?i.loadXML(n+t,"DELETE",""):i.loadXML(n+t,"PUT",this.serialize(e,t)); - -}this._waitMode++}},sendAllData:function(){if(this.updatedRows.length){this.messages=[];for(var e=!0,t=0;t<this.updatedRows.length;t++)e&=this.checkBeforeUpdate(this.updatedRows[t]);if(!e&&!this.callEvent("onValidationError",["",this.messages]))return!1;if(this._tSend)this._sendData(this._getAllData());else for(var t=0;t<this.updatedRows.length;t++)if(!this._in_progress[this.updatedRows[t]]){if(this.is_invalid(this.updatedRows[t]))continue;if(this._beforeSendData(this._getRowData(this.updatedRows[t]),this.updatedRows[t]), -this._waitMode&&("tree"==this.obj.mytype||this.obj._h2))return}}},_getAllData:function(e){for(var t={},i=!1,s=0;s<this.updatedRows.length;s++){var a=this.updatedRows[s];this._in_progress[a]||this.is_invalid(a)||this.callEvent("onBeforeUpdate",[a,this.getState(a),this._getRowData(a)])&&(t[a]=this._getRowData(a,a+this.post_delim),i=!0,this._in_progress[a]=(new Date).valueOf())}return i?t:null},setVerificator:function(e,t){this.mandatoryFields[e]=t||function(e){return""!==e}},clearVerificator:function(e){ -this.mandatoryFields[e]=!1},findRow:function(e){var t=0;for(t=0;t<this.updatedRows.length&&e!=this.updatedRows[t];t++);return t},defineAction:function(e,t){this._uActions||(this._uActions=[]),this._uActions[e]=t},afterUpdateCallback:function(e,t,i,s){var a=e,n="error"!=i&&"invalid"!=i;if(n||this.set_invalid(e,i),this._uActions&&this._uActions[i]&&!this._uActions[i](s))return delete this._in_progress[a];"wait"!=this._in_progress[a]&&this.setUpdated(e,!1);var r=e;switch(i){case"inserted":case"insert": -t!=e&&(this.obj[this._methods[2]](e,t),e=t);break;case"delete":case"deleted":return this.obj.setUserData(e,this.action_param,"true_deleted"),this.obj[this._methods[3]](e),delete this._in_progress[a],this.callEvent("onAfterUpdate",[e,i,t,s])}"wait"!=this._in_progress[a]?(n&&this.obj.setUserData(e,this.action_param,""),delete this._in_progress[a]):(delete this._in_progress[a],this.setUpdated(t,!0,this.obj.getUserData(e,this.action_param))),this.callEvent("onAfterUpdate",[r,i,t,s])},afterUpdate:function(e,t,i){ -if(window.JSON)try{var s=JSON.parse(t.xmlDoc.responseText),a=s.action||this.getState(i)||"updated",n=s.sid||i[0],r=s.tid||i[0];return e.afterUpdateCallback(n,r,a,s),void e.finalizeUpdate()}catch(d){}if(t.getXMLTopNode("data"),!t.xmlDoc.responseXML)return this.obj&&this.obj.callEvent&&this.obj.callEvent("onSaveError",[i,t.xmlDoc]),this.cleanUpdate(i);var o=t.doXPath("//data/action");if(!o.length)return this.cleanUpdate(i);for(var l=0;l<o.length;l++){var h=o[l],a=h.getAttribute("type"),n=h.getAttribute("sid"),r=h.getAttribute("tid"); - -e.afterUpdateCallback(n,r,a,h)}e.finalizeUpdate()},cleanUpdate:function(e){if(e)for(var t=0;t<e.length;t++)delete this._in_progress[e[t]]},finalizeUpdate:function(){this._waitMode&&this._waitMode--,("tree"==this.obj.mytype||this.obj._h2)&&this.updatedRows.length&&this.sendData(),this.callEvent("onAfterUpdateFinish",[]),this.updatedRows.length||this.callEvent("onFullSync",[])},init:function(e){this.obj=e,this.obj._dp_init&&this.obj._dp_init(this)},setOnAfterUpdate:function(e){this.attachEvent("onAfterUpdate",e); - -},enableDebug:function(e){},setOnBeforeUpdateHandler:function(e){this.attachEvent("onBeforeDataSending",e)},setAutoUpdate:function(e,t){e=e||2e3,this._user=t||(new Date).valueOf(),this._need_update=!1,this._loader=null,this._update_busy=!1,this.attachEvent("onAfterUpdate",function(e,t,i,s){this.afterAutoUpdate(e,t,i,s)}),this.attachEvent("onFullSync",function(){this.fullSync()});var i=this;window.setInterval(function(){i.loadUpdate()},e)},afterAutoUpdate:function(e,t,i,s){return"collision"==t?(this._need_update=!0, -!1):!0},fullSync:function(){return this._need_update&&(this._need_update=!1,this.loadUpdate()),!0},getUpdates:function(e,t){return this._update_busy?!1:(this._update_busy=!0,this._loader=this._loader||new dtmlXMLLoaderObject(!0),this._loader.async=!0,this._loader.waitCall=t,void this._loader.loadXML(e))},_v:function(e){return e.firstChild?e.firstChild.nodeValue:""},_a:function(e){for(var t=[],i=0;i<e.length;i++)t[i]=this._v(e[i]);return t},loadUpdate:function(){var e=this,t=this.obj.getUserData(0,"version"),i=this.serverProcessor+getUrlSymbol(this.serverProcessor)+["dhx_user="+this._user,"dhx_version="+t].join("&"); - -i=i.replace("editing=true&",""),this.getUpdates(i,function(){var t=e._loader.doXPath("//userdata");e.obj.setUserData(0,"version",e._v(t[0]));var i=e._loader.doXPath("//update");if(i.length){e._silent_mode=!0;for(var s=0;s<i.length;s++){var a=i[s].getAttribute("status"),n=i[s].getAttribute("id"),r=i[s].getAttribute("parent");switch(a){case"inserted":e.callEvent("insertCallback",[i[s],n,r]);break;case"updated":e.callEvent("updateCallback",[i[s],n,r]);break;case"deleted":e.callEvent("deleteCallback",[i[s],n,r]); - -}}e._silent_mode=!1}e._update_busy=!1,e=null})}},window.dataProcessor&&!dataProcessor.prototype.init_original&&(dataProcessor.prototype.init_original=dataProcessor.prototype.init,dataProcessor.prototype.init=function(e){this.init_original(e),e._dataprocessor=this,this.setTransactionMode("POST",!0),this.serverProcessor+=(-1!=this.serverProcessor.indexOf("?")?"&":"?")+"editing=true"}),dhtmlxError.catchError("LoadXML",function(e,t,i){var s=i[0].responseText;switch(scheduler.config.ajax_error){case"alert": -window.alert(s);break;case"console":window.console.log(s)}}),dhtmlxEventable(scheduler),scheduler._detachDomEvent=function(e,t,i){e.removeEventListener?e.removeEventListener(t,i,!1):e.detachEvent&&e.detachEvent("on"+t,i)},scheduler._init_once=function(){function e(){return{w:window.innerWidth||document.documentElement.clientWidth,h:window.innerHeight||document.documentElement.clientHeight}}function t(e,t){return e.w==t.w&&e.h==t.h}var i=e();dhtmlxEvent(window,"resize",function(){var s=e();t(i,s)||(window.clearTimeout(scheduler._resize_timer), -scheduler._resize_timer=window.setTimeout(function(){scheduler.callEvent("onSchedulerResize",[])&&(scheduler.update_view(),scheduler.callEvent("onAfterSchedulerResize",[]))},100)),i=s}),scheduler._init_once=function(){}},scheduler.init=function(e,t,i){t=t||scheduler._currentDate(),i=i||"week",this._obj&&this.unset_actions(),this._obj="string"==typeof e?document.getElementById(e):e,this._skin_init&&scheduler._skin_init(),scheduler.date.init(),this._els=[],this._scroll=!0,this._quirks=_isIE&&"BackCompat"==document.compatMode, -this._quirks7=_isIE&&-1==navigator.appVersion.indexOf("MSIE 8"),this.get_elements(),this.init_templates(),this.set_actions(),this._init_once(),this._init_touch_events(),this.set_sizes(),scheduler.callEvent("onSchedulerReady",[]),this.setCurrentView(t,i)},scheduler.xy={min_event_height:40,scale_width:50,scroll_width:18,scale_height:20,month_scale_height:20,menu_width:25,margin_top:0,margin_left:0,editor_width:140,month_head_height:22},scheduler.keys={edit_save:13,edit_cancel:27},scheduler.set_sizes=function(){ -var e=this._x=this._obj.clientWidth-this.xy.margin_left,t=this._y=this._obj.clientHeight-this.xy.margin_top,i=this._table_view?0:this.xy.scale_width+this.xy.scroll_width,s=this._table_view?-1:this.xy.scale_width;this.set_xy(this._els.dhx_cal_navline[0],e,this.xy.nav_height,0,0),this.set_xy(this._els.dhx_cal_header[0],e-i,this.xy.scale_height,s,this.xy.nav_height+(this._quirks?-1:1));var a=this._els.dhx_cal_navline[0].offsetHeight;a>0&&(this.xy.nav_height=a);var n=this.xy.scale_height+this.xy.nav_height+(this._quirks?-2:0); - -this.set_xy(this._els.dhx_cal_data[0],e,t-(n+2),0,n+2)},scheduler.set_xy=function(e,t,i,s,a){e.style.width=Math.max(0,t)+"px",e.style.height=Math.max(0,i)+"px",arguments.length>3&&(e.style.left=s+"px",e.style.top=a+"px")},scheduler.get_elements=function(){for(var e=this._obj.getElementsByTagName("DIV"),t=0;t<e.length;t++){var i=e[t].className||"",s=e[t].getAttribute("name")||"";i&&(i=i.split(" ")[0]),this._els[i]||(this._els[i]=[]),this._els[i].push(e[t]);var a=scheduler.locale.labels[s||i];"string"!=typeof a&&s&&!e[t].innerHTML&&(a=s.split("_")[0]), -a&&(e[t].innerHTML=a)}},scheduler.unset_actions=function(){for(var e in this._els)if(this._click[e])for(var t=0;t<this._els[e].length;t++)this._els[e][t].onclick=null;this._obj.onselectstart=null,this._obj.onmousemove=null,this._obj.onmousedown=null,this._obj.onmouseup=null,this._obj.ondblclick=null,this._obj.oncontextmenu=null},scheduler.set_actions=function(){for(var e in this._els)if(this._click[e])for(var t=0;t<this._els[e].length;t++)this._els[e][t].onclick=scheduler._click[e];this._obj.onselectstart=function(e){ -return!1},this._obj.onmousemove=function(e){scheduler._temp_touch_block||scheduler._on_mouse_move(e||event)},this._obj.onmousedown=function(e){scheduler._ignore_next_click||scheduler._on_mouse_down(e||event)},this._obj.onmouseup=function(e){scheduler._ignore_next_click||scheduler._on_mouse_up(e||event)},this._obj.ondblclick=function(e){scheduler._on_dbl_click(e||event)},this._obj.oncontextmenu=function(e){var t=e||event,i=t.target||t.srcElement,s=scheduler.callEvent("onContextMenu",[scheduler._locate_event(i),t]); - -return s}},scheduler.select=function(e){this._select_id!=e&&(scheduler._close_not_saved(),this.editStop(!1),this.unselect(),this._select_id=e,this.updateEvent(e))},scheduler.unselect=function(e){if(!e||e==this._select_id){var t=this._select_id;this._select_id=null,t&&this.getEvent(t)&&this.updateEvent(t)}},scheduler.getState=function(){return{mode:this._mode,date:new Date(this._date),min_date:new Date(this._min_date),max_date:new Date(this._max_date),editor_id:this._edit_id,lightbox_id:this._lightbox_id, -new_event:this._new_event,select_id:this._select_id,expanded:this.expanded,drag_id:this._drag_id,drag_mode:this._drag_mode}},scheduler._click={dhx_cal_data:function(e){if(scheduler._ignore_next_click)return e.preventDefault&&e.preventDefault(),e.cancelBubble=!0,scheduler._ignore_next_click=!1,!1;var t=e?e.target:event.srcElement,i=scheduler._locate_event(t);if(e=e||event,i){if(!scheduler.callEvent("onClick",[i,e])||scheduler.config.readonly)return}else scheduler.callEvent("onEmptyClick",[scheduler.getActionData(e).date,e]); - -if(i&&scheduler.config.select){scheduler.select(i);var s=t.className;-1!=s.indexOf("_icon")&&scheduler._click.buttons[s.split(" ")[1].replace("icon_","")](i)}else scheduler._close_not_saved(),(new Date).valueOf()-(scheduler._new_event||0)>500&&scheduler.unselect()},dhx_cal_prev_button:function(){scheduler._click.dhx_cal_next_button(0,-1)},dhx_cal_next_button:function(e,t){scheduler.setCurrentView(scheduler.date.add(scheduler.date[scheduler._mode+"_start"](scheduler._date),t||1,scheduler._mode))}, -dhx_cal_today_button:function(){scheduler.callEvent("onBeforeTodayDisplayed",[])&&scheduler.setCurrentView(scheduler._currentDate())},dhx_cal_tab:function(){var e=this.getAttribute("name"),t=e.substring(0,e.search("_tab"));scheduler.setCurrentView(scheduler._date,t)},buttons:{"delete":function(e){var t=scheduler.locale.labels.confirm_deleting;scheduler._dhtmlx_confirm(t,scheduler.locale.labels.title_confirm_deleting,function(){scheduler.deleteEvent(e)})},edit:function(e){scheduler.edit(e)},save:function(e){ -scheduler.editStop(!0)},details:function(e){scheduler.showLightbox(e)},cancel:function(e){scheduler.editStop(!1)}}},scheduler._dhtmlx_confirm=function(e,t,i){if(!e)return i();var s={text:e};t&&(s.title=t),i&&(s.callback=function(e){e&&i()}),dhtmlx.confirm(s)},scheduler.addEventNow=function(e,t,i){var s={};e&&null!==e.constructor.toString().match(/object/i)&&(s=e,e=null);var a=6e4*(this.config.event_duration||this.config.time_step);e||(e=s.start_date||Math.round(scheduler._currentDate().valueOf()/a)*a); - -var n=new Date(e);if(!t){var r=this.config.first_hour;r>n.getHours()&&(n.setHours(r),e=n.valueOf()),t=e.valueOf()+a}var d=new Date(t);n.valueOf()==d.valueOf()&&d.setTime(d.valueOf()+a),s.start_date=s.start_date||n,s.end_date=s.end_date||d,s.text=s.text||this.locale.labels.new_event,s.id=this._drag_id=this.uid(),this._drag_mode="new-size",this._loading=!0,this.addEvent(s),this.callEvent("onEventCreated",[this._drag_id,i]),this._loading=!1,this._drag_event={},this._on_mouse_up(i)},scheduler._on_dbl_click=function(e,t){ -if(t=t||e.target||e.srcElement,!this.config.readonly){var i=(t.className||"").split(" ")[0];switch(i){case"dhx_scale_holder":case"dhx_scale_holder_now":case"dhx_month_body":case"dhx_wa_day_data":if(!scheduler.config.dblclick_create)break;this.addEventNow(this.getActionData(e).date,null,e);break;case"dhx_cal_event":case"dhx_wa_ev_body":case"dhx_agenda_line":case"dhx_grid_event":case"dhx_cal_event_line":case"dhx_cal_event_clear":var s=this._locate_event(t);if(!this.callEvent("onDblClick",[s,e]))return; - -this.config.details_on_dblclick||this._table_view||!this.getEvent(s)._timed||!this.config.select?this.showLightbox(s):this.edit(s);break;case"dhx_time_block":case"dhx_cal_container":return;default:var a=this["dblclick_"+i];if(a)a.call(this,e);else if(t.parentNode&&t!=this)return scheduler._on_dbl_click(e,t.parentNode)}}},scheduler._get_column_index=function(e){var t=0;if(this._cols){for(var i=0,s=0;s<this._cols.length&&!i;s++)i=this._cols[s];if(t=i?e/i:0,this._ignores)for(var s=0;t>=s;s++)this._ignores[s]&&t++; - -}return t},scheduler._week_indexes_from_pos=function(e){if(this._cols){var t=this._get_column_index(e.x);return e.x=Math.min(this._cols.length-1,Math.max(0,Math.ceil(t)-1)),e.y=Math.max(0,Math.ceil(60*e.y/(this.config.time_step*this.config.hour_size_px))-1)+this.config.first_hour*(60/this.config.time_step),e}return e},scheduler._mouse_coords=function(e){var t,i=document.body,s=document.documentElement;t=_isIE||!e.pageX&&!e.pageY?{x:e.clientX+(i.scrollLeft||s.scrollLeft||0)-i.clientLeft,y:e.clientY+(i.scrollTop||s.scrollTop||0)-i.clientTop -}:{x:e.pageX,y:e.pageY},t.x-=getAbsoluteLeft(this._obj)+(this._table_view?0:this.xy.scale_width),t.y-=getAbsoluteTop(this._obj)+this.xy.nav_height+(this._dy_shift||0)+this.xy.scale_height-this._els.dhx_cal_data[0].scrollTop,t.ev=e;var a=this["mouse_"+this._mode];if(a)return a.call(this,t);if(this._table_view){var n=this._get_column_index(t.x);if(!this._cols||!this._colsS)return t;var r=0;for(r=1;r<this._colsS.heights.length&&!(this._colsS.heights[r]>t.y);r++);t.y=Math.ceil(24*(Math.max(0,n)+7*Math.max(0,r-1))*60/this.config.time_step), -(scheduler._drag_mode||"month"==this._mode)&&(t.y=24*(Math.max(0,Math.ceil(n)-1)+7*Math.max(0,r-1))*60/this.config.time_step),"move"==this._drag_mode&&scheduler._ignores_detected&&scheduler.config.preserve_length&&(t._ignores=!0,this._drag_event._event_length||(this._drag_event._event_length=this._get_real_event_length(this._drag_event.start_date,this._drag_event.end_date,{x_step:1,x_unit:"day"}))),t.x=0}else t=this._week_indexes_from_pos(t);return t},scheduler._close_not_saved=function(){if((new Date).valueOf()-(scheduler._new_event||0)>500&&scheduler._edit_id){ -var e=scheduler.locale.labels.confirm_closing;scheduler._dhtmlx_confirm(e,scheduler.locale.labels.title_confirm_closing,function(){scheduler.editStop(scheduler.config.positive_closing)}),e&&(this._drag_id=this._drag_pos=this._drag_mode=null)}},scheduler._correct_shift=function(e,t){return e-=6e4*(new Date(scheduler._min_date).getTimezoneOffset()-new Date(e).getTimezoneOffset())*(t?-1:1)},scheduler._is_pos_changed=function(e,t){function i(e,t,i){return!!(Math.abs(e-t)>i)}if(!e||!this._drag_pos)return!0; - -var s=100,a=5;return!!(!this._drag_pos.start||+new Date-this._drag_pos.start>s||i(e.x,t.x,a)||i(e.y,t.y,a))},scheduler._on_mouse_move=function(e){if(this._drag_mode){var t=this._mouse_coords(e);if(t.force_redraw||this._is_pos_changed(this._drag_pos,t)){var i,s;if(this._edit_id!=this._drag_id&&this._close_not_saved(),!this._drag_mode)return;if(this._drag_pos=t,this._drag_pos.has_moved=!0,"create"==this._drag_mode){if(this._close_not_saved(),this.unselect(this._select_id),this._loading=!0,i=this._get_date_from_pos(t).valueOf(), -!this._drag_start){var a=this.callEvent("onBeforeEventCreated",[e,this._drag_id]);if(!a)return;return void(this._drag_start=i)}s=i,s==this._drag_start;var n=new Date(this._drag_start),r=new Date(s);"day"!=this._mode&&"week"!=this._mode||n.getHours()!=r.getHours()||n.getMinutes()!=r.getMinutes()||(r=new Date(this._drag_start+1e3)),this._drag_id=this.uid(),this.addEvent(n,r,this.locale.labels.new_event,this._drag_id,t.fields),this.callEvent("onEventCreated",[this._drag_id,e]),this._loading=!1,this._drag_mode="new-size"; - -}var d,o=this.getEvent(this._drag_id);if("move"==this._drag_mode)i=this._min_date.valueOf()+6e4*(t.y*this.config.time_step+24*t.x*60-(scheduler._move_pos_shift||0)),!t.custom&&this._table_view&&(i+=1e3*this.date.time_part(o.start_date)),i=this._correct_shift(i),t._ignores&&this.config.preserve_length&&this._table_view?(this.matrix&&(d=this.matrix[this._mode]),d=d||{x_step:1,x_unit:"day"},s=1*i+this._get_fictional_event_length(i,this._drag_event._event_length,d)):s=o.end_date.valueOf()-(o.start_date.valueOf()-i); -else{if(i=o.start_date.valueOf(),s=o.end_date.valueOf(),this._table_view){var l=this._min_date.valueOf()+t.y*this.config.time_step*6e4+(t.custom?0:864e5);if("month"==this._mode)if(l=this._correct_shift(l,!1),this._drag_from_start){var h=864e5;l<=scheduler.date.date_part(new Date(s+h-1)).valueOf()&&(i=l-h)}else s=l;else t.resize_from_start?i=l:s=l}else s=this.date.date_part(new Date(o.end_date.valueOf()-1)).valueOf()+t.y*this.config.time_step*6e4,this._els.dhx_cal_data[0].style.cursor="s-resize",("week"==this._mode||"day"==this._mode)&&(s=this._correct_shift(s)); - -if("new-size"==this._drag_mode)if(s<=this._drag_start){var _=t.shift||(this._table_view&&!t.custom?864e5:0);i=s-(t.shift?0:_),s=this._drag_start+(_||6e4*this.config.time_step)}else i=this._drag_start;else i>=s&&(s=i+6e4*this.config.time_step)}var c=new Date(s-1),u=new Date(i);if(scheduler.config.limit_drag_out&&(+u<+scheduler._min_date||+s>+scheduler._max_date)){var g=s-u;+u<+scheduler._min_date?(u=new Date(scheduler._min_date),s=new Date(+u+g)):(s=new Date(scheduler._max_date),u=new Date(+s-g)); -var c=new Date(s-1)}if(!this._table_view&&!scheduler.config.all_timed&&(!scheduler._get_section_view()&&t.x!=this._get_event_sday({start_date:new Date(s),end_date:new Date(s)})||new Date(s).getHours()>=this.config.last_hour)){var g=s-u,h=this._min_date.valueOf()+24*t.x*60*6e4;s=scheduler.date.date_part(new Date(h)),s.setHours(this.config.last_hour),c=new Date(s-1),"move"==this._drag_mode&&(u=new Date(+s-g))}if(this._table_view||c.getDate()==u.getDate()&&c.getHours()<this.config.last_hour||scheduler._allow_dnd)if(o.start_date=u, -o.end_date=new Date(s),this.config.update_render){var f=scheduler._els.dhx_cal_data[0].scrollTop;this.update_view(),scheduler._els.dhx_cal_data[0].scrollTop=f}else this.updateEvent(this._drag_id);this._table_view&&this.for_rendered(this._drag_id,function(e){e.className+=" dhx_in_move"}),this.callEvent("onEventDrag",[this._drag_id,this._drag_mode,e])}}else if(scheduler.checkEvent("onMouseMove")){var v=this._locate_event(e.target||e.srcElement);this.callEvent("onMouseMove",[v,e])}},scheduler._on_mouse_down=function(e,t){ -if(2!=e.button&&!this.config.readonly&&!this._drag_mode){t=t||e.target||e.srcElement;var i=t.className&&t.className.split(" ")[0];switch(i){case"dhx_cal_event_line":case"dhx_cal_event_clear":this._table_view&&(this._drag_mode="move");break;case"dhx_event_move":case"dhx_wa_ev_body":this._drag_mode="move";break;case"dhx_event_resize":this._drag_mode="resize",(t.className||"").indexOf("dhx_event_resize_end")<0?scheduler._drag_from_start=!0:scheduler._drag_from_start=!1;break;case"dhx_scale_holder":case"dhx_scale_holder_now": -case"dhx_month_body":case"dhx_matrix_cell":case"dhx_marked_timespan":this._drag_mode="create";break;case"":if(t.parentNode)return scheduler._on_mouse_down(e,t.parentNode);break;default:if((!scheduler.checkEvent("onMouseDown")||scheduler.callEvent("onMouseDown",[i]))&&t.parentNode&&t!=this&&"dhx_body"!=i)return scheduler._on_mouse_down(e,t.parentNode);this._drag_mode=null,this._drag_id=null}if(this._drag_mode){var s=this._locate_event(t);if(this.config["drag_"+this._drag_mode]&&this.callEvent("onBeforeDrag",[s,this._drag_mode,e])){ -if(this._drag_id=s,(this._edit_id!=this._drag_id||this._edit_id&&"create"==this._drag_mode)&&this._close_not_saved(),!this._drag_mode)return;this._drag_event=scheduler._lame_clone(this.getEvent(this._drag_id)||{}),this._drag_pos=this._mouse_coords(e),this._drag_pos.start=+new Date}else this._drag_mode=this._drag_id=0}this._drag_start=null}},scheduler._get_private_properties=function(e){var t={};for(var i in e)0===i.indexOf("_")&&(t[i]=!0);return t},scheduler._clear_temporary_properties=function(e,t){ -var i=this._get_private_properties(e),s=this._get_private_properties(t);for(var a in s)i[a]||delete t[a]},scheduler._on_mouse_up=function(e){if(!e||2!=e.button||!scheduler.config.touch){if(this._drag_mode&&this._drag_id){this._els.dhx_cal_data[0].style.cursor="default";var t=this._drag_id,i=this._drag_mode,s=!this._drag_pos||this._drag_pos.has_moved,a=this.getEvent(this._drag_id);if(s&&(this._drag_event._dhx_changed||!this._drag_event.start_date||a.start_date.valueOf()!=this._drag_event.start_date.valueOf()||a.end_date.valueOf()!=this._drag_event.end_date.valueOf())){ -var n="new-size"==this._drag_mode;if(this.callEvent("onBeforeEventChanged",[a,e,n,this._drag_event]))if(this._drag_id=this._drag_mode=null,n&&this.config.edit_on_create){if(this.unselect(),this._new_event=new Date,this._table_view||this.config.details_on_create||!this.config.select)return scheduler.callEvent("onDragEnd",[t,i,e]),this.showLightbox(t);this._drag_pos=!0,this._select_id=this._edit_id=t}else this._new_event||this.callEvent(n?"onEventAdded":"onEventChanged",[t,this.getEvent(t)]);else n?this.deleteEvent(a.id,!0):(this._drag_event._dhx_changed=!1, -this._clear_temporary_properties(a,this._drag_event),scheduler._lame_copy(a,this._drag_event),this.updateEvent(a.id))}this._drag_pos&&(this._drag_pos.has_moved||this._drag_pos===!0)&&this.render_view_data(),scheduler.callEvent("onDragEnd",[t,i,e])}this._drag_id=null,this._drag_mode=null,this._drag_pos=null}},scheduler._trigger_dyn_loading=function(){return this._load_mode&&this._load()?(this._render_wait=!0,!0):!1},scheduler.update_view=function(){var e=this[this._mode+"_view"];return e?e(!0):this._reset_scale(), -this._trigger_dyn_loading()?!0:void this.render_view_data()},scheduler.isViewExists=function(e){return!!(scheduler[e+"_view"]||scheduler.date[e+"_start"]&&scheduler.templates[e+"_date"]&&scheduler.templates[e+"_scale_date"])},scheduler.updateView=function(e,t){e=e||this._date,t=t||this._mode;var i="dhx_cal_data";this._mode?this._obj.className=this._obj.className.replace("dhx_scheduler_"+this._mode,"dhx_scheduler_"+t):this._obj.className+=" dhx_scheduler_"+t;var s=this._mode==t&&this.config.preserve_scroll?this._els[i][0].scrollTop:!1; - -this[this._mode+"_view"]&&t&&this._mode!=t&&this[this._mode+"_view"](!1),this._close_not_saved();var a="dhx_multi_day";this._els[a]&&(this._els[a][0].parentNode.removeChild(this._els[a][0]),this._els[a]=null),this._mode=t,this._date=e,this._table_view="month"==this._mode,this._dy_shift=0;var n=this._els.dhx_cal_tab;if(n)for(var r=0;r<n.length;r++){var d=n[r].className;d=d.replace(/ active/g,""),n[r].getAttribute("name")==this._mode+"_tab"&&(d+=" active"),n[r].className=d}this.update_view(),"number"==typeof s&&(this._els[i][0].scrollTop=s); - -},scheduler.setCurrentView=function(e,t){this.callEvent("onBeforeViewChange",[this._mode,this._date,t||this._mode,e||this._date])&&(this.updateView(e,t),this.callEvent("onViewChange",[this._mode,this._date]))},scheduler._render_x_header=function(e,t,i,s,a){a=a||0;var n=document.createElement("DIV");n.className="dhx_scale_bar",this.templates[this._mode+"_scalex_class"]&&(n.className+=" "+this.templates[this._mode+"_scalex_class"](i));var r=this._cols[e]-1;"month"==this._mode&&0===e&&this.config.left_border&&(n.className+=" dhx_scale_bar_border", -t+=1),this.set_xy(n,r,this.xy.scale_height-2,t,a),n.innerHTML=this.templates[this._mode+"_scale_date"](i,this._mode),s.appendChild(n)},scheduler._get_columns_num=function(e,t){var i=7;if(!scheduler._table_view){var s=scheduler.date["get_"+scheduler._mode+"_end"];s&&(t=s(e)),i=Math.round((t.valueOf()-e.valueOf())/864e5)}return i},scheduler._get_timeunit_start=function(){return this.date[this._mode+"_start"](new Date(this._date.valueOf()))},scheduler._get_view_end=function(){var e=this._get_timeunit_start(),t=scheduler.date.add(e,1,this._mode); - -if(!scheduler._table_view){var i=scheduler.date["get_"+scheduler._mode+"_end"];i&&(t=i(e))}return t},scheduler._calc_scale_sizes=function(e,t,i){var s=e,a=this._get_columns_num(t,i);this._process_ignores(t,a,"day",1);for(var n=a-this._ignores_detected,r=0;a>r;r++)this._ignores[r]?(this._cols[r]=0,n++):this._cols[r]=Math.floor(s/(n-r)),s-=this._cols[r],this._colsS[r]=(this._cols[r-1]||0)+(this._colsS[r-1]||(this._table_view?0:this.xy.scale_width+2));this._colsS.col_length=a,this._colsS[a]=this._cols[a-1]+this._colsS[a-1]||0; - -},scheduler._set_scale_col_size=function(e,t,i){var s=this.config;this.set_xy(e,t-1,s.hour_size_px*(s.last_hour-s.first_hour),i+this.xy.scale_width+1,0)},scheduler._render_scales=function(e,t){var i=new Date(scheduler._min_date),s=new Date(scheduler._max_date),a=this.date.date_part(scheduler._currentDate()),n=parseInt(e.style.width,10),r=new Date(this._min_date),d=this._get_columns_num(i,s);this._calc_scale_sizes(n,i,s);var o=0;e.innerHTML="";for(var l=0;d>l;l++){if(this._ignores[l]||this._render_x_header(l,o,r,e), -!this._table_view){var h=document.createElement("DIV"),_="dhx_scale_holder";r.valueOf()==a.valueOf()&&(_="dhx_scale_holder_now"),this._ignores_detected&&this._ignores[l]&&(_+=" dhx_scale_ignore"),h.className=_+" "+this.templates.week_date_class(r,a),this._set_scale_col_size(h,this._cols[l],o),t.appendChild(h),this.callEvent("onScaleAdd",[h,r])}o+=this._cols[l],r=this.date.add(r,1,"day"),r=this.date.day_start(r)}},scheduler._reset_scale=function(){if(this.templates[this._mode+"_date"]){var e=this._els.dhx_cal_header[0],t=this._els.dhx_cal_data[0],i=this.config; - -e.innerHTML="",t.innerHTML="";var s=(i.readonly||!i.drag_resize?" dhx_resize_denied":"")+(i.readonly||!i.drag_move?" dhx_move_denied":"");t.className="dhx_cal_data"+s,this._scales={},this._cols=[],this._colsS={height:0},this._dy_shift=0,this.set_sizes();var a,n,r=this._get_timeunit_start(),d=scheduler._get_view_end();if(a=n=this._table_view?scheduler.date.week_start(r):r,this._min_date=a,this._els.dhx_cal_date[0].innerHTML=this.templates[this._mode+"_date"](r,d,this._mode),this._max_date=d,scheduler._render_scales(e,t), -this._table_view)this._reset_month_scale(t,r,n);else if(this._reset_hours_scale(t,r,n),i.multi_day){var o="dhx_multi_day";this._els[o]&&(this._els[o][0].parentNode.removeChild(this._els[o][0]),this._els[o]=null);var l=this._els.dhx_cal_navline[0],h=l.offsetHeight+this._els.dhx_cal_header[0].offsetHeight+1,_=document.createElement("DIV");_.className=o,_.style.visibility="hidden",this.set_xy(_,Math.max(this._colsS[this._colsS.col_length]+this.xy.scroll_width-2,0),0,0,h),t.parentNode.insertBefore(_,t); - -var c=_.cloneNode(!0);c.className=o+"_icon",c.style.visibility="hidden",this.set_xy(c,this.xy.scale_width,0,0,h),_.appendChild(c),this._els[o]=[_,c],this._els[o][0].onclick=this._click.dhx_cal_data}}},scheduler._reset_hours_scale=function(e,t,i){var s=document.createElement("DIV");s.className="dhx_scale_holder";for(var a=new Date(1980,1,1,this.config.first_hour,0,0),n=1*this.config.first_hour;n<this.config.last_hour;n++){var r=document.createElement("DIV");r.className="dhx_scale_hour",r.style.height=this.config.hour_size_px-(this._quirks?0:1)+"px"; - -var d=this.xy.scale_width;this.config.left_border&&(d-=1,r.className+=" dhx_scale_hour_border"),r.style.width=d+"px",r.innerHTML=scheduler.templates.hour_scale(a),s.appendChild(r),a=this.date.add(a,1,"hour")}e.appendChild(s),this.config.scroll_hour&&(e.scrollTop=this.config.hour_size_px*(this.config.scroll_hour-this.config.first_hour))},scheduler._currentDate=function(){return scheduler.config.now_date?new Date(scheduler.config.now_date):new Date},scheduler._process_ignores=function(e,t,i,s,a){this._ignores={}, -this._ignores_detected=0;var n=scheduler["ignore_"+this._mode];if(n)for(var r=new Date(e),d=0;t>d;d++)n(r)&&(this._ignores_detected+=1,this._ignores[d]=!0,a&&t++),r=scheduler.date.add(r,s,i),scheduler.date[i+"_start"]&&(r=scheduler.date[i+"_start"](r))},scheduler._render_month_scale=function(e,t,i){function s(e){var t=scheduler._colsS.height;return void 0!==scheduler._colsS.heights[e+1]&&(t=scheduler._colsS.heights[e+1]-(scheduler._colsS.heights[e]||0)),t}var a=scheduler.date.add(t,1,"month"),n=new Date(i),r=scheduler._currentDate(); - -this.date.date_part(r),this.date.date_part(i);for(var d=Math.ceil(Math.round((a.valueOf()-i.valueOf())/864e5)/7),o=[],l=0;7>=l;l++){var h=(this._cols[l]||0)-1;0===l&&this.config.left_border&&(h-=1),o[l]=" style='width:"+h+"px;"}for(var _=0,c="<table cellpadding='0' cellspacing='0'>",u=[],l=0;d>l;l++){c+="<tr>";for(var g=Math.max(s(l)-scheduler.xy.month_head_height,0),f=0;7>f;f++){c+="<td";var v="";t>i?v="dhx_before":i>=a?v="dhx_after":i.valueOf()==r.valueOf()&&(v="dhx_now"),this._ignores_detected&&this._ignores[f]&&(v+=" dhx_scale_ignore"), -c+=" class='"+v+" "+this.templates.month_date_class(i,r)+"' >";var m="dhx_month_body",p="dhx_month_head";0===f&&this.config.left_border&&(m+=" dhx_month_body_border",p+=" dhx_month_head_border"),this._ignores_detected&&this._ignores[f]?c+="<div></div><div></div>":(c+="<div class='"+p+"'>"+this.templates.month_day(i)+"</div>",c+="<div class='"+m+"' "+o[f]+";height:"+g+"px;'></div></td>"),u.push(i);var x=i.getDate();i=this.date.add(i,1,"day"),i.getDate()-x>1&&(i=new Date(i.getFullYear(),i.getMonth(),x+1,12,0)); - -}c+="</tr>",scheduler._colsS.heights[l]=_,_+=s(l)}c+="</table>",this._min_date=n,this._max_date=i,e.innerHTML=c,this._scales={};for(var b=e.getElementsByTagName("div"),l=0;l<u.length;l++){var e=b[2*l+1],y=u[l];this._scales[+y]=e}for(var l=0;l<u.length;l++){var y=u[l];this.callEvent("onScaleAdd",[this._scales[+y],y])}return this._max_date},scheduler._reset_month_scale=function(e,t,i){var s=scheduler.date.add(t,1,"month"),a=scheduler._currentDate();this.date.date_part(a),this.date.date_part(i);var n=Math.ceil(Math.round((s.valueOf()-i.valueOf())/864e5)/7),r=Math.floor(e.clientHeight/n)-this.xy.month_head_height; - -return this._colsS.height=r+this.xy.month_head_height,this._colsS.heights=[],scheduler._render_month_scale(e,t,i)},scheduler.getLabel=function(e,t){for(var i=this.config.lightbox.sections,s=0;s<i.length;s++)if(i[s].map_to==e)for(var a=i[s].options,n=0;n<a.length;n++)if(a[n].key==t)return a[n].label;return""},scheduler.updateCollection=function(e,t){var i=scheduler.serverList(e);return i?(i.splice(0,i.length),i.push.apply(i,t||[]),scheduler.callEvent("onOptionsLoad",[]),scheduler.resetLightbox(),!0):!1; - -},scheduler._lame_clone=function(e,t){var i,s,a;for(t=t||[],i=0;i<t.length;i+=2)if(e===t[i])return t[i+1];if(e&&"object"==typeof e){for(a={},s=[Array,Date,Number,String,Boolean],i=0;i<s.length;i++)e instanceof s[i]&&(a=i?new s[i](e):new s[i]);t.push(e,a);for(i in e)Object.prototype.hasOwnProperty.apply(e,[i])&&(a[i]=scheduler._lame_clone(e[i],t))}return a||e},scheduler._lame_copy=function(e,t){for(var i in t)t.hasOwnProperty(i)&&(e[i]=t[i]);return e},scheduler._get_date_from_pos=function(e){var t=this._min_date.valueOf()+6e4*(e.y*this.config.time_step+24*(this._table_view?0:e.x)*60); - -return new Date(this._correct_shift(t))},scheduler.getActionData=function(e){var t=this._mouse_coords(e);return{date:this._get_date_from_pos(t),section:t.section}},scheduler._focus=function(e,t){e&&e.focus&&(this.config.touch?window.setTimeout(function(){e.focus()},100):(t&&e.select&&e.select(),e.focus()))},scheduler._get_real_event_length=function(e,t,i){var s,a=t-e,n=i._start_correction+i._end_correction||0,r=this["ignore_"+this._mode],d=0;for(i.render?(d=this._get_date_index(i,e),s=this._get_date_index(i,t)):s=Math.round(a/60/60/1e3/24);s>d;){ -var o=scheduler.date.add(t,-i.x_step,i.x_unit);a-=r&&r(t)?t-o:n,t=o,s--}return a},scheduler._get_fictional_event_length=function(e,t,i,s){var a=new Date(e),n=s?-1:1;if(i._start_correction||i._end_correction){var r;r=s?60*a.getHours()+a.getMinutes()-60*(i.first_hour||0):60*(i.last_hour||0)-(60*a.getHours()+a.getMinutes());var d=60*(i.last_hour-i.first_hour),o=Math.ceil((t/6e4-r)/d);t+=o*(1440-d)*60*1e3}var l,h=new Date(1*e+t*n),_=this["ignore_"+this._mode],c=0;for(i.render?(c=this._get_date_index(i,a), -l=this._get_date_index(i,h)):l=Math.round(t/60/60/1e3/24);l*n>=c*n;){var u=scheduler.date.add(a,i.x_step*n,i.x_unit);_&&_(a)&&(t+=(u-a)*n,l+=n),a=u,c+=n}return t},scheduler._get_section_view=function(){return this.matrix&&this.matrix[this._mode]?this.matrix[this._mode]:this._props&&this._props[this._mode]?this._props[this._mode]:null},scheduler._get_section_property=function(){return this.matrix&&this.matrix[this._mode]?this.matrix[this._mode].y_property:this._props&&this._props[this._mode]?this._props[this._mode].map_to:null; - -},scheduler._is_initialized=function(){var e=this.getState();return this._obj&&e.date&&e.mode},scheduler._is_lightbox_open=function(){var e=this.getState();return null!==e.lightbox_id&&void 0!==e.lightbox_id},scheduler.date={init:function(){for(var e=scheduler.locale.date.month_short,t=scheduler.locale.date.month_short_hash={},i=0;i<e.length;i++)t[e[i]]=i;for(var e=scheduler.locale.date.month_full,t=scheduler.locale.date.month_full_hash={},i=0;i<e.length;i++)t[e[i]]=i},date_part:function(e){var t=new Date(e); - -return e.setHours(0),e.setMinutes(0),e.setSeconds(0),e.setMilliseconds(0),e.getHours()&&(e.getDate()<t.getDate()||e.getMonth()<t.getMonth()||e.getFullYear()<t.getFullYear())&&e.setTime(e.getTime()+36e5*(24-e.getHours())),e},time_part:function(e){return(e.valueOf()/1e3-60*e.getTimezoneOffset())%86400},week_start:function(e){var t=e.getDay();return scheduler.config.start_on_monday&&(0===t?t=6:t--),this.date_part(this.add(e,-1*t,"day"))},month_start:function(e){return e.setDate(1),this.date_part(e)}, -year_start:function(e){return e.setMonth(0),this.month_start(e)},day_start:function(e){return this.date_part(e)},_add_days:function(e,t){var i=new Date(e.valueOf());return i.setDate(i.getDate()+t),t>=0&&!e.getHours()&&i.getHours()&&(i.getDate()<e.getDate()||i.getMonth()<e.getMonth()||i.getFullYear()<e.getFullYear())&&i.setTime(i.getTime()+36e5*(24-i.getHours())),i},add:function(e,t,i){var s=new Date(e.valueOf());switch(i){case"day":s=scheduler.date._add_days(s,t);break;case"week":s=scheduler.date._add_days(s,7*t); - -break;case"month":s.setMonth(s.getMonth()+t);break;case"year":s.setYear(s.getFullYear()+t);break;case"hour":s.setTime(s.getTime()+60*t*60*1e3);break;case"minute":s.setTime(s.getTime()+60*t*1e3);break;default:return scheduler.date["add_"+i](e,t,i)}return s},to_fixed:function(e){return 10>e?"0"+e:e},copy:function(e){return new Date(e.valueOf())},date_to_str:function(e,t){return e=e.replace(/%[a-zA-Z]/g,function(e){switch(e){case"%d":return'"+scheduler.date.to_fixed(date.getDate())+"';case"%m":return'"+scheduler.date.to_fixed((date.getMonth()+1))+"'; - -case"%j":return'"+date.getDate()+"';case"%n":return'"+(date.getMonth()+1)+"';case"%y":return'"+scheduler.date.to_fixed(date.getFullYear()%100)+"';case"%Y":return'"+date.getFullYear()+"';case"%D":return'"+scheduler.locale.date.day_short[date.getDay()]+"';case"%l":return'"+scheduler.locale.date.day_full[date.getDay()]+"';case"%M":return'"+scheduler.locale.date.month_short[date.getMonth()]+"';case"%F":return'"+scheduler.locale.date.month_full[date.getMonth()]+"';case"%h":return'"+scheduler.date.to_fixed((date.getHours()+11)%12+1)+"'; - -case"%g":return'"+((date.getHours()+11)%12+1)+"';case"%G":return'"+date.getHours()+"';case"%H":return'"+scheduler.date.to_fixed(date.getHours())+"';case"%i":return'"+scheduler.date.to_fixed(date.getMinutes())+"';case"%a":return'"+(date.getHours()>11?"pm":"am")+"';case"%A":return'"+(date.getHours()>11?"PM":"AM")+"';case"%s":return'"+scheduler.date.to_fixed(date.getSeconds())+"';case"%W":return'"+scheduler.date.to_fixed(scheduler.date.getISOWeek(date))+"';default:return e}}),t&&(e=e.replace(/date\.get/g,"date.getUTC")), -new Function("date",'return "'+e+'";')},str_to_date:function(e,t){for(var i="var temp=date.match(/[a-zA-Z]+|[0-9]+/g);",s=e.match(/%[a-zA-Z]/g),a=0;a<s.length;a++)switch(s[a]){case"%j":case"%d":i+="set[2]=temp["+a+"]||1;";break;case"%n":case"%m":i+="set[1]=(temp["+a+"]||1)-1;";break;case"%y":i+="set[0]=temp["+a+"]*1+(temp["+a+"]>50?1900:2000);";break;case"%g":case"%G":case"%h":case"%H":i+="set[3]=temp["+a+"]||0;";break;case"%i":i+="set[4]=temp["+a+"]||0;";break;case"%Y":i+="set[0]=temp["+a+"]||0;"; - -break;case"%a":case"%A":i+="set[3]=set[3]%12+((temp["+a+"]||'').toLowerCase()=='am'?0:12);";break;case"%s":i+="set[5]=temp["+a+"]||0;";break;case"%M":i+="set[1]=scheduler.locale.date.month_short_hash[temp["+a+"]]||0;";break;case"%F":i+="set[1]=scheduler.locale.date.month_full_hash[temp["+a+"]]||0;"}var n="set[0],set[1],set[2],set[3],set[4],set[5]";return t&&(n=" Date.UTC("+n+")"),new Function("date","var set=[0,0,1,0,0,0]; "+i+" return new Date("+n+");")},getISOWeek:function(e){if(!e)return!1;var t=e.getDay(); - -0===t&&(t=7);var i=new Date(e.valueOf());i.setDate(e.getDate()+(4-t));var s=i.getFullYear(),a=Math.round((i.getTime()-new Date(s,0,1).getTime())/864e5),n=1+Math.floor(a/7);return n},getUTCISOWeek:function(e){return this.getISOWeek(this.convert_to_utc(e))},convert_to_utc:function(e){return new Date(e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate(),e.getUTCHours(),e.getUTCMinutes(),e.getUTCSeconds())}},scheduler.locale={date:{month_full:["January","February","March","April","May","June","July","August","September","October","November","December"], -month_short:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],day_full:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],day_short:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"]},labels:{dhx_cal_today_button:"Today",day_tab:"Day",week_tab:"Week",month_tab:"Month",new_event:"New event",icon_save:"Save",icon_cancel:"Cancel",icon_details:"Details",icon_edit:"Edit",icon_delete:"Delete",confirm_closing:"",confirm_deleting:"Event will be deleted permanently, are you sure?", -section_description:"Description",section_time:"Time period",full_day:"Full day",confirm_recurring:"Do you want to edit the whole set of repeated events?",section_recurring:"Repeat event",button_recurring:"Disabled",button_recurring_open:"Enabled",button_edit_series:"Edit series",button_edit_occurrence:"Edit occurrence",agenda_tab:"Agenda",date:"Date",description:"Description",year_tab:"Year",week_agenda_tab:"Agenda",grid_tab:"Grid",drag_to_create:"Drag to create",drag_to_move:"Drag to move",message_ok:"OK", -message_cancel:"Cancel"}},scheduler.config={default_date:"%j %M %Y",month_date:"%F %Y",load_date:"%Y-%m-%d",week_date:"%l",day_date:"%D, %F %j",hour_date:"%H:%i",month_day:"%d",xml_date:"%m/%d/%Y %H:%i",api_date:"%d-%m-%Y %H:%i",preserve_length:!0,time_step:5,start_on_monday:1,first_hour:0,last_hour:24,readonly:!1,drag_resize:1,drag_move:1,drag_create:1,dblclick_create:1,edit_on_create:1,details_on_create:0,resize_month_events:!1,resize_month_timed:!1,cascade_event_display:!1,cascade_event_count:4, -cascade_event_margin:30,multi_day:!0,multi_day_height_limit:0,drag_lightbox:!0,preserve_scroll:!0,select:!0,server_utc:!1,touch:!0,touch_tip:!0,touch_drag:500,quick_info_detached:!0,positive_closing:!1,drag_highlight:!0,limit_drag_out:!1,icons_edit:["icon_save","icon_cancel"],icons_select:["icon_details","icon_edit","icon_delete"],buttons_left:["dhx_save_btn","dhx_cancel_btn"],buttons_right:["dhx_delete_btn"],lightbox:{sections:[{name:"description",height:200,map_to:"text",type:"textarea",focus:!0 -},{name:"time",height:72,type:"time",map_to:"auto"}]},highlight_displayed_event:!0,left_border:!1,ajax_error:"alert",delay_render:0},scheduler.templates={},scheduler.init_templates=function(){var e=scheduler.locale.labels;e.dhx_save_btn=e.icon_save,e.dhx_cancel_btn=e.icon_cancel,e.dhx_delete_btn=e.icon_delete;var t=scheduler.date.date_to_str,i=scheduler.config,s=function(e,t){for(var i in t)e[i]||(e[i]=t[i])};s(scheduler.templates,{day_date:t(i.default_date),month_date:t(i.month_date),week_date:function(e,t){ -return scheduler.templates.day_date(e)+" – "+scheduler.templates.day_date(scheduler.date.add(t,-1,"day"))},day_scale_date:t(i.default_date),month_scale_date:t(i.week_date),week_scale_date:t(i.day_date),hour_scale:t(i.hour_date),time_picker:t(i.hour_date),event_date:t(i.hour_date),month_day:t(i.month_day),xml_date:scheduler.date.str_to_date(i.xml_date,i.server_utc),load_format:t(i.load_date,i.server_utc),xml_format:t(i.xml_date,i.server_utc),api_date:scheduler.date.str_to_date(i.api_date),event_header:function(e,t,i){ -return scheduler.templates.event_date(e)+" - "+scheduler.templates.event_date(t)},event_text:function(e,t,i){return i.text},event_class:function(e,t,i){return""},month_date_class:function(e){return""},week_date_class:function(e){return""},event_bar_date:function(e,t,i){return scheduler.templates.event_date(e)+" "},event_bar_text:function(e,t,i){return i.text},month_events_link:function(e,t){return"<a>View more("+t+" events)</a>"},drag_marker_class:function(e,t,i){return""},drag_marker_content:function(e,t,i){ -return""}}),this.callEvent("onTemplatesReady",[])},scheduler.uid=function(){return this._seed||(this._seed=(new Date).valueOf()),this._seed++},scheduler._events={},scheduler.clearAll=function(){this._events={},this._loaded={},this._edit_id=null,this._select_id=null,this._drag_id=null,this._drag_mode=null,this._drag_pos=null,this.clear_view(),this.callEvent("onClearAll",[])},scheduler.addEvent=function(e,t,i,s,a){if(!arguments.length)return this.addEventNow();var n=e;1!=arguments.length&&(n=a||{}, -n.start_date=e,n.end_date=t,n.text=i,n.id=s),n.id=n.id||scheduler.uid(),n.text=n.text||"","string"==typeof n.start_date&&(n.start_date=this.templates.api_date(n.start_date)),"string"==typeof n.end_date&&(n.end_date=this.templates.api_date(n.end_date));var r=6e4*(this.config.event_duration||this.config.time_step);n.start_date.valueOf()==n.end_date.valueOf()&&n.end_date.setTime(n.end_date.valueOf()+r),n._timed=this.isOneDayEvent(n);var d=!this._events[n.id];return this._events[n.id]=n,this.event_updated(n), -this._loading||this.callEvent(d?"onEventAdded":"onEventChanged",[n.id,n]),n.id},scheduler.deleteEvent=function(e,t){var i=this._events[e];(t||this.callEvent("onBeforeEventDelete",[e,i])&&this.callEvent("onConfirmedBeforeEventDelete",[e,i]))&&(i&&(this._select_id=null,delete this._events[e],this.event_updated(i)),this.callEvent("onEventDeleted",[e,i]))},scheduler.getEvent=function(e){return this._events[e]},scheduler.setEvent=function(e,t){t.id||(t.id=e),this._events[e]=t},scheduler.for_rendered=function(e,t){ -for(var i=this._rendered.length-1;i>=0;i--)this._rendered[i].getAttribute("event_id")==e&&t(this._rendered[i],i)},scheduler.changeEventId=function(e,t){if(e!=t){var i=this._events[e];i&&(i.id=t,this._events[t]=i,delete this._events[e]),this.for_rendered(e,function(e){e.setAttribute("event_id",t)}),this._select_id==e&&(this._select_id=t),this._edit_id==e&&(this._edit_id=t),this.callEvent("onEventIdChange",[e,t])}},function(){for(var e=["text","Text","start_date","StartDate","end_date","EndDate"],t=function(e){ -return function(t){return scheduler.getEvent(t)[e]}},i=function(e){return function(t,i){var s=scheduler.getEvent(t);s[e]=i,s._changed=!0,s._timed=this.isOneDayEvent(s),scheduler.event_updated(s,!0)}},s=0;s<e.length;s+=2)scheduler["getEvent"+e[s+1]]=t(e[s]),scheduler["setEvent"+e[s+1]]=i(e[s])}(),scheduler.event_updated=function(e,t){this.is_visible_events(e)?this.render_view_data():this.clear_event(e.id)},scheduler.is_visible_events=function(e){var t=e.start_date<this._max_date&&this._min_date<e.end_date; - -if(t){var i=this._table_view||e.end_date.getHours()>=this.config.first_hour&&e.end_date.getHours()<this.config.last_hour||e.start_date.getHours()>=this.config.first_hour&&e.start_date.getHours()<this.config.last_hour;if(i)return!0;var s=(e.end_date.valueOf()-e.start_date.valueOf())/36e5,a=24-(this.config.last_hour-this.config.first_hour);return s>a}return!1},scheduler.isOneDayEvent=function(e){var t=e.end_date.getDate()-e.start_date.getDate();return t?(0>t&&(t=Math.ceil((e.end_date.valueOf()-e.start_date.valueOf())/864e5)), -1==t&&!e.end_date.getHours()&&!e.end_date.getMinutes()&&(e.start_date.getHours()||e.start_date.getMinutes())):e.start_date.getMonth()==e.end_date.getMonth()&&e.start_date.getFullYear()==e.end_date.getFullYear()},scheduler.get_visible_events=function(e){var t=[];for(var i in this._events)this.is_visible_events(this._events[i])&&(!e||this._events[i]._timed)&&this.filter_event(i,this._events[i])&&t.push(this._events[i]);return t},scheduler.filter_event=function(e,t){var i=this["filter_"+this._mode]; -return i?i(e,t):!0},scheduler._is_main_area_event=function(e){return!!e._timed},scheduler.render_view_data=function(e,t){if(!e){if(this._not_render)return void(this._render_wait=!0);this._render_wait=!1,this.clear_view(),e=this.get_visible_events(!(this._table_view||this.config.multi_day))}for(var i=0,s=e.length;s>i;i++)this._recalculate_timed(e[i]);if(this.config.multi_day&&!this._table_view){for(var a=[],n=[],i=0;i<e.length;i++)this._is_main_area_event(e[i])?a.push(e[i]):n.push(e[i]);this._rendered_location=this._els.dhx_multi_day[0], -this._table_view=!0,this.render_data(n,t),this._table_view=!1,this._rendered_location=this._els.dhx_cal_data[0],this._table_view=!1,this.render_data(a,t)}else this._rendered_location=this._els.dhx_cal_data[0],this.render_data(e,t)},scheduler._view_month_day=function(e){var t=scheduler.getActionData(e).date;scheduler.callEvent("onViewMoreClick",[t])&&scheduler.setCurrentView(t,"day")},scheduler._render_month_link=function(e){for(var t=this._rendered_location,i=this._lame_clone(e),s=e._sday;s<e._eday;s++){ -i._sday=s,i._eday=s+1;var a=scheduler.date,n=scheduler._min_date;n=a.add(n,i._sweek,"week"),n=a.add(n,i._sday,"day");var r=scheduler.getEvents(n,a.add(n,1,"day")).length,d=this._get_event_bar_pos(i),o=d.x2-d.x,l=document.createElement("div");l.onclick=function(e){scheduler._view_month_day(e||event)},l.className="dhx_month_link",l.style.top=d.y+"px",l.style.left=d.x+"px",l.style.width=o+"px",l.innerHTML=scheduler.templates.month_events_link(n,r),this._rendered.push(l),t.appendChild(l)}},scheduler._recalculate_timed=function(e){ -if(e){var t;t="object"!=typeof e?this._events[e]:e,t&&(t._timed=scheduler.isOneDayEvent(t))}},scheduler.attachEvent("onEventChanged",scheduler._recalculate_timed),scheduler.attachEvent("onEventAdded",scheduler._recalculate_timed),scheduler.render_data=function(e,t){e=this._pre_render_events(e,t);for(var i=0;i<e.length;i++)if(this._table_view)if("month"!=scheduler._mode)this.render_event_bar(e[i]);else{var s=scheduler.config.max_month_events;s!==1*s||e[i]._sorder<s?this.render_event_bar(e[i]):void 0!==s&&e[i]._sorder==s&&scheduler._render_month_link(e[i]); - -}else this.render_event(e[i])},scheduler._get_first_visible_cell=function(e){for(var t=0;t<e.length;t++)if(-1==(e[t].className||"").indexOf("dhx_scale_ignore"))return e[t];return e[0]},scheduler._pre_render_events=function(e,t){var i=this.xy.bar_height,s=this._colsS.heights,a=this._colsS.heights=[0,0,0,0,0,0,0],n=this._els.dhx_cal_data[0];if(e=this._table_view?this._pre_render_events_table(e,t):this._pre_render_events_line(e,t),this._table_view)if(t)this._colsS.heights=s;else{var r=n.firstChild;if(r.rows){ -for(var d=0;d<r.rows.length;d++){a[d]++;var o=r.rows[d].cells,l=this._colsS.height-this.xy.month_head_height;if(a[d]*i>l){var h=l;1*this.config.max_month_events!==this.config.max_month_events||a[d]<=this.config.max_month_events?h=a[d]*i:(this.config.max_month_events+1)*i>l&&(h=(this.config.max_month_events+1)*i);for(var _=0;_<o.length;_++)o[_].childNodes[1].style.height=h+"px"}a[d]=(a[d-1]||0)+scheduler._get_first_visible_cell(o).offsetHeight}if(a.unshift(0),r.parentNode.offsetHeight<r.parentNode.scrollHeight&&!scheduler._colsS.scroll_fix&&scheduler.xy.scroll_width){ -var c=scheduler._colsS,u=c[c.col_length],g=c.heights.slice();u-=scheduler.xy.scroll_width||0,this._calc_scale_sizes(u,this._min_date,this._max_date),scheduler._colsS.heights=g,this.set_xy(this._els.dhx_cal_header[0],u,this.xy.scale_height),scheduler._render_scales(this._els.dhx_cal_header[0]),scheduler._render_month_scale(this._els.dhx_cal_data[0],this._get_timeunit_start(),this._min_date),c.scroll_fix=!0}}else if(e.length||"visible"!=this._els.dhx_multi_day[0].style.visibility||(a[0]=-1),e.length||-1==a[0]){ -var f=(r.parentNode.childNodes,(a[0]+1)*i+1),v=f,m=f+"px";this.config.multi_day_height_limit&&(v=Math.min(f,this.config.multi_day_height_limit),m=v+"px"),n.style.top=this._els.dhx_cal_navline[0].offsetHeight+this._els.dhx_cal_header[0].offsetHeight+v+"px",n.style.height=this._obj.offsetHeight-parseInt(n.style.top,10)-(this.xy.margin_top||0)+"px";var p=this._els.dhx_multi_day[0];p.style.height=m,p.style.visibility=-1==a[0]?"hidden":"visible";var x=this._els.dhx_multi_day[1];x.style.height=m,x.style.visibility=-1==a[0]?"hidden":"visible", -x.className=a[0]?"dhx_multi_day_icon":"dhx_multi_day_icon_small",this._dy_shift=(a[0]+1)*i,this.config.multi_day_height_limit&&(this._dy_shift=Math.min(this.config.multi_day_height_limit,this._dy_shift)),a[0]=0,v!=f&&(n.style.top=parseInt(n.style.top)+2+"px",p.style.overflowY="auto",x.style.position="fixed",x.style.top="",x.style.left="")}}return e},scheduler._get_event_sday=function(e){return Math.floor((e.start_date.valueOf()-this._min_date.valueOf())/864e5)},scheduler._get_event_mapped_end_date=function(e){ -var t=e.end_date;if(this.config.separate_short_events){var i=(e.end_date-e.start_date)/6e4;i<this._min_mapped_duration&&(t=this.date.add(t,this._min_mapped_duration-i,"minute"))}return t},scheduler._pre_render_events_line=function(e,t){e.sort(function(e,t){return e.start_date.valueOf()==t.start_date.valueOf()?e.id>t.id?1:-1:e.start_date>t.start_date?1:-1});var i=[],s=[];this._min_mapped_duration=Math.ceil(60*this.xy.min_event_height/this.config.hour_size_px);for(var a=0;a<e.length;a++){var n=e[a],r=n.start_date,d=n.end_date,o=r.getHours(),l=d.getHours(); - -if(n._sday=this._get_event_sday(n),this._ignores[n._sday])e.splice(a,1),a--;else{if(i[n._sday]||(i[n._sday]=[]),!t){n._inner=!1;for(var h=i[n._sday];h.length;){var _=h[h.length-1],c=this._get_event_mapped_end_date(_);if(!(c.valueOf()<=n.start_date.valueOf()))break;h.splice(h.length-1,1)}for(var u=h.length,g=!1,f=0;f<h.length;f++){var _=h[f],c=this._get_event_mapped_end_date(_);if(c.valueOf()<=n.start_date.valueOf()){g=!0,n._sorder=_._sorder,u=f,n._inner=!0;break}}if(h.length&&(h[h.length-1]._inner=!0), -!g)if(h.length)if(h.length<=h[h.length-1]._sorder){if(h[h.length-1]._sorder)for(f=0;f<h.length;f++){for(var v=!1,m=0;m<h.length;m++)if(h[m]._sorder==f){v=!0;break}if(!v){n._sorder=f;break}}else n._sorder=0;n._inner=!0}else{var p=h[0]._sorder;for(f=1;f<h.length;f++)h[f]._sorder>p&&(p=h[f]._sorder);n._sorder=p+1,n._inner=!1}else n._sorder=0;h.splice(u,u==h.length?0:1,n),h.length>(h.max_count||0)?(h.max_count=h.length,n._count=h.length):n._count=n._count?n._count:1}(o<this.config.first_hour||l>=this.config.last_hour)&&(s.push(n), -e[a]=n=this._copy_event(n),o<this.config.first_hour&&(n.start_date.setHours(this.config.first_hour),n.start_date.setMinutes(0)),l>=this.config.last_hour&&(n.end_date.setMinutes(0),n.end_date.setHours(this.config.last_hour)),n.start_date>n.end_date||o==this.config.last_hour)&&(e.splice(a,1),a--)}}if(!t){for(var a=0;a<e.length;a++)e[a]._count=i[e[a]._sday].max_count;for(var a=0;a<s.length;a++)s[a]._count=i[s[a]._sday].max_count}return e},scheduler._time_order=function(e){e.sort(function(e,t){return e.start_date.valueOf()==t.start_date.valueOf()?e._timed&&!t._timed?1:!e._timed&&t._timed?-1:e.id>t.id?1:-1:e.start_date>t.start_date?1:-1; - -})},scheduler._pre_render_events_table=function(e,t){this._time_order(e);for(var i,s=[],a=[[],[],[],[],[],[],[]],n=this._colsS.heights,r=this._cols.length,d={},o=0;o<e.length;o++){var l=e[o],h=l.id;d[h]||(d[h]={first_chunk:!0,last_chunk:!0});var _=d[h],c=i||l.start_date,u=l.end_date;c<this._min_date&&(_.first_chunk=!1,c=this._min_date),u>this._max_date&&(_.last_chunk=!1,u=this._max_date);var g=this.locate_holder_day(c,!1,l);if(l._sday=g%r,!this._ignores[l._sday]||!l._timed){var f=this.locate_holder_day(u,!0,l)||r; - -l._eday=f%r||r,l._length=f-g,l._sweek=Math.floor((this._correct_shift(c.valueOf(),1)-this._min_date.valueOf())/(864e5*r));var v,m=a[l._sweek];for(v=0;v<m.length&&!(m[v]._eday<=l._sday);v++);if(l._sorder&&t||(l._sorder=v),l._sday+l._length<=r)i=null,s.push(l),m[v]=l,n[l._sweek]=m.length-1,l._first_chunk=_.first_chunk,l._last_chunk=_.last_chunk;else{var p=this._copy_event(l);p.id=l.id,p._length=r-l._sday,p._eday=r,p._sday=l._sday,p._sweek=l._sweek,p._sorder=l._sorder,p.end_date=this.date.add(c,p._length,"day"), -p._first_chunk=_.first_chunk,_.first_chunk&&(_.first_chunk=!1),s.push(p),m[v]=p,i=p.end_date,n[l._sweek]=m.length-1,o--}}}return s},scheduler._copy_dummy=function(){var e=new Date(this.start_date),t=new Date(this.end_date);this.start_date=e,this.end_date=t},scheduler._copy_event=function(e){return this._copy_dummy.prototype=e,new this._copy_dummy},scheduler._rendered=[],scheduler.clear_view=function(){for(var e=0;e<this._rendered.length;e++){var t=this._rendered[e];t.parentNode&&t.parentNode.removeChild(t); - -}this._rendered=[]},scheduler.updateEvent=function(e){var t=this.getEvent(e);this.clear_event(e),t&&this.is_visible_events(t)&&this.filter_event(e,t)&&(this._table_view||this.config.multi_day||t._timed)&&(this.config.update_render?this.render_view_data():"month"!=this.getState().mode||this.getState().drag_id||this.isOneDayEvent(t)?this.render_view_data([t],!0):this.render_view_data())},scheduler.clear_event=function(e){this.for_rendered(e,function(e,t){e.parentNode&&e.parentNode.removeChild(e),scheduler._rendered.splice(t,1); - -})},scheduler._y_from_date=function(e){var t=60*e.getHours()+e.getMinutes();return Math.round((60*t*1e3-60*this.config.first_hour*60*1e3)*this.config.hour_size_px/36e5)%(24*this.config.hour_size_px)},scheduler._calc_event_y=function(e,t){t=t||0;var i=60*e.start_date.getHours()+e.start_date.getMinutes(),s=60*e.end_date.getHours()+e.end_date.getMinutes()||60*scheduler.config.last_hour,a=this._y_from_date(e.start_date),n=Math.max(t,(s-i)*this.config.hour_size_px/60);return{top:a,height:n}},scheduler.render_event=function(e){ -var t=scheduler.xy.menu_width,i=this.config.use_select_menu_space?0:t;if(!(e._sday<0)){var s=scheduler.locate_holder(e._sday);if(s){var a=this._calc_event_y(e,scheduler.xy.min_event_height),n=a.top,r=a.height,d=e._count||1,o=e._sorder||0,l=Math.floor((s.clientWidth-i)/d),h=o*l+1;if(e._inner||(l*=d-o),this.config.cascade_event_display){var _=this.config.cascade_event_count,c=this.config.cascade_event_margin;h=o%_*c;var u=e._inner?(d-o-1)%_*c/2:0;l=Math.floor(s.clientWidth-i-h-u)}var g=this._render_v_bar(e,i+h,n,l,r,e._text_style,scheduler.templates.event_header(e.start_date,e.end_date,e),scheduler.templates.event_text(e.start_date,e.end_date,e)); - -if(this._rendered.push(g),s.appendChild(g),h=h+parseInt(s.style.left,10)+i,this._edit_id==e.id){g.style.zIndex=1,l=Math.max(l-4,scheduler.xy.editor_width),g=document.createElement("DIV"),g.setAttribute("event_id",e.id),this.set_xy(g,l,r-20,h,n+14),g.className="dhx_cal_event dhx_cal_editor";var f=scheduler.templates.event_class(e.start_date,e.end_date,e);f&&(g.className+=" "+f);var v=document.createElement("DIV");this.set_xy(v,l-6,r-26),v.style.cssText+=";margin:2px 2px 2px 2px;overflow:hidden;",g.appendChild(v), -this._els.dhx_cal_data[0].appendChild(g),this._rendered.push(g),v.innerHTML="<textarea class='dhx_cal_editor'>"+e.text+"</textarea>",this._quirks7&&(v.firstChild.style.height=r-12+"px"),this._editor=v.firstChild,this._editor.onkeydown=function(e){if((e||event).shiftKey)return!0;var t=(e||event).keyCode;t==scheduler.keys.edit_save&&scheduler.editStop(!0),t==scheduler.keys.edit_cancel&&scheduler.editStop(!1)},this._editor.onselectstart=function(e){return(e||event).cancelBubble=!0,!0},scheduler._focus(v.firstChild,!0), -this._els.dhx_cal_data[0].scrollLeft=0}if(0!==this.xy.menu_width&&this._select_id==e.id){this.config.cascade_event_display&&this._drag_mode&&(g.style.zIndex=1);for(var m=this.config["icons_"+(this._edit_id==e.id?"edit":"select")],p="",x=e.color?"background-color: "+e.color+";":"",b=e.textColor?"color: "+e.textColor+";":"",y=0;y<m.length;y++)p+="<div class='dhx_menu_icon "+m[y]+"' style='"+x+b+"' title='"+this.locale.labels[m[y]]+"'></div>";var w=this._render_v_bar(e,h-t+1,n,t,20*m.length+26-2,"","<div style='"+x+b+"' class='dhx_menu_head'></div>",p,!0); - -w.style.left=h-t+1,this._els.dhx_cal_data[0].appendChild(w),this._rendered.push(w)}this.config.drag_highlight&&this._drag_id==e.id&&this.highlightEventPosition(e)}}},scheduler._render_v_bar=function(e,t,i,s,a,n,r,d,o){var l=document.createElement("DIV"),h=e.id,_=o?"dhx_cal_event dhx_cal_select_menu":"dhx_cal_event",c=scheduler.templates.event_class(e.start_date,e.end_date,e);c&&(_=_+" "+c);var u=e.color?"background:"+e.color+";":"",g=e.textColor?"color:"+e.textColor+";":"",f='<div event_id="'+h+'" class="'+_+'" style="position:absolute; top:'+i+"px; left:"+t+"px; width:"+(s-4)+"px; height:"+a+"px;"+(n||"")+'"></div>'; - -l.innerHTML=f;var v=l.cloneNode(!0).firstChild;if(!o&&scheduler.renderEvent(v,e,s,a,r,d))return v;v=l.firstChild;var m='<div class="dhx_event_move dhx_header" style=" width:'+(s-6)+"px;"+u+'" > </div>';m+='<div class="dhx_event_move dhx_title" style="'+u+g+'">'+r+"</div>",m+='<div class="dhx_body" style=" width:'+(s-(this._quirks?4:14))+"px; height:"+(a-(this._quirks?20:30)+1)+"px;"+u+g+'">'+d+"</div>";var p="dhx_event_resize dhx_footer";return o&&(p="dhx_resize_denied "+p),m+='<div class="'+p+'" style=" width:'+(s-8)+"px;"+(o?" margin-top:-1px;":"")+u+g+'" ></div>', -v.innerHTML=m,v},scheduler.renderEvent=function(){return!1},scheduler.locate_holder=function(e){return"day"==this._mode?this._els.dhx_cal_data[0].firstChild:this._els.dhx_cal_data[0].childNodes[e]},scheduler.locate_holder_day=function(e,t){var i=Math.floor((this._correct_shift(e,1)-this._min_date)/864e5);return t&&this.date.time_part(e)&&i++,i},scheduler._get_dnd_order=function(e,t,i){if(!this._drag_event)return e;this._drag_event._orig_sorder?e=this._drag_event._orig_sorder:this._drag_event._orig_sorder=e; - -for(var s=t*e;s+t>i;)e--,s-=t;return e=Math.max(e,0)},scheduler._get_event_bar_pos=function(e){var t=this._colsS[e._sday],i=this._colsS[e._eday];i==t&&(i=this._colsS[e._eday+1]);var s=this.xy.bar_height,a=e._sorder;if(e.id==this._drag_id){var n=this._colsS.heights[e._sweek+1]-this._colsS.heights[e._sweek]-this.xy.month_head_height;a=scheduler._get_dnd_order(a,s,n)}var r=a*s,d=this._colsS.heights[e._sweek]+(this._colsS.height?this.xy.month_scale_height+2:2)+r;return{x:t,x2:i,y:d}},scheduler.render_event_bar=function(e){ -var t=this._rendered_location,i=this._get_event_bar_pos(e),s=i.y,a=i.x,n=i.x2,r="";if(n){var d=scheduler.config.resize_month_events&&"month"==this._mode&&(!e._timed||scheduler.config.resize_month_timed),o=document.createElement("DIV"),l=e.hasOwnProperty("_first_chunk")&&e._first_chunk,h=e.hasOwnProperty("_last_chunk")&&e._last_chunk,_=d&&(e._timed||l),c=d&&(e._timed||h),u="dhx_cal_event_clear";(!e._timed||d)&&(u="dhx_cal_event_line"),l&&(u+=" dhx_cal_event_line_start"),h&&(u+=" dhx_cal_event_line_end"), -_&&(r+="<div class='dhx_event_resize dhx_event_resize_start'></div>"),c&&(r+="<div class='dhx_event_resize dhx_event_resize_end'></div>");var g=scheduler.templates.event_class(e.start_date,e.end_date,e);g&&(u+=" "+g);var f=e.color?"background:"+e.color+";":"",v=e.textColor?"color:"+e.textColor+";":"",m=["position:absolute","top:"+s+"px","left:"+a+"px","width:"+(n-a-15)+"px",v,f,e._text_style||""].join(";"),p='<div event_id="'+e.id+'" class="'+u+'" style="'+m+'">';d&&(p+=r),"month"==scheduler.getState().mode&&(e=scheduler.getEvent(e.id)), -e._timed&&(p+=scheduler.templates.event_bar_date(e.start_date,e.end_date,e)),p+=scheduler.templates.event_bar_text(e.start_date,e.end_date,e)+"</div>",p+="</div>",o.innerHTML=p,this._rendered.push(o.firstChild),t.appendChild(o.firstChild)}},scheduler._locate_event=function(e){for(var t=null;e&&!t&&e.getAttribute;)t=e.getAttribute("event_id"),e=e.parentNode;return t},scheduler.edit=function(e){this._edit_id!=e&&(this.editStop(!1,e),this._edit_id=e,this.updateEvent(e))},scheduler.editStop=function(e,t){ -if(!t||this._edit_id!=t){var i=this.getEvent(this._edit_id);i&&(e&&(i.text=this._editor.value),this._edit_id=null,this._editor=null,this.updateEvent(i.id),this._edit_stop_event(i,e))}},scheduler._edit_stop_event=function(e,t){this._new_event?(t?this.callEvent("onEventAdded",[e.id,e]):e&&this.deleteEvent(e.id,!0),this._new_event=null):t&&this.callEvent("onEventChanged",[e.id,e])},scheduler.getEvents=function(e,t){var i=[];for(var s in this._events){var a=this._events[s];a&&(!e&&!t||a.start_date<t&&a.end_date>e)&&i.push(a); - -}return i},scheduler.getRenderedEvent=function(e){if(e){for(var t=scheduler._rendered,i=0;i<t.length;i++){var s=t[i];if(s.getAttribute("event_id")==e)return s}return null}},scheduler.showEvent=function(e,t){var i="number"==typeof e||"string"==typeof e?scheduler.getEvent(e):e;if(t=t||scheduler._mode,i&&(!this.checkEvent("onBeforeEventDisplay")||this.callEvent("onBeforeEventDisplay",[i,t]))){var s=scheduler.config.scroll_hour;scheduler.config.scroll_hour=i.start_date.getHours();var a=scheduler.config.preserve_scroll; - -scheduler.config.preserve_scroll=!1;var n=i.color,r=i.textColor;scheduler.config.highlight_displayed_event&&(i.color=scheduler.config.displayed_event_color,i.textColor=scheduler.config.displayed_event_text_color),scheduler.setCurrentView(new Date(i.start_date),t),i.color=n,i.textColor=r,scheduler.config.scroll_hour=s,scheduler.config.preserve_scroll=a,scheduler.matrix&&scheduler.matrix[t]&&(scheduler._els.dhx_cal_data[0].scrollTop=getAbsoluteTop(scheduler.getRenderedEvent(i.id))-getAbsoluteTop(scheduler._els.dhx_cal_data[0])-20), -scheduler.callEvent("onAfterEventDisplay",[i,t])}},scheduler._append_drag_marker=function(e){if(!e.parentNode){var t=scheduler._els.dhx_cal_data[0],i=t.lastChild;i.className&&i.className.indexOf("dhx_scale_holder")<0&&i.previousSibling&&(i=i.previousSibling),i&&0===i.className.indexOf("dhx_scale_holder")&&i.appendChild(e)}},scheduler._update_marker_position=function(e,t){var i=scheduler._calc_event_y(t,0);e.style.top=i.top+"px",e.style.height=i.height+"px"},scheduler.highlightEventPosition=function(e){ -var t=document.createElement("div");t.setAttribute("event_id",e.id),this._rendered.push(t),this._update_marker_position(t,e);var i=this.templates.drag_marker_class(e.start_date,e.end_date,e),s=this.templates.drag_marker_content(e.start_date,e.end_date,e);t.className="dhx_drag_marker",i&&(t.className+=" "+i),s&&(t.innerHTML=s),this._append_drag_marker(t)},scheduler._loaded={},scheduler._load=function(e,t){if(e=e||this._load_url){e+=(-1==e.indexOf("?")?"?":"&")+"timeshift="+(new Date).getTimezoneOffset(), -this.config.prevent_cache&&(e+="&uid="+this.uid());var i;if(t=t||this._date,this._load_mode){var s=this.templates.load_format;for(t=this.date[this._load_mode+"_start"](new Date(t.valueOf()));t>this._min_date;)t=this.date.add(t,-1,this._load_mode);i=t;for(var a=!0;i<this._max_date;)i=this.date.add(i,1,this._load_mode),this._loaded[s(t)]&&a?t=this.date.add(t,1,this._load_mode):a=!1;var n=i;do i=n,n=this.date.add(i,-1,this._load_mode);while(n>t&&this._loaded[s(n)]);if(t>=i)return!1;for(dhtmlxAjax.get(e+"&from="+s(t)+"&to="+s(i),function(e){ -scheduler.on_load(e)});i>t;)this._loaded[s(t)]=!0,t=this.date.add(t,1,this._load_mode)}else dhtmlxAjax.get(e,function(e){scheduler.on_load(e)});return this.callEvent("onXLS",[]),!0}},scheduler.on_load=function(e){var t,i=!1;if(this._process&&"xml"!=this._process)try{t=this[this._process].parse(e.xmlDoc.responseText)}catch(s){i=!0}else t=this._magic_parser(e),t||(i=!0);i&&(this.callEvent("onLoadError",[e.xmlDoc]),t=[]),scheduler._process_loading(t),this.callEvent("onXLE",[])},scheduler._process_loading=function(e){ -this._loading=!0,this._not_render=!0;for(var t=0;t<e.length;t++)this.callEvent("onEventLoading",[e[t]])&&this.addEvent(e[t]);this._not_render=!1,this._render_wait&&this.render_view_data(),this._loading=!1,this._after_call&&this._after_call(),this._after_call=null},scheduler._init_event=function(e){e.text=e.text||e._tagvalue||"",e.start_date=scheduler._init_date(e.start_date),e.end_date=scheduler._init_date(e.end_date)},scheduler._init_date=function(e){return e?"string"==typeof e?scheduler.templates.xml_date(e):new Date(e):null; - -},scheduler.json={},scheduler.json.parse=function(data){"string"==typeof data&&(scheduler._temp=eval("("+data+")"),data=scheduler._temp?scheduler._temp.data||scheduler._temp.d||scheduler._temp:[]),data.dhx_security&&(dhtmlx.security_key=data.dhx_security);var collections=scheduler._temp&&scheduler._temp.collections?scheduler._temp.collections:{},collections_loaded=!1;for(var key in collections)if(collections.hasOwnProperty(key)){collections_loaded=!0;var collection=collections[key],arr=scheduler.serverList[key]; - -if(!arr)continue;arr.splice(0,arr.length);for(var j=0;j<collection.length;j++){var option=collection[j],obj={key:option.value,label:option.label};for(var option_key in option)if(option.hasOwnProperty(option_key)){if("value"==option_key||"label"==option_key)continue;obj[option_key]=option[option_key]}arr.push(obj)}}collections_loaded&&scheduler.callEvent("onOptionsLoad",[]);for(var evs=[],i=0;i<data.length;i++){var event=data[i];scheduler._init_event(event),evs.push(event)}return evs},scheduler.parse=function(e,t){ -this._process=t,this.on_load({xmlDoc:{responseText:e}})},scheduler.load=function(e,t){"string"==typeof t&&(this._process=t,t=arguments[2]),this._load_url=e,this._after_call=t,this._load(e,this._date)},scheduler.setLoadMode=function(e){"all"==e&&(e=""),this._load_mode=e},scheduler.serverList=function(e,t){return t?(this.serverList[e]=t.slice(0),this.serverList[e]):(this.serverList[e]=this.serverList[e]||[],this.serverList[e])},scheduler._userdata={},scheduler._magic_parser=function(e){var t;if(!e.getXMLTopNode){ -var i=e.xmlDoc.responseText;e=new dtmlXMLLoaderObject(function(){}),e.loadXMLString(i)}if(t=e.getXMLTopNode("data"),"data"!=t.tagName)return null;var s=t.getAttribute("dhx_security");s&&(dhtmlx.security_key=s);for(var a=e.doXPath("//coll_options"),n=0;n<a.length;n++){var r=a[n].getAttribute("for"),d=this.serverList[r];if(d){d.splice(0,d.length);for(var o=e.doXPath(".//item",a[n]),l=0;l<o.length;l++){for(var h=o[l],_=h.attributes,c={key:o[l].getAttribute("value"),label:o[l].getAttribute("label")},u=0;u<_.length;u++){ -var g=_[u];"value"!=g.nodeName&&"label"!=g.nodeName&&(c[g.nodeName]=g.nodeValue)}d.push(c)}}}a.length&&scheduler.callEvent("onOptionsLoad",[]);for(var f=e.doXPath("//userdata"),n=0;n<f.length;n++){var v=this._xmlNodeToJSON(f[n]);this._userdata[v.name]=v.text}var m=[];t=e.doXPath("//event");for(var n=0;n<t.length;n++){var p=m[n]=this._xmlNodeToJSON(t[n]);scheduler._init_event(p)}return m},scheduler._xmlNodeToJSON=function(e){for(var t={},i=0;i<e.attributes.length;i++)t[e.attributes[i].name]=e.attributes[i].value; - -for(var i=0;i<e.childNodes.length;i++){var s=e.childNodes[i];1==s.nodeType&&(t[s.tagName]=s.firstChild?s.firstChild.nodeValue:"")}return t.text||(t.text=e.firstChild?e.firstChild.nodeValue:""),t},scheduler.attachEvent("onXLS",function(){if(this.config.show_loading===!0){var e;e=this.config.show_loading=document.createElement("DIV"),e.className="dhx_loading",e.style.left=Math.round((this._x-128)/2)+"px",e.style.top=Math.round((this._y-15)/2)+"px",this._obj.appendChild(e)}}),scheduler.attachEvent("onXLE",function(){ -var e=this.config.show_loading;e&&"object"==typeof e&&(this._obj.removeChild(e),this.config.show_loading=!0)}),scheduler.ical={parse:function(e){var t=e.match(RegExp(this.c_start+"[^\f]*"+this.c_end,""));if(t.length){t[0]=t[0].replace(/[\r\n]+(?=[a-z \t])/g," "),t[0]=t[0].replace(/\;[^:\r\n]*:/g,":");for(var i,s=[],a=RegExp("(?:"+this.e_start+")([^\f]*?)(?:"+this.e_end+")","g");null!==(i=a.exec(t));){for(var n,r={},d=/[^\r\n]+[\r\n]+/g;null!==(n=d.exec(i[1]));)this.parse_param(n.toString(),r);r.uid&&!r.id&&(r.id=r.uid), -s.push(r)}return s}},parse_param:function(e,t){var i=e.indexOf(":");if(-1!=i){var s=e.substr(0,i).toLowerCase(),a=e.substr(i+1).replace(/\\\,/g,",").replace(/[\r\n]+$/,"");"summary"==s?s="text":"dtstart"==s?(s="start_date",a=this.parse_date(a,0,0)):"dtend"==s&&(s="end_date",a=this.parse_date(a,0,0)),t[s]=a}},parse_date:function(e,t,i){var s=e.split("T");s[1]&&(t=s[1].substr(0,2),i=s[1].substr(2,2));var a=s[0].substr(0,4),n=parseInt(s[0].substr(4,2),10)-1,r=s[0].substr(6,2);return scheduler.config.server_utc&&!s[1]?new Date(Date.UTC(a,n,r,t,i)):new Date(a,n,r,t,i); - -},c_start:"BEGIN:VCALENDAR",e_start:"BEGIN:VEVENT",e_end:"END:VEVENT",c_end:"END:VCALENDAR"},scheduler._lightbox_controls={},scheduler.formSection=function(e){var t=this.config.lightbox.sections,i=0;for(i;i<t.length&&t[i].name!=e;i++);var s=t[i];scheduler._lightbox||scheduler.getLightbox();var a=document.getElementById(s.id),n=a.nextSibling,r={section:s,header:a,node:n,getValue:function(e){return scheduler.form_blocks[s.type].get_value(n,e||{},s)},setValue:function(e,t){return scheduler.form_blocks[s.type].set_value(n,e,t||{},s); - -}},d=scheduler._lightbox_controls["get_"+s.type+"_control"];return d?d(r):r},scheduler._lightbox_controls.get_template_control=function(e){return e.control=e.node,e},scheduler._lightbox_controls.get_select_control=function(e){return e.control=e.node.getElementsByTagName("select")[0],e},scheduler._lightbox_controls.get_textarea_control=function(e){return e.control=e.node.getElementsByTagName("textarea")[0],e},scheduler._lightbox_controls.get_time_control=function(e){return e.control=e.node.getElementsByTagName("select"), -e},scheduler.form_blocks={template:{render:function(e){var t=(e.height||"30")+"px";return"<div class='dhx_cal_ltext dhx_cal_template' style='height:"+t+";'></div>"},set_value:function(e,t,i,s){e.innerHTML=t||""},get_value:function(e,t,i){return e.innerHTML||""},focus:function(e){}},textarea:{render:function(e){var t=(e.height||"130")+"px";return"<div class='dhx_cal_ltext' style='height:"+t+";'><textarea></textarea></div>"},set_value:function(e,t,i){e.firstChild.value=t||""},get_value:function(e,t){ -return e.firstChild.value},focus:function(e){var t=e.firstChild;scheduler._focus(t,!0)}},select:{render:function(e){for(var t=(e.height||"23")+"px",i="<div class='dhx_cal_ltext' style='height:"+t+";'><select style='width:100%;'>",s=0;s<e.options.length;s++)i+="<option value='"+e.options[s].key+"'>"+e.options[s].label+"</option>";return i+="</select></div>"},set_value:function(e,t,i,s){var a=e.firstChild;!a._dhx_onchange&&s.onchange&&(a.onchange=s.onchange,a._dhx_onchange=!0),"undefined"==typeof t&&(t=(a.options[0]||{}).value), -a.value=t||""},get_value:function(e,t){return e.firstChild.value},focus:function(e){var t=e.firstChild;scheduler._focus(t,!0)}},time:{render:function(e){e.time_format||(e.time_format=["%H:%i","%d","%m","%Y"]),e._time_format_order={};var t=e.time_format,i=scheduler.config,s=this.date.date_part(scheduler._currentDate()),a=1440,n=0;scheduler.config.limit_time_select&&(a=60*i.last_hour+1,n=60*i.first_hour,s.setHours(i.first_hour));for(var r="",d=0;d<t.length;d++){var o=t[d];switch(d>0&&(r+=" "),o){case"%Y": -e._time_format_order[3]=d,r+="<select>";for(var l=s.getFullYear()-5,h=0;10>h;h++)r+="<option value='"+(l+h)+"'>"+(l+h)+"</option>";r+="</select> ";break;case"%m":e._time_format_order[2]=d,r+="<select>";for(var h=0;12>h;h++)r+="<option value='"+h+"'>"+this.locale.date.month_full[h]+"</option>";r+="</select>";break;case"%d":e._time_format_order[1]=d,r+="<select>";for(var h=1;32>h;h++)r+="<option value='"+h+"'>"+h+"</option>";r+="</select>";break;case"%H:%i":e._time_format_order[0]=d,r+="<select>";var h=n,_=s.getDate(); - -for(e._time_values=[];a>h;){var c=this.templates.time_picker(s);r+="<option value='"+h+"'>"+c+"</option>",e._time_values.push(h),s.setTime(s.valueOf()+60*this.config.time_step*1e3);var u=s.getDate()!=_?1:0;h=24*u*60+60*s.getHours()+s.getMinutes()}r+="</select>"}}return"<div style='height:30px;padding-top:0px;font-size:inherit;' class='dhx_section_time'>"+r+"<span style='font-weight:normal; font-size:10pt;'> – </span>"+r+"</div>"},set_value:function(e,t,i,s){function a(e,t,i){for(var a=s._time_values,n=60*i.getHours()+i.getMinutes(),r=n,d=!1,o=0;o<a.length;o++){ -var h=a[o];if(h===n){d=!0;break}n>h&&(r=h)}e[t+l[0]].value=d?n:r,d||r||(e[t+l[0]].selectedIndex=-1),e[t+l[1]].value=i.getDate(),e[t+l[2]].value=i.getMonth(),e[t+l[3]].value=i.getFullYear()}var n,r,d=scheduler.config,o=e.getElementsByTagName("select"),l=s._time_format_order;if(d.full_day){if(!e._full_day){var h="<label class='dhx_fullday'><input type='checkbox' name='full_day' value='true'> "+scheduler.locale.labels.full_day+" </label></input>";scheduler.config.wide_form||(h=e.previousSibling.innerHTML+h), -e.previousSibling.innerHTML=h,e._full_day=!0}var _=e.previousSibling.getElementsByTagName("input")[0];_.checked=0===scheduler.date.time_part(i.start_date)&&0===scheduler.date.time_part(i.end_date),o[l[0]].disabled=_.checked,o[l[0]+o.length/2].disabled=_.checked,_.onclick=function(){if(_.checked){var t={};scheduler.form_blocks.time.get_value(e,t,s),n=scheduler.date.date_part(t.start_date),r=scheduler.date.date_part(t.end_date),(+r==+n||+r>=+n&&(0!==i.end_date.getHours()||0!==i.end_date.getMinutes()))&&(r=scheduler.date.add(r,1,"day")); - -}else n=null,r=null;o[l[0]].disabled=_.checked,o[l[0]+o.length/2].disabled=_.checked,a(o,0,n||i.start_date),a(o,4,r||i.end_date)}}if(d.auto_end_date&&d.event_duration)for(var c=function(){n=new Date(o[l[3]].value,o[l[2]].value,o[l[1]].value,0,o[l[0]].value),r=new Date(n.getTime()+60*scheduler.config.event_duration*1e3),a(o,4,r)},u=0;4>u;u++)o[u].onchange=c;a(o,0,i.start_date),a(o,4,i.end_date)},get_value:function(e,t,i){var s=e.getElementsByTagName("select"),a=i._time_format_order;if(t.start_date=new Date(s[a[3]].value,s[a[2]].value,s[a[1]].value,0,s[a[0]].value), -t.end_date=new Date(s[a[3]+4].value,s[a[2]+4].value,s[a[1]+4].value,0,s[a[0]+4].value),!s[a[3]].value||!s[a[3]+4].value){var n=this.getEvent(this._lightbox_id);n&&(t.start_date=n.start_date,t.end_date=n.end_date)}return t.end_date<=t.start_date&&(t.end_date=scheduler.date.add(t.start_date,scheduler.config.time_step,"minute")),{start_date:new Date(t.start_date),end_date:new Date(t.end_date)}},focus:function(e){scheduler._focus(e.getElementsByTagName("select")[0])}}},scheduler.showCover=function(e){ -if(e){e.style.display="block";var t=window.pageYOffset||document.body.scrollTop||document.documentElement.scrollTop,i=window.pageXOffset||document.body.scrollLeft||document.documentElement.scrollLeft,s=window.innerHeight||document.documentElement.clientHeight;t?e.style.top=Math.round(t+Math.max((s-e.offsetHeight)/2,0))+"px":e.style.top=Math.round(Math.max((s-e.offsetHeight)/2,0)+9)+"px",document.documentElement.scrollWidth>document.body.offsetWidth?e.style.left=Math.round(i+(document.body.offsetWidth-e.offsetWidth)/2)+"px":e.style.left=Math.round((document.body.offsetWidth-e.offsetWidth)/2)+"px"; - -}this.show_cover()},scheduler.showLightbox=function(e){if(e){if(!this.callEvent("onBeforeLightbox",[e]))return void(this._new_event&&(this._new_event=null));var t=this.getLightbox();this.showCover(t),this._fill_lightbox(e,t),this.callEvent("onLightbox",[e])}},scheduler._fill_lightbox=function(e,t){var i=this.getEvent(e),s=t.getElementsByTagName("span");scheduler.templates.lightbox_header?(s[1].innerHTML="",s[2].innerHTML=scheduler.templates.lightbox_header(i.start_date,i.end_date,i)):(s[1].innerHTML=this.templates.event_header(i.start_date,i.end_date,i), -s[2].innerHTML=(this.templates.event_bar_text(i.start_date,i.end_date,i)||"").substr(0,70));for(var a=this.config.lightbox.sections,n=0;n<a.length;n++){var r=a[n],d=document.getElementById(r.id).nextSibling,o=this.form_blocks[r.type],l=void 0!==i[r.map_to]?i[r.map_to]:r.default_value;o.set_value.call(this,d,l,i,r),a[n].focus&&o.focus.call(this,d)}scheduler._lightbox_id=e},scheduler._lightbox_out=function(e){for(var t=this.config.lightbox.sections,i=0;i<t.length;i++){var s=document.getElementById(t[i].id); - -s=s?s.nextSibling:s;var a=this.form_blocks[t[i].type],n=a.get_value.call(this,s,e,t[i]);"auto"!=t[i].map_to&&(e[t[i].map_to]=n)}return e},scheduler._empty_lightbox=function(e){{var t=scheduler._lightbox_id,i=this.getEvent(t);this.getLightbox()}this._lame_copy(i,e),this.setEvent(i.id,i),this._edit_stop_event(i,!0),this.render_view_data()},scheduler.hide_lightbox=function(e){this.hideCover(this.getLightbox()),this._lightbox_id=null,this.callEvent("onAfterLightbox",[])},scheduler.hideCover=function(e){ -e&&(e.style.display="none"),this.hide_cover()},scheduler.hide_cover=function(){this._cover&&this._cover.parentNode.removeChild(this._cover),this._cover=null},scheduler.show_cover=function(){if(!this._cover){this._cover=document.createElement("DIV"),this._cover.className="dhx_cal_cover";var e=void 0!==document.height?document.height:document.body.offsetHeight,t=document.documentElement?document.documentElement.scrollHeight:0;this._cover.style.height=Math.max(e,t)+"px",document.body.appendChild(this._cover); - -}},scheduler.save_lightbox=function(){var e=this._lightbox_out({},this._lame_copy(this.getEvent(this._lightbox_id)));(!this.checkEvent("onEventSave")||this.callEvent("onEventSave",[this._lightbox_id,e,this._new_event]))&&(this._empty_lightbox(e),this.hide_lightbox())},scheduler.startLightbox=function(e,t){this._lightbox_id=e,this._custom_lightbox=!0,this._temp_lightbox=this._lightbox,this._lightbox=t,this.showCover(t)},scheduler.endLightbox=function(e,t){this._edit_stop_event(scheduler.getEvent(this._lightbox_id),e), -e&&scheduler.render_view_data(),this.hideCover(t),this._custom_lightbox&&(this._lightbox=this._temp_lightbox,this._custom_lightbox=!1),this._temp_lightbox=this._lightbox_id=null},scheduler.resetLightbox=function(){scheduler._lightbox&&!scheduler._custom_lightbox&&scheduler._lightbox.parentNode.removeChild(scheduler._lightbox),scheduler._lightbox=null},scheduler.cancel_lightbox=function(){this.callEvent("onEventCancel",[this._lightbox_id,this._new_event]),this.endLightbox(!1),this.hide_lightbox()}, -scheduler._init_lightbox_events=function(){this.getLightbox().onclick=function(e){var t=e?e.target:event.srcElement;if(t.className||(t=t.previousSibling),t&&t.className)switch(t.className){case"dhx_save_btn":scheduler.save_lightbox();break;case"dhx_delete_btn":var i=scheduler.locale.labels.confirm_deleting;scheduler._dhtmlx_confirm(i,scheduler.locale.labels.title_confirm_deleting,function(){scheduler.deleteEvent(scheduler._lightbox_id),scheduler._new_event=null,scheduler.hide_lightbox()});break;case"dhx_cancel_btn": -scheduler.cancel_lightbox();break;default:if(t.getAttribute("dhx_button"))scheduler.callEvent("onLightboxButton",[t.className,t,e]);else{var s,a,n;-1!=t.className.indexOf("dhx_custom_button")&&(-1!=t.className.indexOf("dhx_custom_button_")?(s=t.parentNode.getAttribute("index"),n=t.parentNode.parentNode):(s=t.getAttribute("index"),n=t.parentNode,t=t.firstChild)),s&&(a=scheduler.form_blocks[scheduler.config.lightbox.sections[s].type],a.button_click(s,t,n,n.nextSibling))}}},this.getLightbox().onkeydown=function(e){ -switch((e||event).keyCode){case scheduler.keys.edit_save:if((e||event).shiftKey)return;scheduler.save_lightbox();break;case scheduler.keys.edit_cancel:scheduler.cancel_lightbox()}}},scheduler.setLightboxSize=function(){var e=this._lightbox;if(e){var t=e.childNodes[1];t.style.height="0px",t.style.height=t.scrollHeight+"px",e.style.height=t.scrollHeight+scheduler.xy.lightbox_additional_height+"px",t.style.height=t.scrollHeight+"px"}},scheduler._init_dnd_events=function(){dhtmlxEvent(document.body,"mousemove",scheduler._move_while_dnd), -dhtmlxEvent(document.body,"mouseup",scheduler._finish_dnd),scheduler._init_dnd_events=function(){}},scheduler._move_while_dnd=function(e){if(scheduler._dnd_start_lb){document.dhx_unselectable||(document.body.className+=" dhx_unselectable",document.dhx_unselectable=!0);var t=scheduler.getLightbox(),i=e&&e.target?[e.pageX,e.pageY]:[event.clientX,event.clientY];t.style.top=scheduler._lb_start[1]+i[1]-scheduler._dnd_start_lb[1]+"px",t.style.left=scheduler._lb_start[0]+i[0]-scheduler._dnd_start_lb[0]+"px"; - -}},scheduler._ready_to_dnd=function(e){var t=scheduler.getLightbox();scheduler._lb_start=[parseInt(t.style.left,10),parseInt(t.style.top,10)],scheduler._dnd_start_lb=e&&e.target?[e.pageX,e.pageY]:[event.clientX,event.clientY]},scheduler._finish_dnd=function(){scheduler._lb_start&&(scheduler._lb_start=scheduler._dnd_start_lb=!1,document.body.className=document.body.className.replace(" dhx_unselectable",""),document.dhx_unselectable=!1)},scheduler.getLightbox=function(){if(!this._lightbox){var e=document.createElement("DIV"); - -e.className="dhx_cal_light",scheduler.config.wide_form&&(e.className+=" dhx_cal_light_wide"),scheduler.form_blocks.recurring&&(e.className+=" dhx_cal_light_rec"),/msie|MSIE 6/.test(navigator.userAgent)&&(e.className+=" dhx_ie6"),e.style.visibility="hidden";for(var t=this._lightbox_template,i=this.config.buttons_left,s=0;s<i.length;s++)t+="<div class='dhx_btn_set dhx_left_btn_set "+i[s]+"_set'><div dhx_button='1' class='"+i[s]+"'></div><div>"+scheduler.locale.labels[i[s]]+"</div></div>";i=this.config.buttons_right; - -for(var s=0;s<i.length;s++)t+="<div class='dhx_btn_set dhx_right_btn_set "+i[s]+"_set' style='float:right;'><div dhx_button='1' class='"+i[s]+"'></div><div>"+scheduler.locale.labels[i[s]]+"</div></div>";t+="</div>",e.innerHTML=t,scheduler.config.drag_lightbox&&(e.firstChild.onmousedown=scheduler._ready_to_dnd,e.firstChild.onselectstart=function(){return!1},e.firstChild.style.cursor="pointer",scheduler._init_dnd_events()),document.body.insertBefore(e,document.body.firstChild),this._lightbox=e;var a=this.config.lightbox.sections; - -t="";for(var s=0;s<a.length;s++){var n=this.form_blocks[a[s].type];if(n){a[s].id="area_"+this.uid();var r="";a[s].button&&(r="<div class='dhx_custom_button' index='"+s+"'><div class='dhx_custom_button_"+a[s].button+"'></div><div>"+this.locale.labels["button_"+a[s].button]+"</div></div>"),this.config.wide_form&&(t+="<div class='dhx_wrap_section'>");var d=this.locale.labels["section_"+a[s].name];"string"!=typeof d&&(d=a[s].name),t+="<div id='"+a[s].id+"' class='dhx_cal_lsection'>"+r+d+"</div>"+n.render.call(this,a[s]), -t+="</div>"}}for(var o=e.getElementsByTagName("div"),s=0;s<o.length;s++){var l=o[s];if("dhx_cal_larea"==l.className){l.innerHTML=t;break}}this.setLightboxSize(),this._init_lightbox_events(this),e.style.display="none",e.style.visibility="visible"}return this._lightbox},scheduler.attachEvent("onEventIdChange",function(e,t){this._lightbox_id==e&&(this._lightbox_id=t)}),scheduler._lightbox_template="<div class='dhx_cal_ltitle'><span class='dhx_mark'> </span><span class='dhx_time'></span><span class='dhx_title'></span></div><div class='dhx_cal_larea'></div>", -scheduler._init_touch_events=function(){"force"!=this.config.touch&&(this.config.touch=this.config.touch&&(-1!=navigator.userAgent.indexOf("Mobile")||-1!=navigator.userAgent.indexOf("iPad")||-1!=navigator.userAgent.indexOf("Android")||-1!=navigator.userAgent.indexOf("Touch"))),this.config.touch&&(this.xy.scroll_width=0,window.navigator.msPointerEnabled?(this._touch_events(["MSPointerMove","MSPointerDown","MSPointerUp"],function(e){return e.pointerType==e.MSPOINTER_TYPE_MOUSE?null:e},function(e){return!e||e.pointerType==e.MSPOINTER_TYPE_MOUSE; - -}),this._obj.ondblclick=function(){}):this._touch_events(["touchmove","touchstart","touchend"],function(e){return e.touches&&e.touches.length>1?null:e.touches[0]?{target:e.target,pageX:e.touches[0].pageX,pageY:e.touches[0].pageY}:e},function(){return!1}))},scheduler._touch_events=function(e,t,i){function s(e,t,i){dhtmlxEvent(e,t,function(e){return scheduler._is_lightbox_open()?!0:i(e)})}function a(e,t,i,s){if(e&&t){for(var a=e.target;a&&a!=scheduler._obj;)a=a.parentNode;if(a==scheduler._obj){var n=Math.abs(e.pageY-t.pageY),r=Math.abs(e.pageX-t.pageX); - -s>n&&r>i&&(!n||r/n>3)&&(e.pageX>t.pageX?scheduler._click.dhx_cal_next_button():scheduler._click.dhx_cal_prev_button())}}}function n(e){var t=scheduler.getState().drag_mode,i=scheduler.matrix?scheduler.matrix[scheduler._mode]:!1,s=scheduler.render_view_data;"create"==t&&i&&(scheduler.render_view_data=function(){for(var e=scheduler.getState().drag_id,t=scheduler.getEvent(e),s=i.y_property,a=scheduler.getEvents(t.start_date,t.end_date),n=0;n<a.length;n++)a[n][s]!=t[s]&&(a.splice(n,1),n--);t._sorder=a.length-1, -t._count=a.length,this.render_data([t],scheduler.getState().mode)}),scheduler._on_mouse_move(e),"create"==t&&i&&(scheduler.render_view_data=s)}function r(e){scheduler._hide_global_tip(),h&&(scheduler._on_mouse_up(t(e||event)),scheduler._temp_touch_block=!1),scheduler._drag_id=null,scheduler._drag_mode=null,scheduler._drag_pos=null,clearTimeout(l),h=c=!1,_=!0}var d,o,l,h,_,c,u=(-1!=navigator.userAgent.indexOf("Android")&&-1!=navigator.userAgent.indexOf("WebKit"),0);s(document.body,e[0],function(e){ -if(!i(e)){if(h)return n(t(e)),scheduler._update_global_tip(),e.preventDefault&&e.preventDefault(),e.cancelBubble=!0,!1;if(o=t(e),c)return o?void((d.target!=o.target||Math.abs(d.pageX-o.pageX)>5||Math.abs(d.pageY-o.pageY)>5)&&(_=!0,clearTimeout(l))):void(_=!0)}}),s(this._els.dhx_cal_data[0],"scroll",r),s(this._els.dhx_cal_data[0],"touchcancel",r),s(this._els.dhx_cal_data[0],"contextmenu",function(e){return c?(e&&e.preventDefault&&e.preventDefault(),(e||event).cancelBubble=!0,!1):void 0}),s(this._els.dhx_cal_data[0],e[1],function(e){ -if(!i(e)){var s;if(h=_=!1,c=!0,scheduler._temp_touch_block=!0,s=o=t(e),!s)return void(_=!0);var a=new Date;if(!_&&!h&&250>a-u)return scheduler._click.dhx_cal_data(s),window.setTimeout(function(){scheduler._on_dbl_click(s)},50),e.preventDefault&&e.preventDefault(),e.cancelBubble=!0,scheduler._block_next_stop=!0,!1;if(u=a,!_&&!h&&scheduler.config.touch_drag){var n=scheduler._locate_event(document.activeElement),r=scheduler._locate_event(s.target),g=d?scheduler._locate_event(d.target):null;if(n&&r&&n==r&&n!=g)return e.preventDefault&&e.preventDefault(), -e.cancelBubble=!0,scheduler._ignore_next_click=!1,scheduler._click.dhx_cal_data(s),d=s,!1;l=setTimeout(function(){h=!0;var e=d.target;e&&e.className&&-1!=e.className.indexOf("dhx_body")&&(e=e.previousSibling),scheduler._on_mouse_down(d,e),scheduler._drag_mode&&"create"!=scheduler._drag_mode&&scheduler.for_rendered(scheduler._drag_id,function(e,t){e.style.display="none",scheduler._rendered.splice(t,1)}),scheduler.config.touch_tip&&scheduler._show_global_tip(),scheduler._on_mouse_move(d)},scheduler.config.touch_drag), -d=s}}}),s(this._els.dhx_cal_data[0],e[2],function(e){return i(e)?void 0:(h||a(d,o,200,100),h&&(scheduler._ignore_next_click=!0),r(e),scheduler._block_next_stop?(scheduler._block_next_stop=!1,e.preventDefault&&e.preventDefault(),e.cancelBubble=!0,!1):void 0)}),dhtmlxEvent(document.body,e[2],r)},scheduler._show_global_tip=function(){scheduler._hide_global_tip();var e=scheduler._global_tip=document.createElement("DIV");e.className="dhx_global_tip",scheduler._update_global_tip(1),document.body.appendChild(e); - -},scheduler._update_global_tip=function(e){var t=scheduler._global_tip;if(t){var i="";if(scheduler._drag_id&&!e){var s=scheduler.getEvent(scheduler._drag_id);s&&(i="<div>"+(s._timed?scheduler.templates.event_header(s.start_date,s.end_date,s):scheduler.templates.day_date(s.start_date,s.end_date,s))+"</div>")}"create"==scheduler._drag_mode||"new-size"==scheduler._drag_mode?t.innerHTML=(scheduler.locale.drag_to_create||"Drag to create")+i:t.innerHTML=(scheduler.locale.drag_to_move||"Drag to move")+i; - -}},scheduler._hide_global_tip=function(){var e=scheduler._global_tip;e&&e.parentNode&&(e.parentNode.removeChild(e),scheduler._global_tip=0)},scheduler._dp_init=function(e){e._methods=["_set_event_text_style","","changeEventId","_dp_hook_delete"],this._dp_hook_delete=function(e){return this.deleteEvent(e,!0)},this.attachEvent("onEventAdded",function(t){!this._loading&&this._validId(t)&&e.setUpdated(t,!0,"inserted")}),this.attachEvent("onConfirmedBeforeEventDelete",function(t){if(this._validId(t)){ -var i=e.getState(t);return"inserted"==i||this._new_event?(e.setUpdated(t,!1),!0):"deleted"==i?!1:"true_deleted"==i?!0:(e.setUpdated(t,!0,"deleted"),!1)}}),this.attachEvent("onEventChanged",function(t){!this._loading&&this._validId(t)&&e.setUpdated(t,!0,"updated")}),e._getRowData=function(e,t){var i=this.obj.getEvent(e),s={};for(var a in i)0!==a.indexOf("_")&&(i[a]&&i[a].getUTCFullYear?s[a]=this.obj.templates.xml_format(i[a]):s[a]=i[a]);return s},e._clearUpdateFlag=function(){},e.attachEvent("insertCallback",scheduler._update_callback), -e.attachEvent("updateCallback",scheduler._update_callback),e.attachEvent("deleteCallback",function(e,t){this.obj.setUserData(t,this.action_param,"true_deleted"),this.obj.deleteEvent(t)})},scheduler._validId=function(e){return!0},scheduler.setUserData=function(e,t,i){e?this.getEvent(e)[t]=i:this._userdata[t]=i},scheduler.getUserData=function(e,t){return e?this.getEvent(e)[t]:this._userdata[t]},scheduler._set_event_text_style=function(e,t){this.for_rendered(e,function(e){e.style.cssText+=";"+t});var i=this.getEvent(e); - -i._text_style=t,this.event_updated(i)},scheduler._update_callback=function(e,t){var i=scheduler._xmlNodeToJSON(e.firstChild);i.text=i.text||i._tagvalue,i.start_date=scheduler.templates.xml_date(i.start_date),i.end_date=scheduler.templates.xml_date(i.end_date),scheduler.addEvent(i)},scheduler._skin_settings={fix_tab_position:[1,0],use_select_menu_space:[1,0],wide_form:[1,0],hour_size_px:[44,42],displayed_event_color:["#ff4a4a","ffc5ab"],displayed_event_text_color:["#ffef80","7e2727"]},scheduler._skin_xy={ -lightbox_additional_height:[90,50],nav_height:[59,22],bar_height:[24,20]},scheduler._configure=function(e,t,i){for(var s in t)"undefined"==typeof e[s]&&(e[s]=t[s][i])},scheduler._skin_init=function(){if(!scheduler.skin)for(var e=document.getElementsByTagName("link"),t=0;t<e.length;t++){var i=e[t].href.match("dhtmlxscheduler_([a-z]+).css");if(i){scheduler.skin=i[1];break}}var s=0;if(!scheduler.skin||"classic"!==scheduler.skin&&"glossy"!==scheduler.skin||(s=1),this._configure(scheduler.config,scheduler._skin_settings,s), -this._configure(scheduler.xy,scheduler._skin_xy,s),"flat"===scheduler.skin&&(scheduler.xy.scale_height=35,scheduler.templates.hour_scale=function(e){var t=e.getMinutes();t=10>t?"0"+t:t;var i="<span class='dhx_scale_h'>"+e.getHours()+"</span><span class='dhx_scale_m'> "+t+"</span>";return i}),!s){var a=scheduler.config.minicalendar;a&&(a.padding=14),scheduler.templates.event_bar_date=function(e,t,i){return"• <b>"+scheduler.templates.event_date(e)+"</b> "},scheduler.attachEvent("onTemplatesReady",function(){ -var e=scheduler.date.date_to_str("%d");scheduler.templates._old_month_day||(scheduler.templates._old_month_day=scheduler.templates.month_day);var t=scheduler.templates._old_month_day;if(scheduler.templates.month_day=function(i){if("month"==this._mode){var s=e(i);return 1==i.getDate()&&(s=scheduler.locale.date.month_full[i.getMonth()]+" "+s),+i==+scheduler.date.date_part(new Date)&&(s=scheduler.locale.labels.dhx_cal_today_button+" "+s),s}return t.call(this,i)},scheduler.config.fix_tab_position){for(var i=scheduler._els.dhx_cal_navline[0].getElementsByTagName("div"),s=null,a=211,n=0;n<i.length;n++){ -var r=i[n],d=r.getAttribute("name");if(d)switch(r.style.right="auto",d){case"day_tab":r.style.left="14px",r.className+=" dhx_cal_tab_first";break;case"week_tab":r.style.left="75px";break;case"month_tab":r.style.left="136px",r.className+=" dhx_cal_tab_last";break;default:r.style.left=a+"px",r.className+=" dhx_cal_tab_standalone",a=a+14+r.offsetWidth}else 0===(r.className||"").indexOf("dhx_minical_icon")&&r.parentNode==scheduler._els.dhx_cal_navline[0]&&(s=r)}s&&(s.style.left=a+"px")}}),scheduler._skin_init=function(){}; - -}},window.jQuery&&!function(e){var t=[];e.fn.dhx_scheduler=function(i){if("string"!=typeof i){var s=[];return this.each(function(){if(this&&this.getAttribute&&!this.getAttribute("dhxscheduler")){for(var e in i)"data"!=e&&(scheduler.config[e]=i[e]);this.getElementsByTagName("div").length||(this.innerHTML='<div class="dhx_cal_navline"><div class="dhx_cal_prev_button"> </div><div class="dhx_cal_next_button"> </div><div class="dhx_cal_today_button"></div><div class="dhx_cal_date"></div><div class="dhx_cal_tab" name="day_tab" style="right:204px;"></div><div class="dhx_cal_tab" name="week_tab" style="right:140px;"></div><div class="dhx_cal_tab" name="month_tab" style="right:76px;"></div></div><div class="dhx_cal_header"></div><div class="dhx_cal_data"></div>', -this.className+=" dhx_cal_container"),scheduler.init(this,scheduler.config.date,scheduler.config.mode),i.data&&scheduler.parse(i.data),s.push(scheduler)}}),1===s.length?s[0]:s}return t[i]?t[i].apply(this,[]):void e.error("Method "+i+" does not exist on jQuery.dhx_scheduler")}}(jQuery),function(){function e(e,t,i){t&&(e._date=t),i&&(e._mode=i)}var t=scheduler.setCurrentView,i=scheduler.updateView,s=null,a=null,n=function(t,n){var r=this;window.clearTimeout(a),window.clearTimeout(s),e(this,t,n),a=setTimeout(function(){ -r.callEvent("onBeforeViewChange",[r._mode,r._date,n||r._mode,t||r._date])&&(i.call(r,t,n),r.callEvent("onViewChange",[r._mode,r._date]),window.clearTimeout(s),a=0)},scheduler.config.delay_render)},r=function(t,n){var r=this,d=arguments;e(this,t,n),window.clearTimeout(s),s=setTimeout(function(){a||i.apply(r,d)},scheduler.config.delay_render)};scheduler.attachEvent("onSchedulerReady",function(){scheduler.config.delay_render?(scheduler.setCurrentView=n,scheduler.updateView=r):(scheduler.setCurrentView=t, +e=e&&i}return e};return z.addEvent=function(ev){return"function"!=typeof ev&&(ev=eval(ev)),ev?dhx_catch.push(ev)-1:!1},z.removeEvent=function(e){dhx_catch[e]=null},z},obj.detachEvent=function(e){if(e){var t=e.split(":");this[t[0]].removeEvent(t[1])}},obj.detachAllEvents=function(){for(var e in this)0===e.indexOf("ev_")&&(this.detachEvent(e),this[e]=null)},obj=null},scheduler.event=window.dhtmlxEvent,scheduler.eventRemove=function(e,t,i){e.removeEventListener?e.removeEventListener(t,i,!1):e.detachEvent&&e.detachEvent("on"+t,i); +},function(){function e(e){var t=!1,i=!1;if(window.getComputedStyle){var a=window.getComputedStyle(e,null);t=a.display,i=a.visibility}else e.currentStyle&&(t=e.currentStyle.display,i=e.currentStyle.visibility);var r=!1,s=scheduler._locate_css({target:e},"dhx_form_repeat",!1);return s&&(r=!("0px"!=s.style.height)),r=r||!e.offsetHeight,"none"!=t&&"hidden"!=i&&!r}function t(e){return!isNaN(e.getAttribute("tabindex"))&&1*e.getAttribute("tabindex")>=0}function i(e){var t={a:!0,area:!0};return t[e.nodeName.loLowerCase()]?!!e.getAttribute("href"):!0; +}function a(e){var t={input:!0,select:!0,textarea:!0,button:!0,object:!0};return t[e.nodeName.toLowerCase()]?!e.hasAttribute("disabled"):!0}scheduler._getFocusableNodes=function(r){for(var s=r.querySelectorAll(["a[href]","area[href]","input","select","textarea","button","iframe","object","embed","[tabindex]","[contenteditable]"].join(", ")),n=Array.prototype.slice.call(s,0),d=0;d<n.length;d++){var l=n[d],o=(t(l)||a(l)||i(l))&&e(l);o||(n.splice(d,1),d--)}return n}}(),scheduler._trim=function(e){var t=String.prototype.trim||function(){ +return this.replace(/^\s+|\s+$/g,"")};return t.apply(e)},window.dhtmlx||(window.dhtmlx={}),function(){function e(e,t){setTimeout(function(){if(e.box){var a=e.callback;i(!1),e.box.parentNode.removeChild(e.box),dhtmlx.callEvent("onAfterMessagePopup",[e.box]),c=e.box=null,a&&a(t)}},1)}function t(t){if(c){t=t||event;var i=t.which||event.keyCode,a=!1;if(dhtmlx.message.keyboard){if(13==i||32==i){var r=t.target||t.srcElement;scheduler._getClassName(r).indexOf("dhtmlx_popup_button")>-1&&r.click?r.click():(e(c,!0), +a=!0)}27==i&&(e(c,!1),a=!0)}if(a)return t.preventDefault&&t.preventDefault(),!(t.cancelBubble=!0)}else;}function i(e){i.cover||(i.cover=document.createElement("DIV"),i.cover.onkeydown=t,i.cover.className="dhx_modal_cover",document.body.appendChild(i.cover));document.body.scrollHeight;i.cover.style.display=e?"inline-block":"none"}function a(e,t,i){var a=scheduler._waiAria.messageButtonAttrString(e),r=i?i:e||"",s="dhtmlx_"+r.toLowerCase().replace(/ /g,"_")+"_button";return"<div "+a+"class='dhtmlx_popup_button "+s+"' result='"+t+"' ><div>"+e+"</div></div>"; +}function r(e){u.area||(u.area=document.createElement("DIV"),u.area.className="dhtmlx_message_area",u.area.style[u.position]="5px",document.body.appendChild(u.area)),u.hide(e.id);var t=document.createElement("DIV");return t.innerHTML="<div>"+e.text+"</div>",t.className="dhtmlx-info dhtmlx-"+e.type,t.onclick=function(){u.hide(e.id),e=null},scheduler._waiAria.messageInfoAttr(t),"bottom"==u.position&&u.area.firstChild?u.area.insertBefore(t,u.area.firstChild):u.area.appendChild(t),e.expire>0&&(u.timers[e.id]=window.setTimeout(function(){ +u.hide(e.id)},e.expire)),u.pull[e.id]=t,t=null,e.id}function s(t,i,r){var s=document.createElement("DIV");s.className=" dhtmlx_modal_box dhtmlx-"+t.type,s.setAttribute("dhxbox",1);var n=scheduler.uid();scheduler._waiAria.messageModalAttr(s,n);var d="",l=!1;if(t.width&&(s.style.width=t.width),t.height&&(s.style.height=t.height),t.title&&(d+='<div class="dhtmlx_popup_title" id="'+n+'">'+t.title+"</div>",l=!0),d+='<div class="dhtmlx_popup_text" '+(l?"":' id="'+n+'" ')+"><span>"+(t.content?"":t.text)+'</span></div><div class="dhtmlx_popup_controls">', +i){var o=t.ok||scheduler.locale.labels.message_ok;void 0===o&&(o="OK"),d+=a(o,!0,"ok")}if(r){var h=t.cancel||scheduler.locale.labels.message_cancel;void 0===h&&(h="Cancel"),d+=a(h,!1,"cancel")}if(t.buttons)for(var _=0;_<t.buttons.length;_++)d+=a(t.buttons[_],_);if(d+="</div>",s.innerHTML=d,t.content){var u=t.content;"string"==typeof u&&(u=document.getElementById(u)),"none"==u.style.display&&(u.style.display=""),s.childNodes[t.title?1:0].appendChild(u)}return s.onclick=function(i){i=i||event;var a=i.target||i.srcElement,r=scheduler._getClassName(a); +if(r||(a=a.parentNode),r=scheduler._getClassName(a),"dhtmlx_popup_button"==r.split(" ")[0]){var s=a.getAttribute("result");s="true"==s||("false"==s?!1:s),e(t,s)}},t.box=s,c=t,s}function n(e,a,r){var n=e.tagName?e:s(e,a,r);e.hidden||i(!0),document.body.appendChild(n);var d=Math.abs(Math.floor(((window.innerWidth||document.documentElement.offsetWidth)-n.offsetWidth)/2)),l=Math.abs(Math.floor(((window.innerHeight||document.documentElement.offsetHeight)-n.offsetHeight)/2));return"top"==e.position?n.style.top="-3px":n.style.top=l+"px", +n.style.left=d+"px",n.onkeydown=t,dhtmlx.modalbox.focus(n),e.hidden&&dhtmlx.modalbox.hide(n),dhtmlx.callEvent("onMessagePopup",[n]),n}function d(e){return n(e,!0,!1)}function l(e){return n(e,!0,!0)}function o(e){return n(e)}function h(e,t,i){return"object"!=typeof e&&("function"==typeof t&&(i=t,t=""),e={text:e,type:t,callback:i}),e}function _(e,t,i,a){return"object"!=typeof e&&(e={text:e,type:t,expire:i,id:a}),e.id=e.id||u.uid(),e.expire=e.expire||u.expire,e}var c=null;document.attachEvent?document.attachEvent("onkeydown",t):document.addEventListener("keydown",t,!0), +dhtmlx.alert=function(){var e=h.apply(this,arguments);return e.type=e.type||"confirm",d(e)},dhtmlx.confirm=function(){var e=h.apply(this,arguments);return e.type=e.type||"alert",l(e)},dhtmlx.modalbox=function(){var e=h.apply(this,arguments);return e.type=e.type||"alert",o(e)},dhtmlx.modalbox.hide=function(e){for(;e&&e.getAttribute&&!e.getAttribute("dhxbox");)e=e.parentNode;e&&(e.parentNode.removeChild(e),i(!1))},dhtmlx.modalbox.focus=function(e){setTimeout(function(){var t=scheduler._getFocusableNodes(e); +t.length&&t[0].focus&&t[0].focus()},1)};var u=dhtmlx.message=function(e,t,i,a){e=_.apply(this,arguments),e.type=e.type||"info";var s=e.type.split("-")[0];switch(s){case"alert":return d(e);case"confirm":return l(e);case"modalbox":return o(e);default:return r(e)}};u.seed=(new Date).valueOf(),u.uid=function(){return u.seed++},u.expire=4e3,u.keyboard=!0,u.position="top",u.pull={},u.timers={},u.hideAll=function(){for(var e in u.pull)u.hide(e)},u.hide=function(e){var t=u.pull[e];t&&t.parentNode&&(window.setTimeout(function(){ +t.parentNode.removeChild(t),t=null},2e3),t.className+=" hidden",u.timers[e]&&window.clearTimeout(u.timers[e]),delete u.pull[e])}}(),dhtmlx.attachEvent||dhtmlxEventable(dhtmlx),dataProcessor.prototype={setTransactionMode:function(e,t){this._tMode=e,this._tSend=t,"REST"==e&&(this._tSend=!1,this._endnm=!0)},escape:function(e){return this._utf?encodeURIComponent(e):escape(e)},enableUTFencoding:function(e){this._utf=convertStringToBoolean(e)},setDataColumns:function(e){this._columns="string"==typeof e?e.split(","):e; +},getSyncState:function(){return!this.updatedRows.length},enableDataNames:function(e){this._endnm=convertStringToBoolean(e)},enablePartialDataSend:function(e){this._changed=convertStringToBoolean(e)},setUpdateMode:function(e,t){this.autoUpdate="cell"==e,this.updateMode=e,this.dnd=t},ignore:function(e,t){this._silent_mode=!0,e.call(t||window),this._silent_mode=!1},setUpdated:function(e,t,i){if(!this._silent_mode){var a=this.findRow(e);i=i||"updated";var r=this.obj.getUserData(e,this.action_param);r&&"updated"==i&&(i=r), +t?(this.set_invalid(e,!1),this.updatedRows[a]=e,this.obj.setUserData(e,this.action_param,i),this._in_progress[e]&&(this._in_progress[e]="wait")):this.is_invalid(e)||(this.updatedRows.splice(a,1),this.obj.setUserData(e,this.action_param,"")),t||this._clearUpdateFlag(e),this.markRow(e,t,i),t&&this.autoUpdate&&this.sendData(e)}},_clearUpdateFlag:function(e){},markRow:function(e,t,i){var a="",r=this.is_invalid(e);if(r&&(a=this.styles[r],t=!0),this.callEvent("onRowMark",[e,t,i,r])&&(a=this.styles[t?i:"clear"]+a, +this.obj[this._methods[0]](e,a),r&&r.details)){a+=this.styles[r+"_cell"];for(var s=0;s<r.details.length;s++)r.details[s]&&this.obj[this._methods[1]](e,s,a)}},getState:function(e){return this.obj.getUserData(e,this.action_param)},is_invalid:function(e){return this._invalid[e]},set_invalid:function(e,t,i){i&&(t={value:t,details:i,toString:function(){return this.value.toString()}}),this._invalid[e]=t},checkBeforeUpdate:function(e){return!0},sendData:function(e){return!this._waitMode||"tree"!=this.obj.mytype&&!this.obj._h2?(this.obj.editStop&&this.obj.editStop(), +"undefined"==typeof e||this._tSend?this.sendAllData():this._in_progress[e]?!1:(this.messages=[],!this.checkBeforeUpdate(e)&&this.callEvent("onValidationError",[e,this.messages])?!1:void this._beforeSendData(this._getRowData(e),e))):void 0},_beforeSendData:function(e,t){return this.callEvent("onBeforeUpdate",[t,this.getState(t),e])?void this._sendData(e,t):!1},serialize:function(e,t){if("string"==typeof e)return e;if("undefined"!=typeof t)return this.serialize_one(e,"");var i=[],a=[];for(var r in e)e.hasOwnProperty(r)&&(i.push(this.serialize_one(e[r],r+this.post_delim)), +a.push(r));return i.push("ids="+this.escape(a.join(","))),dhtmlx.security_key&&i.push("dhx_security="+dhtmlx.security_key),i.join("&")},serialize_one:function(e,t){if("string"==typeof e)return e;var i=[];for(var a in e)if(e.hasOwnProperty(a)){if(("id"==a||a==this.action_param)&&"REST"==this._tMode)continue;i.push(this.escape((t||"")+a)+"="+this.escape(e[a]))}return i.join("&")},_sendData:function(e,t){if(e){if(!this.callEvent("onBeforeDataSending",t?[t,this.getState(t),e]:[null,null,e]))return!1;t&&(this._in_progress[t]=(new Date).valueOf()); +var i=new dtmlXMLLoaderObject(function(i,a,r,s,n){var d=[];if(t)d.push(t);else if(e)for(var l in e)d.push(l);return i.afterUpdate(i,n,d)},this,!0),a=this.serverProcessor+(this._user?getUrlSymbol(this.serverProcessor)+["dhx_user="+this._user,"dhx_version="+this.obj.getUserData(0,"version")].join("&"):"");if("GET"==this._tMode)i.loadXML(a+(-1!=a.indexOf("?")?"&":"?")+this.serialize(e,t));else if("POST"==this._tMode)i.loadXML(a,!0,this.serialize(e,t));else if("REST"==this._tMode){var r=this.getState(t),s=a.replace(/(\&|\?)editing\=true/,""); +"inserted"==r?i.loadXML(s+t,"POST",this.serialize(e,t)):"deleted"==r?i.loadXML(s+t,"DELETE",""):i.loadXML(s+t,"PUT",this.serialize(e,t))}this._waitMode++}},sendAllData:function(){if(this.updatedRows.length){this.messages=[];for(var e=!0,t=0;t<this.updatedRows.length;t++)e&=this.checkBeforeUpdate(this.updatedRows[t]);if(!e&&!this.callEvent("onValidationError",["",this.messages]))return!1;if(this._tSend)this._sendData(this._getAllData());else for(var t=0;t<this.updatedRows.length;t++)if(!this._in_progress[this.updatedRows[t]]){ +if(this.is_invalid(this.updatedRows[t]))continue;if(this._beforeSendData(this._getRowData(this.updatedRows[t]),this.updatedRows[t]),this._waitMode&&("tree"==this.obj.mytype||this.obj._h2))return}}},_getAllData:function(e){for(var t={},i=!1,a=0;a<this.updatedRows.length;a++){var r=this.updatedRows[a];this._in_progress[r]||this.is_invalid(r)||this.callEvent("onBeforeUpdate",[r,this.getState(r),this._getRowData(r)])&&(t[r]=this._getRowData(r,r+this.post_delim),i=!0,this._in_progress[r]=(new Date).valueOf()); +}return i?t:null},setVerificator:function(e,t){this.mandatoryFields[e]=t||function(e){return""!==e}},clearVerificator:function(e){this.mandatoryFields[e]=!1},findRow:function(e){var t=0;for(t=0;t<this.updatedRows.length&&e!=this.updatedRows[t];t++);return t},defineAction:function(e,t){this._uActions||(this._uActions=[]),this._uActions[e]=t},afterUpdateCallback:function(e,t,i,a){var r=e,s="error"!=i&&"invalid"!=i;if(s||this.set_invalid(e,i),this._uActions&&this._uActions[i]&&!this._uActions[i](a))return delete this._in_progress[r]; +"wait"!=this._in_progress[r]&&this.setUpdated(e,!1);var n=e;switch(i){case"inserted":case"insert":t!=e&&(this.obj[this._methods[2]](e,t),e=t);break;case"delete":case"deleted":return this.obj.setUserData(e,this.action_param,"true_deleted"),this.obj[this._methods[3]](e,t),delete this._in_progress[r],this.callEvent("onAfterUpdate",[e,i,t,a])}"wait"!=this._in_progress[r]?(s&&this.obj.setUserData(e,this.action_param,""),delete this._in_progress[r]):(delete this._in_progress[r],this.setUpdated(t,!0,this.obj.getUserData(e,this.action_param))), +this.callEvent("onAfterUpdate",[n,i,t,a])},afterUpdate:function(e,t,i){if(window.JSON)try{var a=JSON.parse(t.xmlDoc.responseText),r=a.action||this.getState(i)||"updated",s=a.sid||i[0],n=a.tid||i[0];return e.afterUpdateCallback(s,n,r,a),void e.finalizeUpdate()}catch(d){}if(t.getXMLTopNode("data"),!t.xmlDoc.responseXML)return this.obj&&this.obj.callEvent&&this.obj.callEvent("onSaveError",[i,t.xmlDoc]),this.cleanUpdate(i);var l=t.doXPath("//data/action");if(!l.length)return this.cleanUpdate(i);for(var o=0;o<l.length;o++){ +var h=l[o],r=h.getAttribute("type"),s=h.getAttribute("sid"),n=h.getAttribute("tid");e.afterUpdateCallback(s,n,r,h)}e.finalizeUpdate()},cleanUpdate:function(e){if(e)for(var t=0;t<e.length;t++)delete this._in_progress[e[t]]},finalizeUpdate:function(){this._waitMode&&this._waitMode--,("tree"==this.obj.mytype||this.obj._h2)&&this.updatedRows.length&&this.sendData(),this.callEvent("onAfterUpdateFinish",[]),this.updatedRows.length||this.callEvent("onFullSync",[])},init:function(e){this.obj=e,this.obj._dp_init&&this.obj._dp_init(this); +},setOnAfterUpdate:function(e){this.attachEvent("onAfterUpdate",e)},enableDebug:function(e){},setOnBeforeUpdateHandler:function(e){this.attachEvent("onBeforeDataSending",e)},setAutoUpdate:function(e,t){e=e||2e3,this._user=t||(new Date).valueOf(),this._need_update=!1,this._loader=null,this._update_busy=!1,this.attachEvent("onAfterUpdate",function(e,t,i,a){this.afterAutoUpdate(e,t,i,a)}),this.attachEvent("onFullSync",function(){this.fullSync()});var i=this;window.setInterval(function(){i.loadUpdate(); +},e)},afterAutoUpdate:function(e,t,i,a){return"collision"==t?(this._need_update=!0,!1):!0},fullSync:function(){return this._need_update&&(this._need_update=!1,this.loadUpdate()),!0},getUpdates:function(e,t){return this._update_busy?!1:(this._update_busy=!0,this._loader=this._loader||new dtmlXMLLoaderObject(!0),this._loader.async=!0,this._loader.waitCall=t,void this._loader.loadXML(e))},_v:function(e){return e.firstChild?e.firstChild.nodeValue:""},_a:function(e){for(var t=[],i=0;i<e.length;i++)t[i]=this._v(e[i]); +return t},loadUpdate:function(){var e=this,t=this.obj.getUserData(0,"version"),i=this.serverProcessor+getUrlSymbol(this.serverProcessor)+["dhx_user="+this._user,"dhx_version="+t].join("&");i=i.replace("editing=true&",""),this.getUpdates(i,function(){var t;try{t=e._loader.doXPath("//userdata")}catch(i){return void(e._update_busy=!1)}e.obj.setUserData(0,"version",e._v(t[0]));var a=e._loader.doXPath("//update");if(a.length){e._silent_mode=!0;for(var r=0;r<a.length;r++){var s=a[r].getAttribute("status"),n=a[r].getAttribute("id"),d=a[r].getAttribute("parent"); +switch(s){case"inserted":e.callEvent("insertCallback",[a[r],n,d]);break;case"updated":e.callEvent("updateCallback",[a[r],n,d]);break;case"deleted":e.callEvent("deleteCallback",[a[r],n,d])}}e._silent_mode=!1}e._update_busy=!1,e=null})}},window.dataProcessor&&!dataProcessor.prototype.init_original&&(dataProcessor.prototype.init_original=dataProcessor.prototype.init,dataProcessor.prototype.init=function(e){this.init_original(e),e._dataprocessor=this,this.setTransactionMode("POST",!0),this.serverProcessor+=(-1!=this.serverProcessor.indexOf("?")?"&":"?")+"editing=true"; +}),dhtmlxError.catchError("LoadXML",function(e,t,i){var a=i[0].responseText;switch(scheduler.config.ajax_error){case"alert":window.alert(a);break;case"console":window.console.log(a)}}),function(){function e(e){return(e+"").replace(a," ").replace(r," ")}function t(e){return(e+"").replace(s,"'")}function i(){return!scheduler.config.wai_aria_attributes}var a=new RegExp("<(?:.|\n)*?>","gm"),r=new RegExp(" +","gm"),s=new RegExp("'","gm");scheduler._waiAria={getAttributeString:function(i){var a=[" "]; +for(var r in i)if("function"!=typeof i[r]&&"object"!=typeof i[r]){var s=t(e(i[r]));a.push(r+"='"+s+"'")}return a.push(" "),a.join(" ")},setAttributes:function(t,i){for(var a in i)t.setAttribute(a,e(i[a]));return t},labelAttr:function(e,t){return this.setAttributes(e,{"aria-label":t})},label:function(e){return scheduler._waiAria.getAttributeString({"aria-label":e})},hourScaleAttr:function(e,t){this.labelAttr(e,t)},monthCellAttr:function(e,t){this.labelAttr(e,scheduler.templates.day_date(t))},navBarDateAttr:function(e,t){ +this.labelAttr(e,t)},dayHeaderAttr:function(e,t){this.labelAttr(e,t)},dayColumnAttr:function(e,t){this.dayHeaderAttr(e,scheduler.templates.day_date(t))},headerButtonsAttributes:function(e,t){return this.setAttributes(e,{role:"button","aria-label":t})},headerToggleState:function(e,t){return this.setAttributes(e,{"aria-pressed":t?"true":"false"})},getHeaderCellAttr:function(e){return scheduler._waiAria.getAttributeString({"aria-label":e})},eventAttr:function(e,t){!scheduler.config.readonly&&scheduler.config.drag_move&&(e.id!=scheduler.getState().drag_id?t.setAttribute("aria-grabbed",!1):t.setAttribute("aria-grabbed",!0)), +this._eventCommonAttr(e,t)},_eventCommonAttr:function(t,i){i.setAttribute("aria-label",e(scheduler.templates.tooltip_text(t.start_date,t.end_date,t))),scheduler.config.readonly&&i.setAttribute("aria-readonly",!0),t.$dataprocessor_class&&i.setAttribute("aria-busy",!0),i.setAttribute("aria-selected",scheduler.getState().select_id==t.id?"true":"false")},setEventBarAttr:function(e,t){this._eventCommonAttr(e,t),!scheduler.config.readonly&&scheduler.config.drag_move&&(e.id!=scheduler.getState().drag_id?t.setAttribute("aria-grabbed",!1):t.setAttribute("aria-grabbed",!0)); +},_getAttributes:function(e,t){var i={setAttribute:function(e,t){this[e]=t}};return e.apply(this,[t,i]),i},eventBarAttrString:function(e){return this.getAttributeString(this._getAttributes(this.setEventBarAttr,e))},agendaHeadAttrString:function(){return this.getAttributeString({role:"row"})},agendaHeadDateString:function(e){return this.getAttributeString({role:"columnheader","aria-label":e})},agendaHeadDescriptionString:function(e){return this.agendaHeadDateString(e)},agendaDataAttrString:function(){ +return this.getAttributeString({role:"grid"})},agendaEventAttrString:function(e){var t=this._getAttributes(this._eventCommonAttr,e);return t.role="row",this.getAttributeString(t)},agendaDetailsBtnString:function(){return this.getAttributeString({role:"button","aria-label":scheduler.locale.labels.icon_details})},gridAttrString:function(){return this.getAttributeString({role:"grid"})},gridRowAttrString:function(e){return this.agendaEventAttrString(e)},gridCellAttrString:function(e,t,i){return this.getAttributeString({ +role:"gridcell","aria-label":[void 0===t.label?t.id:t.label,": ",i]})},mapAttrString:function(){return this.gridAttrString()},mapRowAttrString:function(e){return this.gridRowAttrString(e)},mapDetailsBtnString:function(){return this.agendaDetailsBtnString()},minicalHeader:function(e,t){this.setAttributes(e,{id:t+"","aria-live":"assertice","aria-atomic":"true"})},minicalGrid:function(e,t){this.setAttributes(e,{"aria-labelledby":t+"",role:"grid"})},minicalRow:function(e){this.setAttributes(e,{role:"row" +})},minicalDayCell:function(e,t){var i=t.valueOf()<scheduler._max_date.valueOf()&&t.valueOf()>=scheduler._min_date.valueOf();this.setAttributes(e,{role:"gridcell","aria-label":scheduler.templates.day_date(t),"aria-selected":i?"true":"false"})},minicalHeadCell:function(e){this.setAttributes(e,{role:"columnheader"})},weekAgendaDayCell:function(e,t){var i=e.querySelector(".dhx_wa_scale_bar"),a=e.querySelector(".dhx_wa_day_data"),r=scheduler.uid()+"";this.setAttributes(i,{id:r}),this.setAttributes(a,{ +"aria-labelledby":r})},weekAgendaEvent:function(e,t){this.eventAttr(t,e)},lightboxHiddenAttr:function(e){e.setAttribute("aria-hidden","true")},lightboxVisibleAttr:function(e){e.setAttribute("aria-hidden","false")},lightboxSectionButtonAttrString:function(e){return this.getAttributeString({role:"button","aria-label":e,tabindex:"0"})},yearHeader:function(e,t){this.setAttributes(e,{id:t+""})},yearGrid:function(e,t){this.minicalGrid(e,t)},yearHeadCell:function(e){return this.minicalHeadCell(e)},yearRow:function(e){ +return this.minicalRow(e)},yearDayCell:function(e){this.setAttributes(e,{role:"gridcell"})},lightboxAttr:function(e){e.setAttribute("role","dialog"),e.setAttribute("aria-hidden","true"),e.firstChild.setAttribute("role","heading")},lightboxButtonAttrString:function(e){return this.getAttributeString({role:"button","aria-label":scheduler.locale.labels[e],tabindex:"0"})},eventMenuAttrString:function(e){return this.getAttributeString({role:"button","aria-label":scheduler.locale.labels[e]})},lightboxHeader:function(e,t){ +e.setAttribute("aria-label",t)},lightboxSelectAttrString:function(e){var t="";switch(e){case"%Y":t=scheduler.locale.labels.year;break;case"%m":t=scheduler.locale.labels.month;break;case"%d":t=scheduler.locale.labels.day;break;case"%H:%i":t=scheduler.locale.labels.hour+" "+scheduler.locale.labels.minute}return scheduler._waiAria.getAttributeString({"aria-label":t})},messageButtonAttrString:function(e){return"tabindex='0' role='button' aria-label='"+e+"'"},messageInfoAttr:function(e){e.setAttribute("role","alert"); +},messageModalAttr:function(e,t){e.setAttribute("role","dialog"),t&&e.setAttribute("aria-labelledby",t)},quickInfoAttr:function(e){e.setAttribute("role","dialog")},quickInfoHeaderAttrString:function(){return" role='heading' "},quickInfoHeader:function(e,t){e.setAttribute("aria-label",t)},quickInfoButtonAttrString:function(e){return scheduler._waiAria.getAttributeString({role:"button","aria-label":e,tabindex:"0"})},tooltipAttr:function(e){e.setAttribute("role","tooltip")},tooltipVisibleAttr:function(e){ +e.setAttribute("aria-hidden","false")},tooltipHiddenAttr:function(e){e.setAttribute("aria-hidden","true")}};for(var n in scheduler._waiAria)scheduler._waiAria[n]=function(e){return function(){return i()?"":e.apply(this,arguments)}}(scheduler._waiAria[n])}(),dhtmlxEventable(scheduler),scheduler._detachDomEvent=function(e,t,i){e.removeEventListener?e.removeEventListener(t,i,!1):e.detachEvent&&e.detachEvent("on"+t,i)},scheduler._init_once=function(){function e(e){for(var t=document.body;e&&e!=t;)e=e.parentNode; +return!(t!=e)}function t(){return{w:window.innerWidth||document.documentElement.clientWidth,h:window.innerHeight||document.documentElement.clientHeight}}function i(e,t){return e.w==t.w&&e.h==t.h}var a=t();dhtmlxEvent(window,"resize",function(){e(scheduler._obj)&&(window.clearTimeout(scheduler._resize_timer),scheduler._resize_timer=window.setTimeout(function(){var r=t();if(!i(a,r)){if(!e(scheduler._obj))return;scheduler.callEvent("onSchedulerResize",[])&&(scheduler.update_view(),scheduler.callEvent("onAfterSchedulerResize",[])); +}a=r},20))}),scheduler._init_once=function(){}},scheduler.init=function(e,t,i){t=t||scheduler._currentDate(),i=i||"week",this._obj&&this.unset_actions(),this._obj="string"==typeof e?document.getElementById(e):e,this.$container=this._obj,this._skin_init&&scheduler._skin_init(),scheduler.date.init(),this._els=[],this._scroll=!0,this._quirks=_isIE&&"BackCompat"==document.compatMode,this._quirks7=_isIE&&-1==navigator.appVersion.indexOf("MSIE 8"),this.get_elements(),this.init_templates(),this.set_actions(), +this._init_once(),this._init_touch_events(),this.set_sizes(),scheduler.callEvent("onSchedulerReady",[]),this.setCurrentView(t,i)},scheduler.xy={min_event_height:40,scale_width:50,scroll_width:18,scale_height:20,month_scale_height:20,menu_width:25,margin_top:0,margin_left:0,editor_width:140,month_head_height:22},scheduler.keys={edit_save:13,edit_cancel:27},scheduler.set_sizes=function(){var e=this._x=this._obj.clientWidth-this.xy.margin_left,t=this._y=this._obj.clientHeight-this.xy.margin_top,i=this._table_view?0:this.xy.scale_width+this.xy.scroll_width,a=this._table_view?-1:this.xy.scale_width; +this.set_xy(this._els.dhx_cal_navline[0],e,this.xy.nav_height,0,0),this.set_xy(this._els.dhx_cal_header[0],e-i,this.xy.scale_height,a,this.xy.nav_height+(this._quirks?-1:1));var r=this._els.dhx_cal_navline[0].offsetHeight;r>0&&(this.xy.nav_height=r);var s=this.xy.scale_height+this.xy.nav_height+(this._quirks?-2:0);this.set_xy(this._els.dhx_cal_data[0],e,t-(s+2),0,s+2)},scheduler.set_xy=function(e,t,i,a,r){e.style.width=Math.max(0,t)+"px",e.style.height=Math.max(0,i)+"px",arguments.length>3&&(e.style.left=a+"px", +e.style.top=r+"px")},scheduler.get_elements=function(){for(var e=this._obj.getElementsByTagName("DIV"),t=0;t<e.length;t++){var i=scheduler._getClassName(e[t]),a=e[t].getAttribute("name")||"";i&&(i=i.split(" ")[0]),this._els[i]||(this._els[i]=[]),this._els[i].push(e[t]);var r=scheduler.locale.labels[a||i];"string"!=typeof r&&a&&!e[t].innerHTML&&(r=a.split("_")[0]),r&&(this._waiAria.labelAttr(e[t],r),e[t].innerHTML=r)}},scheduler.unset_actions=function(){for(var e in this._els)if(this._click[e])for(var t=0;t<this._els[e].length;t++)this._els[e][t].onclick=null; +this._obj.onselectstart=null,this._obj.onmousemove=null,this._obj.onmousedown=null,this._obj.onmouseup=null,this._obj.ondblclick=null,this._obj.oncontextmenu=null},scheduler.set_actions=function(){for(var e in this._els)if(this._click[e])for(var t=0;t<this._els[e].length;t++)this._els[e][t].onclick=scheduler._click[e];this._obj.onselectstart=function(e){return!1},this._obj.onmousemove=function(e){scheduler._temp_touch_block||scheduler._on_mouse_move(e||event)},this._obj.onmousedown=function(e){scheduler._ignore_next_click||scheduler._on_mouse_down(e||event); +},this._obj.onmouseup=function(e){scheduler._ignore_next_click||scheduler._on_mouse_up(e||event)},this._obj.ondblclick=function(e){scheduler._on_dbl_click(e||event)},this._obj.oncontextmenu=function(e){var t=e||event,i=t.target||t.srcElement,a=scheduler.callEvent("onContextMenu",[scheduler._locate_event(i),t]);return a}},scheduler.select=function(e){this._select_id!=e&&(scheduler._close_not_saved(),this.editStop(!1),this.unselect(),this._select_id=e,this.updateEvent(e))},scheduler.unselect=function(e){ +if(!e||e==this._select_id){var t=this._select_id;this._select_id=null,t&&this.getEvent(t)&&this.updateEvent(t)}},scheduler.getState=function(){return{mode:this._mode,date:new Date(this._date),min_date:new Date(this._min_date),max_date:new Date(this._max_date),editor_id:this._edit_id,lightbox_id:this._lightbox_id,new_event:this._new_event,select_id:this._select_id,expanded:this.expanded,drag_id:this._drag_id,drag_mode:this._drag_mode}},scheduler._click={dhx_cal_data:function(e){if(scheduler._ignore_next_click)return e.preventDefault&&e.preventDefault(), +e.cancelBubble=!0,scheduler._ignore_next_click=!1,!1;var t=e?e.target:event.srcElement,i=scheduler._locate_event(t);if(e=e||event,i){if(!scheduler.callEvent("onClick",[i,e])||scheduler.config.readonly)return}else scheduler.callEvent("onEmptyClick",[scheduler.getActionData(e).date,e]);if(i&&scheduler.config.select){scheduler.select(i);var a=scheduler._getClassName(t);-1!=a.indexOf("_icon")&&scheduler._click.buttons[a.split(" ")[1].replace("icon_","")](i)}else scheduler._close_not_saved(),(new Date).valueOf()-(scheduler._new_event||0)>500&&scheduler.unselect(); +},dhx_cal_prev_button:function(){scheduler._click.dhx_cal_next_button(0,-1)},dhx_cal_next_button:function(e,t){scheduler.setCurrentView(scheduler.date.add(scheduler.date[scheduler._mode+"_start"](scheduler._date),t||1,scheduler._mode))},dhx_cal_today_button:function(){scheduler.callEvent("onBeforeTodayDisplayed",[])&&scheduler.setCurrentView(scheduler._currentDate())},dhx_cal_tab:function(){var e=this.getAttribute("name"),t=e.substring(0,e.search("_tab"));scheduler.setCurrentView(scheduler._date,t); +},buttons:{"delete":function(e){var t=scheduler.locale.labels.confirm_deleting;scheduler._dhtmlx_confirm(t,scheduler.locale.labels.title_confirm_deleting,function(){scheduler.deleteEvent(e)})},edit:function(e){scheduler.edit(e)},save:function(e){scheduler.editStop(!0)},details:function(e){scheduler.showLightbox(e)},cancel:function(e){scheduler.editStop(!1)}}},scheduler._dhtmlx_confirm=function(e,t,i){if(!e)return i();var a={text:e};t&&(a.title=t),i&&(a.callback=function(e){e&&i()}),dhtmlx.confirm(a); +},scheduler.addEventNow=function(e,t,i){var a={};e&&null!==e.constructor.toString().match(/object/i)&&(a=e,e=null);var r=6e4*(this.config.event_duration||this.config.time_step);e||(e=a.start_date||Math.round(scheduler._currentDate().valueOf()/r)*r);var s=new Date(e);if(!t){var n=this.config.first_hour;n>s.getHours()&&(s.setHours(n),e=s.valueOf()),t=e.valueOf()+r}var d=new Date(t);s.valueOf()==d.valueOf()&&d.setTime(d.valueOf()+r),a.start_date=a.start_date||s,a.end_date=a.end_date||d,a.text=a.text||this.locale.labels.new_event, +a.id=this._drag_id=a.id||this.uid(),this._drag_mode="new-size",this._loading=!0;var l=this.addEvent(a);return this.callEvent("onEventCreated",[this._drag_id,i]),this._loading=!1,this._drag_event={},this._on_mouse_up(i),l},scheduler._on_dbl_click=function(e,t){if(t=t||e.target||e.srcElement,!this.config.readonly){var i=scheduler._getClassName(t).split(" ")[0];switch(i){case"dhx_scale_holder":case"dhx_scale_holder_now":case"dhx_month_body":case"dhx_wa_day_data":if(!scheduler.config.dblclick_create)break; +this.addEventNow(this.getActionData(e).date,null,e);break;case"dhx_cal_event":case"dhx_wa_ev_body":case"dhx_agenda_line":case"dhx_grid_event":case"dhx_cal_event_line":case"dhx_cal_event_clear":var a=this._locate_event(t);if(!this.callEvent("onDblClick",[a,e]))return;this.config.details_on_dblclick||this._table_view||!this.getEvent(a)._timed||!this.config.select?this.showLightbox(a):this.edit(a);break;case"dhx_time_block":case"dhx_cal_container":return;default:var r=this["dblclick_"+i];if(r)r.call(this,e);else if(t.parentNode&&t!=this)return scheduler._on_dbl_click(e,t.parentNode); +}}},scheduler._get_column_index=function(e){var t=0;if(this._cols){for(var i=0,a=0;i+this._cols[a]<e&&a<this._cols.length;)i+=this._cols[a],a++;if(t=a+(this._cols[t]?(e-i)/this._cols[t]:0),this._ignores&&t>=this._cols.length)for(;t>=1&&this._ignores[Math.floor(t)];)t--}return t},scheduler._week_indexes_from_pos=function(e){if(this._cols){var t=this._get_column_index(e.x);return e.x=Math.min(this._cols.length-1,Math.max(0,Math.ceil(t)-1)),e.y=Math.max(0,Math.ceil(60*e.y/(this.config.time_step*this.config.hour_size_px))-1)+this.config.first_hour*(60/this.config.time_step), +e}return e},scheduler._mouse_coords=function(e){var t,i=document.body,a=document.documentElement;t=_isIE||!e.pageX&&!e.pageY?{x:e.clientX+(i.scrollLeft||a.scrollLeft||0)-i.clientLeft,y:e.clientY+(i.scrollTop||a.scrollTop||0)-i.clientTop}:{x:e.pageX,y:e.pageY},t.x-=getAbsoluteLeft(this._obj)+(this._table_view?0:this.xy.scale_width),t.y-=getAbsoluteTop(this._obj)+this.xy.nav_height+(this._dy_shift||0)+this.xy.scale_height-this._els.dhx_cal_data[0].scrollTop,t.ev=e;var r=this["mouse_"+this._mode];if(r)t=r.call(this,t);else if(this._table_view){ +var s=this._get_column_index(t.x);if(!this._cols||!this._colsS)return t;var n=0;for(n=1;n<this._colsS.heights.length&&!(this._colsS.heights[n]>t.y);n++);t.y=Math.ceil(24*(Math.max(0,s)+7*Math.max(0,n-1))*60/this.config.time_step),(scheduler._drag_mode||"month"==this._mode)&&(t.y=24*(Math.max(0,Math.ceil(s)-1)+7*Math.max(0,n-1))*60/this.config.time_step),"move"==this._drag_mode&&scheduler._ignores_detected&&scheduler.config.preserve_length&&(t._ignores=!0,this._drag_event._event_length||(this._drag_event._event_length=this._get_real_event_length(this._drag_event.start_date,this._drag_event.end_date,{ +x_step:1,x_unit:"day"}))),t.x=0}else t=this._week_indexes_from_pos(t);return t.timestamp=+new Date,t},scheduler._close_not_saved=function(){if((new Date).valueOf()-(scheduler._new_event||0)>500&&scheduler._edit_id){var e=scheduler.locale.labels.confirm_closing;scheduler._dhtmlx_confirm(e,scheduler.locale.labels.title_confirm_closing,function(){scheduler.editStop(scheduler.config.positive_closing)}),e&&(this._drag_id=this._drag_pos=this._drag_mode=null)}},scheduler._correct_shift=function(e,t){return e-=6e4*(new Date(scheduler._min_date).getTimezoneOffset()-new Date(e).getTimezoneOffset())*(t?-1:1); +},scheduler._is_pos_changed=function(e,t){function i(e,t,i){return!!(Math.abs(e-t)>i)}if(!e||!this._drag_pos)return!0;var a=100,r=5;return!!(this._drag_pos.has_moved||!this._drag_pos.timestamp||t.timestamp-this._drag_pos.timestamp>a||i(e.ev.clientX,t.ev.clientX,r)||i(e.ev.clientY,t.ev.clientY,r))},scheduler._correct_drag_start_date=function(e){var t;scheduler.matrix&&(t=scheduler.matrix[scheduler._mode]),t=t||{x_step:1,x_unit:"day"},e=new Date(e);var i=1;return(t._start_correction||t._end_correction)&&(i=60*(t.last_hour||0)-(60*e.getHours()+e.getMinutes())||1), +1*e+(scheduler._get_fictional_event_length(e,i,t)-i)},scheduler._correct_drag_end_date=function(e,t){var i;scheduler.matrix&&(i=scheduler.matrix[scheduler._mode]),i=i||{x_step:1,x_unit:"day"};var a=1*e+scheduler._get_fictional_event_length(e,t,i);return new Date(1*a-(scheduler._get_fictional_event_length(a,-1,i,-1)+1))},scheduler._on_mouse_move=function(e){if(this._drag_mode){var t=this._mouse_coords(e);if(this._is_pos_changed(this._drag_pos,t)){var i,a;if(this._edit_id!=this._drag_id&&this._close_not_saved(), +!this._drag_mode)return;if(this._drag_pos=t,this._drag_pos.has_moved=!0,"create"==this._drag_mode){if(this._close_not_saved(),this.unselect(this._select_id),this._loading=!0,i=this._get_date_from_pos(t).valueOf(),!this._drag_start){var r=this.callEvent("onBeforeEventCreated",[e,this._drag_id]);return r?(this._loading=!1,void(this._drag_start=i)):void(this._loading=!1)}a=i,a==this._drag_start;var s=new Date(this._drag_start),n=new Date(a);"day"!=this._mode&&"week"!=this._mode||s.getHours()!=n.getHours()||s.getMinutes()!=n.getMinutes()||(n=new Date(this._drag_start+1e3)), +this._drag_id=this.uid(),this.addEvent(s,n,this.locale.labels.new_event,this._drag_id,t.fields),this.callEvent("onEventCreated",[this._drag_id,e]),this._loading=!1,this._drag_mode="new-size"}var d,l=this.getEvent(this._drag_id);if(scheduler.matrix&&(d=scheduler.matrix[scheduler._mode]),d=d||{x_step:1,x_unit:"day"},"move"==this._drag_mode)i=this._min_date.valueOf()+6e4*(t.y*this.config.time_step+24*t.x*60-(scheduler._move_pos_shift||0)),!t.custom&&this._table_view&&(i+=1e3*this.date.time_part(l.start_date)), +i=this._correct_shift(i),t._ignores&&this.config.preserve_length&&this._table_view?(i=scheduler._correct_drag_start_date(i),a=scheduler._correct_drag_end_date(i,this._drag_event._event_length)):a=l.end_date.valueOf()-(l.start_date.valueOf()-i);else{if(i=l.start_date.valueOf(),a=l.end_date.valueOf(),this._table_view){var o=this._min_date.valueOf()+t.y*this.config.time_step*6e4+(t.custom?0:864e5);if("month"==this._mode)if(o=this._correct_shift(o,!1),this._drag_from_start){var h=864e5;o<=scheduler.date.date_part(new Date(a+h-1)).valueOf()&&(i=o-h); +}else a=o;else t.resize_from_start?i=scheduler._correct_drag_start_date(o):a=scheduler._correct_drag_end_date(o,0)}else{var _=this.date.date_part(new Date(l.end_date.valueOf()-1)).valueOf(),c=new Date(_);a=_+t.y*this.config.time_step*6e4,a+=6e4*(new Date(a).getTimezoneOffset()-c.getTimezoneOffset()),this._els.dhx_cal_data[0].style.cursor="s-resize",("week"==this._mode||"day"==this._mode)&&(a=this._correct_shift(a))}if("new-size"==this._drag_mode)if(a<=this._drag_start){var u=t.shift||(this._table_view&&!t.custom?864e5:0); +i=a-(t.shift?0:u),a=this._drag_start+(u||6e4*this.config.time_step)}else i=this._drag_start;else i>=a&&(a=i+6e4*this.config.time_step)}var g=new Date(a-1),v=new Date(i);if("move"==this._drag_mode&&scheduler.config.limit_drag_out&&(+v<+scheduler._min_date||+a>+scheduler._max_date)){if(+l.start_date<+scheduler._min_date||+l.end_date>+scheduler._max_date)v=new Date(l.start_date),a=new Date(l.end_date);else{var f=a-v;+v<+scheduler._min_date?(v=new Date(scheduler._min_date),t._ignores&&this.config.preserve_length&&this._table_view?(v=new Date(scheduler._correct_drag_start_date(v)), +d._start_correction&&(v=new Date(v.valueOf()+d._start_correction)),a=new Date(1*v+this._get_fictional_event_length(v,this._drag_event._event_length,d))):a=new Date(+v+f)):(a=new Date(scheduler._max_date),t._ignores&&this.config.preserve_length&&this._table_view?(d._end_correction&&(a=new Date(a.valueOf()-d._end_correction)),a=new Date(1*a-this._get_fictional_event_length(a,0,d,!0)),v=new Date(1*a-this._get_fictional_event_length(a,this._drag_event._event_length,d,!0)),this._ignores_detected&&(v=scheduler.date.add(v,d.x_step,d.x_unit), +a=new Date(1*a-this._get_fictional_event_length(a,0,d,!0)),a=scheduler.date.add(a,d.x_step,d.x_unit))):v=new Date(+a-f))}var g=new Date(a-1)}if(!this._table_view&&!scheduler.config.all_timed&&(!scheduler._get_section_view()&&t.x!=this._get_event_sday({start_date:new Date(a),end_date:new Date(a)})||new Date(a).getHours()>=this.config.last_hour)){var f=a-v,h=this._min_date.valueOf()+24*t.x*60*6e4;a=scheduler.date.date_part(new Date(h)),a.setHours(this.config.last_hour),g=new Date(a-1),"move"==this._drag_mode&&(v=new Date(+a-f)); +}if(this._table_view||g.getDate()==v.getDate()&&g.getHours()<this.config.last_hour||scheduler._allow_dnd)if(l.start_date=v,l.end_date=new Date(a),this.config.update_render){var m=scheduler._els.dhx_cal_data[0].scrollTop;this.update_view(),scheduler._els.dhx_cal_data[0].scrollTop=m}else this.updateEvent(this._drag_id);this._table_view&&this.for_rendered(this._drag_id,function(e){e.className+=" dhx_in_move"}),this.callEvent("onEventDrag",[this._drag_id,this._drag_mode,e])}}else if(scheduler.checkEvent("onMouseMove")){ +var p=this._locate_event(e.target||e.srcElement);this.callEvent("onMouseMove",[p,e])}},scheduler._on_mouse_down=function(e,t){if(2!=e.button&&!this.config.readonly&&!this._drag_mode){t=t||e.target||e.srcElement;var i=scheduler._getClassName(t).split(" ")[0];switch(i){case"dhx_cal_event_line":case"dhx_cal_event_clear":this._table_view&&(this._drag_mode="move");break;case"dhx_event_move":case"dhx_wa_ev_body":this._drag_mode="move";break;case"dhx_event_resize":this._drag_mode="resize";var a=scheduler._getClassName(t); +a.indexOf("dhx_event_resize_end")<0?scheduler._drag_from_start=!0:scheduler._drag_from_start=!1;break;case"dhx_scale_holder":case"dhx_scale_holder_now":case"dhx_month_body":case"dhx_matrix_cell":case"dhx_marked_timespan":this._drag_mode="create";break;case"":if(t.parentNode)return scheduler._on_mouse_down(e,t.parentNode);break;default:if((!scheduler.checkEvent("onMouseDown")||scheduler.callEvent("onMouseDown",[i]))&&t.parentNode&&t!=this&&"dhx_body"!=i)return scheduler._on_mouse_down(e,t.parentNode); +this._drag_mode=null,this._drag_id=null}if(this._drag_mode){var r=this._locate_event(t);if(this.config["drag_"+this._drag_mode]&&this.callEvent("onBeforeDrag",[r,this._drag_mode,e])){if(this._drag_id=r,(this._edit_id!=this._drag_id||this._edit_id&&"create"==this._drag_mode)&&this._close_not_saved(),!this._drag_mode)return;this._drag_event=scheduler._lame_clone(this.getEvent(this._drag_id)||{}),this._drag_pos=this._mouse_coords(e)}else this._drag_mode=this._drag_id=0}this._drag_start=null}},scheduler._get_private_properties=function(e){ +var t={};for(var i in e)0===i.indexOf("_")&&(t[i]=!0);return t},scheduler._clear_temporary_properties=function(e,t){var i=this._get_private_properties(e),a=this._get_private_properties(t);for(var r in a)i[r]||delete t[r]},scheduler._on_mouse_up=function(e){if(!e||2!=e.button||!scheduler.config.touch){if(this._drag_mode&&this._drag_id){this._els.dhx_cal_data[0].style.cursor="default";var t=this._drag_id,i=this._drag_mode,a=!this._drag_pos||this._drag_pos.has_moved,r=this.getEvent(this._drag_id);if(a&&(this._drag_event._dhx_changed||!this._drag_event.start_date||r.start_date.valueOf()!=this._drag_event.start_date.valueOf()||r.end_date.valueOf()!=this._drag_event.end_date.valueOf())){ +var s="new-size"==this._drag_mode;if(this.callEvent("onBeforeEventChanged",[r,e,s,this._drag_event]))if(this._drag_id=this._drag_mode=null,s&&this.config.edit_on_create){if(this.unselect(),this._new_event=new Date,this._table_view||this.config.details_on_create||!this.config.select||!this.isOneDayEvent(this.getEvent(t)))return scheduler.callEvent("onDragEnd",[t,i,e]),this.showLightbox(t);this._drag_pos=!0,this._select_id=this._edit_id=t}else this._new_event||this.callEvent(s?"onEventAdded":"onEventChanged",[t,this.getEvent(t)]);else s?this.deleteEvent(r.id,!0):(this._drag_event._dhx_changed=!1, +this._clear_temporary_properties(r,this._drag_event),scheduler._lame_copy(r,this._drag_event),this.updateEvent(r.id))}this._drag_pos&&(this._drag_pos.has_moved||this._drag_pos===!0)&&(this._drag_id=this._drag_mode=null,this.render_view_data()),scheduler.callEvent("onDragEnd",[t,i,e])}this._drag_id=null,this._drag_mode=null,this._drag_pos=null}},scheduler._trigger_dyn_loading=function(){return this._load_mode&&this._load()?(this._render_wait=!0,!0):!1},scheduler.update_view=function(){this._reset_ignores(); +var e=this[this._mode+"_view"];return e?e(!0):this._reset_scale(),this._trigger_dyn_loading()?!0:void this.render_view_data()},scheduler.isViewExists=function(e){return!!(scheduler[e+"_view"]||scheduler.date[e+"_start"]&&scheduler.templates[e+"_date"]&&scheduler.templates[e+"_scale_date"])},scheduler._set_aria_buttons_attrs=function(){for(var e=["dhx_cal_next_button","dhx_cal_prev_button","dhx_cal_tab","dhx_cal_today_button"],t=0;t<e.length;t++)for(var i=this._els[e[t]],a=0;i&&a<i.length;a++){var r=i[a].getAttribute("name"),s=this.locale.labels[e[t]]; +r&&(s=this.locale.labels[r]||s),"dhx_cal_next_button"==e[t]?s=this.locale.labels.next:"dhx_cal_prev_button"==e[t]&&(s=this.locale.labels.prev),this._waiAria.headerButtonsAttributes(i[a],s||"")}},scheduler.updateView=function(e,t){e=e||this._date,t=t||this._mode;var i="dhx_cal_data",a=this._obj,r="dhx_scheduler_"+this._mode,s="dhx_scheduler_"+t;this._mode&&-1!=a.className.indexOf(r)?a.className=a.className.replace(r,s):a.className+=" "+s;var n=this._mode==t&&this.config.preserve_scroll?this._els[i][0].scrollTop:!1; +this[this._mode+"_view"]&&t&&this._mode!=t&&this[this._mode+"_view"](!1),this._close_not_saved();var d="dhx_multi_day";this._els[d]&&(this._els[d][0].parentNode.removeChild(this._els[d][0]),this._els[d]=null),this._mode=t,this._date=e,this._table_view="month"==this._mode,this._dy_shift=0,this._set_aria_buttons_attrs();var l=this._els.dhx_cal_tab;if(l)for(var o=0;o<l.length;o++){var h=l[o],_=h.className;_=_.replace(/ active/g,""),h.getAttribute("name")==this._mode+"_tab"?(_+=" active",this._waiAria.headerToggleState(h,!0)):this._waiAria.headerToggleState(h,!1), +h.className=_}this.update_view(),"number"==typeof n&&(this._els[i][0].scrollTop=n)},scheduler.setCurrentView=function(e,t){this.callEvent("onBeforeViewChange",[this._mode,this._date,t||this._mode,e||this._date])&&(this.updateView(e,t),this.callEvent("onViewChange",[this._mode,this._date]))},scheduler._render_x_header=function(e,t,i,a,r){r=r||0;var s=document.createElement("DIV");s.className="dhx_scale_bar",this.templates[this._mode+"_scalex_class"]&&(s.className+=" "+this.templates[this._mode+"_scalex_class"](i)); +var n=this._cols[e]-1;"month"==this._mode&&0===e&&this.config.left_border&&(s.className+=" dhx_scale_bar_border",t+=1),this.set_xy(s,n,this.xy.scale_height-2,t,r);var d=this.templates[this._mode+"_scale_date"](i,this._mode);s.innerHTML=d,this._waiAria.dayHeaderAttr(s,d),a.appendChild(s)},scheduler._get_columns_num=function(e,t){var i=7;if(!scheduler._table_view){var a=scheduler.date["get_"+scheduler._mode+"_end"];a&&(t=a(e)),i=Math.round((t.valueOf()-e.valueOf())/864e5)}return i},scheduler._get_timeunit_start=function(){ +return this.date[this._mode+"_start"](new Date(this._date.valueOf()))},scheduler._get_view_end=function(){var e=this._get_timeunit_start(),t=scheduler.date.add(e,1,this._mode);if(!scheduler._table_view){var i=scheduler.date["get_"+scheduler._mode+"_end"];i&&(t=i(e))}return t},scheduler._calc_scale_sizes=function(e,t,i){var a=e,r=this._get_columns_num(t,i);this._process_ignores(t,r,"day",1);for(var s=r-this._ignores_detected,n=0;r>n;n++)this._ignores[n]?(this._cols[n]=0,s++):this._cols[n]=Math.floor(a/(s-n)), +a-=this._cols[n],this._colsS[n]=(this._cols[n-1]||0)+(this._colsS[n-1]||(this._table_view?0:this.xy.scale_width+2));this._colsS.col_length=r,this._colsS[r]=this._cols[r-1]+this._colsS[r-1]||0},scheduler._set_scale_col_size=function(e,t,i){var a=this.config;this.set_xy(e,t-1,a.hour_size_px*(a.last_hour-a.first_hour),i+this.xy.scale_width+1,0)},scheduler._render_scales=function(e,t){var i=new Date(scheduler._min_date),a=new Date(scheduler._max_date),r=this.date.date_part(scheduler._currentDate()),s=parseInt(e.style.width,10),n=new Date(this._min_date),d=this._get_columns_num(i,a); +this._calc_scale_sizes(s,i,a);var l=0;e.innerHTML="";for(var o=0;d>o;o++){if(this._ignores[o]||this._render_x_header(o,l,n,e),!this._table_view){var h=document.createElement("DIV"),_="dhx_scale_holder";n.valueOf()==r.valueOf()&&(_="dhx_scale_holder_now"),this._ignores_detected&&this._ignores[o]&&(_+=" dhx_scale_ignore"),h.className=_+" "+this.templates.week_date_class(n,r),this._waiAria.dayColumnAttr(h,n),this._set_scale_col_size(h,this._cols[o],l),t.appendChild(h),this.callEvent("onScaleAdd",[h,n]); +}l+=this._cols[o],n=this.date.add(n,1,"day"),n=this.date.day_start(n)}},scheduler._reset_scale=function(){if(this.templates[this._mode+"_date"]){var e=this._els.dhx_cal_header[0],t=this._els.dhx_cal_data[0],i=this.config;e.innerHTML="",t.innerHTML="";var a=(i.readonly||!i.drag_resize?" dhx_resize_denied":"")+(i.readonly||!i.drag_move?" dhx_move_denied":"");t.className="dhx_cal_data"+a,this._scales={},this._cols=[],this._colsS={height:0},this._dy_shift=0,this.set_sizes();var r,s,n=this._get_timeunit_start(),d=scheduler._get_view_end(); +r=s=this._table_view?scheduler.date.week_start(n):n,this._min_date=r;var l=this.templates[this._mode+"_date"](n,d,this._mode);if(this._els.dhx_cal_date[0].innerHTML=l,this._waiAria.navBarDateAttr(this._els.dhx_cal_date[0],l),this._max_date=d,scheduler._render_scales(e,t),this._table_view)this._reset_month_scale(t,n,s);else if(this._reset_hours_scale(t,n,s),i.multi_day){var o="dhx_multi_day";this._els[o]&&(this._els[o][0].parentNode.removeChild(this._els[o][0]),this._els[o]=null);var h=this._els.dhx_cal_navline[0],_=h.offsetHeight+this._els.dhx_cal_header[0].offsetHeight+1,c=document.createElement("DIV"); +c.className=o,c.style.visibility="hidden",this.set_xy(c,Math.max(this._colsS[this._colsS.col_length]+this.xy.scroll_width-2,0),0,0,_),t.parentNode.insertBefore(c,t);var u=c.cloneNode(!0);u.className=o+"_icon",u.style.visibility="hidden",this.set_xy(u,this.xy.scale_width,0,0,_),c.appendChild(u),this._els[o]=[c,u],this._els[o][0].onclick=this._click.dhx_cal_data}}},scheduler._reset_hours_scale=function(e,t,i){var a=document.createElement("DIV");a.className="dhx_scale_holder";for(var r=new Date(1980,1,1,this.config.first_hour,0,0),s=1*this.config.first_hour;s<this.config.last_hour;s++){ +var n=document.createElement("DIV");n.className="dhx_scale_hour",n.style.height=this.config.hour_size_px+"px";var d=this.xy.scale_width;this.config.left_border&&(n.className+=" dhx_scale_hour_border"),n.style.width=d+"px";var l=scheduler.templates.hour_scale(r);n.innerHTML=l,this._waiAria.hourScaleAttr(n,l),a.appendChild(n),r=this.date.add(r,1,"hour")}e.appendChild(a),this.config.scroll_hour&&(e.scrollTop=this.config.hour_size_px*(this.config.scroll_hour-this.config.first_hour))},scheduler._currentDate=function(){ +return scheduler.config.now_date?new Date(scheduler.config.now_date):new Date},scheduler._reset_ignores=function(){this._ignores={},this._ignores_detected=0},scheduler._process_ignores=function(e,t,i,a,r){this._reset_ignores();var s=scheduler["ignore_"+this._mode];if(s)for(var n=new Date(e),d=0;t>d;d++)s(n)&&(this._ignores_detected+=1,this._ignores[d]=!0,r&&t++),n=scheduler.date.add(n,a,i),scheduler.date[i+"_start"]&&(n=scheduler.date[i+"_start"](n))},scheduler._render_month_scale=function(e,t,i,a){ +function r(e){var t=scheduler._colsS.height;return void 0!==scheduler._colsS.heights[e+1]&&(t=scheduler._colsS.heights[e+1]-(scheduler._colsS.heights[e]||0)),t}var s=scheduler.date.add(t,1,"month"),n=new Date(i),d=scheduler._currentDate();this.date.date_part(d),this.date.date_part(i),a=a||Math.ceil(Math.round((s.valueOf()-i.valueOf())/864e5)/7);for(var l=[],o=0;7>=o;o++){var h=(this._cols[o]||0)-1;0===o&&this.config.left_border&&(h-=1),l[o]=h+"px"}var _=0,c=document.createElement("table");c.setAttribute("cellpadding","0"), +c.setAttribute("cellspacing","0");var u=document.createElement("tbody");c.appendChild(u);for(var g=[],o=0;a>o;o++){var v=document.createElement("tr");u.appendChild(v);for(var f=Math.max(r(o)-scheduler.xy.month_head_height,0),m=0;7>m;m++){var p=document.createElement("td");v.appendChild(p);var b="";t>i?b="dhx_before":i>=s?b="dhx_after":i.valueOf()==d.valueOf()&&(b="dhx_now"),this._ignores_detected&&this._ignores[m]&&(b+=" dhx_scale_ignore"),p.className=b+" "+this.templates.month_date_class(i,d);var x="dhx_month_body",y="dhx_month_head"; +if(0===m&&this.config.left_border&&(x+=" dhx_month_body_border",y+=" dhx_month_head_border"),this._ignores_detected&&this._ignores[m])p.appendChild(document.createElement("div")),p.appendChild(document.createElement("div"));else{this._waiAria.monthCellAttr(p,i);var w=document.createElement("DIV");w.className=y,w.innerHTML=this.templates.month_day(i),p.appendChild(w);var D=document.createElement("DIV");D.className=x,D.style.height=f+"px",D.style.width=l[m],p.appendChild(D)}g.push(i);var E=i.getDate(); +i=this.date.add(i,1,"day"),i.getDate()-E>1&&(i=new Date(i.getFullYear(),i.getMonth(),E+1,12,0))}scheduler._colsS.heights[o]=_,_+=r(o)}this._min_date=n,this._max_date=i,e.innerHTML="",e.appendChild(c),this._scales={};for(var A=e.getElementsByTagName("div"),o=0;o<g.length;o++){var e=A[2*o+1],k=g[o];this._scales[+k]=e}for(var o=0;o<g.length;o++){var k=g[o];this.callEvent("onScaleAdd",[this._scales[+k],k])}return this._max_date},scheduler._reset_month_scale=function(e,t,i,a){var r=scheduler.date.add(t,1,"month"),s=scheduler._currentDate(); +this.date.date_part(s),this.date.date_part(i),a=a||Math.ceil(Math.round((r.valueOf()-i.valueOf())/864e5)/7);var n=Math.floor(e.clientHeight/a)-this.xy.month_head_height;return this._colsS.height=n+this.xy.month_head_height,this._colsS.heights=[],scheduler._render_month_scale(e,t,i,a)},scheduler.getLabel=function(e,t){for(var i=this.config.lightbox.sections,a=0;a<i.length;a++)if(i[a].map_to==e)for(var r=i[a].options,s=0;s<r.length;s++)if(r[s].key==t)return r[s].label;return""},scheduler.updateCollection=function(e,t){ +var i=scheduler.serverList(e);return i?(i.splice(0,i.length),i.push.apply(i,t||[]),scheduler.callEvent("onOptionsLoad",[]),scheduler.resetLightbox(),!0):!1},scheduler._lame_clone=function(e,t){var i,a,r;for(t=t||[],i=0;i<t.length;i+=2)if(e===t[i])return t[i+1];if(e&&"object"==typeof e){for(r={},a=[Array,Date,Number,String,Boolean],i=0;i<a.length;i++)e instanceof a[i]&&(r=i?new a[i](e):new a[i]);t.push(e,r);for(i in e)Object.prototype.hasOwnProperty.apply(e,[i])&&(r[i]=scheduler._lame_clone(e[i],t)); +}return r||e},scheduler._lame_copy=function(e,t){for(var i in t)t.hasOwnProperty(i)&&(e[i]=t[i]);return e},scheduler._get_date_from_pos=function(e){var t=this._min_date.valueOf()+6e4*(e.y*this.config.time_step+24*(this._table_view?0:e.x)*60);return new Date(this._correct_shift(t))},scheduler.getActionData=function(e){var t=this._mouse_coords(e);return{date:this._get_date_from_pos(t),section:t.section}},scheduler._focus=function(e,t){e&&e.focus&&(this.config.touch?window.setTimeout(function(){e.focus(); +},10):(t&&e.select&&e.select(),e.focus()))},scheduler._get_real_event_length=function(e,t,i){var a,r=t-e,s=i._start_correction+i._end_correction||0,n=this["ignore_"+this._mode],d=0;i.render?(d=this._get_date_index(i,e),a=this._get_date_index(i,t)):a=Math.round(r/60/60/1e3/24);for(var l=!0;a>d;){var o=scheduler.date.add(t,-i.x_step,i.x_unit);n&&n(t)&&(!l||l&&n(o))?r-=t-o:(l=!1,r-=s),t=o,a--}return r},scheduler._get_fictional_event_length=function(e,t,i,a){var r=new Date(e),s=a?-1:1;if(i._start_correction||i._end_correction){ +var n;n=a?60*r.getHours()+r.getMinutes()-60*(i.first_hour||0):60*(i.last_hour||0)-(60*r.getHours()+r.getMinutes());var d=60*(i.last_hour-i.first_hour),l=Math.ceil((t/6e4-n)/d);0>l&&(l=0),t+=l*(1440-d)*60*1e3}var o,h=new Date(1*e+t*s),_=this["ignore_"+this._mode],c=0;for(i.render?(c=this._get_date_index(i,r),o=this._get_date_index(i,h)):o=Math.round(t/60/60/1e3/24);o*s>=c*s;){var u=scheduler.date.add(r,i.x_step*s,i.x_unit);_&&_(r)&&(t+=(u-r)*s,o+=s),r=u,c+=s}return t},scheduler._get_section_view=function(){ +return this.matrix&&this.matrix[this._mode]?this.matrix[this._mode]:this._props&&this._props[this._mode]?this._props[this._mode]:null},scheduler._get_section_property=function(){return this.matrix&&this.matrix[this._mode]?this.matrix[this._mode].y_property:this._props&&this._props[this._mode]?this._props[this._mode].map_to:null},scheduler._is_initialized=function(){var e=this.getState();return this._obj&&e.date&&e.mode},scheduler._is_lightbox_open=function(){var e=this.getState();return null!==e.lightbox_id&&void 0!==e.lightbox_id; +},scheduler._getClassName=function(e){if(!e)return"";var t=e.className||"";return t.baseVal&&(t=t.baseVal),t.indexOf||(t=""),t||""},scheduler.date={init:function(){for(var e=scheduler.locale.date.month_short,t=scheduler.locale.date.month_short_hash={},i=0;i<e.length;i++)t[e[i]]=i;for(var e=scheduler.locale.date.month_full,t=scheduler.locale.date.month_full_hash={},i=0;i<e.length;i++)t[e[i]]=i},date_part:function(e){var t=new Date(e);return e.setHours(0),e.setMinutes(0),e.setSeconds(0),e.setMilliseconds(0), +e.getHours()&&(e.getDate()<t.getDate()||e.getMonth()<t.getMonth()||e.getFullYear()<t.getFullYear())&&e.setTime(e.getTime()+36e5*(24-e.getHours())),e},time_part:function(e){return(e.valueOf()/1e3-60*e.getTimezoneOffset())%86400},week_start:function(e){var t=e.getDay();return scheduler.config.start_on_monday&&(0===t?t=6:t--),this.date_part(this.add(e,-1*t,"day"))},month_start:function(e){return e.setDate(1),this.date_part(e)},year_start:function(e){return e.setMonth(0),this.month_start(e)},day_start:function(e){ +return this.date_part(e)},_add_days:function(e,t){var i=new Date(e.valueOf());if(i.setDate(i.getDate()+t),t==Math.round(t)&&t>0){var a=+i-+e,r=a%864e5;if(r&&e.getTimezoneOffset()==i.getTimezoneOffset()){var s=r/36e5;i.setTime(i.getTime()+60*(24-s)*60*1e3)}}return t>=0&&!e.getHours()&&i.getHours()&&(i.getDate()<e.getDate()||i.getMonth()<e.getMonth()||i.getFullYear()<e.getFullYear())&&i.setTime(i.getTime()+36e5*(24-i.getHours())),i},add:function(e,t,i){var a=new Date(e.valueOf());switch(i){case"day": +a=scheduler.date._add_days(a,t);break;case"week":a=scheduler.date._add_days(a,7*t);break;case"month":a.setMonth(a.getMonth()+t);break;case"year":a.setYear(a.getFullYear()+t);break;case"hour":a.setTime(a.getTime()+60*t*60*1e3);break;case"minute":a.setTime(a.getTime()+60*t*1e3);break;default:return scheduler.date["add_"+i](e,t,i)}return a},to_fixed:function(e){return 10>e?"0"+e:e},copy:function(e){return new Date(e.valueOf())},date_to_str:function(e,t){return e=e.replace(/%[a-zA-Z]/g,function(e){switch(e){ +case"%d":return'"+scheduler.date.to_fixed(date.getDate())+"';case"%m":return'"+scheduler.date.to_fixed((date.getMonth()+1))+"';case"%j":return'"+date.getDate()+"';case"%n":return'"+(date.getMonth()+1)+"';case"%y":return'"+scheduler.date.to_fixed(date.getFullYear()%100)+"';case"%Y":return'"+date.getFullYear()+"';case"%D":return'"+scheduler.locale.date.day_short[date.getDay()]+"';case"%l":return'"+scheduler.locale.date.day_full[date.getDay()]+"';case"%M":return'"+scheduler.locale.date.month_short[date.getMonth()]+"'; +case"%F":return'"+scheduler.locale.date.month_full[date.getMonth()]+"';case"%h":return'"+scheduler.date.to_fixed((date.getHours()+11)%12+1)+"';case"%g":return'"+((date.getHours()+11)%12+1)+"';case"%G":return'"+date.getHours()+"';case"%H":return'"+scheduler.date.to_fixed(date.getHours())+"';case"%i":return'"+scheduler.date.to_fixed(date.getMinutes())+"';case"%a":return'"+(date.getHours()>11?"pm":"am")+"';case"%A":return'"+(date.getHours()>11?"PM":"AM")+"';case"%s":return'"+scheduler.date.to_fixed(date.getSeconds())+"'; +case"%W":return'"+scheduler.date.to_fixed(scheduler.date.getISOWeek(date))+"';default:return e}}),t&&(e=e.replace(/date\.get/g,"date.getUTC")),new Function("date",'return "'+e+'";')},str_to_date:function(e,t){for(var i="var temp=date.match(/[a-zA-Z]+|[0-9]+/g);",a=e.match(/%[a-zA-Z]/g),r=0;r<a.length;r++)switch(a[r]){case"%j":case"%d":i+="set[2]=temp["+r+"]||1;";break;case"%n":case"%m":i+="set[1]=(temp["+r+"]||1)-1;";break;case"%y":i+="set[0]=temp["+r+"]*1+(temp["+r+"]>50?1900:2000);";break;case"%g": +case"%G":case"%h":case"%H":i+="set[3]=temp["+r+"]||0;";break;case"%i":i+="set[4]=temp["+r+"]||0;";break;case"%Y":i+="set[0]=temp["+r+"]||0;";break;case"%a":case"%A":i+="set[3]=set[3]%12+((temp["+r+"]||'').toLowerCase()=='am'?0:12);";break;case"%s":i+="set[5]=temp["+r+"]||0;";break;case"%M":i+="set[1]=scheduler.locale.date.month_short_hash[temp["+r+"]]||0;";break;case"%F":i+="set[1]=scheduler.locale.date.month_full_hash[temp["+r+"]]||0;"}var s="set[0],set[1],set[2],set[3],set[4],set[5]";return t&&(s=" Date.UTC("+s+")"), +new Function("date","var set=[0,0,1,0,0,0]; "+i+" return new Date("+s+");")},getISOWeek:function(e){if(!e)return!1;e=this.date_part(new Date(e));var t=e.getDay();0===t&&(t=7);var i=new Date(e.valueOf());i.setDate(e.getDate()+(4-t));var a=i.getFullYear(),r=Math.round((i.getTime()-new Date(a,0,1).getTime())/864e5),s=1+Math.floor(r/7);return s},getUTCISOWeek:function(e){return this.getISOWeek(this.convert_to_utc(e))},convert_to_utc:function(e){return new Date(e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate(),e.getUTCHours(),e.getUTCMinutes(),e.getUTCSeconds()); +}},scheduler.locale={date:{month_full:["January","February","March","April","May","June","July","August","September","October","November","December"],month_short:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],day_full:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],day_short:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"]},labels:{dhx_cal_today_button:"Today",day_tab:"Day",week_tab:"Week",month_tab:"Month",new_event:"New event",icon_save:"Save",icon_cancel:"Cancel", +icon_details:"Details",icon_edit:"Edit",icon_delete:"Delete",confirm_closing:"",confirm_deleting:"Event will be deleted permanently, are you sure?",section_description:"Description",section_time:"Time period",full_day:"Full day",confirm_recurring:"Do you want to edit the whole set of repeated events?",section_recurring:"Repeat event",button_recurring:"Disabled",button_recurring_open:"Enabled",button_edit_series:"Edit series",button_edit_occurrence:"Edit occurrence",agenda_tab:"Agenda",date:"Date", +description:"Description",year_tab:"Year",week_agenda_tab:"Agenda",grid_tab:"Grid",drag_to_create:"Drag to create",drag_to_move:"Drag to move",message_ok:"OK",message_cancel:"Cancel",next:"Next",prev:"Previous",year:"Year",month:"Month",day:"Day",hour:"Hour",minute:"Minute"}},scheduler.config={default_date:"%j %M %Y",month_date:"%F %Y",load_date:"%Y-%m-%d",week_date:"%l",day_date:"%D, %F %j",hour_date:"%H:%i",month_day:"%d",xml_date:"%m/%d/%Y %H:%i",api_date:"%d-%m-%Y %H:%i",preserve_length:!0,time_step:5, +start_on_monday:1,first_hour:0,last_hour:24,readonly:!1,drag_resize:1,drag_move:1,drag_create:1,dblclick_create:1,edit_on_create:1,details_on_create:0,resize_month_events:!1,resize_month_timed:!1,cascade_event_display:!1,cascade_event_count:4,cascade_event_margin:30,multi_day:!0,multi_day_height_limit:0,drag_lightbox:!0,preserve_scroll:!0,select:!0,server_utc:!1,touch:!0,touch_tip:!0,touch_drag:500,quick_info_detached:!0,positive_closing:!1,drag_highlight:!0,limit_drag_out:!1,icons_edit:["icon_save","icon_cancel"], +icons_select:["icon_details","icon_edit","icon_delete"],buttons_left:["dhx_save_btn","dhx_cancel_btn"],buttons_right:["dhx_delete_btn"],lightbox:{sections:[{name:"description",height:200,map_to:"text",type:"textarea",focus:!0},{name:"time",height:72,type:"time",map_to:"auto"}]},highlight_displayed_event:!0,left_border:!1,ajax_error:"alert",delay_render:0,timeline_swap_resize:!0,wai_aria_attributes:!0},scheduler.templates={},scheduler.init_templates=function(){var e=scheduler.locale.labels;e.dhx_save_btn=e.icon_save, +e.dhx_cancel_btn=e.icon_cancel,e.dhx_delete_btn=e.icon_delete;var t=scheduler.date.date_to_str,i=scheduler.config,a=function(e,t){for(var i in t)e[i]||(e[i]=t[i])};a(scheduler.templates,{day_date:t(i.default_date),month_date:t(i.month_date),week_date:function(e,t){return scheduler.templates.day_date(e)+" – "+scheduler.templates.day_date(scheduler.date.add(t,-1,"day"))},day_scale_date:t(i.default_date),month_scale_date:t(i.week_date),week_scale_date:t(i.day_date),hour_scale:t(i.hour_date),time_picker:t(i.hour_date), +event_date:t(i.hour_date),month_day:t(i.month_day),xml_date:scheduler.date.str_to_date(i.xml_date,i.server_utc),load_format:t(i.load_date,i.server_utc),xml_format:t(i.xml_date,i.server_utc),api_date:scheduler.date.str_to_date(i.api_date),event_header:function(e,t,i){return scheduler.templates.event_date(e)+" - "+scheduler.templates.event_date(t)},event_text:function(e,t,i){return i.text},event_class:function(e,t,i){return""},month_date_class:function(e){return""},week_date_class:function(e){return""; +},event_bar_date:function(e,t,i){return scheduler.templates.event_date(e)+" "},event_bar_text:function(e,t,i){return i.text},month_events_link:function(e,t){return"<a>View more("+t+" events)</a>"},drag_marker_class:function(e,t,i){return""},drag_marker_content:function(e,t,i){return""}}),this.callEvent("onTemplatesReady",[])},scheduler.templates.tooltip_date_format=scheduler.date.date_to_str("%Y-%m-%d %H:%i"),scheduler.templates.tooltip_text=function(e,t,i){return"<b>Event:</b> "+i.text+"<br/><b>Start date:</b> "+scheduler.templates.tooltip_date_format(e)+"<br/><b>End date:</b> "+scheduler.templates.tooltip_date_format(t); +},scheduler.uid=function(){return this._seed||(this._seed=(new Date).valueOf()),this._seed++},scheduler._events={},scheduler.clearAll=function(){this._events={},this._loaded={},this._edit_id=null,this._select_id=null,this._drag_id=null,this._drag_mode=null,this._drag_pos=null,this.clear_view(),this.callEvent("onClearAll",[])},scheduler.addEvent=function(e,t,i,a,r){if(!arguments.length)return this.addEventNow();var s=e;1!=arguments.length&&(s=r||{},s.start_date=e,s.end_date=t,s.text=i,s.id=a),s.id=s.id||scheduler.uid(), +s.text=s.text||"","string"==typeof s.start_date&&(s.start_date=this.templates.api_date(s.start_date)),"string"==typeof s.end_date&&(s.end_date=this.templates.api_date(s.end_date));var n=6e4*(this.config.event_duration||this.config.time_step);s.start_date.valueOf()==s.end_date.valueOf()&&s.end_date.setTime(s.end_date.valueOf()+n),s._timed=this.isOneDayEvent(s);var d=!this._events[s.id];return this._events[s.id]=s,this.event_updated(s),this._loading||this.callEvent(d?"onEventAdded":"onEventChanged",[s.id,s]), +s.id},scheduler.deleteEvent=function(e,t){var i=this._events[e];(t||this.callEvent("onBeforeEventDelete",[e,i])&&this.callEvent("onConfirmedBeforeEventDelete",[e,i]))&&(i&&(this._select_id=null,delete this._events[e],this.event_updated(i)),this.callEvent("onEventDeleted",[e,i]))},scheduler.getEvent=function(e){return this._events[e]},scheduler.setEvent=function(e,t){t.id||(t.id=e),this._events[e]=t},scheduler.for_rendered=function(e,t){for(var i=this._rendered.length-1;i>=0;i--)this._rendered[i].getAttribute("event_id")==e&&t(this._rendered[i],i); +},scheduler.changeEventId=function(e,t){if(e!=t){var i=this._events[e];i&&(i.id=t,this._events[t]=i,delete this._events[e]),this.for_rendered(e,function(e){e.setAttribute("event_id",t)}),this._select_id==e&&(this._select_id=t),this._edit_id==e&&(this._edit_id=t),this.callEvent("onEventIdChange",[e,t])}},function(){for(var e=["text","Text","start_date","StartDate","end_date","EndDate"],t=function(e){return function(t){return scheduler.getEvent(t)[e]}},i=function(e){return function(t,i){var a=scheduler.getEvent(t); +a[e]=i,a._changed=!0,a._timed=this.isOneDayEvent(a),scheduler.event_updated(a,!0)}},a=0;a<e.length;a+=2)scheduler["getEvent"+e[a+1]]=t(e[a]),scheduler["setEvent"+e[a+1]]=i(e[a])}(),scheduler.event_updated=function(e,t){this.is_visible_events(e)?this.render_view_data():this.clear_event(e.id)},scheduler.is_visible_events=function(e){var t=e.start_date.valueOf()<this._max_date.valueOf()&&this._min_date.valueOf()<e.end_date.valueOf();if(t){var i=e.start_date.getHours(),a=e.end_date.getHours()+e.end_date.getMinutes()/60,r=this.config.last_hour,s=this.config.first_hour,n=this._table_view||!((a>r||s>a)&&(i>=r||s>i)); +if(n)return!0;var d=(e.end_date.valueOf()-e.start_date.valueOf())/36e5,l=24-(this.config.last_hour-this.config.first_hour);return!!(d>l||r>i&&a>=s)}return!1},scheduler.isOneDayEvent=function(e){var t=e.end_date.getDate()-e.start_date.getDate();return t?(0>t&&(t=Math.ceil((e.end_date.valueOf()-e.start_date.valueOf())/864e5)),1==t&&!e.end_date.getHours()&&!e.end_date.getMinutes()&&(e.start_date.getHours()||e.start_date.getMinutes())):e.start_date.getMonth()==e.end_date.getMonth()&&e.start_date.getFullYear()==e.end_date.getFullYear(); +},scheduler.get_visible_events=function(e){var t=[];for(var i in this._events)this.is_visible_events(this._events[i])&&(!e||this._events[i]._timed)&&this.filter_event(i,this._events[i])&&t.push(this._events[i]);return t},scheduler.filter_event=function(e,t){var i=this["filter_"+this._mode];return i?i(e,t):!0},scheduler._is_main_area_event=function(e){return!!e._timed},scheduler.render_view_data=function(e,t){var i=!1;if(!e){if(i=!0,this._not_render)return void(this._render_wait=!0);this._render_wait=!1, +this.clear_view(),e=this.get_visible_events(!(this._table_view||this.config.multi_day))}for(var a=0,r=e.length;r>a;a++)this._recalculate_timed(e[a]);if(this.config.multi_day&&!this._table_view){for(var s=[],n=[],a=0;a<e.length;a++)this._is_main_area_event(e[a])?s.push(e[a]):n.push(e[a]);this._rendered_location=this._els.dhx_multi_day[0],this._table_view=!0,this.render_data(n,t),this._table_view=!1,this._rendered_location=this._els.dhx_cal_data[0],this._table_view=!1,this.render_data(s,t)}else this._rendered_location=this._els.dhx_cal_data[0], +this.render_data(e,t);i&&this.callEvent("onDataRender",[])},scheduler._view_month_day=function(e){var t=scheduler.getActionData(e).date;scheduler.callEvent("onViewMoreClick",[t])&&scheduler.setCurrentView(t,"day")},scheduler._render_month_link=function(e){for(var t=this._rendered_location,i=this._lame_clone(e),a=e._sday;a<e._eday;a++){i._sday=a,i._eday=a+1;var r=scheduler.date,s=scheduler._min_date;s=r.add(s,i._sweek,"week"),s=r.add(s,i._sday,"day");var n=scheduler.getEvents(s,r.add(s,1,"day")).length,d=this._get_event_bar_pos(i),l=d.x2-d.x,o=document.createElement("div"); +o.onclick=function(e){scheduler._view_month_day(e||event)},o.className="dhx_month_link",o.style.top=d.y+"px",o.style.left=d.x+"px",o.style.width=l+"px",o.innerHTML=scheduler.templates.month_events_link(s,n),this._rendered.push(o),t.appendChild(o)}},scheduler._recalculate_timed=function(e){if(e){var t;t="object"!=typeof e?this._events[e]:e,t&&(t._timed=scheduler.isOneDayEvent(t))}},scheduler.attachEvent("onEventChanged",scheduler._recalculate_timed),scheduler.attachEvent("onEventAdded",scheduler._recalculate_timed), +scheduler.render_data=function(e,t){e=this._pre_render_events(e,t);for(var i=0;i<e.length;i++)if(this._table_view)if("month"!=scheduler._mode)this.render_event_bar(e[i]);else{var a=scheduler.config.max_month_events;a!==1*a||e[i]._sorder<a?this.render_event_bar(e[i]):void 0!==a&&e[i]._sorder==a&&scheduler._render_month_link(e[i])}else this.render_event(e[i])},scheduler._get_first_visible_cell=function(e){for(var t=0;t<e.length;t++)if(-1==(e[t].className||"").indexOf("dhx_scale_ignore"))return e[t]; +return e[0]},scheduler._pre_render_events=function(e,t){var i=this.xy.bar_height,a=this._colsS.heights,r=this._colsS.heights=[0,0,0,0,0,0,0],s=this._els.dhx_cal_data[0];if(e=this._table_view?this._pre_render_events_table(e,t):this._pre_render_events_line(e,t),this._table_view)if(t)this._colsS.heights=a;else{var n=s.firstChild;if(n.rows){for(var d=0;d<n.rows.length;d++){r[d]++;var l=n.rows[d].cells,o=this._colsS.height-this.xy.month_head_height;if(r[d]*i>o){var h=o;1*this.config.max_month_events!==this.config.max_month_events||r[d]<=this.config.max_month_events?h=r[d]*i:(this.config.max_month_events+1)*i>o&&(h=(this.config.max_month_events+1)*i); +for(var _=0;_<l.length;_++)l[_].childNodes[1].style.height=h+"px"}r[d]=(r[d-1]||0)+scheduler._get_first_visible_cell(l).offsetHeight}if(r.unshift(0),n.parentNode.offsetHeight<n.parentNode.scrollHeight&&!scheduler._colsS.scroll_fix&&scheduler.xy.scroll_width){var c=scheduler._colsS,u=c[c.col_length],g=c.heights.slice();u-=scheduler.xy.scroll_width||0,this._calc_scale_sizes(u,this._min_date,this._max_date),scheduler._colsS.heights=g,this.set_xy(this._els.dhx_cal_header[0],u,this.xy.scale_height),scheduler._render_scales(this._els.dhx_cal_header[0]), +scheduler._render_month_scale(this._els.dhx_cal_data[0],this._get_timeunit_start(),this._min_date),c.scroll_fix=!0}}else if(e.length||"visible"!=this._els.dhx_multi_day[0].style.visibility||(r[0]=-1),e.length||-1==r[0]){var v=(n.parentNode.childNodes,(r[0]+1)*i+1),f=v,m=v+"px";this.config.multi_day_height_limit&&(f=Math.min(v,this.config.multi_day_height_limit),m=f+"px"),s.style.top=this._els.dhx_cal_navline[0].offsetHeight+this._els.dhx_cal_header[0].offsetHeight+f+"px",s.style.height=this._obj.offsetHeight-parseInt(s.style.top,10)-(this.xy.margin_top||0)+"px"; +var p=this._els.dhx_multi_day[0];p.style.height=m,p.style.visibility=-1==r[0]?"hidden":"visible";var b=this._els.dhx_multi_day[1];b.style.height=m,b.style.visibility=-1==r[0]?"hidden":"visible",b.className=r[0]?"dhx_multi_day_icon":"dhx_multi_day_icon_small",this._dy_shift=(r[0]+1)*i,this.config.multi_day_height_limit&&(this._dy_shift=Math.min(this.config.multi_day_height_limit,this._dy_shift)),r[0]=0,f!=v&&(s.style.top=parseInt(s.style.top)+2+"px",p.style.overflowY="auto",b.style.position="fixed", +b.style.top="",b.style.left="")}}return e},scheduler._get_event_sday=function(e){var t=this.date.day_start(new Date(e.start_date));return Math.round((t.valueOf()-this._min_date.valueOf())/864e5)},scheduler._get_event_mapped_end_date=function(e){var t=e.end_date;if(this.config.separate_short_events){var i=(e.end_date-e.start_date)/6e4;i<this._min_mapped_duration&&(t=this.date.add(t,this._min_mapped_duration-i,"minute"))}return t},scheduler._pre_render_events_line=function(e,t){e.sort(function(e,t){ +return e.start_date.valueOf()==t.start_date.valueOf()?e.id>t.id?1:-1:e.start_date>t.start_date?1:-1});var i=[],a=[];this._min_mapped_duration=Math.ceil(60*this.xy.min_event_height/this.config.hour_size_px);for(var r=0;r<e.length;r++){var s=e[r],n=s.start_date,d=s.end_date,l=n.getHours(),o=d.getHours();if(s._sday=this._get_event_sday(s),this._ignores[s._sday])e.splice(r,1),r--;else{if(i[s._sday]||(i[s._sday]=[]),!t){s._inner=!1;for(var h=i[s._sday];h.length;){var _=h[h.length-1],c=this._get_event_mapped_end_date(_); +if(!(c.valueOf()<=s.start_date.valueOf()))break;h.splice(h.length-1,1)}for(var u=h.length,g=!1,v=0;v<h.length;v++){var _=h[v],c=this._get_event_mapped_end_date(_);if(c.valueOf()<=s.start_date.valueOf()){g=!0,s._sorder=_._sorder,u=v,s._inner=!0;break}}if(h.length&&(h[h.length-1]._inner=!0),!g)if(h.length)if(h.length<=h[h.length-1]._sorder){if(h[h.length-1]._sorder)for(v=0;v<h.length;v++){for(var f=!1,m=0;m<h.length;m++)if(h[m]._sorder==v){f=!0;break}if(!f){s._sorder=v;break}}else s._sorder=0;s._inner=!0; +}else{var p=h[0]._sorder;for(v=1;v<h.length;v++)h[v]._sorder>p&&(p=h[v]._sorder);s._sorder=p+1,s._inner=!1}else s._sorder=0;h.splice(u,u==h.length?0:1,s),h.length>(h.max_count||0)?(h.max_count=h.length,s._count=h.length):s._count=s._count?s._count:1}(l<this.config.first_hour||o>=this.config.last_hour)&&(a.push(s),e[r]=s=this._copy_event(s),l<this.config.first_hour&&(s.start_date.setHours(this.config.first_hour),s.start_date.setMinutes(0)),o>=this.config.last_hour&&(s.end_date.setMinutes(0),s.end_date.setHours(this.config.last_hour)), +s.start_date>s.end_date||l==this.config.last_hour)&&(e.splice(r,1),r--)}}if(!t){for(var r=0;r<e.length;r++)e[r]._count=i[e[r]._sday].max_count;for(var r=0;r<a.length;r++)a[r]._count=i[a[r]._sday].max_count}return e},scheduler._time_order=function(e){e.sort(function(e,t){return e.start_date.valueOf()==t.start_date.valueOf()?e._timed&&!t._timed?1:!e._timed&&t._timed?-1:e.id>t.id?1:-1:e.start_date>t.start_date?1:-1})},scheduler._pre_render_events_table=function(e,t){this._time_order(e);for(var i,a=[],r=[[],[],[],[],[],[],[]],s=this._colsS.heights,n=this._cols.length,d={},l=0;l<e.length;l++){ +var o=e[l],h=o.id;d[h]||(d[h]={first_chunk:!0,last_chunk:!0});var _=d[h],c=i||o.start_date,u=o.end_date;c<this._min_date&&(_.first_chunk=!1,c=this._min_date),u>this._max_date&&(_.last_chunk=!1,u=this._max_date);var g=this.locate_holder_day(c,!1,o);if(o._sday=g%n,!this._ignores[o._sday]||!o._timed){var v=this.locate_holder_day(u,!0,o)||n;o._eday=v%n||n,o._length=v-g,o._sweek=Math.floor((this._correct_shift(c.valueOf(),1)-this._min_date.valueOf())/(864e5*n));var f,m=r[o._sweek];for(f=0;f<m.length&&!(m[f]._eday<=o._sday);f++); +if(o._sorder&&t||(o._sorder=f),o._sday+o._length<=n)i=null,a.push(o),m[f]=o,s[o._sweek]=m.length-1,o._first_chunk=_.first_chunk,o._last_chunk=_.last_chunk;else{var p=this._copy_event(o);p.id=o.id,p._length=n-o._sday,p._eday=n,p._sday=o._sday,p._sweek=o._sweek,p._sorder=o._sorder,p.end_date=this.date.add(c,p._length,"day"),p._first_chunk=_.first_chunk,_.first_chunk&&(_.first_chunk=!1),a.push(p),m[f]=p,i=p.end_date,s[o._sweek]=m.length-1,l--}}}return a},scheduler._copy_dummy=function(){var e=new Date(this.start_date),t=new Date(this.end_date); +this.start_date=e,this.end_date=t},scheduler._copy_event=function(e){return this._copy_dummy.prototype=e,new this._copy_dummy},scheduler._rendered=[],scheduler.clear_view=function(){for(var e=0;e<this._rendered.length;e++){var t=this._rendered[e];t.parentNode&&t.parentNode.removeChild(t)}this._rendered=[]},scheduler.updateEvent=function(e){var t=this.getEvent(e);this.clear_event(e),t&&this.is_visible_events(t)&&this.filter_event(e,t)&&(this._table_view||this.config.multi_day||t._timed)&&(this.config.update_render?this.render_view_data():"month"!=this.getState().mode||this.getState().drag_id||this.isOneDayEvent(t)?this.render_view_data([t],!0):this.render_view_data()); +},scheduler.clear_event=function(e){this.for_rendered(e,function(e,t){e.parentNode&&e.parentNode.removeChild(e),scheduler._rendered.splice(t,1)})},scheduler._y_from_date=function(e){var t=60*e.getHours()+e.getMinutes();return Math.round((60*t*1e3-60*this.config.first_hour*60*1e3)*this.config.hour_size_px/36e5)%(24*this.config.hour_size_px)},scheduler._calc_event_y=function(e,t){t=t||0;var i=60*e.start_date.getHours()+e.start_date.getMinutes(),a=60*e.end_date.getHours()+e.end_date.getMinutes()||60*scheduler.config.last_hour,r=this._y_from_date(e.start_date),s=Math.max(t,(a-i)*this.config.hour_size_px/60); +return{top:r,height:s}},scheduler.render_event=function(e){var t=scheduler.xy.menu_width,i=this.config.use_select_menu_space?0:t;if(!(e._sday<0)){var a=scheduler.locate_holder(e._sday);if(a){var r=this._calc_event_y(e,scheduler.xy.min_event_height),s=r.top,n=r.height,d=e._count||1,l=e._sorder||0,o=Math.floor((a.clientWidth-i)/d),h=l*o+1;if(e._inner||(o*=d-l),this.config.cascade_event_display){var _=this.config.cascade_event_count,c=this.config.cascade_event_margin;h=l%_*c;var u=e._inner?(d-l-1)%_*c/2:0; +o=Math.floor(a.clientWidth-i-h-u)}var g=this._render_v_bar(e,i+h,s,o,n,e._text_style,scheduler.templates.event_header(e.start_date,e.end_date,e),scheduler.templates.event_text(e.start_date,e.end_date,e));if(this._waiAria.eventAttr(e,g),this._rendered.push(g),a.appendChild(g),h=h+parseInt(a.style.left,10)+i,this._edit_id==e.id){g.style.zIndex=1,o=Math.max(o-4,scheduler.xy.editor_width),g=document.createElement("DIV"),g.setAttribute("event_id",e.id),this._waiAria.eventAttr(e,g),this.set_xy(g,o,n-20,h,s+14), +g.className="dhx_cal_event dhx_cal_editor";var v=scheduler.templates.event_class(e.start_date,e.end_date,e);v&&(g.className+=" "+v);var f=document.createElement("DIV");this.set_xy(f,o-6,n-26),f.style.cssText+=";margin:2px 2px 2px 2px;overflow:hidden;",g.appendChild(f),this._els.dhx_cal_data[0].appendChild(g),this._rendered.push(g),f.innerHTML="<textarea class='dhx_cal_editor'>"+e.text+"</textarea>",this._quirks7&&(f.firstChild.style.height=n-12+"px"),this._editor=f.firstChild,this._editor.onkeydown=function(e){ +if((e||event).shiftKey)return!0;var t=(e||event).keyCode;t==scheduler.keys.edit_save&&scheduler.editStop(!0),t==scheduler.keys.edit_cancel&&scheduler.editStop(!1)},this._editor.onselectstart=function(e){return(e||event).cancelBubble=!0,!0},scheduler._focus(f.firstChild,!0),this._els.dhx_cal_data[0].scrollLeft=0}if(0!==this.xy.menu_width&&this._select_id==e.id){this.config.cascade_event_display&&this._drag_mode&&(g.style.zIndex=1);for(var m,p=this.config["icons_"+(this._edit_id==e.id?"edit":"select")],b="",x=e.color?"background-color: "+e.color+";":"",y=e.textColor?"color: "+e.textColor+";":"",w=0;w<p.length;w++)m=this._waiAria.eventMenuAttrString(p[w]), +b+="<div class='dhx_menu_icon "+p[w]+"' style='"+x+y+"' title='"+this.locale.labels[p[w]]+"'"+m+"></div>";var D=this._render_v_bar(e,h-t+1,s,t,20*p.length+26-2,"","<div style='"+x+y+"' class='dhx_menu_head'></div>",b,!0);D.style.left=h-t+1,this._els.dhx_cal_data[0].appendChild(D),this._rendered.push(D)}this.config.drag_highlight&&this._drag_id==e.id&&this.highlightEventPosition(e)}}},scheduler._render_v_bar=function(e,t,i,a,r,s,n,d,l){var o=document.createElement("DIV"),h=e.id,_=l?"dhx_cal_event dhx_cal_select_menu":"dhx_cal_event",c=scheduler.templates.event_class(e.start_date,e.end_date,e); +c&&(_=_+" "+c);var u=e.color?"background:"+e.color+";":"",g=e.textColor?"color:"+e.textColor+";":"",v='<div event_id="'+h+'" class="'+_+'" style="position:absolute; top:'+i+"px; left:"+t+"px; width:"+(a-4)+"px; height:"+r+"px;"+(s||"")+'"></div>';o.innerHTML=v;var f=o.cloneNode(!0).firstChild;if(!l&&scheduler.renderEvent(f,e,a,r,n,d))return f;f=o.firstChild;var m='<div class="dhx_event_move dhx_header" style=" width:'+(a-6)+"px;"+u+'" > </div>';m+='<div class="dhx_event_move dhx_title" style="'+u+g+'">'+n+"</div>", +m+='<div class="dhx_body" style=" width:'+(a-(this._quirks?4:14))+"px; height:"+(r-(this._quirks?20:30)+1)+"px;"+u+g+'">'+d+"</div>";var p="dhx_event_resize dhx_footer";return l&&(p="dhx_resize_denied "+p),m+='<div class="'+p+'" style=" width:'+(a-8)+"px;"+(l?" margin-top:-1px;":"")+u+g+'" ></div>',f.innerHTML=m,f},scheduler.renderEvent=function(){return!1},scheduler.locate_holder=function(e){return"day"==this._mode?this._els.dhx_cal_data[0].firstChild:this._els.dhx_cal_data[0].childNodes[e]},scheduler.locate_holder_day=function(e,t){ +var i=Math.floor((this._correct_shift(e,1)-this._min_date)/864e5);return t&&this.date.time_part(e)&&i++,i},scheduler._get_dnd_order=function(e,t,i){if(!this._drag_event)return e;this._drag_event._orig_sorder?e=this._drag_event._orig_sorder:this._drag_event._orig_sorder=e;for(var a=t*e;a+t>i;)e--,a-=t;return e=Math.max(e,0)},scheduler._get_event_bar_pos=function(e){var t=this._colsS[e._sday],i=this._colsS[e._eday];i==t&&(i=this._colsS[e._eday+1]);var a=this.xy.bar_height,r=e._sorder;if(e.id==this._drag_id){ +var s=this._colsS.heights[e._sweek+1]-this._colsS.heights[e._sweek]-this.xy.month_head_height;r=scheduler._get_dnd_order(r,a,s)}var n=r*a,d=this._colsS.heights[e._sweek]+(this._colsS.height?this.xy.month_scale_height+2:2)+n;return{x:t,x2:i,y:d}},scheduler.render_event_bar=function(e){var t=this._rendered_location,i=this._get_event_bar_pos(e),a=i.y,r=i.x,s=i.x2,n="";if(s){var d=scheduler.config.resize_month_events&&"month"==this._mode&&(!e._timed||scheduler.config.resize_month_timed),l=document.createElement("DIV"),o=e.hasOwnProperty("_first_chunk")&&e._first_chunk,h=e.hasOwnProperty("_last_chunk")&&e._last_chunk,_=d&&(e._timed||o),c=d&&(e._timed||h),u="dhx_cal_event_clear"; +(!e._timed||d)&&(u="dhx_cal_event_line"),o&&(u+=" dhx_cal_event_line_start"),h&&(u+=" dhx_cal_event_line_end"),_&&(n+="<div class='dhx_event_resize dhx_event_resize_start'></div>"),c&&(n+="<div class='dhx_event_resize dhx_event_resize_end'></div>");var g=scheduler.templates.event_class(e.start_date,e.end_date,e);g&&(u+=" "+g);var v=e.color?"background:"+e.color+";":"",f=e.textColor?"color:"+e.textColor+";":"",m=["position:absolute","top:"+a+"px","left:"+r+"px","width:"+(s-r-15)+"px",f,v,e._text_style||""].join(";"),p="<div event_id='"+e.id+"' class='"+u+"' style='"+m+"'"+this._waiAria.eventBarAttrString(e)+">"; +d&&(p+=n),"month"==scheduler.getState().mode&&(e=scheduler.getEvent(e.id)),e._timed&&(p+=scheduler.templates.event_bar_date(e.start_date,e.end_date,e)),p+=scheduler.templates.event_bar_text(e.start_date,e.end_date,e)+"</div>",p+="</div>",l.innerHTML=p,this._rendered.push(l.firstChild),t.appendChild(l.firstChild)}},scheduler._locate_event=function(e){for(var t=null;e&&!t&&e.getAttribute;)t=e.getAttribute("event_id"),e=e.parentNode;return t},scheduler._locate_css=function(e,t,i){void 0===i&&(i=!0);for(var a=e.target||e.srcElement,r="";a;){ +if(r=scheduler._getClassName(a)){var s=r.indexOf(t);if(s>=0){if(!i)return a;var n=0===s||!scheduler._trim(r.charAt(s-1)),d=s+t.length>=r.length||!scheduler._trim(r.charAt(s+t.length));if(n&&d)return a}}a=a.parentNode}return null},scheduler.edit=function(e){this._edit_id!=e&&(this.editStop(!1,e),this._edit_id=e,this.updateEvent(e))},scheduler.editStop=function(e,t){if(!t||this._edit_id!=t){var i=this.getEvent(this._edit_id);i&&(e&&(i.text=this._editor.value),this._edit_id=null,this._editor=null,this.updateEvent(i.id), +this._edit_stop_event(i,e))}},scheduler._edit_stop_event=function(e,t){this._new_event?(t?this.callEvent("onEventAdded",[e.id,e]):e&&this.deleteEvent(e.id,!0),this._new_event=null):t&&this.callEvent("onEventChanged",[e.id,e])},scheduler.getEvents=function(e,t){var i=[];for(var a in this._events){var r=this._events[a];r&&(!e&&!t||r.start_date<t&&r.end_date>e)&&i.push(r)}return i},scheduler.getRenderedEvent=function(e){if(e){for(var t=scheduler._rendered,i=0;i<t.length;i++){var a=t[i];if(a.getAttribute("event_id")==e)return a; +}return null}},scheduler.showEvent=function(e,t){var i="number"==typeof e||"string"==typeof e?scheduler.getEvent(e):e;if(t=t||scheduler._mode,i&&(!this.checkEvent("onBeforeEventDisplay")||this.callEvent("onBeforeEventDisplay",[i,t]))){var a=scheduler.config.scroll_hour;scheduler.config.scroll_hour=i.start_date.getHours();var r=scheduler.config.preserve_scroll;scheduler.config.preserve_scroll=!1;var s=i.color,n=i.textColor;if(scheduler.config.highlight_displayed_event&&(i.color=scheduler.config.displayed_event_color, +i.textColor=scheduler.config.displayed_event_text_color),scheduler.setCurrentView(new Date(i.start_date),t),i.color=s,i.textColor=n,scheduler.config.scroll_hour=a,scheduler.config.preserve_scroll=r,scheduler.matrix&&scheduler.matrix[t]){var d=scheduler.getRenderedEvent(i.id);d&&(scheduler._els.dhx_cal_data[0].scrollTop=getAbsoluteTop(d)-getAbsoluteTop(scheduler._els.dhx_cal_data[0])-20)}scheduler.callEvent("onAfterEventDisplay",[i,t])}},scheduler._append_drag_marker=function(e){if(!e.parentNode){ +var t=scheduler._els.dhx_cal_data[0],i=t.lastChild,a=scheduler._getClassName(i);a.indexOf("dhx_scale_holder")<0&&i.previousSibling&&(i=i.previousSibling),a=scheduler._getClassName(i),i&&0===a.indexOf("dhx_scale_holder")&&i.appendChild(e)}},scheduler._update_marker_position=function(e,t){var i=scheduler._calc_event_y(t,0);e.style.top=i.top+"px",e.style.height=i.height+"px"},scheduler.highlightEventPosition=function(e){var t=document.createElement("div");t.setAttribute("event_id",e.id),this._rendered.push(t), +this._update_marker_position(t,e);var i=this.templates.drag_marker_class(e.start_date,e.end_date,e),a=this.templates.drag_marker_content(e.start_date,e.end_date,e);t.className="dhx_drag_marker",i&&(t.className+=" "+i),a&&(t.innerHTML=a),this._append_drag_marker(t)},scheduler._loaded={},scheduler._load=function(e,t){if(e=e||this._load_url){e+=(-1==e.indexOf("?")?"?":"&")+"timeshift="+(new Date).getTimezoneOffset(),this.config.prevent_cache&&(e+="&uid="+this.uid());var i;if(t=t||this._date,this._load_mode){ +var a=this.templates.load_format;for(t=this.date[this._load_mode+"_start"](new Date(t.valueOf()));t>this._min_date;)t=this.date.add(t,-1,this._load_mode);i=t;for(var r=!0;i<this._max_date;)i=this.date.add(i,1,this._load_mode),this._loaded[a(t)]&&r?t=this.date.add(t,1,this._load_mode):r=!1;var s=i;do i=s,s=this.date.add(i,-1,this._load_mode);while(s>t&&this._loaded[a(s)]);if(t>=i)return!1;for(dhtmlxAjax.get(e+"&from="+a(t)+"&to="+a(i),function(e){scheduler.on_load(e)});i>t;)this._loaded[a(t)]=!0,t=this.date.add(t,1,this._load_mode); +}else dhtmlxAjax.get(e,function(e){scheduler.on_load(e)});return this.callEvent("onXLS",[]),!0}},scheduler.on_load=function(e){var t,i=!1;if(this._process&&"xml"!=this._process)try{t=this[this._process].parse(e.xmlDoc.responseText)}catch(a){i=!0}else t=this._magic_parser(e),t||(i=!0);i&&(this.callEvent("onLoadError",[e.xmlDoc]),t=[]),scheduler._process_loading(t),this.callEvent("onXLE",[])},scheduler._process_loading=function(e){this._loading=!0,this._not_render=!0;for(var t=0;t<e.length;t++)this.callEvent("onEventLoading",[e[t]])&&this.addEvent(e[t]); +this._not_render=!1,this._render_wait&&this.render_view_data(),this._loading=!1,this._after_call&&this._after_call(),this._after_call=null},scheduler._init_event=function(e){e.text=e.text||e._tagvalue||"",e.start_date=scheduler._init_date(e.start_date),e.end_date=scheduler._init_date(e.end_date)},scheduler._init_date=function(e){return e?"string"==typeof e?scheduler.templates.xml_date(e):new Date(e):null},scheduler.json={},scheduler.json.parse=function(data){"string"==typeof data&&(window.JSON?scheduler._temp=JSON.parse(data):scheduler._temp=eval("("+data+")"), +data=scheduler._temp?scheduler._temp.data||scheduler._temp.d||scheduler._temp:[]),data.dhx_security&&(dhtmlx.security_key=data.dhx_security);var collections=scheduler._temp&&scheduler._temp.collections?scheduler._temp.collections:{},collections_loaded=!1;for(var key in collections)if(collections.hasOwnProperty(key)){collections_loaded=!0;var collection=collections[key],arr=scheduler.serverList[key];if(!arr)continue;arr.splice(0,arr.length);for(var j=0;j<collection.length;j++){var option=collection[j],obj={ +key:option.value,label:option.label};for(var option_key in option)if(option.hasOwnProperty(option_key)){if("value"==option_key||"label"==option_key)continue;obj[option_key]=option[option_key]}arr.push(obj)}}collections_loaded&&scheduler.callEvent("onOptionsLoad",[]);for(var evs=[],i=0;i<data.length;i++){var event=data[i];scheduler._init_event(event),evs.push(event)}return evs},scheduler.parse=function(e,t){this._process=t,this.on_load({xmlDoc:{responseText:e}})},scheduler.load=function(e,t){"string"==typeof t&&(this._process=t, +t=arguments[2]),this._load_url=e,this._after_call=t,this._load(e,this._date)},scheduler.setLoadMode=function(e){"all"==e&&(e=""),this._load_mode=e},scheduler.serverList=function(e,t){return t?(this.serverList[e]=t.slice(0),this.serverList[e]):(this.serverList[e]=this.serverList[e]||[],this.serverList[e])},scheduler._userdata={},scheduler._magic_parser=function(e){var t;if(!e.getXMLTopNode){var i=e.xmlDoc.responseText;e=new dtmlXMLLoaderObject(function(){}),e.loadXMLString(i)}if(t=e.getXMLTopNode("data"), +"data"!=t.tagName)return null;var a=t.getAttribute("dhx_security");a&&(dhtmlx.security_key=a);for(var r=e.doXPath("//coll_options"),s=0;s<r.length;s++){var n=r[s].getAttribute("for"),d=this.serverList[n];if(d){d.splice(0,d.length);for(var l=e.doXPath(".//item",r[s]),o=0;o<l.length;o++){for(var h=l[o],_=h.attributes,c={key:l[o].getAttribute("value"),label:l[o].getAttribute("label")},u=0;u<_.length;u++){var g=_[u];"value"!=g.nodeName&&"label"!=g.nodeName&&(c[g.nodeName]=g.nodeValue)}d.push(c)}}}r.length&&scheduler.callEvent("onOptionsLoad",[]); +for(var v=e.doXPath("//userdata"),s=0;s<v.length;s++){var f=this._xmlNodeToJSON(v[s]);this._userdata[f.name]=f.text}var m=[];t=e.doXPath("//event");for(var s=0;s<t.length;s++){var p=m[s]=this._xmlNodeToJSON(t[s]);scheduler._init_event(p)}return m},scheduler._xmlNodeToJSON=function(e){for(var t={},i=0;i<e.attributes.length;i++)t[e.attributes[i].name]=e.attributes[i].value;for(var i=0;i<e.childNodes.length;i++){var a=e.childNodes[i];1==a.nodeType&&(t[a.tagName]=a.firstChild?a.firstChild.nodeValue:""); +}return t.text||(t.text=e.firstChild?e.firstChild.nodeValue:""),t},scheduler.attachEvent("onXLS",function(){if(this.config.show_loading===!0){var e;e=this.config.show_loading=document.createElement("DIV"),e.className="dhx_loading",e.style.left=Math.round((this._x-128)/2)+"px",e.style.top=Math.round((this._y-15)/2)+"px",this._obj.appendChild(e)}}),scheduler.attachEvent("onXLE",function(){var e=this.config.show_loading;e&&"object"==typeof e&&(this._obj.removeChild(e),this.config.show_loading=!0)}), +scheduler.ical={parse:function(e){var t=e.match(RegExp(this.c_start+"[^\f]*"+this.c_end,""));if(t.length){t[0]=t[0].replace(/[\r\n]+(?=[a-z \t])/g," "),t[0]=t[0].replace(/\;[^:\r\n]*:/g,":");for(var i,a=[],r=RegExp("(?:"+this.e_start+")([^\f]*?)(?:"+this.e_end+")","g");null!==(i=r.exec(t));){for(var s,n={},d=/[^\r\n]+[\r\n]+/g;null!==(s=d.exec(i[1]));)this.parse_param(s.toString(),n);n.uid&&!n.id&&(n.id=n.uid),a.push(n)}return a}},parse_param:function(e,t){var i=e.indexOf(":");if(-1!=i){var a=e.substr(0,i).toLowerCase(),r=e.substr(i+1).replace(/\\\,/g,",").replace(/[\r\n]+$/,""); +"summary"==a?a="text":"dtstart"==a?(a="start_date",r=this.parse_date(r,0,0)):"dtend"==a&&(a="end_date",r=this.parse_date(r,0,0)),t[a]=r}},parse_date:function(e,t,i){var a=e.split("T");a[1]&&(t=a[1].substr(0,2),i=a[1].substr(2,2));var r=a[0].substr(0,4),s=parseInt(a[0].substr(4,2),10)-1,n=a[0].substr(6,2);return scheduler.config.server_utc&&!a[1]?new Date(Date.UTC(r,s,n,t,i)):new Date(r,s,n,t,i)},c_start:"BEGIN:VCALENDAR",e_start:"BEGIN:VEVENT",e_end:"END:VEVENT",c_end:"END:VCALENDAR"},scheduler._lightbox_controls={}, +scheduler.formSection=function(e){var t=this.config.lightbox.sections,i=0;for(i;i<t.length&&t[i].name!=e;i++);var a=t[i];scheduler._lightbox||scheduler.getLightbox();var r=document.getElementById(a.id),s=r.nextSibling,n={section:a,header:r,node:s,getValue:function(e){return scheduler.form_blocks[a.type].get_value(s,e||{},a)},setValue:function(e,t){return scheduler.form_blocks[a.type].set_value(s,e,t||{},a)}},d=scheduler._lightbox_controls["get_"+a.type+"_control"];return d?d(n):n},scheduler._lightbox_controls.get_template_control=function(e){ +return e.control=e.node,e},scheduler._lightbox_controls.get_select_control=function(e){return e.control=e.node.getElementsByTagName("select")[0],e},scheduler._lightbox_controls.get_textarea_control=function(e){return e.control=e.node.getElementsByTagName("textarea")[0],e},scheduler._lightbox_controls.get_time_control=function(e){return e.control=e.node.getElementsByTagName("select"),e},scheduler.form_blocks={template:{render:function(e){var t=(e.height||"30")+"px";return"<div class='dhx_cal_ltext dhx_cal_template' style='height:"+t+";'></div>"; +},set_value:function(e,t,i,a){e.innerHTML=t||""},get_value:function(e,t,i){return e.innerHTML||""},focus:function(e){}},textarea:{render:function(e){var t=(e.height||"130")+"px";return"<div class='dhx_cal_ltext' style='height:"+t+";'><textarea></textarea></div>"},set_value:function(e,t,i){scheduler.form_blocks.textarea._get_input(e).value=t||""},get_value:function(e,t){return scheduler.form_blocks.textarea._get_input(e).value},focus:function(e){var t=scheduler.form_blocks.textarea._get_input(e);scheduler._focus(t,!0); +},_get_input:function(e){return e.getElementsByTagName("textarea")[0]}},select:{render:function(e){for(var t=(e.height||"23")+"px",i="<div class='dhx_cal_ltext' style='height:"+t+";'><select style='width:100%;'>",a=0;a<e.options.length;a++)i+="<option value='"+e.options[a].key+"'>"+e.options[a].label+"</option>";return i+="</select></div>"},set_value:function(e,t,i,a){var r=e.firstChild;!r._dhx_onchange&&a.onchange&&(r.onchange=a.onchange,r._dhx_onchange=!0),"undefined"==typeof t&&(t=(r.options[0]||{}).value), +r.value=t||""},get_value:function(e,t){return e.firstChild.value},focus:function(e){var t=e.firstChild;scheduler._focus(t,!0)}},time:{render:function(e){e.time_format||(e.time_format=["%H:%i","%d","%m","%Y"]),e._time_format_order={};var t=e.time_format,i=scheduler.config,a=this.date.date_part(scheduler._currentDate()),r=1440,s=0;scheduler.config.limit_time_select&&(r=60*i.last_hour+1,s=60*i.first_hour,a.setHours(i.first_hour));for(var n="",d=0;d<t.length;d++){var l=t[d];d>0&&(n+=" ");var o="";switch(l){ +case"%Y":e._time_format_order[3]=d;for(var h=a.getFullYear()-5,_=0;10>_;_++)o+="<option value='"+(h+_)+"'>"+(h+_)+"</option>";break;case"%m":e._time_format_order[2]=d;for(var _=0;12>_;_++)o+="<option value='"+_+"'>"+this.locale.date.month_full[_]+"</option>";break;case"%d":e._time_format_order[1]=d;for(var _=1;32>_;_++)o+="<option value='"+_+"'>"+_+"</option>";break;case"%H:%i":e._time_format_order[0]=d;var _=s,c=a.getDate();for(e._time_values=[];r>_;){var u=this.templates.time_picker(a);o+="<option value='"+_+"'>"+u+"</option>", +e._time_values.push(_),a.setTime(a.valueOf()+60*this.config.time_step*1e3);var g=a.getDate()!=c?1:0;_=24*g*60+60*a.getHours()+a.getMinutes()}}if(o){var v=scheduler._waiAria.lightboxSelectAttrString(l),f=e.readonly?"disabled='disabled'":"";n+="<select "+f+v+">"+o+"</select> "}}return"<div style='height:30px;padding-top:0px;font-size:inherit;' class='dhx_section_time'>"+n+"<span style='font-weight:normal; font-size:10pt;'> – </span>"+n+"</div>"},set_value:function(e,t,i,a){function r(e,t,i){ +for(var r=a._time_values,s=60*i.getHours()+i.getMinutes(),n=s,d=!1,l=0;l<r.length;l++){var h=r[l];if(h===s){d=!0;break}s>h&&(n=h)}e[t+o[0]].value=d?s:n,d||n||(e[t+o[0]].selectedIndex=-1),e[t+o[1]].value=i.getDate(),e[t+o[2]].value=i.getMonth(),e[t+o[3]].value=i.getFullYear()}var s,n,d=scheduler.config,l=e.getElementsByTagName("select"),o=a._time_format_order;if(d.full_day){if(!e._full_day){var h="<label class='dhx_fullday'><input type='checkbox' name='full_day' value='true'> "+scheduler.locale.labels.full_day+" </label></input>"; +scheduler.config.wide_form||(h=e.previousSibling.innerHTML+h),e.previousSibling.innerHTML=h,e._full_day=!0}var _=e.previousSibling.getElementsByTagName("input")[0];_.checked=0===scheduler.date.time_part(i.start_date)&&0===scheduler.date.time_part(i.end_date),l[o[0]].disabled=_.checked,l[o[0]+l.length/2].disabled=_.checked,_.onclick=function(){if(_.checked){var t={};scheduler.form_blocks.time.get_value(e,t,a),s=scheduler.date.date_part(t.start_date),n=scheduler.date.date_part(t.end_date),(+n==+s||+n>=+s&&(0!==i.end_date.getHours()||0!==i.end_date.getMinutes()))&&(n=scheduler.date.add(n,1,"day")); +}else s=null,n=null;l[o[0]].disabled=_.checked,l[o[0]+l.length/2].disabled=_.checked,r(l,0,s||i.start_date),r(l,4,n||i.end_date)}}if(d.auto_end_date&&d.event_duration)for(var c=function(){s=new Date(l[o[3]].value,l[o[2]].value,l[o[1]].value,0,l[o[0]].value),n=new Date(s.getTime()+60*scheduler.config.event_duration*1e3),r(l,4,n)},u=0;4>u;u++)l[u].onchange=c;r(l,0,i.start_date),r(l,4,i.end_date)},get_value:function(e,t,i){var a=e.getElementsByTagName("select"),r=i._time_format_order;if(t.start_date=new Date(a[r[3]].value,a[r[2]].value,a[r[1]].value,0,a[r[0]].value), +t.end_date=new Date(a[r[3]+4].value,a[r[2]+4].value,a[r[1]+4].value,0,a[r[0]+4].value),!a[r[3]].value||!a[r[3]+4].value){var s=this.getEvent(this._lightbox_id);s&&(t.start_date=s.start_date,t.end_date=s.end_date)}return t.end_date<=t.start_date&&(t.end_date=scheduler.date.add(t.start_date,scheduler.config.time_step,"minute")),{start_date:new Date(t.start_date),end_date:new Date(t.end_date)}},focus:function(e){scheduler._focus(e.getElementsByTagName("select")[0])}}},scheduler.showCover=function(e){ +if(e){e.style.display="block";var t=window.pageYOffset||document.body.scrollTop||document.documentElement.scrollTop,i=window.pageXOffset||document.body.scrollLeft||document.documentElement.scrollLeft,a=window.innerHeight||document.documentElement.clientHeight;t?e.style.top=Math.round(t+Math.max((a-e.offsetHeight)/2,0))+"px":e.style.top=Math.round(Math.max((a-e.offsetHeight)/2,0)+9)+"px",document.documentElement.scrollWidth>document.body.offsetWidth?e.style.left=Math.round(i+(document.body.offsetWidth-e.offsetWidth)/2)+"px":e.style.left=Math.round((document.body.offsetWidth-e.offsetWidth)/2)+"px"; +}this.show_cover()},scheduler.showLightbox=function(e){if(e){if(!this.callEvent("onBeforeLightbox",[e]))return void(this._new_event&&(this._new_event=null));var t=this.getLightbox();this.showCover(t),this._fill_lightbox(e,t),this._waiAria.lightboxVisibleAttr(t),this.callEvent("onLightbox",[e])}},scheduler._fill_lightbox=function(e,t){var i=this.getEvent(e),a=t.getElementsByTagName("span"),r=[];if(scheduler.templates.lightbox_header){r.push("");var s=scheduler.templates.lightbox_header(i.start_date,i.end_date,i); +r.push(s),a[1].innerHTML="",a[2].innerHTML=s}else{var n=this.templates.event_header(i.start_date,i.end_date,i),d=(this.templates.event_bar_text(i.start_date,i.end_date,i)||"").substr(0,70);r.push(n),r.push(d),a[1].innerHTML=n,a[2].innerHTML=d}this._waiAria.lightboxHeader(t,r.join(" "));for(var l=this.config.lightbox.sections,o=0;o<l.length;o++){var h=l[o],_=document.getElementById(h.id).nextSibling,c=this.form_blocks[h.type],u=void 0!==i[h.map_to]?i[h.map_to]:h.default_value;c.set_value.call(this,_,u,i,h), +l[o].focus&&c.focus.call(this,_)}scheduler._lightbox_id=e},scheduler._lightbox_out=function(e){for(var t=this.config.lightbox.sections,i=0;i<t.length;i++){var a=document.getElementById(t[i].id);a=a?a.nextSibling:a;var r=this.form_blocks[t[i].type],s=r.get_value.call(this,a,e,t[i]);"auto"!=t[i].map_to&&(e[t[i].map_to]=s)}return e},scheduler._empty_lightbox=function(e){var t=scheduler._lightbox_id,i=this.getEvent(t);this.getLightbox();this._lame_copy(i,e),this.setEvent(i.id,i),this._edit_stop_event(i,!0), +this.render_view_data()},scheduler.hide_lightbox=function(e){var t=this.getLightbox();this.hideCover(t),this._waiAria.lightboxHiddenAttr(t),this._lightbox_id=null,this.callEvent("onAfterLightbox",[])},scheduler.hideCover=function(e){e&&(e.style.display="none"),this.hide_cover()},scheduler.hide_cover=function(){this._cover&&this._cover.parentNode.removeChild(this._cover),this._cover=null},scheduler.show_cover=function(){if(!this._cover){this._cover=document.createElement("DIV"),this._cover.className="dhx_cal_cover"; +var e=void 0!==document.height?document.height:document.body.offsetHeight,t=document.documentElement?document.documentElement.scrollHeight:0;this._cover.style.height=Math.max(e,t)+"px",document.body.appendChild(this._cover)}},scheduler.save_lightbox=function(){var e=this._lightbox_out({},this._lame_copy(this.getEvent(this._lightbox_id)));(!this.checkEvent("onEventSave")||this.callEvent("onEventSave",[this._lightbox_id,e,this._new_event]))&&(this._empty_lightbox(e),this.hide_lightbox())},scheduler.startLightbox=function(e,t){ +this._lightbox_id=e,this._custom_lightbox=!0,this._temp_lightbox=this._lightbox,this._lightbox=t,this.showCover(t)},scheduler.endLightbox=function(e,t){this._edit_stop_event(scheduler.getEvent(this._lightbox_id),e),e&&scheduler.render_view_data(),this.hideCover(t),this._custom_lightbox&&(this._lightbox=this._temp_lightbox,this._custom_lightbox=!1),this._temp_lightbox=this._lightbox_id=null},scheduler.resetLightbox=function(){scheduler._lightbox&&!scheduler._custom_lightbox&&scheduler._lightbox.parentNode.removeChild(scheduler._lightbox), +scheduler._lightbox=null},scheduler.cancel_lightbox=function(){this.callEvent("onEventCancel",[this._lightbox_id,this._new_event]),this.endLightbox(!1),this.hide_lightbox()},scheduler._init_lightbox_events=function(){this.getLightbox().onclick=function(e){var t=e?e.target:event.srcElement;t.className||(t=t.previousSibling);var i=scheduler._getClassName(t);if(t&&i)switch(i){case"dhx_save_btn":scheduler.save_lightbox();break;case"dhx_delete_btn":var a=scheduler.locale.labels.confirm_deleting;scheduler._dhtmlx_confirm(a,scheduler.locale.labels.title_confirm_deleting,function(){ +scheduler.deleteEvent(scheduler._lightbox_id),scheduler._new_event=null,scheduler.hide_lightbox()});break;case"dhx_cancel_btn":scheduler.cancel_lightbox();break;default:if(t.getAttribute("dhx_button"))scheduler.callEvent("onLightboxButton",[i,t,e]);else{var r,s,n;-1!=i.indexOf("dhx_custom_button")&&(-1!=i.indexOf("dhx_custom_button_")?(r=t.parentNode.getAttribute("index"),n=t.parentNode.parentNode):(r=t.getAttribute("index"),n=t.parentNode,t=t.firstChild)),r&&(s=scheduler.form_blocks[scheduler.config.lightbox.sections[r].type], +s.button_click(r,t,n,n.nextSibling))}}},this.getLightbox().onkeydown=function(e){var t=e||window.event,i=e.target||e.srcElement,a=i.querySelector("[dhx_button]");switch(a||(a=i.parentNode.querySelector(".dhx_custom_button, .dhx_readonly")),(e||t).keyCode){case 32:if((e||t).shiftKey)return;a&&a.click&&a.click();break;case scheduler.keys.edit_save:if((e||t).shiftKey)return;a&&a.click?a.click():scheduler.save_lightbox();break;case scheduler.keys.edit_cancel:scheduler.cancel_lightbox()}}},scheduler.setLightboxSize=function(){ +var e=this._lightbox;if(e){var t=e.childNodes[1];t.style.height="0px",t.style.height=t.scrollHeight+"px",e.style.height=t.scrollHeight+scheduler.xy.lightbox_additional_height+"px",t.style.height=t.scrollHeight+"px"}},scheduler._init_dnd_events=function(){dhtmlxEvent(document.body,"mousemove",scheduler._move_while_dnd),dhtmlxEvent(document.body,"mouseup",scheduler._finish_dnd),scheduler._init_dnd_events=function(){}},scheduler._move_while_dnd=function(e){if(scheduler._dnd_start_lb){document.dhx_unselectable||(document.body.className+=" dhx_unselectable", +document.dhx_unselectable=!0);var t=scheduler.getLightbox(),i=e&&e.target?[e.pageX,e.pageY]:[event.clientX,event.clientY];t.style.top=scheduler._lb_start[1]+i[1]-scheduler._dnd_start_lb[1]+"px",t.style.left=scheduler._lb_start[0]+i[0]-scheduler._dnd_start_lb[0]+"px"}},scheduler._ready_to_dnd=function(e){var t=scheduler.getLightbox();scheduler._lb_start=[parseInt(t.style.left,10),parseInt(t.style.top,10)],scheduler._dnd_start_lb=e&&e.target?[e.pageX,e.pageY]:[event.clientX,event.clientY]},scheduler._finish_dnd=function(){ +scheduler._lb_start&&(scheduler._lb_start=scheduler._dnd_start_lb=!1,document.body.className=document.body.className.replace(" dhx_unselectable",""),document.dhx_unselectable=!1)},scheduler.getLightbox=function(){if(!this._lightbox){var e=document.createElement("DIV");e.className="dhx_cal_light",scheduler.config.wide_form&&(e.className+=" dhx_cal_light_wide"),scheduler.form_blocks.recurring&&(e.className+=" dhx_cal_light_rec"),/msie|MSIE 6/.test(navigator.userAgent)&&(e.className+=" dhx_ie6"),e.style.visibility="hidden"; +for(var t=this._lightbox_template,i=this.config.buttons_left,a="",r=0;r<i.length;r++)a=this._waiAria.lightboxButtonAttrString(i[r]),t+="<div "+a+" class='dhx_btn_set dhx_left_btn_set "+i[r]+"_set'><div dhx_button='1' class='"+i[r]+"'></div><div>"+scheduler.locale.labels[i[r]]+"</div></div>";i=this.config.buttons_right;for(var r=0;r<i.length;r++)a=this._waiAria.lightboxButtonAttrString(i[r]),t+="<div "+a+" class='dhx_btn_set dhx_right_btn_set "+i[r]+"_set' style='float:right;'><div dhx_button='1' class='"+i[r]+"'></div><div>"+scheduler.locale.labels[i[r]]+"</div></div>"; +t+="</div>",e.innerHTML=t,scheduler.config.drag_lightbox&&(e.firstChild.onmousedown=scheduler._ready_to_dnd,e.firstChild.onselectstart=function(){return!1},e.firstChild.style.cursor="pointer",scheduler._init_dnd_events()),this._waiAria.lightboxAttr(e),document.body.insertBefore(e,document.body.firstChild),this._lightbox=e;var s=this.config.lightbox.sections;t="";for(var r=0;r<s.length;r++){var n=this.form_blocks[s[r].type];if(n){s[r].id="area_"+this.uid();var d="";if(s[r].button){var a=scheduler._waiAria.lightboxSectionButtonAttrString(this.locale.labels["button_"+s[r].button]); +d="<div "+a+" class='dhx_custom_button' index='"+r+"'><div class='dhx_custom_button_"+s[r].button+"'></div><div>"+this.locale.labels["button_"+s[r].button]+"</div></div>"}this.config.wide_form&&(t+="<div class='dhx_wrap_section'>");var l=this.locale.labels["section_"+s[r].name];"string"!=typeof l&&(l=s[r].name),t+="<div id='"+s[r].id+"' class='dhx_cal_lsection'>"+d+"<label>"+l+"</label></div>"+n.render.call(this,s[r]),t+="</div>"}}for(var o=e.getElementsByTagName("div"),r=0;r<o.length;r++){var h=o[r],_=scheduler._getClassName(h); +if("dhx_cal_larea"==_){h.innerHTML=t;break}}for(var r=0;r<s.length;r++){var c=s[r];if(c.id&&document.getElementById(c.id)){var u=document.getElementById(c.id),g=u.querySelector("label"),v=u.nextSibling;if(v){var f=v.querySelector("input, select, textarea");f&&(c.inputId=f.id||"input_"+scheduler.uid(),f.id||(f.id=c.inputId),g.setAttribute("for",c.inputId))}}}this.setLightboxSize(),this._init_lightbox_events(this),e.style.display="none",e.style.visibility="visible"}return this._lightbox},scheduler.attachEvent("onEventIdChange",function(e,t){ +this._lightbox_id==e&&(this._lightbox_id=t)}),scheduler._lightbox_template="<div class='dhx_cal_ltitle'><span class='dhx_mark'> </span><span class='dhx_time'></span><span class='dhx_title'></span></div><div class='dhx_cal_larea'></div>",scheduler._init_touch_events=function(){"force"!=this.config.touch&&(this.config.touch=this.config.touch&&(-1!=navigator.userAgent.indexOf("Mobile")||-1!=navigator.userAgent.indexOf("iPad")||-1!=navigator.userAgent.indexOf("Android")||-1!=navigator.userAgent.indexOf("Touch"))), +this.config.touch&&(this.xy.scroll_width=0,window.navigator.msPointerEnabled?(this._touch_events(["MSPointerMove","MSPointerDown","MSPointerUp"],function(e){return e.pointerType==e.MSPOINTER_TYPE_MOUSE?null:e},function(e){return!e||e.pointerType==e.MSPOINTER_TYPE_MOUSE||scheduler._pointerDragId&&scheduler._pointerDragId!=e.pointerId}),this._obj.ondblclick=function(){}):this._touch_events(["touchmove","touchstart","touchend"],function(e){return e.touches&&e.touches.length>1?null:e.touches&&e.touches[0]?{ +target:e.target,pageX:e.touches[0].pageX,pageY:e.touches[0].pageY}:e},function(e){return!!(e.touches&&e.touches.length>1)}))},scheduler._touch_events=function(e,t,i){function a(e,t,i){dhtmlxEvent(e,t,function(e){return scheduler._is_lightbox_open()?!0:i(e)})}function r(e,t,i,a){if(e&&t){for(var r=e.target;r&&r!=scheduler._obj;)r=r.parentNode;if(r==scheduler._obj){var s=Math.abs(e.pageY-t.pageY),n=Math.abs(e.pageX-t.pageX);a>s&&n>i&&(!s||n/s>3)&&(e.pageX>t.pageX?scheduler._click.dhx_cal_next_button():scheduler._click.dhx_cal_prev_button()); +}}}function s(e){var t=scheduler.getState().drag_mode,i=scheduler.matrix?scheduler.matrix[scheduler._mode]:!1,a=scheduler.render_view_data;"create"==t&&i&&(scheduler.render_view_data=function(){for(var e=scheduler.getState().drag_id,t=scheduler.getEvent(e),a=i.y_property,r=scheduler.getEvents(t.start_date,t.end_date),s=0;s<r.length;s++)r[s][a]!=t[a]&&(r.splice(s,1),s--);t._sorder=r.length-1,t._count=r.length,this.render_data([t],scheduler.getState().mode)}),scheduler._on_mouse_move(e),"create"==t&&i&&(scheduler.render_view_data=a); +}function n(e){scheduler._hide_global_tip(),h&&(scheduler._on_mouse_up(t(e||event)),scheduler._temp_touch_block=!1),scheduler._drag_id=null,scheduler._drag_mode=null,scheduler._drag_pos=null,scheduler._pointerDragId=null,clearTimeout(o),h=c=!1,_=!0}var d,l,o,h,_,c,u=(-1!=navigator.userAgent.indexOf("Android")&&-1!=navigator.userAgent.indexOf("WebKit"),0);a(document.body,e[0],function(e){if(!i(e)){var a=t(e);if(a){if(h)return s(a),scheduler._update_global_tip(),e.preventDefault&&e.preventDefault(), +e.cancelBubble=!0,!1;if(l=t(e),c)return l?void((d.target!=l.target||Math.abs(d.pageX-l.pageX)>5||Math.abs(d.pageY-l.pageY)>5)&&(_=!0,clearTimeout(o))):void(_=!0)}}}),a(this._els.dhx_cal_data[0],"scroll",n),a(this._els.dhx_cal_data[0],"touchcancel",n),a(this._els.dhx_cal_data[0],"contextmenu",function(e){return c?(e&&e.preventDefault&&e.preventDefault(),(e||event).cancelBubble=!0,!1):void 0}),a(this._obj,e[1],function(e){if(!i(e)){scheduler._pointerDragId=e.pointerId;var a;if(h=_=!1,c=!0,scheduler._temp_touch_block=!0, +a=l=t(e),!a)return void(_=!0);var r=new Date;if(!_&&!h&&250>r-u)return scheduler._click.dhx_cal_data(a),window.setTimeout(function(){a.type="dblclick",scheduler._on_dbl_click(a)},50),e.preventDefault&&e.preventDefault(),e.cancelBubble=!0,scheduler._block_next_stop=!0,!1;if(u=r,!_&&!h&&scheduler.config.touch_drag){var s=scheduler._locate_event(document.activeElement),n=scheduler._locate_event(a.target),g=d?scheduler._locate_event(d.target):null;if(s&&n&&s==n&&s!=g)return e.preventDefault&&e.preventDefault(), +e.cancelBubble=!0,scheduler._ignore_next_click=!1,scheduler._click.dhx_cal_data(a),d=a,!1;o=setTimeout(function(){h=!0;var e=d.target,t=scheduler._getClassName(e);e&&-1!=t.indexOf("dhx_body")&&(e=e.previousSibling),scheduler._on_mouse_down(d,e),scheduler._drag_mode&&"create"!=scheduler._drag_mode&&scheduler.for_rendered(scheduler._drag_id,function(e,t){e.style.display="none",scheduler._rendered.splice(t,1)}),scheduler.config.touch_tip&&scheduler._show_global_tip(),scheduler.updateEvent(scheduler._drag_id); +},scheduler.config.touch_drag),d=a}}}),a(this._els.dhx_cal_data[0],e[2],function(e){return i(e)?void 0:(h||r(d,l,200,100),h&&(scheduler._ignore_next_click=!0),n(e),scheduler._block_next_stop?(scheduler._block_next_stop=!1,e.preventDefault&&e.preventDefault(),e.cancelBubble=!0,!1):void 0)}),dhtmlxEvent(document.body,e[2],n)},scheduler._show_global_tip=function(){scheduler._hide_global_tip();var e=scheduler._global_tip=document.createElement("DIV");e.className="dhx_global_tip",scheduler._update_global_tip(1), +document.body.appendChild(e)},scheduler._update_global_tip=function(e){var t=scheduler._global_tip;if(t){var i="";if(scheduler._drag_id&&!e){var a=scheduler.getEvent(scheduler._drag_id);a&&(i="<div>"+(a._timed?scheduler.templates.event_header(a.start_date,a.end_date,a):scheduler.templates.day_date(a.start_date,a.end_date,a))+"</div>")}"create"==scheduler._drag_mode||"new-size"==scheduler._drag_mode?t.innerHTML=(scheduler.locale.labels.drag_to_create||"Drag to create")+i:t.innerHTML=(scheduler.locale.labels.drag_to_move||"Drag to move")+i; +}},scheduler._hide_global_tip=function(){var e=scheduler._global_tip;e&&e.parentNode&&(e.parentNode.removeChild(e),scheduler._global_tip=0)},scheduler._dp_init=function(e){e._methods=["_set_event_text_style","","_dp_change_event_id","_dp_hook_delete"],this._dp_change_event_id=function(e,t){scheduler.getEvent(e)&&scheduler.changeEventId(e,t)},this._dp_hook_delete=function(t,i){return scheduler.getEvent(t)?(t!=i&&("true_deleted"==this.getUserData(t,e.action_param)&&this.setUserData(t,e.action_param,"updated"), +this.changeEventId(t,i)),this.deleteEvent(i,!0)):void 0},this.attachEvent("onEventAdded",function(t){!this._loading&&this._validId(t)&&e.setUpdated(t,!0,"inserted")}),this.attachEvent("onConfirmedBeforeEventDelete",function(t){if(this._validId(t)){var i=e.getState(t);return"inserted"==i||this._new_event?(e.setUpdated(t,!1),!0):"deleted"==i?!1:"true_deleted"==i?!0:(e.setUpdated(t,!0,"deleted"),!1)}}),this.attachEvent("onEventChanged",function(t){!this._loading&&this._validId(t)&&e.setUpdated(t,!0,"updated"); +}),scheduler.attachEvent("onClearAll",function(){e._in_progress={},e._invalid={},e.updatedRows=[],e._waitMode=0}),e._objToJson=function(t,i,a){a=a||"",i=i||{};for(var r in t)0!==r.indexOf("_")&&(t[r]&&t[r].getUTCFullYear?i[a+r]=this.obj.templates.xml_format(t[r]):t[r]&&"object"==typeof t[r]?e._objToJson(t[r],i,a+r+"."):i[a+r]=t[r]);return i},e._getRowData=function(e,t){var i=this.obj.getEvent(e);return this._objToJson(i)},e._clearUpdateFlag=function(){},e.attachEvent("insertCallback",scheduler._update_callback), +e.attachEvent("updateCallback",scheduler._update_callback),e.attachEvent("deleteCallback",function(e,t){this.obj.getEvent(t)?(this.obj.setUserData(t,this.action_param,"true_deleted"),this.obj.deleteEvent(t)):this.obj._add_rec_marker&&this.obj._update_callback(e,t)})},scheduler._validId=function(e){return!0},scheduler.setUserData=function(e,t,i){if(e){var a=this.getEvent(e);a&&(a[t]=i)}else this._userdata[t]=i},scheduler.getUserData=function(e,t){if(e){var i=this.getEvent(e);return i?i[t]:null}return this._userdata[t]; +},scheduler._set_event_text_style=function(e,t){if(scheduler.getEvent(e)){this.for_rendered(e,function(e){e.style.cssText+=";"+t});var i=this.getEvent(e);i._text_style=t,this.event_updated(i)}},scheduler._update_callback=function(e,t){var i=scheduler._xmlNodeToJSON(e.firstChild);"none"==i.rec_type&&(i.rec_pattern="none"),i.text=i.text||i._tagvalue,i.start_date=scheduler.templates.xml_date(i.start_date),i.end_date=scheduler.templates.xml_date(i.end_date),scheduler.addEvent(i),scheduler._add_rec_marker&&scheduler.setCurrentView(); +},scheduler._skin_settings={fix_tab_position:[1,0],use_select_menu_space:[1,0],wide_form:[1,0],hour_size_px:[44,42],displayed_event_color:["#ff4a4a","ffc5ab"],displayed_event_text_color:["#ffef80","7e2727"]},scheduler._skin_xy={lightbox_additional_height:[90,50],nav_height:[59,22],bar_height:[24,20]},scheduler._configure=function(e,t,i){for(var a in t)"undefined"==typeof e[a]&&(e[a]=t[a][i])},scheduler._skin_init=function(){if(!scheduler.skin)for(var e=document.getElementsByTagName("link"),t=0;t<e.length;t++){ +var i=e[t].href.match("dhtmlxscheduler_([a-z]+).css");if(i){scheduler.skin=i[1];break}}var a=0;if(!scheduler.skin||"classic"!==scheduler.skin&&"glossy"!==scheduler.skin||(a=1),this._configure(scheduler.config,scheduler._skin_settings,a),this._configure(scheduler.xy,scheduler._skin_xy,a),"flat"===scheduler.skin&&(scheduler.xy.scale_height=35,scheduler.templates.hour_scale=function(e){var t=e.getMinutes();t=10>t?"0"+t:t;var i="<span class='dhx_scale_h'>"+e.getHours()+"</span><span class='dhx_scale_m'> "+t+"</span>"; +return i}),!a){var r=scheduler.config.minicalendar;r&&(r.padding=14),scheduler.templates.event_bar_date=function(e,t,i){return"• <b>"+scheduler.templates.event_date(e)+"</b> "},scheduler.attachEvent("onTemplatesReady",function(){var e=scheduler.date.date_to_str("%d");scheduler.templates._old_month_day||(scheduler.templates._old_month_day=scheduler.templates.month_day);var t=scheduler.templates._old_month_day;if(scheduler.templates.month_day=function(i){if("month"==this._mode){var a=e(i);return 1==i.getDate()&&(a=scheduler.locale.date.month_full[i.getMonth()]+" "+a), ++i==+scheduler.date.date_part(this._currentDate())&&(a=scheduler.locale.labels.dhx_cal_today_button+" "+a),a}return t.call(this,i)},scheduler.config.fix_tab_position){for(var i=scheduler._els.dhx_cal_navline[0].getElementsByTagName("div"),a=null,r=211,s=0;s<i.length;s++){var n=i[s],d=n.getAttribute("name");if(d)switch(n.style.right="auto",d){case"day_tab":n.style.left="14px",n.className+=" dhx_cal_tab_first";break;case"week_tab":n.style.left="75px";break;case"month_tab":n.style.left="136px",n.className+=" dhx_cal_tab_last"; +break;default:n.style.left=r+"px",n.className+=" dhx_cal_tab_standalone",r=r+14+n.offsetWidth}else 0===(n.className||"").indexOf("dhx_minical_icon")&&n.parentNode==scheduler._els.dhx_cal_navline[0]&&(a=n)}a&&(a.style.left=r+"px")}}),scheduler._skin_init=function(){}}},window.jQuery&&!function(e){var t=[];e.fn.dhx_scheduler=function(i){if("string"!=typeof i){var a=[];return this.each(function(){if(this&&this.getAttribute&&!this.getAttribute("dhxscheduler")){for(var e in i)"data"!=e&&(scheduler.config[e]=i[e]); +this.getElementsByTagName("div").length||(this.innerHTML='<div class="dhx_cal_navline"><div class="dhx_cal_prev_button"> </div><div class="dhx_cal_next_button"> </div><div class="dhx_cal_today_button"></div><div class="dhx_cal_date"></div><div class="dhx_cal_tab" name="day_tab" style="right:204px;"></div><div class="dhx_cal_tab" name="week_tab" style="right:140px;"></div><div class="dhx_cal_tab" name="month_tab" style="right:76px;"></div></div><div class="dhx_cal_header"></div><div class="dhx_cal_data"></div>', +this.className+=" dhx_cal_container"),scheduler.init(this,scheduler.config.date,scheduler.config.mode),i.data&&scheduler.parse(i.data),a.push(scheduler)}}),1===a.length?a[0]:a}return t[i]?t[i].apply(this,[]):void e.error("Method "+i+" does not exist on jQuery.dhx_scheduler")}}(jQuery),function(){function e(e,t,i){t&&(e._date=t),i&&(e._mode=i)}var t=scheduler.setCurrentView,i=scheduler.updateView,a=null,r=null,s=function(t,s){var n=this;window.clearTimeout(r),window.clearTimeout(a),e(this,t,s),r=setTimeout(function(){ +n.callEvent("onBeforeViewChange",[n._mode,n._date,s||n._mode,t||n._date])&&(i.call(n,t,s),n.callEvent("onViewChange",[n._mode,n._date]),window.clearTimeout(a),r=0)},scheduler.config.delay_render)},n=function(t,s){var n=this,d=arguments;e(this,t,s),window.clearTimeout(a),a=setTimeout(function(){r||i.apply(n,d)},scheduler.config.delay_render)};scheduler.attachEvent("onSchedulerReady",function(){scheduler.config.delay_render?(scheduler.setCurrentView=s,scheduler.updateView=n):(scheduler.setCurrentView=t, scheduler.updateView=i)})}(); //# sourceMappingURL=sources/dhtmlxscheduler.js.map
\ No newline at end of file diff --git a/codebase/dhtmlxscheduler_classic.css b/codebase/dhtmlxscheduler_classic.css index d7fcef0..cf4b0c7 100644 --- a/codebase/dhtmlxscheduler_classic.css +++ b/codebase/dhtmlxscheduler_classic.css @@ -1,9 +1,9 @@ /* @license -dhtmlxScheduler v.4.3.1 Stardard +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. (c) Dinamenta, UAB. */ -.dhtmlx_message_area{position:fixed;right:5px;width:250px;z-index:1000}.dhtmlx-info{min-width:120px;font-family:Tahoma;z-index:10000;overflow:hidden;margin:5px 5px 10px;-webkit-transition:all .5s ease;-moz-transition:all .5s ease;-o-transition:all .5s ease;transition:all .5s ease}.dhtmlx-info.hidden{height:0;padding:0;border-width:0;margin:0;overflow:hidden}.dhtmlx_modal_box{overflow:hidden;display:inline-block;min-width:300px;width:300px;text-align:center;position:fixed;background:-webkit-linear-gradient(top,#fff 1%,#d0d0d0 99%);background:-moz-linear-gradient(top,#fff 1%,#d0d0d0 99%);box-shadow:0 0 14px #888;font-family:Tahoma;z-index:20000;border-radius:6px;border:1px solid #fff}.dhtmlx_popup_title{border-top-left-radius:5px;border-top-right-radius:5px;border-width:0;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAoCAMAAAAIaGBFAAAAhFBMVEVwcHBubm5sbGxqampoaGhmZmZlZWVjY2NhYWFfX19dXV1bW1taWlpYWFhWVlZUVFRSUlJRUVFPT09NTU1LS0tJSUlHR0dGRkZERERCQkJAQEA+Pj49PT09PT0+Pj5AQEBBQUFDQ0NERERGRkZHR0dJSUlKSkpMTExMTEw5OTk5OTk5OTkny8YEAAAAQklEQVQImQXBCRJCAAAAwKVSQqdyjSPXNP7/QLsIhA6OTiJnF7GrRCpzc/fw9PKW+/gqlCq1RqvTG/yMJrPF6m/bAVEhAxxnHG0oAAAAAElFTkSuQmCC);background:-webkit-linear-gradient(top,#707070 1%,#3d3d3d 70%,#4c4c4c 97%,#393939 97%);background:-moz-linear-gradient(top,#707070 1%,#3d3d3d 70%,#4c4c4c 97%,#393939 97%)}.dhtmlx-info,.dhtmlx_button,.dhtmlx_popup_button{user-select:none;-webkit-user-select:none;-moz-user-select:-moz-none;cursor:pointer}.dhtmlx_popup_text{overflow:hidden}.dhtmlx_popup_controls{border-radius:6px;padding:5px}.dhtmlx_button,.dhtmlx_popup_button{height:30px;line-height:30px;display:inline-block;margin:0 5px;border-radius:6px;color:#FFF}.dhtmlx_popup_button{min-width:120px}div.dhx_modal_cover{background-color:#000;cursor:default;filter:alpha(opacity=20);opacity:.2;position:fixed;z-index:19999;left:0;top:0;width:100%;height:100%;border:none;zoom:1}.dhtmlx-info img,.dhtmlx_modal_box img{float:left;margin-right:20px}.dhtmlx-alert-error .dhtmlx_popup_title,.dhtmlx-confirm-error .dhtmlx_popup_title{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAsCAIAAAArRUU2AAAATklEQVR4nIWLuw2AMBBDjVuQiBT2oWbRDATrnB0KQOJoqPzRe3BrHI6dcBASYREKovtK6/6DsDOX+stN+3H1YX9ciRgnYq5EWYhS2dftBIuLT4JyIrPCAAAAAElFTkSuQmCC)}.dhtmlx-alert-error,.dhtmlx-confirm-error{border:1px solid red}.dhtmlx_button,.dhtmlx_popup_button{box-shadow:0 0 4px #888;border:1px solid #838383}.dhtmlx_button input,.dhtmlx_popup_button div{border:1px solid #FFF;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAeCAMAAADaS4T1AAAAYFBMVEVwcHBtbW1ra2toaGhmZmZjY2NhYWFeXl5cXFxaWlpXV1dVVVVSUlJQUFBNTU1LS0tJSUlGRkZERERBQUE/Pz88PDw9PT0+Pj5AQEBCQkJDQ0NFRUVHR0dISEhKSkpMTEzqthaMAAAAMklEQVQImQXBhQ2AMAAAsOIMlwWH/8+kRSKVyRVKlVrQaHV6g9FktlhFm93hdLk9Xt8PIfgBvdUqyskAAAAASUVORK5CYII=);background:-webkit-linear-gradient(top,#707070 1%,#3d3d3d 70%,#4c4c4c 99%);background:-moz-linear-gradient(top,#707070 1%,#3d3d3d 70%,#4c4c4c 99%);border-radius:6px;font-size:15px;font-weight:400;-moz-box-sizing:content-box;box-sizing:content-box;color:#fff;padding:0;margin:0;vertical-align:top;height:28px;line-height:28px}.dhtmlx_button input:active,.dhtmlx_button input:focus,.dhtmlx_popup_button div:active,.dhtmlx_popup_button div:focus{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAeCAMAAADaS4T1AAAAXVBMVEVwcHBubm5tbW1sbGxra2tpaWloaGhnZ2dmZmZlZWVjY2NiYmJhYWFgYGBfX19dXV1cXFxbW1taWlpZWVlXV1dWVlZVVVVUVFRTU1NRUVFQUFBPT09OTk5NTU1LS0tT9SY0AAAAMUlEQVQImQXBhQGAMAAAIGxnx2z9/00BiVQmVyhVakGj1ekNRpPZYhVtdofT5fZ4fT8hpwG05JjexgAAAABJRU5ErkJggg==);background:-webkit-linear-gradient(top,#707070 1%,#4c4c4c 99%);background:-moz-linear-gradient(top,#707070 1%,#4c4c4c 99%)}.dhtmlx_popup_title{color:#fff;text-shadow:1px 1px #000;height:40px;line-height:40px;font-size:20px}.dhtmlx_popup_text{margin:15px 15px 5px;font-size:14px;color:#000;min-height:30px;border-radius:6px}.dhtmlx-error,.dhtmlx-info{font-size:14px;color:#000;box-shadow:0 0 10px #888;padding:0;background-color:#FFF;border-radius:3px;border:1px solid #fff}.dhtmlx-info div{padding:5px 10px;background-color:#fff;border-radius:3px;border:1px solid #B8B8B8}.dhtmlx-error{background-color:#d81b1b;border:1px solid #ff3c3c;box-shadow:0 0 10px #000}.dhtmlx-error div{background-color:#d81b1b;border:1px solid #940000;color:#FFF}.dhx_cal_event .dhx_body,.dhx_cal_event .dhx_footer,.dhx_cal_event .dhx_header,.dhx_cal_event .dhx_title{background-color:#FFE763;border:1px solid #B7A543;color:#887A2E;overflow:hidden;width:100%;font-family:Tahoma;font-size:8pt}.dhx_move_denied .dhx_cal_event .dhx_header,.dhx_move_denied .dhx_cal_event .dhx_title{cursor:default}.dhx_cal_event .dhx_header{height:1px;margin-left:1px;border-width:1px 1px 0;cursor:pointer}.dhx_cal_event .dhx_title{height:12px;border-width:0 1px 1px;border-bottom-style:dotted;font-size:7pt;font-weight:700;text-align:center;background-position:right;background-repeat:no-repeat;cursor:pointer}.dhx_cal_event .dhx_body,.dhx_cal_event.dhx_cal_select_menu .dhx_body{border-width:0 1px 1px;padding:5px}.dhx_resize_denied,.dhx_resize_denied .dhx_event_resize{cursor:default!important}.dhx_cal_event .dhx_event_resize{cursor:s-resize}.dhx_cal_event .dhx_footer,.dhx_cal_event .dhx_select_menu_footer{height:1px;margin-left:2px;border-width:0 1px 1px;position:relative}.dhx_cal_event_line{background-color:#FFE763;border:1px solid #B7A543;border-radius:3px;font-family:Tahoma;font-size:8pt;height:13px;padding-left:10px;color:#887A2E;cursor:pointer;overflow:hidden}.dhx_cal_event_clear{font-family:Tahoma;font-size:8pt;height:13px;padding-left:2px;color:#887A2E;white-space:nowrap;overflow:hidden;cursor:pointer}.dhx_in_move{background-color:#FFFF80}.dhx_cal_event.dhx_cal_editor{border:1px solid #B7A543;border-top-style:dotted;z-index:999;position:absolute;overflow:hidden}textarea.dhx_cal_editor{width:100%;height:100%;border:0 solid #000;margin:0;padding:0;overflow:auto}div.dhx_menu_head{background-image:url(imgs/controls.gif);background-position:0 -43px;width:10px;height:10px;margin-left:5px;margin-top:1px;border:none;cursor:default}div.dhx_menu_icon{background-image:url(imgs/controls.gif);width:20px;height:20px;margin-left:-5px;margin-top:0;border:none;cursor:pointer}div.icon_details{background-position:0 0}div.icon_edit{background-position:-22px 0}div.icon_save{background-position:-84px -1px}div.icon_cancel{background-position:-62px 0}div.icon_delete{background-position:-42px 0}.dhx_month_link{position:absolute;box-sizing:border-box;-moz-box-sizing:border-box;text-align:right;cursor:pointer;padding-right:10px}.dhx_month_link a{color:#00f}.dhx_month_link a:hover{text-decoration:underline}.dhx_global_tip{font-family:Tahoma,Helvetica;text-align:center;font-size:20px;position:fixed;top:60px;right:20px;background-color:rgba(255,255,255,.7);color:#000;z-index:10000;padding:20px 30px;width:190px}.dhx_global_tip div{font-size:30px}@media (-moz-touch-enabled){.dhx_cal_container{user-select:none;-moz-user-select:none}}.dhx_unselectable,.dhx_unselectable div{-webkit-user-select:none;-moz-user-select:none;-moz-user-select:-moz-none}.dhx_cal_light{-webkit-tap-highlight-color:transparent;background-color:#FFE763;border-radius:5px;font-family:Tahoma;font-size:8pt;border:1px solid #B7A64B;color:#887A2E;position:absolute;z-index:10001;width:580px;height:300px;box-shadow:5px 5px 5px #888}.dhx_mark{position:relative;top:3px;background-image:url(imgs/controls.gif);background-position:0 -43px;padding-left:10px}.dhx_ie6 .dhx_mark{background-position:6px -41px}.dhx_cal_light select{font-family:Tahoma;font-size:8pt;color:#887A2E;padding:2px;margin:0}.dhx_cal_ltitle{padding:2px 0 2px 5px;overflow:hidden;white-space:nowrap}.dhx_cal_ltitle span{white-space:nowrap}.dhx_cal_lsection{background-color:#DBCF8C;color:#FFF4B5;font-weight:700;padding:5px 0 3px 10px}.dhx_section_time{background-color:#DBCF8C;white-space:nowrap}.dhx_cal_lsection .dhx_fullday{float:right;margin-right:5px;color:#887A2E;font-size:12px;font-weight:400;line-height:20px;vertical-align:top;cursor:pointer}.dhx_cal_lsection{font-size:18px;font-family:Arial}.dhx_cal_ltext{padding:2px 0 2px 10px;overflow:hidden}.dhx_cal_ltext textarea{background-color:#FFF4B5;overflow:auto;border:none;color:#887A2E;height:100%;width:100%;outline:0!important;resize:none}.dhx_time{font-weight:700}.dhx_cal_light .dhx_title{padding-left:10px}.dhx_cal_larea{border:1px solid #DCC43E;background-color:#FFF4B5;overflow:hidden;margin-left:3px;width:572px;height:1px}.dhx_btn_set{padding:5px 10px 0;float:left}.dhx_btn_set div{float:left;height:21px;line-height:21px;vertical-align:middle;cursor:pointer}.dhx_save_btn{background-image:url(imgs/controls.gif);background-position:-84px 0;width:21px}.dhx_cancel_btn{background-image:url(imgs/controls.gif);background-position:-63px 0;width:20px}.dhx_delete_btn{background-image:url(imgs/controls.gif);background-position:-42px 0;width:20px}.dhx_cal_cover{width:100%;height:100%;position:absolute;z-index:10000;top:0;left:0;background-color:#000;opacity:.1;filter:alpha(opacity=10)}.dhx_custom_button{padding:0 3px;color:#887A2E;font-family:Tahoma;font-size:8pt;background-color:#FFE763;font-weight:400;margin-right:5px;margin-top:0;cursor:pointer}.dhx_custom_button div{cursor:pointer;float:left;height:21px;line-height:21px;vertical-align:middle}.dhx_cal_light_wide .dhx_cal_larea{border-top-width:0}.dhx_cal_light_wide .dhx_cal_lsection{border:0;float:left;text-align:right;width:100px;height:20px;font-size:16px;padding:5px 0 0 10px}.dhx_cal_light_wide .dhx_wrap_section{border-top:1px solid #DBCF8C;position:relative;background-color:#DBCF8C;overflow:hidden}.dhx_cal_light_wide .dhx_section_time{padding-top:2px!important;height:20px!important}.dhx_section_time{text-align:center}.dhx_cal_light_wide .dhx_cal_larea{width:730px}.dhx_cal_light_wide{width:738px}.dhx_cal_light_wide .dhx_section_time{background:0 0}.dhx_cal_light_wide .dhx_cal_checkbox label{padding-left:0}.dhx_cal_wide_checkbox input{margin-top:8px;margin-left:14px}.dhx_cal_light input{font-family:Tahoma;font-size:8pt;color:#887A2E}.dhx_cal_light_wide .dhx_cal_lsection .dhx_fullday{float:none;margin-right:0;color:#FFF4B5;font-weight:700;font-size:16px;font-family:Arial;cursor:pointer}.dhx_custom_button{float:right;height:21px}.dhx_cal_light_wide .dhx_custom_button{position:absolute;top:0;right:0;margin-top:2px}.dhx_cal_light_wide .dhx_repeat_right{margin-right:55px}.dhx_minical_popup{position:absolute;z-index:10100;width:251px;height:175px}.dhx_scale_bar_header{position:absolute;border-bottom:1px dotted #8894A3;width:100%}.dhx_expand_icon{position:absolute;top:0;right:0;background-image:url(imgs/collapse_expand_icon.gif);width:18px;height:18px;cursor:pointer;background-position:0 18px;z-index:16}.dhx_scheduler_agenda .dhx_cal_data{background-image:url(imgs/databg.png)}.dhx_agenda_area{width:100%;overflow-y:auto;background-image:url(imgs/databg.png)}.dhx_agenda_line{height:21px;clear:both;overflow:hidden}.dhx_agenda_line div{float:left;width:188px;border-right:1px dotted #8894A3;text-align:center;line-height:21px;overflow:hidden}.dhx_agenda_area .dhx_agenda_line div{border-right:0 dotted #8894A3}.dhx_v_border{position:absolute;left:187px;top:0;border-right:1px dotted #8894A3;width:1px;height:100%}.dhx_agenda_line .dhx_event_icon{width:20px;border-width:0;background:url(imgs/icon.png) 5px 4px no-repeat;cursor:pointer}.dhx_agenda_line span{padding-left:5px;line-height:21px}.dhx_year_body{border-left:1px dotted #586A7E}.dhx_year_week{position:relative}.dhx_scale_bar_last{border-right:1px dotted #586A7E}.dhx_year_month{height:18px;padding-top:3px;border:1px dotted #586A7E;text-align:center;vertical-align:middle}.dhx_year_body .dhx_after .dhx_month_head,.dhx_year_body .dhx_after .dhx_month_head a,.dhx_year_body .dhx_before .dhx_month_head,.dhx_year_body .dhx_before .dhx_month_head a{color:#E2E3E6!important}.dhx_year_body .dhx_month_body{height:0;overflow:hidden}.dhx_month_head.dhx_year_event{background-color:#FFE763}.dhx_year_body .dhx_after .dhx_month_head,.dhx_year_body .dhx_before .dhx_month_head{cursor:default}.dhx_year_tooltip{border:1px solid #BBB;background-image:url(imgs/databg.png);position:absolute;z-index:9998;width:300px;height:auto;font-family:Tahoma;font-size:8pt;overflow:hidden}.dhx_tooltip_line{line-height:20px;height:20px;overflow:hidden}.dhx_tooltip_line .dhx_event_icon{width:20px;height:20px;padding-right:10px;float:left;border-width:0;position:relative;background:url(imgs/icon.png) 5px 4px no-repeat;cursor:pointer}.dhx_tooltip_date{float:left;width:auto;padding-left:5px;text-align:center}.dhx_text_disabled{color:#887A2E;font-family:Tahoma;font-size:8pt}.dhx_mini_calendar{-moz-box-shadow:5px 5px 5px #888;-khtml-box-shadow:5px 5px 5px #888;-moz-user-select:-moz-none;-webkit-user-select:none;-user-select:none}.dhx_mini_calendar .dhx_month_head{cursor:pointer}.dhx_mini_calendar .dhx_calendar_click{background-color:#C2D5FC}.dhx_cal_navline div.dhx_minical_icon{width:18px;height:18px;left:190px;top:1px;cursor:pointer;background-image:url(imgs/calendar.gif)}.dhx_matrix_scell{height:100%}.dhx_matrix_cell,.dhx_matrix_scell{overflow:hidden;text-align:center;vertical-align:middle;border-bottom:1px dotted #8894A3;border-right:1px dotted #8894A3}.dhx_matrix_cell{background-color:#fff}.dhx_matrix_line{overflow:hidden}.dhx_matrix_cell div,.dhx_matrix_scell div{overflow:hidden;text-align:center;height:auto}.dhx_cal_lsection .dhx_readonly{font-size:9pt;font-size:8pt;padding:2px;color:#887A2E}.dhx_cal_event_line .dhx_event_resize{cursor:w-resize;background:url(imgs/resize_dots.png) repeat-y;position:absolute;top:0;width:4px;height:100%}.dhx_event_resize_start{left:0}.dhx_event_resize_end{right:0}.dhx_data_table.folder .dhx_matrix_cell,.dhx_matrix_scell.folder{background-color:#969394;cursor:pointer}.dhx_matrix_scell .dhx_scell_level0{padding-left:5px}.dhx_matrix_scell .dhx_scell_level1{padding-left:20px}.dhx_matrix_scell .dhx_scell_level2{padding-left:35px}.dhx_matrix_scell .dhx_scell_level3{padding-left:50px}.dhx_matrix_scell .dhx_scell_level4{padding-left:65px}.dhx_matrix_scell.folder{font-weight:700;text-align:left}.dhx_matrix_scell.folder .dhx_scell_expand{float:left;width:10px;padding-right:3px}.dhx_matrix_scell.folder .dhx_scell_name{float:left;width:auto}.dhx_matrix_scell.item .dhx_scell_name{padding-left:15px;text-align:left}.dhx_data_table.folder .dhx_matrix_cell{border-right:0}.dhx_section_timeline{overflow:hidden;padding:4px 0 2px 10px}.dhx_section_timeline select{width:552px}.dhx_map_area{width:100%;height:100%;overflow-y:auto;overflow-x:hidden;background-image:url(imgs/databg.png)}.dhx_map_line .dhx_event_icon{width:20px;border-width:0;background:url(imgs/icon.png) 5px 4px no-repeat;cursor:pointer}.dhx_map_line{height:21px;clear:both;overflow:hidden}.dhx_map{position:absolute}.dhx_map_line .headline_description,.dhx_map_line div{float:left;border-right:1px dotted #8894A3;text-align:center;line-height:21px;overflow:hidden}.dhx_map_line .dhx_map_description{float:left;border-right:0 dotted #8894A3;text-align:center;line-height:21px;overflow:hidden}.dhx_map_line .headline_date,.dhx_map_line .headline_description{border-left:0}.dhx_map_line .line_description{float:left;border-right:1px dotted #8894A3;text-align:left;padding-left:5px;line-height:21px;overflow:hidden}.dhx_map_line.highlight{background-color:#C4C5CC}.dhx_map_area .dhx_map_line div{border-right:0 dotted #8894A3}.dhtmlXTooltip.tooltip{-moz-box-shadow:3px 3px 3px #888;-webkit-box-shadow:3px 3px 3px #888;-o-box-shadow:3px 3px 3px #888;box-shadow:3px 3px 3px #888;filter:progid:DXImageTransform.Microsoft.Shadow(color='#888888', Direction=135, Strength=5);background-color:#fff;border-left:1px dotted #887A2E;border-top:1px dotted #887A2E;color:#887A2E;cursor:default;padding:10px;position:absolute;z-index:500;font-family:Tahoma;font-size:8pt;opacity:1}.dhx_cal_checkbox label{padding-left:5px}.dhx_cal_light .radio{padding:2px 0 2px 10px}.dhx_cal_light .radio input,.dhx_cal_light .radio label{line-height:15px}.dhx_cal_light .radio input{vertical-align:middle;margin:0;padding:0}.dhx_cal_light .radio label{vertical-align:middle;padding-right:10px}.dhx_cal_light .combo{padding:4px}.dhx_cal_light_wide .dhx_combo_box{width:608px!important;left:10px}.dhx_wa_column{float:left}.dhx_wa_column_last .dhx_wa_day_cont{border-left:1px dotted #8894A3}.dhx_wa_scale_bar{font-family:Tahoma;padding-left:10px;font-size:11px;border-top:1px dotted #8894A3;border-bottom:1px dotted #8894A3}.dhx_wa_day_data{background-color:#FCFEFC;overflow-y:auto}.dhx_wa_ev_body{border-bottom:1px dotted #789;font-size:12px;padding:5px 0 5px 7px}.dhx_wa_dnd{font-family:Tahoma;position:absolute;padding-right:7px;color:#887AE2!important;background-color:#FFE763!important;border:1px solid #B7A543}.dhx_cal_event_selected{background-color:#9cc1db;color:#fff}.dhx_second_scale_bar{border-bottom:1px dotted #586A7E;padding-top:2px}.dhx_cal_header div div{border-left:1px dotted #8894A3}.dhx_grid_area{width:100%;height:100%;overflow-y:auto;background-color:#FCFEFC}.dhx_grid_area table{border-collapse:collapse;border-spacing:0;width:100%;table-layout:fixed}.dhx_grid_area td{table-layout:fixed;text-align:center}.dhx_grid_line{height:21px;clear:both;overflow:hidden}.dhx_grid_line div{float:left;cursor:default;padding-top:0;padding-bottom:0;text-align:center;line-height:21px;overflow:hidden}.dhx_grid_area td,.dhx_grid_line div{padding-left:8px;padding-right:8px}.dhx_grid_area tr.dhx_grid_event{height:21px;overflow:hidden;margin:0 0 1px}.dhx_grid_area tr.dhx_grid_event td{border-bottom:1px solid #ECEEF4}.dhx_grid_area tr.dhx_grid_event:nth-child(2n) td,.dhx_grid_area tr.dhx_grid_event:nth-child(2n+1) td{border-bottom-width:0;border-bottom-style:none}.dhx_grid_area tr.dhx_grid_event:nth-child(2n){background-color:#ECEEF4}.dhx_grid_area .dhx_grid_dummy{table-layout:auto;margin:0!important;padding:0!important}.dhx_grid_v_border{position:absolute;border-right:1px solid #A4BED4;width:1px;height:100%}.dhx_grid_event_selected{background-color:#9cc1db!important;color:#fff!important}.dhx_grid_sort_desc .dhx_grid_view_sort{background-position:0 -55px}.dhx_grid_sort_asc .dhx_grid_view_sort{background-position:0 -66px}.dhx_grid_view_sort{width:10px;height:10px;position:absolute;border:none!important;top:5px;background-repeat:no-repeat;background-image:url(imgs/images.png)}.dhx_marked_timespan{position:absolute;width:100%;margin-left:0}.dhx_time_block{position:absolute;width:100%;background:silver;opacity:.4;filter:alpha(opacity=40);z-index:1}.dhx_time_block_reset{opacity:1;filter:alpha(opacity=100)}.dhx_mini_calendar .dhx_marked_timespan,.dhx_scheduler_month .dhx_marked_timespan{display:none}.dhx_now_time{width:100%;border-bottom:2px solid red;z-index:1}.dhx_scheduler_month .dhx_now_time{border-bottom:0;border-left:2px solid red}.dhx_matrix_now_time{border-left:2px solid red;z-index:1}.dhx_matrix_now_time,.dhx_now_time{opacity:.5}.dhx_cal_quick_info{border:2px solid #888;border-radius:5px;position:absolute;z-index:300;background-color:#8e99ae;background-color:rgba(98,107,127,.5);padding-left:7px;width:300px;transition:left .5s ease,right .5s;-moz-transition:left .5s ease,right .5s;-webkit-transition:left .5s ease,right .5s;-o-transition:left .5s ease,right .5s}.dhx_no_animate{transition:none;-moz-transition:none;-webkit-transition:none;-o-transition:none}.dhx_cal_quick_info.dhx_qi_left .dhx_qi_big_icon{float:right}.dhx_cal_qi_title{padding:5px 0 10px 5px;color:#FFF;letter-spacing:1px}.dhx_cal_qi_tdate{font-size:14px}.dhx_cal_qi_tcontent{font-size:18px;font-weight:700}.dhx_cal_qi_content{border:1px solid #888;background-color:#fefefe;padding:16px 8px;font-size:14px;color:#444;width:275px;overflow:hidden}.dhx_qi_big_icon{border-radius:3px;color:#444;margin:5px 9px 5px 0;min-width:60px;line-height:20px;vertical-align:middle;padding:5px 10px 5px 5px;cursor:pointer;background-color:#fefefe;border-bottom:1px solid #666;border-right:1px solid #666;float:left}.dhx_cal_qi_controls div{float:left;height:20px;text-align:center;line-height:20px}.dhx_qi_big_icon .dhx_menu_icon{margin:0 8px 0 0}.dhx_drag_marker{width:100%;filter:alpha(Opacity=50);opacity:.5;background-color:#FFE763;position:absolute;box-sizing:border-box!important;border-top:1px solid #B6B6B6;border-bottom:1px solid #b6b6b6}.dhx_cal_data,.dhx_cal_data div,.dhx_cal_data table *,.dhx_cal_header,.dhx_cal_header div,.dhx_cal_navline div,.dhx_cal_quick_info,.dhx_cal_quick_info div,.dhx_multi_day,.dhx_multi_day div,.dhx_tooltip_line div{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}.dhx_cal_data table{border-collapse:separate}.dhx_cal_light .dhx_cal_radio label{margin-bottom:0}.dhx_cal_event div{line-height:normal}.dhx_cal_container{background-color:#C2D5FC;font-family:Tahoma;font-size:8pt;position:relative;overflow:hidden}.dhx_cal_container div{-moz-user-select:none;-moz-user-select:-moz-none}.dhx_cal_navline{height:20px;position:absolute;z-index:3;width:750px;color:#2F3A48}.dhx_cal_navline div{position:absolute;top:2px;white-space:nowrap}.dhx_cal_navline .dhx_cal_date{font-weight:600;left:210px;padding-top:1px}.dhx_cal_button .dhx_left_bg{width:1px;overflow:hidden;height:17px;z-index:20;top:0}.dhx_cal_prev_button{background-image:url(imgs/buttons.png);background-position:0 0;width:29px;height:17px;left:50px;cursor:pointer}.dhx_cal_next_button{background-image:url(imgs/buttons.png);background-position:-30px 0;width:29px;height:17px;left:80px;cursor:pointer}.dhx_cal_today_button{background-image:url(imgs/buttons.png);background-position:-60px 0;width:75px;height:17px;left:112px;cursor:pointer;text-align:center;text-decoration:underline}.dhx_cal_tab{width:59px;height:19px;text-align:center;text-decoration:underline;padding-top:2px;cursor:pointer;background-color:#D8E1EA;-webkit-border-top-left-radius:4px;-webkit-border-top-right-radius:4px;-moz-border-radius-topleft:4px;-moz-border-radius-topright:4px;border-top-left-radius:4px;border-top-right-radius:4px}.dhx_cal_tab.active{text-decoration:none;cursor:default;font-weight:700;border:1px dotted #586A7E;border-bottom:0;background-color:#C2D5FC}.dhx_cal_header{position:absolute;left:10px;top:23px;width:750px;border-top:1px dotted #8894A3;border-right:1px dotted #8894A3;z-index:2;overflow:hidden;color:#2F3A48}.dhx_cal_data{-webkit-tap-highlight-color:transparent;border-top:1px dotted #8894A3;position:absolute;top:44px;width:600px;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;-ms-touch-action:pan-y}.dhx_cal_event,.dhx_cal_event_clear,.dhx_cal_event_line{-ms-touch-action:none}.dhx_scale_bar{position:absolute;text-align:center;background-color:#C2D5FC;padding-top:3px;border-left:1px dotted #586A7E}.dhx_scale_holder{position:absolute;border-right:1px dotted #586A7E;background-image:url(imgs/databg.png)}.dhx_scale_holder_now{position:absolute;border-right:1px dotted #586A7E;background-image:url(imgs/databg_now.png)}.dhx_scale_hour{height:41px;width:50px;border-bottom:1px dotted #8894A3;background-color:#C2D5FC;text-align:center;line-height:40px;color:#586A7E;overflow:hidden}.dhx_month_head{background-color:#EBEFF4;color:#2F3A48;height:18px;padding-right:5px;padding-top:3px;text-align:right;border-right:1px dotted #586A7E}.dhx_month_body{border-right:1px dotted #586A7E;border-bottom:1px dotted #586A7E;background-color:#FFF}.dhx_now .dhx_month_body{background-color:#E2EDFF}.dhx_after .dhx_month_body,.dhx_before .dhx_month_body{background-color:#ECECEC}.dhx_after .dhx_month_head,.dhx_before .dhx_month_head{background-color:#E2E3E6;color:#94A6BB}.dhx_now .dhx_month_head{background-color:#D1DEF4;font-weight:700}.dhx_scale_ignore{display:none}.dhx_cal_drag{position:absolute;z-index:9999;background-color:#FFE763;border:1px solid #B7A543;opacity:.5;filter:alpha(opacity=50)}.dhx_loading{position:absolute;width:128px;height:15px;background-image:url(imgs/loading.gif);z-index:9999}.dhx_multi_day,.dhx_multi_day_icon{background-color:#E1E6FF;background-repeat:no-repeat;border-right:1px dotted #8894A3}.dhx_multi_day{position:absolute;border-top:1px dotted #8894A3}.dhx_multi_day_icon,.dhx_multi_day_icon_small{background-position:center center;background-color:#E1E6FF;background-repeat:no-repeat;border-bottom:1px dotted #8894A3;border-right:1px dotted #8894A3}.dhx_multi_day_icon{background-image:url(imgs/clock_big.gif)}.dhx_multi_day_icon_small{background-image:url(imgs/clock_small.gif)}.dhtmlxLayoutPolyContainer_dhx_skyblue .dhx_cal_container{background-color:#d0e5ff}.dhx_month_body_border,.dhx_month_head_border,.dhx_scale_bar_border,.dhx_scale_hour_border{border-left:1px dotted #8894A3}.dhx_cal_navline .dhx_cal_export{width:18px;height:18px;margin:2px;cursor:pointer;top:0}.dhx_cal_navline .dhx_cal_export.pdf{left:2px;background-image:url(imgs/export_pdf.png)}.dhx_cal_navline .dhx_cal_export.ical{left:24px;background-image:url(imgs/export_ical.png)}.dhx_form_repeat,.dhx_form_repeat input{padding:0 0 0 5px;margin:0;font-family:Tahoma,Verdana;font-size:11px;line-height:24px}.dhx_form_repeat{overflow:hidden;background-color:#FFF4B5}.dhx_cal_light_wide .dhx_form_repeat{background-color:transparent}.dhx_repeat_center,.dhx_repeat_divider,.dhx_repeat_left,.dhx_repeat_right{height:115px;-moz-box-sizing:border-box;box-sizing:border-box}.dhx_repeat_center,.dhx_repeat_left{padding:10px 0 0 10px;float:left}.dhx_repeat_left{width:105px}.dhx_repeat_center{width:345px;padding-top:22px}.dhx_repeat_divider{float:left;border-left:1px dotted #DCC43E;width:1px}.dhx_repeat_right{float:right;width:173px;padding:17px 3px 0 10px}input.dhx_repeat_text{height:16px;width:27px;margin:0 4px;line-height:18px;padding:0 0 0 2px}.dhx_form_repeat select{height:20px;width:87px;padding:0 0 0 2px;margin:0 4px}input.dhx_repeat_date{height:18px;width:80px;padding:0 0 0 2px;margin:0 4px;background-repeat:no-repeat;background-position:64px 0;border:1px solid #7f9db9;line-height:18px}input.dhx_repeat_radio{margin-right:4px}input.dhx_repeat_checkbox{margin:4px 4px 0 0}.dhx_repeat_days td{padding-right:5px}.dhx_repeat_days label{font-size:10px}.dhx_custom_button{width:90px;-webkit-border-radius:4px;-moz-border-radius:4px;-ms-border-radius:4px;-o-border-radius:4px;border-radius:4px}.dhx_custom_button_recurring{background-image:url(imgs/but_repeat.gif);background-position:-5px 20px;width:20px;margin-right:10px}.dhx_cal_light_rec{width:640px}.dhx_cal_light_rec .dhx_cal_larea{width:632px}.dhx_cal_light_rec.dhx_cal_light_wide{width:816px}.dhx_cal_light_rec.dhx_cal_light_wide .dhx_cal_larea{width:808px}
\ No newline at end of file +.dhtmlx_message_area{position:fixed;right:5px;width:250px;z-index:11}.dhtmlx-info{min-width:120px;font-family:Tahoma;z-index:14;overflow:hidden;margin:5px 5px 10px;-webkit-transition:all .5s ease;-moz-transition:all .5s ease;-o-transition:all .5s ease;transition:all .5s ease}.dhtmlx-info.hidden{height:0;padding:0;border-width:0;margin:0;overflow:hidden}.dhtmlx_modal_box{overflow:hidden;display:inline-block;min-width:300px;width:300px;text-align:center;position:fixed;background:-webkit-linear-gradient(top,#fff 1%,#d0d0d0 99%);background:-moz-linear-gradient(top,#fff 1%,#d0d0d0 99%);box-shadow:0 0 14px #888;font-family:Tahoma;z-index:18;border-radius:6px;border:1px solid #fff}.dhtmlx_popup_title{border-top-left-radius:5px;border-top-right-radius:5px;border-width:0;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAoCAMAAAAIaGBFAAAAhFBMVEVwcHBubm5sbGxqampoaGhmZmZlZWVjY2NhYWFfX19dXV1bW1taWlpYWFhWVlZUVFRSUlJRUVFPT09NTU1LS0tJSUlHR0dGRkZERERCQkJAQEA+Pj49PT09PT0+Pj5AQEBBQUFDQ0NERERGRkZHR0dJSUlKSkpMTExMTEw5OTk5OTk5OTkny8YEAAAAQklEQVQImQXBCRJCAAAAwKVSQqdyjSPXNP7/QLsIhA6OTiJnF7GrRCpzc/fw9PKW+/gqlCq1RqvTG/yMJrPF6m/bAVEhAxxnHG0oAAAAAElFTkSuQmCC);background:-webkit-linear-gradient(top,#707070 1%,#3d3d3d 70%,#4c4c4c 97%,#393939 97%);background:-moz-linear-gradient(top,#707070 1%,#3d3d3d 70%,#4c4c4c 97%,#393939 97%)}.dhtmlx-info,.dhtmlx_button,.dhtmlx_popup_button{user-select:none;-webkit-user-select:none;-moz-user-select:-moz-none;cursor:pointer}.dhtmlx_popup_text{overflow:hidden}.dhtmlx_popup_controls{border-radius:6px;padding:5px}.dhtmlx_button,.dhtmlx_popup_button{height:30px;line-height:30px;display:inline-block;margin:0 5px;border-radius:6px;color:#FFF}.dhtmlx_popup_button{min-width:120px}div.dhx_modal_cover{background-color:#000;cursor:default;filter:alpha(opacity=20);opacity:.2;position:fixed;z-index:17;left:0;top:0;width:100%;height:100%;border:none;zoom:1}.dhtmlx-info img,.dhtmlx_modal_box img{float:left;margin-right:20px}.dhtmlx-alert-error .dhtmlx_popup_title,.dhtmlx-confirm-error .dhtmlx_popup_title{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAsCAIAAAArRUU2AAAATklEQVR4nIWLuw2AMBBDjVuQiBT2oWbRDATrnB0KQOJoqPzRe3BrHI6dcBASYREKovtK6/6DsDOX+stN+3H1YX9ciRgnYq5EWYhS2dftBIuLT4JyIrPCAAAAAElFTkSuQmCC)}.dhtmlx-alert-error,.dhtmlx-confirm-error{border:1px solid red}.dhtmlx_button,.dhtmlx_popup_button{box-shadow:0 0 4px #888;border:1px solid #838383}.dhtmlx_button input,.dhtmlx_popup_button div{border:1px solid #FFF;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAeCAMAAADaS4T1AAAAYFBMVEVwcHBtbW1ra2toaGhmZmZjY2NhYWFeXl5cXFxaWlpXV1dVVVVSUlJQUFBNTU1LS0tJSUlGRkZERERBQUE/Pz88PDw9PT0+Pj5AQEBCQkJDQ0NFRUVHR0dISEhKSkpMTEzqthaMAAAAMklEQVQImQXBhQ2AMAAAsOIMlwWH/8+kRSKVyRVKlVrQaHV6g9FktlhFm93hdLk9Xt8PIfgBvdUqyskAAAAASUVORK5CYII=);background:-webkit-linear-gradient(top,#707070 1%,#3d3d3d 70%,#4c4c4c 99%);background:-moz-linear-gradient(top,#707070 1%,#3d3d3d 70%,#4c4c4c 99%);border-radius:6px;font-size:15px;font-weight:400;-moz-box-sizing:content-box;box-sizing:content-box;color:#fff;padding:0;margin:0;vertical-align:top;height:28px;line-height:28px}.dhtmlx_button input:active,.dhtmlx_button input:focus,.dhtmlx_popup_button div:active,.dhtmlx_popup_button div:focus{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAeCAMAAADaS4T1AAAAXVBMVEVwcHBubm5tbW1sbGxra2tpaWloaGhnZ2dmZmZlZWVjY2NiYmJhYWFgYGBfX19dXV1cXFxbW1taWlpZWVlXV1dWVlZVVVVUVFRTU1NRUVFQUFBPT09OTk5NTU1LS0tT9SY0AAAAMUlEQVQImQXBhQGAMAAAIGxnx2z9/00BiVQmVyhVakGj1ekNRpPZYhVtdofT5fZ4fT8hpwG05JjexgAAAABJRU5ErkJggg==);background:-webkit-linear-gradient(top,#707070 1%,#4c4c4c 99%);background:-moz-linear-gradient(top,#707070 1%,#4c4c4c 99%)}.dhtmlx_popup_title{color:#fff;text-shadow:1px 1px #000;height:40px;line-height:40px;font-size:20px}.dhtmlx_popup_text{margin:15px 15px 5px;font-size:14px;color:#000;min-height:30px;border-radius:6px}.dhtmlx-error,.dhtmlx-info{font-size:14px;color:#000;box-shadow:0 0 10px #888;padding:0;background-color:#FFF;border-radius:3px;border:1px solid #fff}.dhtmlx-info div{padding:5px 10px;background-color:#fff;border-radius:3px;border:1px solid #B8B8B8}.dhtmlx-error{background-color:#d81b1b;border:1px solid #ff3c3c;box-shadow:0 0 10px #000}.dhtmlx-error div{background-color:#d81b1b;border:1px solid #940000;color:#FFF}.dhx_cal_event .dhx_body,.dhx_cal_event .dhx_footer,.dhx_cal_event .dhx_header,.dhx_cal_event .dhx_title{background-color:#FFE763;border:1px solid #B7A543;color:#887A2E;overflow:hidden;width:100%;font-family:Tahoma;font-size:8pt}.dhx_move_denied .dhx_cal_event .dhx_header,.dhx_move_denied .dhx_cal_event .dhx_title{cursor:default}.dhx_cal_event .dhx_header{height:1px;margin-left:1px;border-width:1px 1px 0;cursor:pointer}.dhx_cal_event .dhx_title{height:12px;border-width:0 1px 1px;border-bottom-style:dotted;font-size:7pt;font-weight:700;text-align:center;background-position:right;background-repeat:no-repeat;cursor:pointer}.dhx_cal_event .dhx_body,.dhx_cal_event.dhx_cal_select_menu .dhx_body{border-width:0 1px 1px;padding:5px}.dhx_resize_denied,.dhx_resize_denied .dhx_event_resize{cursor:default!important}.dhx_cal_event .dhx_event_resize{cursor:s-resize}.dhx_cal_event .dhx_footer,.dhx_cal_event .dhx_select_menu_footer{height:1px;margin-left:2px;border-width:0 1px 1px;position:relative}.dhx_cal_event_line{background-color:#FFE763;border:1px solid #B7A543;border-radius:3px;font-family:Tahoma;font-size:8pt;height:13px;padding-left:10px;color:#887A2E;cursor:pointer;overflow:hidden}.dhx_cal_event_clear{font-family:Tahoma;font-size:8pt;height:13px;padding-left:2px;color:#887A2E;white-space:nowrap;overflow:hidden;cursor:pointer}.dhx_in_move{background-color:#FFFF80}.dhx_cal_event.dhx_cal_editor{border:1px solid #B7A543;border-top-style:dotted;z-index:10;position:absolute;overflow:hidden}textarea.dhx_cal_editor{width:100%;height:100%;border:0 solid #000;margin:0;padding:0;overflow:auto}div.dhx_menu_head{background-image:url(imgs/controls.gif);background-position:0 -43px;width:10px;height:10px;margin-left:5px;margin-top:1px;border:none;cursor:default}div.dhx_menu_icon{background-image:url(imgs/controls.gif);width:20px;height:20px;margin-left:-5px;margin-top:0;border:none;cursor:pointer}div.icon_details{background-position:0 0}div.icon_edit{background-position:-22px 0}div.icon_save{background-position:-84px -1px}div.icon_cancel{background-position:-62px 0}div.icon_delete{background-position:-42px 0}.dhx_month_link{position:absolute;box-sizing:border-box;-moz-box-sizing:border-box;text-align:right;cursor:pointer;padding-right:10px}.dhx_month_link a{color:#00f}.dhx_month_link a:hover{text-decoration:underline}.dhx_global_tip{font-family:Tahoma,Helvetica;text-align:center;font-size:20px;position:fixed;top:60px;right:20px;background-color:rgba(255,255,255,.7);color:#000;z-index:14;padding:20px 30px;width:190px}.dhx_global_tip div{font-size:30px}@media (-moz-touch-enabled){.dhx_cal_container{user-select:none;-moz-user-select:none}}.dhx_unselectable,.dhx_unselectable div{-webkit-user-select:none;-moz-user-select:none;-moz-user-select:-moz-none}.dhx_cal_light{-webkit-tap-highlight-color:transparent;background-color:#FFE763;border-radius:5px;font-family:Tahoma;font-size:8pt;border:1px solid #B7A64B;color:#887A2E;position:absolute;z-index:15;width:580px;height:300px;box-shadow:5px 5px 5px #888}.dhx_mark{position:relative;top:3px;background-image:url(imgs/controls.gif);background-position:0 -43px;padding-left:10px}.dhx_ie6 .dhx_mark{background-position:6px -41px}.dhx_cal_light select{font-family:Tahoma;font-size:8pt;color:#887A2E;padding:2px;margin:0}.dhx_cal_ltitle{padding:2px 0 2px 5px;overflow:hidden;white-space:nowrap}.dhx_cal_ltitle span{white-space:nowrap}.dhx_cal_lsection{background-color:#DBCF8C;color:#FFF4B5;font-weight:700;padding:5px 0 3px 10px}.dhx_section_time{background-color:#DBCF8C;white-space:nowrap}.dhx_cal_lsection .dhx_fullday{float:right;margin-right:5px;color:#887A2E;font-size:12px;font-weight:400;line-height:20px;vertical-align:top;cursor:pointer}.dhx_cal_lsection{font-size:18px;font-family:Arial}.dhx_cal_ltext{padding:2px 0 2px 10px;overflow:hidden}.dhx_cal_ltext textarea{background-color:#FFF4B5;overflow:auto;border:none;color:#887A2E;height:100%;width:100%;outline:0!important;resize:none}.dhx_time{font-weight:700}.dhx_cal_light .dhx_title{padding-left:10px}.dhx_cal_larea{border:1px solid #DCC43E;background-color:#FFF4B5;overflow:hidden;margin-left:3px;width:572px;height:1px}.dhx_btn_set{padding:5px 10px 0;float:left}.dhx_btn_set div{float:left;height:21px;line-height:21px;vertical-align:middle;cursor:pointer}.dhx_save_btn{background-image:url(imgs/controls.gif);background-position:-84px 0;width:21px}.dhx_cancel_btn{background-image:url(imgs/controls.gif);background-position:-63px 0;width:20px}.dhx_delete_btn{background-image:url(imgs/controls.gif);background-position:-42px 0;width:20px}.dhx_cal_cover{width:100%;height:100%;position:absolute;z-index:14;top:0;left:0;background-color:#000;opacity:.1;filter:alpha(opacity=10)}.dhx_custom_button{padding:0 3px;color:#887A2E;font-family:Tahoma;font-size:8pt;background-color:#FFE763;font-weight:400;margin-right:5px;margin-top:0;cursor:pointer}.dhx_custom_button div{cursor:pointer;float:left;height:21px;line-height:21px;vertical-align:middle}.dhx_cal_light_wide .dhx_cal_larea{border-top-width:0}.dhx_cal_light_wide .dhx_cal_lsection{border:0;float:left;text-align:right;width:100px;height:20px;font-size:16px;padding:5px 0 0 10px}.dhx_cal_light_wide .dhx_wrap_section{border-top:1px solid #DBCF8C;position:relative;background-color:#DBCF8C;overflow:hidden}.dhx_cal_light_wide .dhx_section_time{padding-top:2px!important;height:20px!important}.dhx_section_time{text-align:center}.dhx_cal_light_wide .dhx_cal_larea{width:730px}.dhx_cal_light_wide{width:738px}.dhx_cal_light_wide .dhx_section_time{background:0 0}.dhx_cal_light_wide .dhx_cal_checkbox label{padding-left:0}.dhx_cal_wide_checkbox input{margin-top:8px;margin-left:14px}.dhx_cal_light input{font-family:Tahoma;font-size:8pt;color:#887A2E}.dhx_cal_light_wide .dhx_cal_lsection .dhx_fullday{float:none;margin-right:0;color:#FFF4B5;font-weight:700;font-size:16px;font-family:Arial;cursor:pointer}.dhx_custom_button{float:right;height:21px}.dhx_cal_light_wide .dhx_custom_button{position:absolute;top:0;right:0;margin-top:2px}.dhx_cal_light_wide .dhx_repeat_right{margin-right:55px}.dhx_minical_popup{position:absolute;z-index:16;width:251px;height:175px}.dhx_scale_bar_header{position:absolute;border-bottom:1px dotted #8894A3;width:100%}.dhx_expand_icon{position:absolute;top:0;right:0;background-image:url(imgs/collapse_expand_icon.gif);width:18px;height:18px;cursor:pointer;background-position:0 18px;z-index:4}.dhx_scheduler_agenda .dhx_cal_data{background-image:url(imgs/databg.png)}.dhx_agenda_area{width:100%;overflow-y:auto;background-image:url(imgs/databg.png)}.dhx_agenda_line{height:21px;clear:both;overflow:hidden}.dhx_agenda_line div{float:left;width:188px;border-right:1px dotted #8894A3;text-align:center;line-height:21px;overflow:hidden}.dhx_agenda_area .dhx_agenda_line div{border-right:0 dotted #8894A3}.dhx_v_border{position:absolute;left:187px;top:0;border-right:1px dotted #8894A3;width:1px;height:100%}.dhx_agenda_line .dhx_event_icon{width:20px;border-width:0;background:url(imgs/icon.png) 5px 4px no-repeat;cursor:pointer}.dhx_agenda_line span{padding-left:5px;line-height:21px}.dhx_year_body{border-left:1px dotted #586A7E}.dhx_year_week{position:relative}.dhx_scale_bar_last{border-right:1px dotted #586A7E}.dhx_year_month{height:18px;padding-top:3px;border:1px dotted #586A7E;text-align:center;vertical-align:middle}.dhx_year_body .dhx_after .dhx_month_head,.dhx_year_body .dhx_after .dhx_month_head a,.dhx_year_body .dhx_before .dhx_month_head,.dhx_year_body .dhx_before .dhx_month_head a{color:#E2E3E6!important}.dhx_year_body .dhx_month_body{height:0;overflow:hidden}.dhx_month_head.dhx_year_event{background-color:#FFE763}.dhx_year_body .dhx_after .dhx_month_head,.dhx_year_body .dhx_before .dhx_month_head{cursor:default}.dhx_year_tooltip{border:1px solid #BBB;background-image:url(imgs/databg.png);position:absolute;z-index:12;width:300px;height:auto;font-family:Tahoma;font-size:8pt;overflow:hidden}.dhx_tooltip_line{line-height:20px;height:20px;overflow:hidden}.dhx_tooltip_line .dhx_event_icon{width:20px;height:20px;padding-right:10px;float:left;border-width:0;position:relative;background:url(imgs/icon.png) 5px 4px no-repeat;cursor:pointer}.dhx_tooltip_date{float:left;width:auto;padding-left:5px;text-align:center}.dhx_text_disabled{color:#887A2E;font-family:Tahoma;font-size:8pt}.dhx_mini_calendar{-moz-box-shadow:5px 5px 5px #888;-khtml-box-shadow:5px 5px 5px #888;-moz-user-select:-moz-none;-webkit-user-select:none;-user-select:none}.dhx_mini_calendar .dhx_month_head{cursor:pointer}.dhx_mini_calendar .dhx_calendar_click{background-color:#C2D5FC}.dhx_cal_navline div.dhx_minical_icon{width:18px;height:18px;left:190px;top:1px;cursor:pointer;background-image:url(imgs/calendar.gif)}.dhx_matrix_scell{height:100%}.dhx_matrix_cell,.dhx_matrix_scell{overflow:hidden;text-align:center;vertical-align:middle;border-bottom:1px dotted #8894A3;border-right:1px dotted #8894A3}.dhx_matrix_cell{background-color:#fff}.dhx_matrix_line{overflow:hidden}.dhx_matrix_cell div,.dhx_matrix_scell div{overflow:hidden;text-align:center;height:auto}.dhx_cal_lsection .dhx_readonly{font-size:9pt;font-size:8pt;padding:2px;color:#887A2E}.dhx_cal_event_line .dhx_event_resize{cursor:w-resize;background:url(imgs/resize_dots.png) repeat-y;position:absolute;top:0;width:4px;height:100%}.dhx_event_resize_start{left:0}.dhx_event_resize_end{right:0}.dhx_data_table.folder .dhx_matrix_cell,.dhx_matrix_scell.folder{background-color:#969394;cursor:pointer}.dhx_matrix_scell .dhx_scell_level0{padding-left:5px}.dhx_matrix_scell .dhx_scell_level1{padding-left:20px}.dhx_matrix_scell .dhx_scell_level2{padding-left:35px}.dhx_matrix_scell .dhx_scell_level3{padding-left:50px}.dhx_matrix_scell .dhx_scell_level4{padding-left:65px}.dhx_matrix_scell.folder{font-weight:700;text-align:left}.dhx_matrix_scell.folder .dhx_scell_expand{float:left;width:10px;padding-right:3px}.dhx_matrix_scell.folder .dhx_scell_name{float:left;width:auto}.dhx_matrix_scell.item .dhx_scell_name{padding-left:15px;text-align:left}.dhx_data_table.folder .dhx_matrix_cell{border-right:0}.dhx_section_timeline{overflow:hidden;padding:4px 0 2px 10px}.dhx_section_timeline select{width:552px}.dhx_map_area{width:100%;height:100%;overflow-y:auto;overflow-x:hidden;background-image:url(imgs/databg.png)}.dhx_map_line .dhx_event_icon{width:20px;border-width:0;background:url(imgs/icon.png) 5px 4px no-repeat;cursor:pointer}.dhx_map_line{height:21px;clear:both;overflow:hidden}.dhx_map{position:absolute}.dhx_map_line .headline_description,.dhx_map_line div{float:left;border-right:1px dotted #8894A3;text-align:center;line-height:21px;overflow:hidden}.dhx_map_line .dhx_map_description{float:left;border-right:0 dotted #8894A3;text-align:center;line-height:21px;overflow:hidden}.dhx_map_line .headline_date,.dhx_map_line .headline_description{border-left:0}.dhx_map_line .line_description{float:left;border-right:1px dotted #8894A3;text-align:left;padding-left:5px;line-height:21px;overflow:hidden}.dhx_map_line.highlight{background-color:#C4C5CC}.dhx_map_area .dhx_map_line div{border-right:0 dotted #8894A3}.dhtmlXTooltip.tooltip{-moz-box-shadow:3px 3px 3px #888;-webkit-box-shadow:3px 3px 3px #888;-o-box-shadow:3px 3px 3px #888;box-shadow:3px 3px 3px #888;filter:progid:DXImageTransform.Microsoft.Shadow(color='#888888', Direction=135, Strength=5);background-color:#fff;border-left:1px dotted #887A2E;border-top:1px dotted #887A2E;color:#887A2E;cursor:default;padding:10px;position:fixed;z-index:9;font-family:Tahoma;font-size:8pt;opacity:1}.dhx_cal_checkbox label{padding-left:5px}.dhx_cal_light .radio{padding:2px 0 2px 10px}.dhx_cal_light .radio input,.dhx_cal_light .radio label{line-height:15px}.dhx_cal_light .radio input{vertical-align:middle;margin:0;padding:0}.dhx_cal_light .radio label{vertical-align:middle;padding-right:10px}.dhx_cal_light .combo{padding:4px}.dhx_cal_light_wide .combo>div,.dhx_cal_light_wide .dhx_combo_box{width:608px!important;left:10px}.dhx_wa_column{float:left}.dhx_wa_column_last .dhx_wa_day_cont{border-left:1px dotted #8894A3}.dhx_wa_scale_bar{font-family:Tahoma;padding-left:10px;font-size:11px;border-top:1px dotted #8894A3;border-bottom:1px dotted #8894A3}.dhx_wa_day_data{background-color:#FCFEFC;overflow-y:auto}.dhx_wa_ev_body{border-bottom:1px dotted #789;font-size:12px;padding:5px 0 5px 7px}.dhx_wa_dnd{font-family:Tahoma;position:absolute;padding-right:7px;color:#887AE2!important;background-color:#FFE763!important;border:1px solid #B7A543}.dhx_cal_event_selected{background-color:#9cc1db;color:#fff}.dhx_second_scale_bar{border-bottom:1px dotted #586A7E;padding-top:2px}.dhx_cal_header div div{border-left:1px dotted #8894A3}.dhx_grid_area{width:100%;height:100%;overflow-y:auto;background-color:#FCFEFC}.dhx_grid_area table{border-collapse:collapse;border-spacing:0;width:100%;table-layout:fixed}.dhx_grid_area td{table-layout:fixed;text-align:center}.dhx_grid_line{height:21px;clear:both;overflow:hidden}.dhx_grid_line div{float:left;cursor:default;padding-top:0;padding-bottom:0;text-align:center;line-height:21px;overflow:hidden}.dhx_grid_area td,.dhx_grid_line div{padding-left:8px;padding-right:8px}.dhx_grid_area tr.dhx_grid_event{height:21px;overflow:hidden;margin:0 0 1px}.dhx_grid_area tr.dhx_grid_event td{border-bottom:1px solid #ECEEF4}.dhx_grid_area tr.dhx_grid_event:nth-child(2n) td,.dhx_grid_area tr.dhx_grid_event:nth-child(2n+1) td{border-bottom-width:0;border-bottom-style:none}.dhx_grid_area tr.dhx_grid_event:nth-child(2n){background-color:#ECEEF4}.dhx_grid_area .dhx_grid_dummy{table-layout:auto;margin:0!important;padding:0!important}.dhx_grid_v_border{position:absolute;border-right:1px solid #A4BED4;width:1px;height:100%}.dhx_grid_event_selected{background-color:#9cc1db!important;color:#fff!important}.dhx_grid_sort_desc .dhx_grid_view_sort{background-position:0 -55px}.dhx_grid_sort_asc .dhx_grid_view_sort{background-position:0 -66px}.dhx_grid_view_sort{width:10px;height:10px;position:absolute;border:none!important;top:5px;background-repeat:no-repeat;background-image:url(imgs/images.png)}.dhx_marked_timespan{position:absolute;width:100%;margin-left:0}.dhx_time_block{position:absolute;width:100%;background:silver;opacity:.4;filter:alpha(opacity=40);z-index:1}.dhx_time_block_reset{opacity:1;filter:alpha(opacity=100)}.dhx_mini_calendar .dhx_marked_timespan,.dhx_scheduler_month .dhx_marked_timespan{display:none}.dhx_now_time{width:100%;border-bottom:2px solid red;z-index:1}.dhx_scheduler_month .dhx_now_time{border-bottom:0;border-left:2px solid red}.dhx_matrix_now_time{border-left:2px solid red;z-index:1}.dhx_matrix_now_time,.dhx_now_time{opacity:.5}.dhx_cal_quick_info{border:2px solid #888;border-radius:5px;position:absolute;z-index:8;background-color:#8e99ae;background-color:rgba(98,107,127,.5);padding-left:7px;width:300px;transition:left .5s ease,right .5s;-moz-transition:left .5s ease,right .5s;-webkit-transition:left .5s ease,right .5s;-o-transition:left .5s ease,right .5s}.dhx_no_animate{transition:none;-moz-transition:none;-webkit-transition:none;-o-transition:none}.dhx_cal_quick_info.dhx_qi_left .dhx_qi_big_icon{float:right}.dhx_cal_qi_title{padding:5px 0 10px 5px;color:#FFF;letter-spacing:1px}.dhx_cal_qi_tdate{font-size:14px}.dhx_cal_qi_tcontent{font-size:18px;font-weight:700}.dhx_cal_qi_content{border:1px solid #888;background-color:#fefefe;padding:16px 8px;font-size:14px;color:#444;width:275px;overflow:hidden}.dhx_qi_big_icon{border-radius:3px;color:#444;margin:5px 9px 5px 0;min-width:60px;line-height:20px;vertical-align:middle;padding:5px 10px 5px 5px;cursor:pointer;background-color:#fefefe;border-bottom:1px solid #666;border-right:1px solid #666;float:left}.dhx_cal_qi_controls div{float:left;height:20px;text-align:center;line-height:20px}.dhx_qi_big_icon .dhx_menu_icon{margin:0 8px 0 0}.dhx_drag_marker{width:100%;filter:alpha(Opacity=50);opacity:.5;background-color:#FFE763;position:absolute;box-sizing:border-box!important;border-top:1px solid #B6B6B6;border-bottom:1px solid #b6b6b6}.dhx_focus_slot{background:#FFE763;position:absolute;pointer-events:none;opacity:.3}.dhx_cal_container :focus{outline-style:auto}.dhtmlx_modal_box *,.dhx_cal_data,.dhx_cal_data div,.dhx_cal_data table *,.dhx_cal_header,.dhx_cal_header div,.dhx_cal_light .dhx_cal_lsection,.dhx_cal_light .dhx_wrap_section,.dhx_cal_navline div,.dhx_cal_quick_info,.dhx_cal_quick_info div,.dhx_multi_day,.dhx_multi_day div,.dhx_tooltip_line div{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}.dhx_cal_data div.dhx_scale_hour,.dhx_cal_data table .dhx_matrix_cell,.dhx_cal_data table .dhx_matrix_scell{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.dhx_cal_data table{border-collapse:separate}.dhx_cal_light .dhx_cal_radio label{margin-bottom:0}.dhx_cal_event div{line-height:normal}.dhx_cal_container{background-color:#C2D5FC;font-family:Tahoma;font-size:8pt;position:relative;overflow:hidden}.dhx_cal_container div{-moz-user-select:none;-moz-user-select:-moz-none}.dhx_cal_navline{height:20px;position:absolute;z-index:3;width:750px;color:#2F3A48}.dhx_cal_navline div{position:absolute;top:2px;white-space:nowrap}.dhx_cal_navline .dhx_cal_date{font-weight:600;left:210px;padding-top:1px}.dhx_cal_button .dhx_left_bg{width:1px;overflow:hidden;height:17px;z-index:5;top:0}.dhx_cal_prev_button{background-image:url(imgs/buttons.png);background-position:0 0;width:29px;height:17px;left:50px;cursor:pointer}.dhx_cal_next_button{background-image:url(imgs/buttons.png);background-position:-30px 0;width:29px;height:17px;left:80px;cursor:pointer}.dhx_cal_today_button{background-image:url(imgs/buttons.png);background-position:-60px 0;width:75px;height:17px;left:112px;cursor:pointer;text-align:center;text-decoration:underline}.dhx_cal_tab{width:59px;height:19px;text-align:center;text-decoration:underline;padding-top:2px;cursor:pointer;background-color:#D8E1EA;-webkit-border-top-left-radius:4px;-webkit-border-top-right-radius:4px;-moz-border-radius-topleft:4px;-moz-border-radius-topright:4px;border-top-left-radius:4px;border-top-right-radius:4px}.dhx_cal_tab.active{text-decoration:none;cursor:default;font-weight:700;border:1px dotted #586A7E;border-bottom:0;background-color:#C2D5FC}.dhx_cal_header{position:absolute;left:10px;top:23px;width:750px;border-top:1px dotted #8894A3;border-right:1px dotted #8894A3;z-index:2;overflow:hidden;color:#2F3A48}.dhx_cal_data{-webkit-tap-highlight-color:transparent;border-top:1px dotted #8894A3;position:absolute;top:44px;width:600px;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;-ms-touch-action:pan-y}.dhx_cal_event,.dhx_cal_event_clear,.dhx_cal_event_line{-ms-touch-action:none}.dhx_scale_bar{position:absolute;text-align:center;background-color:#C2D5FC;padding-top:3px;border-left:1px dotted #586A7E}.dhx_scale_holder{position:absolute;border-right:1px dotted #586A7E;background-image:url(imgs/databg.png)}.dhx_scale_holder_now{position:absolute;border-right:1px dotted #586A7E;background-image:url(imgs/databg_now.png)}.dhx_scale_hour{height:41px;width:50px;border-bottom:1px dotted #8894A3;background-color:#C2D5FC;text-align:center;line-height:40px;color:#586A7E;overflow:hidden}.dhx_month_head{background-color:#EBEFF4;color:#2F3A48;height:18px;padding-right:5px;padding-top:3px;text-align:right;border-right:1px dotted #586A7E}.dhx_month_body{border-right:1px dotted #586A7E;border-bottom:1px dotted #586A7E;background-color:#FFF}.dhx_now .dhx_month_body{background-color:#E2EDFF}.dhx_after .dhx_month_body,.dhx_before .dhx_month_body{background-color:#ECECEC}.dhx_after .dhx_month_head,.dhx_before .dhx_month_head{background-color:#E2E3E6;color:#94A6BB}.dhx_now .dhx_month_head{background-color:#D1DEF4;font-weight:700}.dhx_scale_ignore{display:none}.dhx_cal_drag{position:absolute;z-index:13;background-color:#FFE763;border:1px solid #B7A543;opacity:.5;filter:alpha(opacity=50)}.dhx_loading{position:absolute;width:128px;height:15px;background-image:url(imgs/loading.gif);z-index:13}.dhx_multi_day,.dhx_multi_day_icon{background-color:#E1E6FF;background-repeat:no-repeat;border-right:1px dotted #8894A3}.dhx_multi_day{position:absolute;border-top:1px dotted #8894A3}.dhx_multi_day_icon,.dhx_multi_day_icon_small{background-position:center center;background-color:#E1E6FF;background-repeat:no-repeat;border-bottom:1px dotted #8894A3;border-right:1px dotted #8894A3}.dhx_multi_day_icon{background-image:url(imgs/clock_big.gif)}.dhx_multi_day_icon_small{background-image:url(imgs/clock_small.gif)}.dhtmlxLayoutPolyContainer_dhx_skyblue .dhx_cal_container{background-color:#d0e5ff}.dhx_month_body_border,.dhx_month_head_border,.dhx_scale_bar_border,.dhx_scale_hour_border{border-left:1px dotted #8894A3}.dhx_cal_navline .dhx_cal_export{width:18px;height:18px;margin:2px;cursor:pointer;top:0}.dhx_cal_navline .dhx_cal_export.pdf{left:2px;background-image:url(imgs/export_pdf.png)}.dhx_cal_navline .dhx_cal_export.ical{left:24px;background-image:url(imgs/export_ical.png)}.dhx_form_repeat,.dhx_form_repeat input{padding:0 0 0 5px;margin:0;font-family:Tahoma,Verdana;font-size:11px;line-height:24px}.dhx_form_repeat{overflow:hidden;background-color:#FFF4B5}.dhx_cal_light_wide .dhx_form_repeat{background-color:transparent}.dhx_repeat_center,.dhx_repeat_divider,.dhx_repeat_left,.dhx_repeat_right{height:115px;-moz-box-sizing:border-box;box-sizing:border-box}.dhx_repeat_center,.dhx_repeat_left{padding:10px 0 0 10px;float:left}.dhx_repeat_left{width:105px}.dhx_repeat_center{width:345px;padding-top:22px}.dhx_repeat_divider{float:left;border-left:1px dotted #DCC43E;width:1px}.dhx_repeat_right{float:right;width:173px;padding:17px 3px 0 10px}input.dhx_repeat_text{height:16px;width:27px;margin:0 4px;line-height:18px;padding:0 0 0 2px}.dhx_form_repeat select{height:20px;width:87px;padding:0 0 0 2px;margin:0 4px}input.dhx_repeat_date{height:18px;width:80px;padding:0 0 0 2px;margin:0 4px;background-repeat:no-repeat;background-position:64px 0;border:1px solid #7f9db9;line-height:18px}input.dhx_repeat_radio{margin-right:4px}input.dhx_repeat_checkbox{margin:4px 4px 0 0}.dhx_repeat_days td{padding-right:5px}.dhx_repeat_days label{font-size:10px}.dhx_custom_button{width:90px;-webkit-border-radius:4px;-moz-border-radius:4px;-ms-border-radius:4px;-o-border-radius:4px;border-radius:4px}.dhx_custom_button_recurring{background-image:url(imgs/but_repeat.gif);background-position:-5px 20px;width:20px;margin-right:10px}.dhx_cal_light_rec{width:640px}.dhx_cal_light_rec .dhx_cal_larea{width:632px}.dhx_cal_light_rec.dhx_cal_light_wide{width:816px}.dhx_cal_light_rec.dhx_cal_light_wide .dhx_cal_larea{width:808px}
\ No newline at end of file diff --git a/codebase/dhtmlxscheduler_contrast_black.css b/codebase/dhtmlxscheduler_contrast_black.css new file mode 100644 index 0000000..d8cb933 --- /dev/null +++ b/codebase/dhtmlxscheduler_contrast_black.css @@ -0,0 +1,9 @@ +/* +@license +dhtmlxScheduler v.4.4.0 Stardard + +This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. + +(c) Dinamenta, UAB. +*/ +.dhtmlx_message_area{position:fixed;right:5px;width:250px;z-index:11}.dhtmlx-info{min-width:120px;font-family:Tahoma;z-index:14;overflow:hidden;margin:5px 5px 10px;-webkit-transition:all .5s ease;-moz-transition:all .5s ease;-o-transition:all .5s ease;transition:all .5s ease}.dhtmlx-info.hidden{height:0;padding:0;border-width:0;margin:0;overflow:hidden}.dhtmlx_modal_box{overflow:hidden;display:inline-block;min-width:300px;text-align:center;position:fixed;z-index:18}.dhtmlx_popup_title{border-top-left-radius:5px;border-top-right-radius:5px;border-width:0}.dhtmlx-info,.dhtmlx_button,.dhtmlx_popup_button{user-select:none;-webkit-user-select:none;-moz-user-select:-moz-none;cursor:pointer}.dhtmlx_popup_text{overflow:hidden}.dhtmlx_popup_controls{border-radius:6px;padding:5px}.dhtmlx_button,.dhtmlx_popup_button{height:30px;line-height:30px;display:inline-block;margin:0 5px;border-radius:6px;color:#FFF}.dhtmlx_popup_button{min-width:120px}div.dhx_modal_cover{background-color:#000;cursor:default;filter:alpha(opacity=20);opacity:.2;position:fixed;z-index:17;left:0;top:0;width:100%;height:100%;border:none;zoom:1}.dhtmlx-info img,.dhtmlx_modal_box img{float:left;margin-right:20px}.dhtmlx-alert-error .dhtmlx_popup_title,.dhtmlx-confirm-error .dhtmlx_popup_title{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAsCAIAAAArRUU2AAAATklEQVR4nIWLuw2AMBBDjVuQiBT2oWbRDATrnB0KQOJoqPzRe3BrHI6dcBASYREKovtK6/6DsDOX+stN+3H1YX9ciRgnYq5EWYhS2dftBIuLT4JyIrPCAAAAAElFTkSuQmCC)}.dhtmlx-alert-error,.dhtmlx-confirm-error{border:1px solid red}.dhtmlx_button,.dhtmlx_popup_button{box-shadow:0 0 4px #888;border:1px solid #838383}.dhtmlx_button input,.dhtmlx_popup_button div{border:1px solid #FFF;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAeCAMAAADaS4T1AAAAYFBMVEVwcHBtbW1ra2toaGhmZmZjY2NhYWFeXl5cXFxaWlpXV1dVVVVSUlJQUFBNTU1LS0tJSUlGRkZERERBQUE/Pz88PDw9PT0+Pj5AQEBCQkJDQ0NFRUVHR0dISEhKSkpMTEzqthaMAAAAMklEQVQImQXBhQ2AMAAAsOIMlwWH/8+kRSKVyRVKlVrQaHV6g9FktlhFm93hdLk9Xt8PIfgBvdUqyskAAAAASUVORK5CYII=);background:-webkit-linear-gradient(top,#707070 1%,#3d3d3d 70%,#4c4c4c 99%);background:-moz-linear-gradient(top,#707070 1%,#3d3d3d 70%,#4c4c4c 99%);border-radius:6px;font-size:15px;font-weight:400;-moz-box-sizing:content-box;box-sizing:content-box;color:#fff;padding:0;margin:0;vertical-align:top;height:28px;line-height:28px}.dhtmlx_button input:active,.dhtmlx_button input:focus,.dhtmlx_popup_button div:active,.dhtmlx_popup_button div:focus{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAeCAMAAADaS4T1AAAAXVBMVEVwcHBubm5tbW1sbGxra2tpaWloaGhnZ2dmZmZlZWVjY2NiYmJhYWFgYGBfX19dXV1cXFxbW1taWlpZWVlXV1dWVlZVVVVUVFRTU1NRUVFQUFBPT09OTk5NTU1LS0tT9SY0AAAAMUlEQVQImQXBhQGAMAAAIGxnx2z9/00BiVQmVyhVakGj1ekNRpPZYhVtdofT5fZ4fT8hpwG05JjexgAAAABJRU5ErkJggg==);background:-webkit-linear-gradient(top,#707070 1%,#4c4c4c 99%);background:-moz-linear-gradient(top,#707070 1%,#4c4c4c 99%)}.dhtmlx_popup_title{color:#fff;height:40px;line-height:40px;font-size:20px}.dhtmlx_popup_text{margin:15px 15px 5px;font-size:14px;min-height:30px;border-radius:6px}.dhtmlx-error,.dhtmlx-info{box-shadow:0 0 10px #888;padding:0;border-radius:3px;border:1px solid #fff}.dhtmlx-info div{padding:5px 10px;border-radius:3px;border:1px solid #B8B8B8}.dhtmlx-error{border:1px solid #ff3c3c;box-shadow:0 0 10px #000}.dhtmlx-error div{background-color:#d81b1b;border:1px solid #940000;color:#FFF}.dhx_cal_event .dhx_body,.dhx_cal_event .dhx_footer,.dhx_cal_event .dhx_header,.dhx_cal_event .dhx_title{border:1px solid #B7A543;overflow:hidden;width:100%;font-family:Tahoma;font-size:8pt}.dhx_move_denied .dhx_cal_event .dhx_header,.dhx_move_denied .dhx_cal_event .dhx_title{cursor:default}.dhx_cal_event .dhx_header{height:1px;margin-left:1px;border-width:1px 1px 0;cursor:pointer}.dhx_cal_event .dhx_title{height:12px;border-bottom-style:dotted;text-align:center;background-position:right;background-repeat:no-repeat;cursor:pointer}.dhx_cal_event .dhx_body,.dhx_cal_event.dhx_cal_select_menu .dhx_body{border-width:0 1px 1px;padding:5px}.dhx_resize_denied,.dhx_resize_denied .dhx_event_resize{cursor:default!important}.dhx_cal_event .dhx_event_resize{cursor:s-resize}.dhx_cal_event .dhx_footer,.dhx_cal_event .dhx_select_menu_footer{height:1px;margin-left:2px;border-width:0 1px 1px;position:relative}.dhx_cal_event_line{padding-left:10px;cursor:pointer;overflow:hidden}.dhx_cal_event_clear{font-family:Tahoma;padding-left:2px;white-space:nowrap;overflow:hidden;cursor:pointer}.dhx_in_move{background-color:#FFFF80}.dhx_cal_event.dhx_cal_editor{z-index:10;position:absolute;overflow:hidden}textarea.dhx_cal_editor{width:100%;height:100%;border:0 solid #000;margin:0;padding:0;overflow:auto}div.dhx_menu_head{background-position:0 -43px;width:10px;height:10px;margin-left:5px;margin-top:1px;border:none;cursor:default}div.dhx_menu_icon{width:20px;height:20px;margin-left:-5px;margin-top:0;border:none;cursor:pointer}div.icon_details{background-position:0 0}div.icon_edit{background-position:-22px 0}div.icon_save{background-position:-84px -1px}div.icon_cancel{background-position:-62px 0}div.icon_delete{background-position:-42px 0}.dhx_month_link{position:absolute;box-sizing:border-box;-moz-box-sizing:border-box;text-align:right;cursor:pointer;padding-right:10px}.dhx_month_link a{color:#00f}.dhx_month_link a:hover{text-decoration:underline}.dhx_global_tip{font-family:Tahoma,Helvetica;text-align:center;font-size:20px;position:fixed;top:60px;right:20px;background-color:rgba(255,255,255,.7);color:#000;z-index:14;padding:20px 30px;width:190px}.dhx_global_tip div{font-size:30px}@media (-moz-touch-enabled){.dhx_cal_container{user-select:none;-moz-user-select:none}}.dhx_unselectable,.dhx_unselectable div{-webkit-user-select:none;-moz-user-select:none;-moz-user-select:-moz-none}.dhx_cal_light{-webkit-tap-highlight-color:transparent;border-radius:5px;font-family:Tahoma;position:absolute;z-index:15;width:580px;height:300px;box-shadow:5px 5px 5px #888}.dhx_mark{position:relative;top:3px;background-image:url(imgs/controls.gif);background-position:0 -43px;padding-left:10px}.dhx_ie6 .dhx_mark{background-position:6px -41px}.dhx_cal_light select{font-family:Tahoma;padding:2px;margin:0}.dhx_cal_ltitle{padding:2px 0 2px 5px;overflow:hidden;white-space:nowrap}.dhx_cal_ltitle span{white-space:nowrap}.dhx_cal_lsection{font-weight:700;padding:5px 0 3px 10px}.dhx_section_time{white-space:nowrap}.dhx_cal_lsection .dhx_fullday{float:right;margin-right:5px;font-size:12px;font-weight:400;line-height:20px;vertical-align:top;cursor:pointer}.dhx_cal_lsection{font-size:18px;font-family:Arial}.dhx_cal_ltext{padding:2px 0 2px 10px;overflow:hidden}.dhx_cal_ltext textarea{overflow:auto;height:100%;width:100%;outline:0!important;resize:none}.dhx_time{font-weight:700}.dhx_cal_larea{overflow:hidden;width:572px;height:1px}.dhx_btn_set{float:left}.dhx_btn_set div{float:left;vertical-align:middle;cursor:pointer}.dhx_save_btn{background-image:url(imgs/controls.gif);background-position:-84px 0;width:21px}.dhx_cancel_btn{background-image:url(imgs/controls.gif);background-position:-63px 0;width:20px}.dhx_delete_btn{background-image:url(imgs/controls.gif);background-position:-42px 0;width:20px}.dhx_cal_cover{width:100%;height:100%;position:absolute;z-index:14;top:0;left:0;background-color:#000;opacity:.1;filter:alpha(opacity=10)}.dhx_custom_button{padding:0 3px;font-family:Tahoma;font-weight:400;margin-right:5px;margin-top:0;cursor:pointer}.dhx_custom_button div{cursor:pointer;float:left;height:21px;line-height:21px;vertical-align:middle}.dhx_cal_light_wide .dhx_cal_larea{border-top-width:0}.dhx_cal_light_wide .dhx_cal_lsection{border:0;float:left;text-align:right;width:100px;height:20px;padding:5px 0 0 10px}.dhx_cal_light_wide .dhx_wrap_section{position:relative;overflow:hidden}.dhx_cal_light_wide .dhx_section_time{padding-top:2px!important;height:20px!important}.dhx_section_time{text-align:center}.dhx_cal_light_wide .dhx_cal_larea{width:730px}.dhx_cal_light_wide{width:738px}.dhx_cal_light_wide .dhx_section_time{background:0 0}.dhx_cal_light_wide .dhx_cal_checkbox label{padding-left:0}.dhx_cal_wide_checkbox input{margin-top:8px;margin-left:14px}.dhx_cal_light input{font-family:Tahoma}.dhx_cal_light_wide .dhx_cal_lsection .dhx_fullday{float:none;margin-right:0;font-weight:700;font-family:Arial;cursor:pointer}.dhx_custom_button{float:right;height:21px}.dhx_cal_light_wide .dhx_custom_button{position:absolute;top:0;right:0}.dhx_cal_light_wide .dhx_repeat_right{margin-right:55px}.dhx_minical_popup{position:absolute;z-index:16;width:251px;height:175px}.dhx_scale_bar_header{position:absolute;border-bottom:1px dotted #8894A3;width:100%}.dhx_expand_icon{position:absolute;right:0;background-image:url(imgs/collapse_expand_icon.gif);width:18px;height:18px;cursor:pointer;background-position:0 18px;z-index:4}.dhx_agenda_area{width:100%;overflow-y:auto}.dhx_agenda_line{clear:both;overflow:hidden}.dhx_agenda_line div{float:left;width:188px;text-align:center;line-height:21px;overflow:hidden}.dhx_agenda_area .dhx_agenda_line div{border-right:0 dotted #8894A3}.dhx_v_border{position:absolute;left:187px;top:0;width:1px;height:100%}.dhx_agenda_line .dhx_event_icon{width:20px;border-width:0;cursor:pointer}.dhx_agenda_line span{padding-left:5px;line-height:21px}.dhx_year_week{position:relative}.dhx_year_month{height:18px;padding-top:3px;text-align:center;vertical-align:middle}.dhx_year_body .dhx_after .dhx_month_head,.dhx_year_body .dhx_after .dhx_month_head a,.dhx_year_body .dhx_before .dhx_month_head,.dhx_year_body .dhx_before .dhx_month_head a{color:#E2E3E6!important}.dhx_year_body .dhx_month_body{height:0;overflow:hidden}.dhx_month_head.dhx_year_event{background-color:#FFE763}.dhx_year_body .dhx_after .dhx_month_head,.dhx_year_body .dhx_before .dhx_month_head{cursor:default}.dhx_year_tooltip{border:1px solid #BBB;position:absolute;z-index:12;width:300px;height:auto;font-family:Tahoma;overflow:hidden}.dhx_tooltip_line{overflow:hidden}.dhx_tooltip_line .dhx_event_icon{width:20px;padding-right:10px;float:left;border-width:0;position:relative;background:url(imgs/icon.png) 5px 4px no-repeat;cursor:pointer}.dhx_tooltip_date{float:left;width:auto;padding-left:5px;text-align:center}.dhx_text_disabled{font-family:Tahoma;font-size:8pt}.dhx_mini_calendar{-moz-box-shadow:5px 5px 5px #888;-khtml-box-shadow:5px 5px 5px #888;-moz-user-select:-moz-none;-webkit-user-select:none;-user-select:none}.dhx_mini_calendar .dhx_month_head{cursor:pointer}.dhx_mini_calendar .dhx_calendar_click{background-color:#C2D5FC}.dhx_cal_navline div.dhx_minical_icon{cursor:pointer;background-image:url(imgs/calendar.gif)}.dhx_matrix_scell{height:100%}.dhx_matrix_cell,.dhx_matrix_scell{overflow:hidden;text-align:center;vertical-align:middle}.dhx_matrix_cell{background-color:#fff}.dhx_matrix_line{overflow:hidden}.dhx_matrix_cell div,.dhx_matrix_scell div{overflow:hidden;text-align:center;height:auto}.dhx_cal_lsection .dhx_readonly{font-size:9pt;font-size:8pt;padding:2px;color:#887A2E}.dhx_cal_event_line .dhx_event_resize{cursor:w-resize;position:absolute;top:0;width:4px;height:100%}.dhx_event_resize_start{left:0}.dhx_event_resize_end{right:0}.dhx_data_table.folder .dhx_matrix_cell,.dhx_matrix_scell.folder{background-color:#969394;cursor:pointer}.dhx_matrix_scell .dhx_scell_level0{padding-left:5px}.dhx_matrix_scell .dhx_scell_level1{padding-left:20px}.dhx_matrix_scell .dhx_scell_level2{padding-left:35px}.dhx_matrix_scell .dhx_scell_level3{padding-left:50px}.dhx_matrix_scell .dhx_scell_level4{padding-left:65px}.dhx_matrix_scell.folder{font-weight:700;text-align:left}.dhx_matrix_scell.folder .dhx_scell_expand{float:left;width:10px;padding-right:3px}.dhx_matrix_scell.folder .dhx_scell_name{float:left;width:auto}.dhx_matrix_scell.item .dhx_scell_name{padding-left:15px;text-align:left}.dhx_data_table.folder .dhx_matrix_cell{border-right:0}.dhx_section_timeline{overflow:hidden;padding:4px 0 2px 10px}.dhx_section_timeline select{width:552px}.dhx_map_area{width:100%;height:100%;overflow-y:auto;overflow-x:hidden;background-image:url(imgs/databg.png)}.dhx_map_line .dhx_event_icon{width:20px;border-width:0;background:url(imgs/icon.png) 5px 4px no-repeat;cursor:pointer}.dhx_map_line{height:21px;clear:both;overflow:hidden}.dhx_map{position:absolute}.dhx_map_line .headline_description,.dhx_map_line div{float:left;border-right:1px dotted #8894A3;text-align:center;line-height:21px;overflow:hidden}.dhx_map_line .dhx_map_description{float:left;border-right:0 dotted #8894A3;text-align:center;line-height:21px;overflow:hidden}.dhx_map_line .line_description{float:left;border-right:1px dotted #8894A3;text-align:left;padding-left:5px;line-height:21px;overflow:hidden}.dhx_map_line.highlight{background-color:#C4C5CC}.dhx_map_area .dhx_map_line div{border-right:0 dotted #8894A3}.dhtmlXTooltip.tooltip{-moz-box-shadow:3px 3px 3px #888;-webkit-box-shadow:3px 3px 3px #888;-o-box-shadow:3px 3px 3px #888;box-shadow:3px 3px 3px #888;filter:progid:DXImageTransform.Microsoft.Shadow(color='#888888', Direction=135, Strength=5);background-color:#fff;cursor:default;padding:10px;position:fixed;z-index:9;font-family:Tahoma;opacity:1}.dhx_cal_checkbox label{padding-left:5px}.dhx_cal_light .radio{padding:2px 0 2px 10px}.dhx_cal_light .radio input,.dhx_cal_light .radio label{line-height:15px}.dhx_cal_light .radio input{vertical-align:middle;margin:0;padding:0}.dhx_cal_light .radio label{vertical-align:middle;padding-right:10px}.dhx_cal_light .combo{padding:4px}.dhx_cal_light_wide .combo>div,.dhx_cal_light_wide .dhx_combo_box{width:608px!important;left:10px}.dhx_wa_column{float:left}.dhx_wa_scale_bar{font-family:Tahoma;padding-left:10px}.dhx_wa_day_data{background-color:#FCFEFC;overflow-y:auto}.dhx_wa_ev_body{padding:5px 0 5px 7px}.dhx_wa_dnd{font-family:Tahoma;position:absolute;padding-right:7px;color:#887AE2!important;background-color:#FFE763!important}.dhx_cal_event_selected{background-color:#9cc1db;color:#fff}.dhx_second_scale_bar{padding-top:2px}.dhx_grid_area{width:100%;height:100%;overflow-y:auto;background-color:#FCFEFC}.dhx_grid_area table{border-collapse:collapse;border-spacing:0;width:100%;table-layout:fixed}.dhx_grid_area td{table-layout:fixed;text-align:center}.dhx_grid_line{height:21px;clear:both;overflow:hidden}.dhx_grid_line div{float:left;cursor:default;padding-top:0;padding-bottom:0;text-align:center;line-height:21px;overflow:hidden}.dhx_grid_area td,.dhx_grid_line div{padding-left:8px;padding-right:8px}.dhx_grid_area tr.dhx_grid_event{height:21px;overflow:hidden;margin:0 0 1px}.dhx_grid_area tr.dhx_grid_event td{border-bottom:1px solid #ECEEF4}.dhx_grid_area tr.dhx_grid_event:nth-child(2n) td,.dhx_grid_area tr.dhx_grid_event:nth-child(2n+1) td{border-bottom-width:0;border-bottom-style:none}.dhx_grid_area tr.dhx_grid_event:nth-child(2n){background-color:#ECEEF4}.dhx_grid_area .dhx_grid_dummy{table-layout:auto;margin:0!important;padding:0!important}.dhx_grid_v_border{position:absolute;border-right:1px solid #A4BED4;width:1px;height:100%}.dhx_grid_event_selected{background-color:#9cc1db!important;color:#fff!important}.dhx_grid_sort_desc .dhx_grid_view_sort{background-position:0 -55px}.dhx_grid_sort_asc .dhx_grid_view_sort{background-position:0 -66px}.dhx_grid_view_sort{width:10px;height:10px;position:absolute;border:none!important;top:5px;background-repeat:no-repeat;background-image:url(imgs/images.png)}.dhx_marked_timespan{position:absolute;width:100%;margin-left:0}.dhx_time_block{position:absolute;width:100%;background:silver;opacity:.4;filter:alpha(opacity=40);z-index:1}.dhx_time_block_reset{opacity:1;filter:alpha(opacity=100)}.dhx_mini_calendar .dhx_marked_timespan,.dhx_scheduler_month .dhx_marked_timespan{display:none}.dhx_now_time{width:100%;border-bottom:2px solid red;z-index:1}.dhx_scheduler_month .dhx_now_time{border-bottom:0;border-left:2px solid red}.dhx_matrix_now_time{border-left:2px solid red;z-index:1}.dhx_matrix_now_time,.dhx_now_time{opacity:.5}.dhx_cal_quick_info{border-radius:5px;position:absolute;z-index:8;background-color:#8e99ae;background-color:rgba(98,107,127,.5);width:300px;transition:left .5s ease,right .5s;-moz-transition:left .5s ease,right .5s;-webkit-transition:left .5s ease,right .5s;-o-transition:left .5s ease,right .5s}.dhx_no_animate{transition:none;-moz-transition:none;-webkit-transition:none;-o-transition:none}.dhx_cal_quick_info.dhx_qi_left .dhx_qi_big_icon{float:right}.dhx_cal_qi_title{letter-spacing:1px}.dhx_cal_qi_tdate{font-size:14px}.dhx_cal_qi_tcontent{font-size:18px;font-weight:700}.dhx_cal_qi_content{background-color:#fefefe;padding:16px 8px;font-size:14px;overflow:hidden}.dhx_qi_big_icon{border-radius:3px;min-width:60px;line-height:20px;vertical-align:middle;padding:5px 10px 5px 5px;cursor:pointer;background-color:#fefefe;float:left}.dhx_cal_qi_controls div{float:left;height:20px;text-align:center;line-height:20px}.dhx_qi_big_icon .dhx_menu_icon{margin:0 8px 0 0}.dhx_drag_marker{width:100%;filter:alpha(Opacity=50);opacity:.5;background-color:#FFE763;position:absolute;box-sizing:border-box!important;border-top:1px solid #B6B6B6;border-bottom:1px solid #b6b6b6}.dhx_focus_slot{background:#FFE763;position:absolute;pointer-events:none;opacity:.3}.dhx_cal_container :focus{outline-style:auto}.dhtmlx_modal_box *,.dhx_cal_data,.dhx_cal_data div,.dhx_cal_data table *,.dhx_cal_header,.dhx_cal_header div,.dhx_cal_light .dhx_cal_lsection,.dhx_cal_light .dhx_wrap_section,.dhx_cal_navline div,.dhx_cal_quick_info,.dhx_cal_quick_info div,.dhx_multi_day,.dhx_multi_day div,.dhx_tooltip_line div{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}.dhx_cal_data div.dhx_scale_hour,.dhx_cal_data table .dhx_matrix_cell,.dhx_cal_data table .dhx_matrix_scell{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.dhx_cal_data table{border-collapse:separate}.dhx_cal_light .dhx_cal_radio label{margin-bottom:0}.dhx_cal_event div{line-height:normal}.dhx_cal_container{position:relative;overflow:hidden}.dhx_cal_container div{-moz-user-select:none;-moz-user-select:-moz-none}.dhx_cal_navline{height:20px;position:absolute;z-index:3;width:750px;color:#2F3A48}.dhx_cal_navline div{position:absolute;white-space:nowrap}.dhx_cal_navline .dhx_cal_date{padding-top:1px}.dhx_cal_button .dhx_left_bg{width:1px;overflow:hidden;height:17px;z-index:5;top:0}.dhx_cal_prev_button{background-image:url(imgs/buttons.png);background-position:0 0;cursor:pointer}.dhx_cal_next_button{background-image:url(imgs/buttons.png);background-position:-30px 0;cursor:pointer}.dhx_cal_today_button{background-image:url(imgs/buttons.png);background-position:-60px 0;cursor:pointer;text-align:center}.dhx_cal_tab{text-align:center;cursor:pointer;background-color:#D8E1EA;-webkit-border-top-left-radius:4px;-webkit-border-top-right-radius:4px;-moz-border-radius-topleft:4px;-moz-border-radius-topright:4px;border-top-left-radius:4px;border-top-right-radius:4px}.dhx_cal_tab.active{text-decoration:none;cursor:default;font-weight:700}.dhx_cal_header{position:absolute;left:10px;top:23px;width:750px;z-index:2;overflow:hidden}.dhx_cal_data{-webkit-tap-highlight-color:transparent;position:absolute;top:44px;width:600px;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;-ms-touch-action:pan-y}.dhx_cal_event,.dhx_cal_event_clear,.dhx_cal_event_line{-ms-touch-action:none}.dhx_scale_bar{position:absolute;text-align:center}.dhx_scale_holder,.dhx_scale_holder_now{position:absolute}.dhx_scale_hour{height:41px;width:50px;text-align:center;line-height:40px;overflow:hidden}.dhx_month_head{padding-right:5px;text-align:right}.dhx_month_body{background-color:#FFF}.dhx_scale_ignore{display:none}.dhx_cal_drag{position:absolute;z-index:13;background-color:#FFE763;border:1px solid #B7A543;opacity:.5;filter:alpha(opacity=50)}.dhx_loading{position:absolute;width:128px;height:15px;background-image:url(imgs/loading.gif);z-index:13}.dhx_multi_day,.dhx_multi_day_icon{background-color:#E1E6FF;background-repeat:no-repeat;border-right:1px dotted #8894A3}.dhx_multi_day{position:absolute}.dhx_multi_day_icon,.dhx_multi_day_icon_small{background-position:center center;background-repeat:no-repeat}.dhtmlxLayoutPolyContainer_dhx_skyblue .dhx_cal_container{background-color:#d0e5ff}.dhx_form_repeat,.dhx_form_repeat input{padding:0 0 0 5px;margin:0;font-family:Tahoma,Verdana;font-size:11px;line-height:24px}.dhx_form_repeat{overflow:hidden;background-color:#FFF4B5}.dhx_cal_light_wide .dhx_form_repeat{background-color:transparent}.dhx_repeat_center,.dhx_repeat_divider,.dhx_repeat_left,.dhx_repeat_right{height:115px;-moz-box-sizing:border-box;box-sizing:border-box}.dhx_repeat_center,.dhx_repeat_left{padding:10px 0 0 10px;float:left}.dhx_repeat_left{width:105px}.dhx_repeat_center{width:345px;padding-top:22px}.dhx_repeat_divider{float:left;width:1px}.dhx_repeat_right{float:right;width:173px;padding:17px 3px 0 10px}input.dhx_repeat_text{height:16px;width:27px;margin:0 4px;line-height:18px;padding:0 0 0 2px}.dhx_form_repeat select{height:20px;width:87px;padding:0 0 0 2px;margin:0 4px}input.dhx_repeat_date{height:18px;width:80px;padding:0 0 0 2px;margin:0 4px;background-repeat:no-repeat;background-position:64px 0;border:1px solid #7f9db9;line-height:18px}input.dhx_repeat_radio{margin-right:4px}input.dhx_repeat_checkbox{margin:4px 4px 0 0}.dhx_repeat_days td{padding-right:5px}.dhx_repeat_days label{font-size:10px}.dhx_custom_button{width:90px;-webkit-border-radius:4px;-moz-border-radius:4px;-ms-border-radius:4px;-o-border-radius:4px;border-radius:4px}.dhx_custom_button_recurring{background-position:-5px 20px;width:20px;margin-right:10px}.dhx_cal_light_rec{width:640px}.dhx_cal_light_rec .dhx_cal_larea{width:632px}.dhx_cal_light_rec.dhx_cal_light_wide{width:816px}.dhx_cal_light_rec.dhx_cal_light_wide .dhx_cal_larea{width:808px}.dhx_cal_event .dhx_title{border-width:1px 1px 0;padding-top:1px;-webkit-border-top-left-radius:4px;-webkit-border-top-right-radius:4px;-moz-border-radius-topleft:4px;-moz-border-radius-topright:4px;border-top-left-radius:4px;border-top-right-radius:4px;font-family:arial;font-weight:700;font-size:14px;line-height:14px}.dhx_cal_event .dhx_body,.dhx_cal_event.dhx_cal_select_menu .dhx_body{padding-bottom:8px;-webkit-border-bottom-right-radius:4px;-webkit-border-bottom-left-radius:4px;-moz-border-radius-bottomright:4px;-moz-border-radius-bottomleft:4px;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.dhx_cal_event .dhx_header,.dhx_cal_event.dhx_cal_select_menu .dhx_footer{display:none}.dhx_cal_event.dhx_cal_select_menu{-webkit-box-shadow:0 0 1px #FFF;-moz-box-shadow:0 0 1px #FFF;box-shadow:0 0 1px #FFF}.dhx_cal_event .dhx_footer{height:5px;border:0;margin-top:-6px;background:url(imgs_contrast_black/resizing.png) center center no-repeat}.dhx_cal_event .dhx_body,.dhx_cal_event .dhx_footer,.dhx_cal_event .dhx_header,.dhx_cal_event .dhx_title{background-color:#1b4872;border-color:#00b7ff;color:#fff}.dhx_cal_event.dhx_cal_editor{border:1px solid transparent}.dhx_cal_editor{font-size:16px;font-family:Arial,sans-serif}div.dhx_menu_head,div.dhx_menu_icon{background-image:url(imgs_contrast_black/controls.png)}.dhx_cal_event_line{border:1px solid #00b7ff;background-color:#1b4872;color:#fff;height:17px;line-height:17px;-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px}.dhx_cal_event_line_start{-webkit-border-top-left-radius:9px;-webkit-border-bottom-left-radius:9px;-moz-border-radius-topleft:9px;-moz-border-radius-bottomleft:9px;border-top-left-radius:9px;border-bottom-left-radius:9px}.dhx_cal_event_line_end{-webkit-border-top-right-radius:9px;-webkit-border-bottom-right-radius:9px;-moz-border-radius-topright:9px;-moz-border-radius-bottomright:9px;border-top-right-radius:9px;border-bottom-right-radius:9px}.dhx_cal_event .dhx_body,.dhx_cal_event_line{font-size:14px;font-family:arial,sans-serif}.dhx_cal_container{font-family:arial;font-size:14px;background-color:#000}.dhx_cal_data{color:#fff;background:#000;border-top:1px solid #8d8d8d}.dhx_scale_holder{background-image:url(imgs_contrast_black/databg.png);border-right:1px solid #8d8d8d}.dhx_scale_holder_now{background-image:url(imgs_contrast_black/databg.png);background-color:#423f0c;background-color:rgba(144,136,15,.5);border-right:1px solid #8d8d8d}.dhx_scale_hour{border-bottom:1px solid #8d8d8d;background-color:#000;font:16px/44px arial;color:#e9e9e9;font-weight:700}.dhx_cal_header{border:1px solid #8d8d8d;color:#e9e9e9;font-weight:700;border-left:0;border-bottom:0}.dhx_scale_bar{border-left:1px solid #8d8d8d;font:16px/16px arial;color:#e9e9e9;font-weight:700;padding-top:2px;background-color:#000}.dhx_cal_navline div{top:14px}.dhx_cal_date,.dhx_cal_next_button,.dhx_cal_prev_button,.dhx_cal_tab,.dhx_cal_today_button{color:#fff;height:30px;line-height:30px;background:0 0;border:2px solid #fff}.dhx_cal_navline .dhx_cal_date{border:0;font-size:18px;font-weight:400;font-family:arial;width:100%;top:14px;text-align:center;position:absolute;left:0;z-index:-1}.dhx_cal_today_button{color:#fff;left:auto;right:123px;background:0 0;text-decoration:none;width:80px;font-size:14px;font-weight:700;font-family:arial;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}.dhx_cal_next_button,.dhx_cal_prev_button{left:auto;width:46px}.dhx_cal_prev_button{right:61px;background:url(imgs_contrast_black/arrow_left.png) center center no-repeat;-webkit-border-top-left-radius:5px;-webkit-border-bottom-left-radius:5px;-moz-border-radius-topleft:5px;-moz-border-radius-bottomleft:5px;border-top-left-radius:5px;border-bottom-left-radius:5px}.dhx_cal_next_button{right:14px;background:url(imgs_contrast_black/arrow_right.png) center center no-repeat;-webkit-border-top-right-radius:5px;-webkit-border-bottom-right-radius:5px;-moz-border-radius-topright:5px;-moz-border-radius-bottomright:5px;border-top-right-radius:5px;border-bottom-right-radius:5px}.dhx_cal_tab{color:#fff;width:60px;padding-top:0;text-decoration:none;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0;font-weight:700;font-family:arial;font-size:14px}.dhx_cal_tab.active{background-color:#fff;color:#000;border:2px solid #fff;text-shadow:none}.dhx_cal_tab_first{-webkit-border-top-left-radius:5px;-webkit-border-bottom-left-radius:5px;-moz-border-radius-topleft:5px;-moz-border-radius-bottomleft:5px;border-top-left-radius:5px;border-bottom-left-radius:5px}.dhx_cal_tab_last{-webkit-border-top-right-radius:5px;-webkit-border-bottom-right-radius:5px;-moz-border-radius-topright:5px;-moz-border-radius-bottomright:5px;border-top-right-radius:5px;border-bottom-right-radius:5px}.dhx_cal_tab_standalone{-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px;padding:0 5px}.dhx_multi_day,.dhx_multi_day_icon,.dhx_multi_day_icon_small{background-color:#000}.dhx_multi_day{border-top:1px solid #8d8d8d}.dhx_multi_day_icon,.dhx_multi_day_icon_small{border-bottom:1px solid #8d8d8d;border-right:1px solid #8d8d8d;background-image:none}.dhx_after .dhx_month_body,.dhx_after .dhx_month_head,.dhx_before .dhx_month_body,.dhx_before .dhx_month_head,.dhx_month_head{background-color:#2e2e2e}.dhx_month_head{height:21px;padding-top:0;font:14px/21px Arial;background:#000;color:#e9e9e9;font-weight:700;border-right:1px solid #8d8d8d}.dhx_after .dhx_month_head,.dhx_before .dhx_month_head{color:#e9e9e9}.dhx_month_body{border-right:1px solid #8d8d8d;border-bottom:1px solid #8d8d8d;background:#000}.dhx_now .dhx_month_body,.dhx_now .dhx_month_head{background-color:#423f0c;font-weight:400}.dhx_cal_event_clear{color:#fff;font-size:14px;height:16px}.dhx_cal_larea{margin-left:0}.dhx_cal_light_wide .dhx_cal_larea{margin-left:3px}.dhx_cal_light_wide .dhx_wrap_section{padding:5px 0}.dhx_cal_larea,.dhx_cal_light,.dhx_cal_light_wide .dhx_wrap_section,.dhx_cal_lsection,.dhx_cal_ltext textarea,.dhx_wrap_section{background-color:#000}.dhx_cal_light input,.dhx_cal_light_wide .dhx_cal_lsection .dhx_fullday,.dhx_cal_lsection,.dhx_cal_lsection .dhx_fullday{color:#e9e9e9}.dhx_cal_light_wide .dhx_wrap_section{border-top:0;border-bottom:1px solid #CECECE}.dhx_cal_larea{border:1px solid transparent}.dhx_cal_light,.dhx_cal_light input,.dhx_cal_light select,.dhx_cal_ltext textarea{color:#fff;background:#000}.dhx_cal_light{border:1px solid #CECECE;font-size:14px}.dhx_cal_light_wide .dhx_cal_lsection,.dhx_cal_light_wide .dhx_cal_lsection .dhx_fullday{font-size:14px}.dhx_section_time{background-color:transparent}.dhx_btn_set div:first-child,.dhx_cancel_btn,.dhx_delete_btn,.dhx_save_btn{display:none}.dhx_btn_set,.dhx_btn_set div{height:30px;padding:0 20px;line-height:30px}.dhx_btn_set{margin:12px 0 0;padding:0;font-size:14px;color:#e9e9e9;font-weight:700;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.dhx_left_btn_set{margin-left:20px}.dhx_right_btn_set{margin-right:20px}.dhx_btn_set.dhx_save_btn_set{border:2px solid #00b7ff;color:#fff;text-shadow:none;background-color:#1b4872}.dhx_btn_set,.dhx_cancel_btn_set{border:2px solid #fff}.dhx_btn_set.dhx_delete_btn_set{border:2px solid #ffc400;background-color:#000;color:#ffc400}.dhx_cal_ltitle{height:30px;line-height:30px;border-bottom:1px solid #8d8d8d}.dhx_cal_ltitle span{float:left}.dhx_cal_light .dhx_title{padding-left:13px}.dhx_mark{display:none}.dhx_time{padding-left:10px}.dhx_close_icon{float:right;width:9px;height:9px;background:url(imgs_contrast_black/close_icon.png) center center no-repeat;padding:10px;margin-top:1px}.dhx_cal_light_wide .dhx_cal_ltext.dhx_cal_template{line-height:22px}.dhx_cal_ltext textarea{line-height:20px;box-sizing:border-box;-moz-box-sizing:border-box;border:1px solid #8d8d8d;background-color:#000}.dhtmlx_modal_box{background:#000;border:1px solid #8d8d8d;color:#fff;padding:4px;font-family:arial;border-radius:6px;-webkit-box-shadow:inset 0 0 0 4px #1b4872;-moz-box-shadow:inset 0 0 0 4px #1b4872;box-shadow:inset 0 0 0 4px #1b4872;width:330px}.dhtmlx_popup_title{text-shadow:none;background:0 0;border-bottom:1px solid #fff}.dhtmlx_popup_text{color:#fff}.dhtmlx_popup_controls{padding-bottom:9px}.dhtmlx_popup_button,.dhtmlx_popup_button div,.dhtmlx_popup_button div:active,.dhtmlx_popup_button:active{color:#fff;font-weight:700;background:#000;box-shadow:none}.dhtmlx_popup_button.dhtmlx_ok_button{border:2px solid #00b7ff;color:#fff;background-color:#1b4872}.dhtmlx_popup_button.dhtmlx_ok_button div{background:#1b4872;border:1px solid transparent;color:#fff;text-shadow:none}.dhtmlx-error,.dhtmlx-info{background-color:#000;color:#fff;font-size:14px}.dhtmlx-info div{background-color:#000}.dhx_cal_container.dhx_mini_calendar{box-sizing:border-box;border:1px solid #8d8d8d;box-shadow:none;border-radius:3px}.dhx_mini_calendar .dhx_year_month{border:1px solid #8d8d8d;color:#fff;font-family:Arial;font-weight:700}.dhx_mini_calendar .dhx_month_body,.dhx_mini_calendar .dhx_month_head,.dhx_mini_calendar .dhx_scale_bar,.dhx_mini_calendar .dhx_year_body,.dhx_mini_calendar .dhx_year_month{border-color:transparent}.dhx_mini_calendar .dhx_year_body{padding-top:1px}.dhx_mini_calendar .dhx_scale_bar{border-width:0;font-size:14px}.dhx_mini_calendar .dhx_year_week{border-bottom:1px solid #8d8d8d;padding-top:1px}.dhx_mini_calendar .dhx_month_head{padding-right:0;text-align:center}.dhx_mini_calendar .dhx_cal_next_button,.dhx_mini_calendar .dhx_cal_prev_button{border:0;height:20px}.dhx_cal_navline div.dhx_minical_icon{left:210px;top:14px;width:30px;height:30px;background:url(imgs_contrast_black/calendar.gif) 3px 5px no-repeat}.dhx_cal_event_line .dhx_event_resize{background:url(imgs_contrast_black/resize_dots.png) repeat-y}.dhx_matrix_cell,.dhx_matrix_scell{border-bottom:1px solid #8d8d8d;border-right:1px solid #8d8d8d}.dhx_cal_header div div{border-left:1px solid #8d8d8d}.dhx_matrix_scell.folder{border-right:0}.dhx_second_scale_bar{border-bottom:1px solid #8d8d8d}.dhx_matrix_cell{background:0 0}.dhx_repeat_divider{border-left:1px solid #8d8d8d}.dhx_form_repeat{font-size:13px;background:#000;font-family:arial}.dhx_custom_button{background-color:#000;border:1px solid #fff;font-size:12px;color:#fff}.dhx_cal_light_wide .dhx_custom_button{margin-top:6px}.dhx_cal_light input,.dhx_cal_light select,.dhx_cal_light textarea{font-size:14px}.dhx_cal_light_wide .dhx_section_time{padding-top:0!important}.dhx_custom_button_recurring{background-image:url(imgs_contrast_black/but_repeat.gif)}.dhx_agenda_line div,.dhx_v_border{border-right:1px solid #8d8d8d}.dhx_agenda_area,.dhx_scheduler_agenda .dhx_cal_data{background-image:url(imgs_contrast_black/databg.png)}.dhx_agenda_line{font-size:16px;height:22px}.dhx_agenda_line .dhx_event_icon{background:url(imgs_contrast_black/controls.png) no-repeat}.dhx_year_month{border:1px solid #8d8d8d;font-size:16px}.dhx_scale_bar_last{border-right:1px solid #8d8d8d}.dhx_year_body{border-left:1px solid #8d8d8d}.dhx_year_week{border-bottom:1px solid #8d8d8d}.dhx_tooltip_line{height:22px;line-height:22px;color:#fff}.dhx_tooltip_line .dhx_event_icon{background-position:0 0;background-repeat:no-repeat;background-image:url(imgs_contrast_black/controls.png);height:20px;margin:0 7px}.dhx_year_tooltip{font-size:14px;background-color:#000;background-image:url(imgs_contrast_black/databg.png)}.dhx_expand_icon{top:-3px}.dhx_scale_bar .dhx_cal_next_button,.dhx_scale_bar .dhx_cal_prev_button{width:20px;height:20px;top:0!important;border:0}.dhx_scale_bar .dhx_cal_next_button{right:1px!important;border-left:1px solid #8d8d8d}.dhx_scale_bar .dhx_cal_prev_button{left:1px!important;border-right:1px solid #8d8d8d}.dhx_map_line .headline_date,.dhx_map_line .headline_description{border:0}.dhx_map_line .headline_date{border-right:1px solid #8d8d8d}.dhtmlXTooltip.tooltip{font-size:14px;color:#fff;background:#000;border:1px solid #8d8d8d;line-height:16px}.dhx_wa_day_data{background:#000}.dhx_wa_scale_bar{border-top:1px solid #8d8d8d;border-bottom:1px solid #8d8d8d}.dhx_wa_column_last .dhx_wa_day_cont{border-left:1px solid #8d8d8d}.dhx_wa_ev_body{font-size:14px;border-bottom:1px solid #8d8d8d}.dhx_wa_scale_bar{font-size:16px;color:#e9e9e9;font-weight:700;background-color:#000}.dhx_wa_ev_body.dhx_cal_event_selected{background-color:#fff3a1;color:#362d26}.dhx_wa_dnd{background-color:#fddb93!important;color:#747473!important;border:1px solid #ccb177}.dhx_text_disabled{color:#2E2E2E}.dhx_cal_ltext .dhx_text_disabled{line-height:22px}.dhx_grid_v_border{border-right-color:#8d8d8d}.dhx_grid_area{background:0 0}.dhx_grid_area tr.dhx_grid_event:nth-child(2n){background:#2e2e2e}.dhx_grid_line{font-size:16px}.dhx_month_body_border,.dhx_month_head_border,.dhx_scale_bar_border,.dhx_scale_hour_border{border-left:1px solid #8d8d8d}.dhx_cal_quick_info{background:#000;border:1px solid #fff;-webkit-box-shadow:inset 0 0 0 4px #1b4872;-moz-box-shadow:inset 0 0 0 4px #1b4872;box-shadow:inset 0 0 0 4px #1b4872;padding:4px}.dhx_cal_qi_title{padding:5px 0 8px 12px;color:#fff;background-color:#000;border-bottom:1px solid #8d8d8d}.dhx_cal_qi_content{background:0 0;width:auto;border:none;color:#fff}.dhx_qi_big_icon{margin:8px 9px 8px 6px;background:#000;color:#fff;border:2px solid #fff}.dhx_cal_navline .dhx_cal_export{width:32px;height:32px;margin:2px;cursor:pointer;top:12px}.dhx_cal_navline .dhx_cal_export.pdf{left:auto;right:249px;background-image:url(imgs_contrast_black/export_pdf.png)}.dhx_cal_navline .dhx_cal_export.ical{left:auto;right:210px;background-image:url(imgs_contrast_black/export_ical.png)}.dhx_mini_calendar{padding:5px}.dhx_mini_calendar .dhx_calendar_click,.dhx_mini_calendar .dhx_year_event{border-radius:7px}.dhx_mini_calendar .dhx_month_head{margin:2px}.dhx_mini_calendar .dhx_year_month{line-height:20px;height:25px;font-size:16px}.dhx_mini_calendar .dhx_cal_next_button,.dhx_mini_calendar .dhx_cal_prev_button{top:8px!important}.dhx_year_body .dhx_month_head.dhx_calendar_click,.dhx_year_body .dhx_month_head.dhx_year_event{color:#000}
\ No newline at end of file diff --git a/codebase/dhtmlxscheduler_contrast_white.css b/codebase/dhtmlxscheduler_contrast_white.css new file mode 100644 index 0000000..9da9dd7 --- /dev/null +++ b/codebase/dhtmlxscheduler_contrast_white.css @@ -0,0 +1,9 @@ +/* +@license +dhtmlxScheduler v.4.4.0 Stardard + +This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. + +(c) Dinamenta, UAB. +*/ +.dhtmlx_message_area{position:fixed;right:5px;width:250px;z-index:11}.dhtmlx-info{min-width:120px;font-family:Tahoma;z-index:14;overflow:hidden;margin:5px 5px 10px;-webkit-transition:all .5s ease;-moz-transition:all .5s ease;-o-transition:all .5s ease;transition:all .5s ease}.dhtmlx-info.hidden{height:0;padding:0;border-width:0;margin:0;overflow:hidden}.dhtmlx_modal_box{overflow:hidden;display:inline-block;min-width:300px;text-align:center;position:fixed;box-shadow:0 0 14px #888;z-index:18}.dhtmlx_popup_title{border-top-left-radius:5px;border-top-right-radius:5px;border-width:0}.dhtmlx-info,.dhtmlx_button,.dhtmlx_popup_button{user-select:none;-webkit-user-select:none;-moz-user-select:-moz-none;cursor:pointer}.dhtmlx_popup_text{overflow:hidden}.dhtmlx_popup_controls{border-radius:6px;padding:5px}.dhtmlx_button,.dhtmlx_popup_button{height:30px;line-height:30px;display:inline-block;margin:0 5px;border-radius:6px;color:#FFF}.dhtmlx_popup_button{min-width:120px}div.dhx_modal_cover{background-color:#000;cursor:default;filter:alpha(opacity=20);opacity:.2;position:fixed;z-index:17;left:0;top:0;width:100%;height:100%;border:none;zoom:1}.dhtmlx-info img,.dhtmlx_modal_box img{float:left;margin-right:20px}.dhtmlx-alert-error .dhtmlx_popup_title,.dhtmlx-confirm-error .dhtmlx_popup_title{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAsCAIAAAArRUU2AAAATklEQVR4nIWLuw2AMBBDjVuQiBT2oWbRDATrnB0KQOJoqPzRe3BrHI6dcBASYREKovtK6/6DsDOX+stN+3H1YX9ciRgnYq5EWYhS2dftBIuLT4JyIrPCAAAAAElFTkSuQmCC)}.dhtmlx-alert-error,.dhtmlx-confirm-error{border:1px solid red}.dhtmlx_button,.dhtmlx_popup_button{box-shadow:0 0 4px #888;border:1px solid #838383}.dhtmlx_button input,.dhtmlx_popup_button div{border:1px solid #FFF;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAeCAMAAADaS4T1AAAAYFBMVEVwcHBtbW1ra2toaGhmZmZjY2NhYWFeXl5cXFxaWlpXV1dVVVVSUlJQUFBNTU1LS0tJSUlGRkZERERBQUE/Pz88PDw9PT0+Pj5AQEBCQkJDQ0NFRUVHR0dISEhKSkpMTEzqthaMAAAAMklEQVQImQXBhQ2AMAAAsOIMlwWH/8+kRSKVyRVKlVrQaHV6g9FktlhFm93hdLk9Xt8PIfgBvdUqyskAAAAASUVORK5CYII=);background:-webkit-linear-gradient(top,#707070 1%,#3d3d3d 70%,#4c4c4c 99%);background:-moz-linear-gradient(top,#707070 1%,#3d3d3d 70%,#4c4c4c 99%);border-radius:6px;font-size:15px;font-weight:400;-moz-box-sizing:content-box;box-sizing:content-box;color:#fff;padding:0;margin:0;vertical-align:top;height:28px;line-height:28px}.dhtmlx_button input:active,.dhtmlx_button input:focus,.dhtmlx_popup_button div:active,.dhtmlx_popup_button div:focus{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAeCAMAAADaS4T1AAAAXVBMVEVwcHBubm5tbW1sbGxra2tpaWloaGhnZ2dmZmZlZWVjY2NiYmJhYWFgYGBfX19dXV1cXFxbW1taWlpZWVlXV1dWVlZVVVVUVFRTU1NRUVFQUFBPT09OTk5NTU1LS0tT9SY0AAAAMUlEQVQImQXBhQGAMAAAIGxnx2z9/00BiVQmVyhVakGj1ekNRpPZYhVtdofT5fZ4fT8hpwG05JjexgAAAABJRU5ErkJggg==);background:-webkit-linear-gradient(top,#707070 1%,#4c4c4c 99%);background:-moz-linear-gradient(top,#707070 1%,#4c4c4c 99%)}.dhtmlx_popup_title{height:40px;line-height:40px;font-size:20px}.dhtmlx_popup_text{margin:15px 15px 5px;font-size:14px;color:#000;min-height:30px;border-radius:6px}.dhtmlx-error,.dhtmlx-info{font-size:14px;color:#000;box-shadow:0 0 10px #888;padding:0;background-color:#FFF;border-radius:3px;border:1px solid #fff}.dhtmlx-info div{padding:5px 10px;background-color:#fff;border-radius:3px;border:1px solid #B8B8B8}.dhtmlx-error{background-color:#d81b1b;border:1px solid #ff3c3c;box-shadow:0 0 10px #000}.dhtmlx-error div{background-color:#d81b1b;border:1px solid #940000;color:#FFF}.dhx_cal_event .dhx_body,.dhx_cal_event .dhx_footer,.dhx_cal_event .dhx_header,.dhx_cal_event .dhx_title{border:1px solid #B7A543;overflow:hidden;width:100%;font-family:Tahoma;font-size:8pt}.dhx_move_denied .dhx_cal_event .dhx_header,.dhx_move_denied .dhx_cal_event .dhx_title{cursor:default}.dhx_cal_event .dhx_header{height:1px;margin-left:1px;border-width:1px 1px 0;cursor:pointer}.dhx_cal_event .dhx_title{height:12px;border-bottom-style:dotted;text-align:center;background-position:right;background-repeat:no-repeat;cursor:pointer}.dhx_cal_event .dhx_body,.dhx_cal_event.dhx_cal_select_menu .dhx_body{border-width:0 1px 1px;padding:5px}.dhx_resize_denied,.dhx_resize_denied .dhx_event_resize{cursor:default!important}.dhx_cal_event .dhx_event_resize{cursor:s-resize}.dhx_cal_event .dhx_footer,.dhx_cal_event .dhx_select_menu_footer{height:1px;margin-left:2px;border-width:0 1px 1px;position:relative}.dhx_cal_event_line{padding-left:10px;cursor:pointer;overflow:hidden}.dhx_cal_event_clear{font-family:Tahoma;padding-left:2px;white-space:nowrap;overflow:hidden;cursor:pointer}.dhx_in_move{background-color:#FFFF80}.dhx_cal_event.dhx_cal_editor{z-index:10;position:absolute;overflow:hidden}textarea.dhx_cal_editor{width:100%;height:100%;border:0 solid #000;margin:0;padding:0;overflow:auto}div.dhx_menu_head{background-position:0 -43px;width:10px;height:10px;margin-left:5px;margin-top:1px;border:none;cursor:default}div.dhx_menu_icon{width:20px;height:20px;margin-left:-5px;margin-top:0;border:none;cursor:pointer}div.icon_details{background-position:0 0}div.icon_edit{background-position:-22px 0}div.icon_save{background-position:-84px -1px}div.icon_cancel{background-position:-62px 0}div.icon_delete{background-position:-42px 0}.dhx_month_link{position:absolute;box-sizing:border-box;-moz-box-sizing:border-box;text-align:right;cursor:pointer;padding-right:10px}.dhx_month_link a{color:#00f}.dhx_month_link a:hover{text-decoration:underline}.dhx_global_tip{font-family:Tahoma,Helvetica;text-align:center;font-size:20px;position:fixed;top:60px;right:20px;background-color:rgba(255,255,255,.7);color:#000;z-index:14;padding:20px 30px;width:190px}.dhx_global_tip div{font-size:30px}@media (-moz-touch-enabled){.dhx_cal_container{user-select:none;-moz-user-select:none}}.dhx_unselectable,.dhx_unselectable div{-webkit-user-select:none;-moz-user-select:none;-moz-user-select:-moz-none}.dhx_cal_light{-webkit-tap-highlight-color:transparent;border-radius:5px;font-family:Tahoma;position:absolute;z-index:15;width:580px;height:300px;box-shadow:5px 5px 5px #888}.dhx_mark{position:relative;top:3px;background-image:url(imgs/controls.gif);background-position:0 -43px;padding-left:10px}.dhx_ie6 .dhx_mark{background-position:6px -41px}.dhx_cal_light select{font-family:Tahoma;padding:2px;margin:0}.dhx_cal_ltitle{padding:2px 0 2px 5px;overflow:hidden;white-space:nowrap}.dhx_cal_ltitle span{white-space:nowrap}.dhx_cal_lsection{font-weight:700;padding:5px 0 3px 10px}.dhx_section_time{white-space:nowrap}.dhx_cal_lsection .dhx_fullday{float:right;margin-right:5px;font-size:12px;font-weight:400;line-height:20px;vertical-align:top;cursor:pointer}.dhx_cal_lsection{font-size:18px;font-family:Arial}.dhx_cal_ltext{padding:2px 0 2px 10px;overflow:hidden}.dhx_cal_ltext textarea{overflow:auto;height:100%;width:100%;outline:0!important;resize:none}.dhx_time{font-weight:700}.dhx_cal_larea{overflow:hidden;width:572px;height:1px}.dhx_btn_set{float:left}.dhx_btn_set div{float:left;vertical-align:middle;cursor:pointer}.dhx_save_btn{background-image:url(imgs/controls.gif);background-position:-84px 0;width:21px}.dhx_cancel_btn{background-image:url(imgs/controls.gif);background-position:-63px 0;width:20px}.dhx_delete_btn{background-image:url(imgs/controls.gif);background-position:-42px 0;width:20px}.dhx_cal_cover{width:100%;height:100%;position:absolute;z-index:14;top:0;left:0;background-color:#000;opacity:.1;filter:alpha(opacity=10)}.dhx_custom_button{padding:0 3px;font-family:Tahoma;font-weight:400;margin-right:5px;margin-top:0;cursor:pointer}.dhx_custom_button div{cursor:pointer;float:left;height:21px;line-height:21px;vertical-align:middle}.dhx_cal_light_wide .dhx_cal_larea{border-top-width:0}.dhx_cal_light_wide .dhx_cal_lsection{border:0;float:left;text-align:right;width:100px;height:20px;padding:5px 0 0 10px}.dhx_cal_light_wide .dhx_wrap_section{position:relative;overflow:hidden}.dhx_cal_light_wide .dhx_section_time{padding-top:2px!important;height:20px!important}.dhx_section_time{text-align:center}.dhx_cal_light_wide .dhx_cal_larea{width:730px}.dhx_cal_light_wide{width:738px}.dhx_cal_light_wide .dhx_section_time{background:0 0}.dhx_cal_light_wide .dhx_cal_checkbox label{padding-left:0}.dhx_cal_wide_checkbox input{margin-top:8px;margin-left:14px}.dhx_cal_light input{font-family:Tahoma}.dhx_cal_light_wide .dhx_cal_lsection .dhx_fullday{float:none;margin-right:0;font-weight:700;font-family:Arial;cursor:pointer}.dhx_custom_button{float:right;height:21px}.dhx_cal_light_wide .dhx_custom_button{position:absolute;top:0;right:0}.dhx_cal_light_wide .dhx_repeat_right{margin-right:55px}.dhx_minical_popup{position:absolute;z-index:16;width:251px;height:175px}.dhx_scale_bar_header{position:absolute;border-bottom:1px dotted #8894A3;width:100%}.dhx_expand_icon{position:absolute;right:0;background-image:url(imgs/collapse_expand_icon.gif);width:18px;height:18px;cursor:pointer;background-position:0 18px;z-index:4}.dhx_agenda_area{width:100%;overflow-y:auto}.dhx_agenda_line{clear:both;overflow:hidden}.dhx_agenda_line div{float:left;width:188px;text-align:center;line-height:21px;overflow:hidden}.dhx_agenda_area .dhx_agenda_line div{border-right:0 dotted #8894A3}.dhx_v_border{position:absolute;left:187px;top:0;width:1px;height:100%}.dhx_agenda_line .dhx_event_icon{width:20px;border-width:0;cursor:pointer}.dhx_agenda_line span{padding-left:5px;line-height:21px}.dhx_year_week{position:relative}.dhx_year_month{height:18px;padding-top:3px;text-align:center;vertical-align:middle}.dhx_year_body .dhx_after .dhx_month_head,.dhx_year_body .dhx_after .dhx_month_head a,.dhx_year_body .dhx_before .dhx_month_head,.dhx_year_body .dhx_before .dhx_month_head a{color:#E2E3E6!important}.dhx_year_body .dhx_month_body{height:0;overflow:hidden}.dhx_month_head.dhx_year_event{background-color:#FFE763}.dhx_year_body .dhx_after .dhx_month_head,.dhx_year_body .dhx_before .dhx_month_head{cursor:default}.dhx_year_tooltip{border:1px solid #BBB;position:absolute;z-index:12;width:300px;height:auto;font-family:Tahoma;overflow:hidden}.dhx_tooltip_line{overflow:hidden}.dhx_tooltip_line .dhx_event_icon{width:20px;padding-right:10px;float:left;border-width:0;position:relative;background:url(imgs/icon.png) 5px 4px no-repeat;cursor:pointer}.dhx_tooltip_date{float:left;width:auto;padding-left:5px;text-align:center}.dhx_text_disabled{font-family:Tahoma;font-size:8pt}.dhx_mini_calendar{-moz-box-shadow:5px 5px 5px #888;-khtml-box-shadow:5px 5px 5px #888;-moz-user-select:-moz-none;-webkit-user-select:none;-user-select:none}.dhx_mini_calendar .dhx_month_head{cursor:pointer}.dhx_mini_calendar .dhx_calendar_click{background-color:#C2D5FC}.dhx_cal_navline div.dhx_minical_icon{cursor:pointer;background-image:url(imgs/calendar.gif)}.dhx_matrix_scell{height:100%}.dhx_matrix_cell,.dhx_matrix_scell{overflow:hidden;text-align:center;vertical-align:middle}.dhx_matrix_cell{background-color:#fff}.dhx_matrix_line{overflow:hidden}.dhx_matrix_cell div,.dhx_matrix_scell div{overflow:hidden;text-align:center;height:auto}.dhx_cal_lsection .dhx_readonly{font-size:9pt;font-size:8pt;padding:2px;color:#887A2E}.dhx_cal_event_line .dhx_event_resize{cursor:w-resize;position:absolute;top:0;width:4px;height:100%}.dhx_event_resize_start{left:0}.dhx_event_resize_end{right:0}.dhx_data_table.folder .dhx_matrix_cell,.dhx_matrix_scell.folder{background-color:#969394;cursor:pointer}.dhx_matrix_scell .dhx_scell_level0{padding-left:5px}.dhx_matrix_scell .dhx_scell_level1{padding-left:20px}.dhx_matrix_scell .dhx_scell_level2{padding-left:35px}.dhx_matrix_scell .dhx_scell_level3{padding-left:50px}.dhx_matrix_scell .dhx_scell_level4{padding-left:65px}.dhx_matrix_scell.folder{font-weight:700;text-align:left}.dhx_matrix_scell.folder .dhx_scell_expand{float:left;width:10px;padding-right:3px}.dhx_matrix_scell.folder .dhx_scell_name{float:left;width:auto}.dhx_matrix_scell.item .dhx_scell_name{padding-left:15px;text-align:left}.dhx_data_table.folder .dhx_matrix_cell{border-right:0}.dhx_section_timeline{overflow:hidden;padding:4px 0 2px 10px}.dhx_section_timeline select{width:552px}.dhx_map_area{width:100%;height:100%;overflow-y:auto;overflow-x:hidden;background-image:url(imgs/databg.png)}.dhx_map_line .dhx_event_icon{width:20px;border-width:0;background:url(imgs/icon.png) 5px 4px no-repeat;cursor:pointer}.dhx_map_line{height:21px;clear:both;overflow:hidden}.dhx_map{position:absolute}.dhx_map_line .headline_description,.dhx_map_line div{float:left;border-right:1px dotted #8894A3;text-align:center;line-height:21px;overflow:hidden}.dhx_map_line .dhx_map_description{float:left;border-right:0 dotted #8894A3;text-align:center;line-height:21px;overflow:hidden}.dhx_map_line .line_description{float:left;border-right:1px dotted #8894A3;text-align:left;padding-left:5px;line-height:21px;overflow:hidden}.dhx_map_line.highlight{background-color:#C4C5CC}.dhx_map_area .dhx_map_line div{border-right:0 dotted #8894A3}.dhtmlXTooltip.tooltip{-moz-box-shadow:3px 3px 3px #888;-webkit-box-shadow:3px 3px 3px #888;-o-box-shadow:3px 3px 3px #888;box-shadow:3px 3px 3px #888;filter:progid:DXImageTransform.Microsoft.Shadow(color='#888888', Direction=135, Strength=5);background-color:#fff;cursor:default;padding:10px;position:fixed;z-index:9;font-family:Tahoma;opacity:1}.dhx_cal_checkbox label{padding-left:5px}.dhx_cal_light .radio{padding:2px 0 2px 10px}.dhx_cal_light .radio input,.dhx_cal_light .radio label{line-height:15px}.dhx_cal_light .radio input{vertical-align:middle;margin:0;padding:0}.dhx_cal_light .radio label{vertical-align:middle;padding-right:10px}.dhx_cal_light .combo{padding:4px}.dhx_cal_light_wide .combo>div,.dhx_cal_light_wide .dhx_combo_box{width:608px!important;left:10px}.dhx_wa_column{float:left}.dhx_wa_scale_bar{font-family:Tahoma;padding-left:10px}.dhx_wa_day_data{background-color:#FCFEFC;overflow-y:auto}.dhx_wa_ev_body{padding:5px 0 5px 7px}.dhx_wa_dnd{font-family:Tahoma;position:absolute;padding-right:7px;color:#887AE2!important;background-color:#FFE763!important}.dhx_cal_event_selected{background-color:#9cc1db;color:#fff}.dhx_second_scale_bar{padding-top:2px}.dhx_grid_area{width:100%;height:100%;overflow-y:auto;background-color:#FCFEFC}.dhx_grid_area table{border-collapse:collapse;border-spacing:0;width:100%;table-layout:fixed}.dhx_grid_area td{table-layout:fixed;text-align:center}.dhx_grid_line{height:21px;clear:both;overflow:hidden}.dhx_grid_line div{float:left;cursor:default;padding-top:0;padding-bottom:0;text-align:center;line-height:21px;overflow:hidden}.dhx_grid_area td,.dhx_grid_line div{padding-left:8px;padding-right:8px}.dhx_grid_area tr.dhx_grid_event{height:21px;overflow:hidden;margin:0 0 1px}.dhx_grid_area tr.dhx_grid_event td{border-bottom:1px solid #ECEEF4}.dhx_grid_area tr.dhx_grid_event:nth-child(2n) td,.dhx_grid_area tr.dhx_grid_event:nth-child(2n+1) td{border-bottom-width:0;border-bottom-style:none}.dhx_grid_area tr.dhx_grid_event:nth-child(2n){background-color:#ECEEF4}.dhx_grid_area .dhx_grid_dummy{table-layout:auto;margin:0!important;padding:0!important}.dhx_grid_v_border{position:absolute;border-right:1px solid #A4BED4;width:1px;height:100%}.dhx_grid_event_selected{background-color:#9cc1db!important;color:#fff!important}.dhx_grid_sort_desc .dhx_grid_view_sort{background-position:0 -55px}.dhx_grid_sort_asc .dhx_grid_view_sort{background-position:0 -66px}.dhx_grid_view_sort{width:10px;height:10px;position:absolute;border:none!important;top:5px;background-repeat:no-repeat;background-image:url(imgs/images.png)}.dhx_marked_timespan{position:absolute;width:100%;margin-left:0}.dhx_time_block{position:absolute;width:100%;background:silver;opacity:.4;filter:alpha(opacity=40);z-index:1}.dhx_time_block_reset{opacity:1;filter:alpha(opacity=100)}.dhx_mini_calendar .dhx_marked_timespan,.dhx_scheduler_month .dhx_marked_timespan{display:none}.dhx_now_time{width:100%;border-bottom:2px solid red;z-index:1}.dhx_scheduler_month .dhx_now_time{border-bottom:0;border-left:2px solid red}.dhx_matrix_now_time{border-left:2px solid red;z-index:1}.dhx_matrix_now_time,.dhx_now_time{opacity:.5}.dhx_cal_quick_info{border-radius:5px;position:absolute;z-index:8;background-color:#8e99ae;background-color:rgba(98,107,127,.5);width:300px;transition:left .5s ease,right .5s;-moz-transition:left .5s ease,right .5s;-webkit-transition:left .5s ease,right .5s;-o-transition:left .5s ease,right .5s}.dhx_no_animate{transition:none;-moz-transition:none;-webkit-transition:none;-o-transition:none}.dhx_cal_quick_info.dhx_qi_left .dhx_qi_big_icon{float:right}.dhx_cal_qi_title{letter-spacing:1px}.dhx_cal_qi_tdate{font-size:14px}.dhx_cal_qi_tcontent{font-size:18px;font-weight:700}.dhx_cal_qi_content{background-color:#fefefe;padding:16px 8px;font-size:14px;overflow:hidden}.dhx_qi_big_icon{border-radius:3px;min-width:60px;line-height:20px;vertical-align:middle;padding:5px 10px 5px 5px;cursor:pointer;background-color:#fefefe;float:left}.dhx_cal_qi_controls div{float:left;height:20px;text-align:center;line-height:20px}.dhx_qi_big_icon .dhx_menu_icon{margin:0 8px 0 0}.dhx_drag_marker{width:100%;filter:alpha(Opacity=50);opacity:.5;background-color:#FFE763;position:absolute;box-sizing:border-box!important;border-top:1px solid #B6B6B6;border-bottom:1px solid #b6b6b6}.dhx_focus_slot{background:#FFE763;position:absolute;pointer-events:none;opacity:.3}.dhx_cal_container :focus{outline-style:auto}.dhtmlx_modal_box *,.dhx_cal_data,.dhx_cal_data div,.dhx_cal_data table *,.dhx_cal_header,.dhx_cal_header div,.dhx_cal_light .dhx_cal_lsection,.dhx_cal_light .dhx_wrap_section,.dhx_cal_navline div,.dhx_cal_quick_info,.dhx_cal_quick_info div,.dhx_multi_day,.dhx_multi_day div,.dhx_tooltip_line div{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}.dhx_cal_data div.dhx_scale_hour,.dhx_cal_data table .dhx_matrix_cell,.dhx_cal_data table .dhx_matrix_scell{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.dhx_cal_data table{border-collapse:separate}.dhx_cal_light .dhx_cal_radio label{margin-bottom:0}.dhx_cal_event div{line-height:normal}.dhx_cal_container{position:relative;overflow:hidden}.dhx_cal_container div{-moz-user-select:none;-moz-user-select:-moz-none}.dhx_cal_navline{height:20px;position:absolute;z-index:3;width:750px;color:#2F3A48}.dhx_cal_navline div{position:absolute;white-space:nowrap}.dhx_cal_navline .dhx_cal_date{padding-top:1px}.dhx_cal_button .dhx_left_bg{width:1px;overflow:hidden;height:17px;z-index:5;top:0}.dhx_cal_prev_button{background-image:url(imgs/buttons.png);background-position:0 0;cursor:pointer}.dhx_cal_next_button{background-image:url(imgs/buttons.png);background-position:-30px 0;cursor:pointer}.dhx_cal_today_button{background-image:url(imgs/buttons.png);background-position:-60px 0;cursor:pointer;text-align:center}.dhx_cal_tab{text-align:center;cursor:pointer;background-color:#D8E1EA;-webkit-border-top-left-radius:4px;-webkit-border-top-right-radius:4px;-moz-border-radius-topleft:4px;-moz-border-radius-topright:4px;border-top-left-radius:4px;border-top-right-radius:4px}.dhx_cal_tab.active{text-decoration:none;cursor:default;font-weight:700}.dhx_cal_header{position:absolute;left:10px;top:23px;width:750px;z-index:2;overflow:hidden}.dhx_cal_data{-webkit-tap-highlight-color:transparent;position:absolute;top:44px;width:600px;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;-ms-touch-action:pan-y}.dhx_cal_event,.dhx_cal_event_clear,.dhx_cal_event_line{-ms-touch-action:none}.dhx_scale_bar{position:absolute;text-align:center}.dhx_scale_holder,.dhx_scale_holder_now{position:absolute}.dhx_scale_hour{height:41px;width:50px;text-align:center;line-height:40px;overflow:hidden}.dhx_month_head{padding-right:5px;text-align:right}.dhx_month_body{background-color:#FFF}.dhx_scale_ignore{display:none}.dhx_cal_drag{position:absolute;z-index:13;background-color:#FFE763;border:1px solid #B7A543;opacity:.5;filter:alpha(opacity=50)}.dhx_loading{position:absolute;width:128px;height:15px;background-image:url(imgs/loading.gif);z-index:13}.dhx_multi_day,.dhx_multi_day_icon{background-color:#E1E6FF;background-repeat:no-repeat;border-right:1px dotted #8894A3}.dhx_multi_day{position:absolute}.dhx_multi_day_icon,.dhx_multi_day_icon_small{background-position:center center;background-repeat:no-repeat}.dhtmlxLayoutPolyContainer_dhx_skyblue .dhx_cal_container{background-color:#d0e5ff}.dhx_form_repeat,.dhx_form_repeat input{padding:0 0 0 5px;margin:0;font-family:Tahoma,Verdana;font-size:11px;line-height:24px}.dhx_form_repeat{overflow:hidden;background-color:#FFF4B5}.dhx_cal_light_wide .dhx_form_repeat{background-color:transparent}.dhx_repeat_center,.dhx_repeat_divider,.dhx_repeat_left,.dhx_repeat_right{height:115px;-moz-box-sizing:border-box;box-sizing:border-box}.dhx_repeat_center,.dhx_repeat_left{padding:10px 0 0 10px;float:left}.dhx_repeat_left{width:105px}.dhx_repeat_center{width:345px;padding-top:22px}.dhx_repeat_divider{float:left;width:1px}.dhx_repeat_right{float:right;width:173px;padding:17px 3px 0 10px}input.dhx_repeat_text{height:16px;width:27px;margin:0 4px;line-height:18px;padding:0 0 0 2px}.dhx_form_repeat select{height:20px;width:87px;padding:0 0 0 2px;margin:0 4px}input.dhx_repeat_date{height:18px;width:80px;padding:0 0 0 2px;margin:0 4px;background-repeat:no-repeat;background-position:64px 0;border:1px solid #7f9db9;line-height:18px}input.dhx_repeat_radio{margin-right:4px}input.dhx_repeat_checkbox{margin:4px 4px 0 0}.dhx_repeat_days td{padding-right:5px}.dhx_repeat_days label{font-size:10px}.dhx_custom_button{width:90px;-webkit-border-radius:4px;-moz-border-radius:4px;-ms-border-radius:4px;-o-border-radius:4px;border-radius:4px}.dhx_custom_button_recurring{background-position:-5px 20px;width:20px;margin-right:10px}.dhx_cal_light_rec{width:640px}.dhx_cal_light_rec .dhx_cal_larea{width:632px}.dhx_cal_light_rec.dhx_cal_light_wide{width:816px}.dhx_cal_light_rec.dhx_cal_light_wide .dhx_cal_larea{width:808px}.dhx_cal_event .dhx_title{border-width:1px 1px 0;padding-top:1px;-webkit-border-top-left-radius:2px;-webkit-border-top-right-radius:2px;-moz-border-radius-topleft:2px;-moz-border-radius-topright:2px;border-top-left-radius:2px;border-top-right-radius:2px;font-family:arial;font-weight:700;font-size:14px;line-height:14px}.dhx_cal_event .dhx_body,.dhx_cal_event.dhx_cal_select_menu .dhx_body{padding-bottom:8px;-webkit-border-bottom-right-radius:2px;-webkit-border-bottom-left-radius:2px;-moz-border-radius-bottomright:2px;-moz-border-radius-bottomleft:2px;border-bottom-right-radius:2px;border-bottom-left-radius:2px}.dhx_cal_event .dhx_header,.dhx_cal_event.dhx_cal_select_menu .dhx_footer{display:none}.dhx_cal_event.dhx_cal_select_menu{-webkit-box-shadow:0 0 1px #FFF;-moz-box-shadow:0 0 1px #FFF;box-shadow:0 0 1px #FFF}.dhx_cal_event .dhx_footer{height:5px;border:0;margin-top:-6px;background:url(imgs_contrast_white/resizing.png) center center no-repeat}.dhx_cal_event .dhx_body,.dhx_cal_event .dhx_footer,.dhx_cal_event .dhx_header,.dhx_cal_event .dhx_title{background-color:#a8b2f5;border-color:#677cfb;color:#000}.dhx_cal_event.dhx_cal_editor{border:1px solid #677cfb}.dhx_cal_editor{font-size:16px;font-family:Arial,sans-serif}div.dhx_menu_head,div.dhx_menu_icon{background-image:url(imgs_contrast_white/controls.png)}.dhx_cal_event_line{border:1px solid #677cfb;background-color:#a8b2f5;color:#000;height:17px;line-height:17px;-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px}.dhx_cal_event_line_start{-webkit-border-top-left-radius:9px;-webkit-border-bottom-left-radius:9px;-moz-border-radius-topleft:9px;-moz-border-radius-bottomleft:9px;border-top-left-radius:9px;border-bottom-left-radius:9px}.dhx_cal_event_line_end{-webkit-border-top-right-radius:9px;-webkit-border-bottom-right-radius:9px;-moz-border-radius-topright:9px;-moz-border-radius-bottomright:9px;border-top-right-radius:9px;border-bottom-right-radius:9px}.dhx_cal_event .dhx_body,.dhx_cal_event_line{font-size:16px;font-family:arial,sans-serif}.dhx_cal_container{font-family:arial;font-size:16px;background-color:#fff}.dhx_cal_data{color:#000;background:#fff;border-top:1px solid #585858}.dhx_scale_holder{background-image:url(imgs_contrast_white/databg.png);border-right:1px solid #585858}.dhx_scale_holder_now{background-image:url(imgs_contrast_white/databg.png);background-color:#feff87;border-right:1px solid #585858}.dhx_scale_hour{border-bottom:1px solid #585858;background-color:#fff;font:16px/44px arial;color:#585858;font-weight:700}.dhx_cal_header{border:1px solid #585858;color:#585858;font-weight:700;border-left:0;border-bottom:0}.dhx_scale_bar{border-left:1px solid #585858;font:16px/16px arial;color:#585858;font-weight:700;padding-top:2px;background-color:#fff}.dhx_cal_navline div{top:14px}.dhx_cal_date,.dhx_cal_next_button,.dhx_cal_prev_button,.dhx_cal_tab,.dhx_cal_today_button{color:#585858;height:30px;line-height:30px;background:0 0;border:2px solid #585858}.dhx_cal_navline .dhx_cal_date{border:0;font-size:18px;font-weight:400;font-family:arial;width:100%;top:14px;text-align:center;position:absolute;left:0;z-index:-1}.dhx_cal_today_button{color:#000;left:auto;right:123px;background:0 0;text-decoration:none;width:80px;font-size:16px;font-weight:700;font-family:arial;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}.dhx_cal_next_button,.dhx_cal_prev_button{left:auto;width:46px}.dhx_cal_prev_button{right:61px;background:url(imgs_contrast_white/arrow_left.png) center center no-repeat;-webkit-border-top-left-radius:5px;-webkit-border-bottom-left-radius:5px;-moz-border-radius-topleft:5px;-moz-border-radius-bottomleft:5px;border-top-left-radius:5px;border-bottom-left-radius:5px}.dhx_cal_next_button{right:14px;background:url(imgs_contrast_white/arrow_right.png) center center no-repeat;-webkit-border-top-right-radius:5px;-webkit-border-bottom-right-radius:5px;-moz-border-radius-topright:5px;-moz-border-radius-bottomright:5px;border-top-right-radius:5px;border-bottom-right-radius:5px}.dhx_cal_tab{color:#000;width:60px;padding-top:0;text-decoration:none;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0;font-weight:700;font-family:arial;font-size:16px}.dhx_cal_tab.active{background-color:#585858;color:#fff;border:2px solid #585858;text-shadow:none}.dhx_cal_tab_first{-webkit-border-top-left-radius:5px;-webkit-border-bottom-left-radius:5px;-moz-border-radius-topleft:5px;-moz-border-radius-bottomleft:5px;border-top-left-radius:5px;border-bottom-left-radius:5px}.dhx_cal_tab_last{-webkit-border-top-right-radius:5px;-webkit-border-bottom-right-radius:5px;-moz-border-radius-topright:5px;-moz-border-radius-bottomright:5px;border-top-right-radius:5px;border-bottom-right-radius:5px}.dhx_cal_tab_standalone{-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px;padding:0 5px}.dhx_multi_day,.dhx_multi_day_icon,.dhx_multi_day_icon_small{background-color:#fff}.dhx_multi_day{border-top:1px solid #585858}.dhx_multi_day_icon,.dhx_multi_day_icon_small{border-bottom:1px solid #585858;border-right:1px solid #585858}.dhx_multi_day_icon_small{background-image:url(imgs_contrast_white/clock_small.gif)}.dhx_multi_day_icon{background-image:url(imgs_contrast_white/clock_big.gif)}.dhx_after .dhx_month_body,.dhx_after .dhx_month_head,.dhx_before .dhx_month_body,.dhx_before .dhx_month_head,.dhx_month_head{background-color:#e5e5e5;color:#585858}.dhx_mini_calendar .dhx_after .dhx_month_body,.dhx_mini_calendar .dhx_before .dhx_month_body{display:none}.dhx_month_head{height:21px;padding-top:0;font:16px/21px Arial;color:#585858;background:#fff;font-weight:700;border-right:1px solid #585858}.dhx_after .dhx_month_head,.dhx_before .dhx_month_head{color:#585858}.dhx_month_body{border-right:1px solid #585858;border-bottom:1px solid #585858;background:#fff}.dhx_now .dhx_month_body,.dhx_now .dhx_month_head{background-color:#feff87;font-weight:400}.dhx_cal_event_clear{color:#000;font-size:16px;height:16px}.dhx_cal_larea{margin-left:0}.dhx_cal_light input,.dhx_cal_light select,.dhx_cal_light textarea{font-size:16px}.dhx_cal_light_wide .dhx_section_time{padding-top:0!important}.dhx_cal_light_wide .dhx_cal_larea{margin-left:3px}.dhx_cal_light_wide .dhx_wrap_section{padding:5px 0}.dhx_cal_larea,.dhx_cal_light,.dhx_cal_light_wide .dhx_wrap_section,.dhx_cal_lsection,.dhx_cal_ltext textarea,.dhx_wrap_section{background-color:#fff}.dhx_cal_light input,.dhx_cal_light_wide .dhx_cal_lsection .dhx_fullday,.dhx_cal_lsection,.dhx_cal_lsection .dhx_fullday{color:#000}.dhx_cal_light_wide .dhx_wrap_section{border-top:0;border-bottom:1px solid #CECECE}.dhx_cal_larea{border:1px solid transparent}.dhx_cal_light,.dhx_cal_light input,.dhx_cal_light select,.dhx_cal_ltext textarea{color:#000;background:#fff}.dhx_cal_light{border:1px solid #CECECE;font-size:16px}.dhx_cal_light_wide .dhx_cal_lsection,.dhx_cal_light_wide .dhx_cal_lsection .dhx_fullday{font-size:16px}.dhx_section_time{background-color:transparent}.dhx_btn_set div:first-child,.dhx_cancel_btn,.dhx_delete_btn,.dhx_save_btn{display:none}.dhx_btn_set,.dhx_btn_set div{height:30px;padding:0 20px;line-height:30px}.dhx_btn_set{margin:12px 0 0;padding:0;font-size:14px;color:#000;font-weight:700;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.dhx_left_btn_set{margin-left:20px}.dhx_right_btn_set{margin-right:20px}.dhx_btn_set,.dhx_cancel_btn_set{border:2px solid #585858}.dhx_save_btn_set{border:2px solid #677cfb;color:#000;text-shadow:none;background-color:#a8b2f5}.dhx_delete_btn_set{border:2px solid #9f3500;background-color:#9f3500;color:#fff}.dhx_cal_ltitle{height:30px;line-height:30px;border-bottom:1px solid #7e7e7e}.dhx_cal_ltitle span{float:left}.dhx_cal_light .dhx_title{padding-left:13px}.dhx_mark{display:none}.dhx_time{padding-left:10px}.dhx_close_icon{float:right;width:9px;height:9px;background:url(imgs_contrast_white/close_icon.png) center center no-repeat;padding:10px;margin-top:1px}.dhx_cal_light_wide .dhx_cal_ltext.dhx_cal_template{line-height:22px}.dhx_cal_ltext textarea{line-height:20px;box-sizing:border-box;-moz-box-sizing:border-box;border:1px solid #7e7e7e;background-color:#fff}.dhtmlx_modal_box{background:#fff;border:3px solid #585858;color:#000;font-family:arial;border-radius:6px;width:330px}.dhtmlx_popup_title{text-shadow:none;background:0 0;border-bottom:1px solid #000;color:#000}.dhtmlx_popup_controls{padding-bottom:9px}.dhtmlx_popup_button,.dhtmlx_popup_button div,.dhtmlx_popup_button div:active,.dhtmlx_popup_button:active{color:#000;background:#fff;box-shadow:none}.dhtmlx_popup_button.dhtmlx_ok_button{border:2px solid #677cfb;color:#000;background-color:#a8b2f5}.dhtmlx_popup_button.dhtmlx_ok_button div{background:#a8b2f5;color:#000;border:none;font-weight:700;text-shadow:none}.dhx_cal_container.dhx_mini_calendar{box-sizing:border-box;border:1px solid #585858;box-shadow:none;border-radius:3px}.dhx_mini_calendar .dhx_year_month{border:1px solid #7e7e7e;color:#000;font-family:Arial;font-weight:700}.dhx_mini_calendar .dhx_month_body,.dhx_mini_calendar .dhx_month_head,.dhx_mini_calendar .dhx_scale_bar,.dhx_mini_calendar .dhx_year_body,.dhx_mini_calendar .dhx_year_month{border-color:transparent}.dhx_mini_calendar .dhx_year_body{padding-top:1px}.dhx_mini_calendar .dhx_scale_bar{border-width:0;font-size:16px}.dhx_mini_calendar .dhx_year_week{border-bottom:1px solid #7e7e7e;padding-top:1px}.dhx_mini_calendar .dhx_month_head{padding-right:0;text-align:center}.dhx_mini_calendar .dhx_cal_next_button,.dhx_mini_calendar .dhx_cal_prev_button{border:0;height:20px}.dhx_cal_navline div.dhx_minical_icon{left:210px;top:14px;width:30px;height:30px;background:url(imgs_contrast_white/calendar.gif) 3px 5px no-repeat}.dhx_cal_event_line .dhx_event_resize{background:url(imgs_contrast_white/resize_dots.png) repeat-y}.dhx_matrix_cell,.dhx_matrix_scell{border-bottom:1px solid #7e7e7e;border-right:1px solid #7e7e7e}.dhx_cal_header div div{border-left:1px solid #585858}.dhx_matrix_scell.folder{border-right:0}.dhx_second_scale_bar{border-bottom:1px solid #585858}.dhx_matrix_cell{background:0 0}.dhx_repeat_divider{border-left:1px solid #7e7e7e}.dhx_form_repeat{font-size:13px;font-family:arial;background:#fff}.dhx_custom_button{background-color:#fff;border:1px solid #585858;font-size:16px;color:#000}.dhx_cal_light_wide .dhx_custom_button{margin-top:6px}.dhx_custom_button_recurring{background-image:url(imgs_contrast_white/but_repeat.gif)}.dhx_agenda_line div,.dhx_v_border{border-right:1px solid #7e7e7e}.dhx_agenda_area,.dhx_scheduler_agenda .dhx_cal_data{background-image:url(imgs_contrast_white/databg.png)}.dhx_agenda_line{font-size:16px;height:22px}.dhx_agenda_line .dhx_event_icon{background:url(imgs/icon.png) 4px 4px no-repeat}.dhx_tooltip_line{font-size:16px}.dhx_year_body .dhx_after .dhx_month_head,.dhx_year_body .dhx_after .dhx_month_head a,.dhx_year_body .dhx_before .dhx_month_head,.dhx_year_body .dhx_before .dhx_month_head a{color:#454545!important}.dhx_year_month{border:1px solid #585858;font-size:16px}.dhx_scale_bar_last{border-right:1px solid #585858}.dhx_year_body{border-left:1px solid #585858}.dhx_year_week{border-bottom:1px solid #585858}.dhx_tooltip_line{height:22px;line-height:22px;color:#000}.dhx_tooltip_line .dhx_event_icon{background-position:5px 4px;background-repeat:no-repeat;height:20px;margin:0 2px}.dhx_year_tooltip{font-size:16px;background-color:#fff;background-image:url(imgs_contrast_black/databg.png)}.dhx_expand_icon{top:-3px}.dhx_scale_bar .dhx_cal_next_button,.dhx_scale_bar .dhx_cal_prev_button{width:20px;height:20px;top:0!important;border:0}.dhx_scale_bar .dhx_cal_next_button{right:1px!important;border-left:1px solid #585858}.dhx_scale_bar .dhx_cal_prev_button{left:1px!important;border-right:1px solid #585858}.dhx_map_line .headline_date,.dhx_map_line .headline_description{border:0}.dhx_map_line .headline_date{border-right:1px solid #585858}.dhtmlXTooltip.tooltip{font-size:16px;color:#000;background:#fff;border:1px solid #585858;line-height:16px}.dhx_wa_day_data{background:#fff}.dhx_wa_scale_bar{border-top:1px solid #585858;border-bottom:1px solid #585858}.dhx_wa_column_last .dhx_wa_day_cont{border-left:1px solid #585858}.dhx_wa_ev_body{font-size:16px;border-bottom:1px solid #7e7e7e}.dhx_wa_scale_bar{font-size:16px;color:#585858;font-weight:700;background-color:#fff}.dhx_wa_ev_body.dhx_cal_event_selected{background-color:#fff3a1;color:#362d26}.dhx_wa_dnd{background-color:#fddb93!important;color:#747473!important;border:1px solid #ccb177}.dhx_text_disabled{color:#2E2E2E}.dhx_cal_ltext .dhx_text_disabled{line-height:22px}.dhx_grid_v_border{border-right-color:#7e7e7e}.dhx_grid_area{background:0 0}.dhx_grid_area tr.dhx_grid_event:nth-child(2n){background:#e5e5e5}.dhx_grid_line{font-size:16px}.dhx_month_body_border,.dhx_month_head_border,.dhx_scale_bar_border,.dhx_scale_hour_border{border-left:1px solid #7e7e7e}.dhx_cal_quick_info{background:#fff;border:1px solid #585858;-webkit-box-shadow:inset 0 0 0 4px #585858;-moz-box-shadow:inset 0 0 0 4px #585858;box-shadow:inset 0 0 0 4px #585858;padding:4px}.dhx_cal_qi_title{padding:5px 0 8px 12px;color:#000;background-color:#fff;border-bottom:1px solid #585858}.dhx_cal_qi_content{background:0 0;width:auto;border:none;color:#000}.dhx_qi_big_icon{margin:8px 9px 8px 6px;background:#fff;color:#000;border:2px solid #000}.dhx_qi_big_icon div.icon_details{background-image:url(imgs_contrast_white/quick_info_edit.png)}.dhx_qi_big_icon.icon_delete{background:#9f3500;border-color:#9f3500;color:#fff;font-weight:700}.dhx_cal_navline .dhx_cal_export{width:32px;height:32px;margin:2px;cursor:pointer;top:12px}.dhx_cal_navline .dhx_cal_export.pdf{left:auto;right:249px;background-image:url(imgs_contrast_white/export_pdf.png)}.dhx_cal_navline .dhx_cal_export.ical{left:auto;right:210px;background-image:url(imgs_contrast_white/export_ical.png)}.dhx_mini_calendar{padding:5px}.dhx_mini_calendar .dhx_calendar_click,.dhx_mini_calendar .dhx_year_event{border-radius:7px}.dhx_mini_calendar .dhx_month_head{margin:2px}.dhx_mini_calendar .dhx_year_month{line-height:20px;height:25px;font-size:14px}.dhx_mini_calendar .dhx_cal_next_button,.dhx_mini_calendar .dhx_cal_prev_button{top:8px!important}.dhx_year_body .dhx_month_head.dhx_calendar_click,.dhx_year_body .dhx_month_head.dhx_year_event{color:#585858}
\ No newline at end of file diff --git a/codebase/dhtmlxscheduler_flat.css b/codebase/dhtmlxscheduler_flat.css index 431f3db..c090f13 100644 --- a/codebase/dhtmlxscheduler_flat.css +++ b/codebase/dhtmlxscheduler_flat.css @@ -1,9 +1,9 @@ /* @license -dhtmlxScheduler v.4.3.1 Stardard +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. (c) Dinamenta, UAB. */ -.dhtmlx_message_area{position:fixed;right:5px;width:250px;z-index:1000}.dhtmlx-info{min-width:120px;font-family:Tahoma;z-index:10000;overflow:hidden;margin:5px 5px 10px;-webkit-transition:all .5s ease;-moz-transition:all .5s ease;-o-transition:all .5s ease;transition:all .5s ease}.dhtmlx-info.hidden{height:0;padding:0;border-width:0;margin:0;overflow:hidden}.dhtmlx_modal_box{overflow:hidden;display:inline-block;min-width:300px;text-align:center;position:fixed;box-shadow:0 0 14px #888;z-index:20000}.dhtmlx_popup_title{border-top-left-radius:5px;border-top-right-radius:5px;border-width:0;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAoCAMAAAAIaGBFAAAAhFBMVEVwcHBubm5sbGxqampoaGhmZmZlZWVjY2NhYWFfX19dXV1bW1taWlpYWFhWVlZUVFRSUlJRUVFPT09NTU1LS0tJSUlHR0dGRkZERERCQkJAQEA+Pj49PT09PT0+Pj5AQEBBQUFDQ0NERERGRkZHR0dJSUlKSkpMTExMTEw5OTk5OTk5OTkny8YEAAAAQklEQVQImQXBCRJCAAAAwKVSQqdyjSPXNP7/QLsIhA6OTiJnF7GrRCpzc/fw9PKW+/gqlCq1RqvTG/yMJrPF6m/bAVEhAxxnHG0oAAAAAElFTkSuQmCC);background:-webkit-linear-gradient(top,#707070 1%,#3d3d3d 70%,#4c4c4c 97%,#393939 97%);background:-moz-linear-gradient(top,#707070 1%,#3d3d3d 70%,#4c4c4c 97%,#393939 97%)}.dhtmlx-info,.dhtmlx_button,.dhtmlx_popup_button{user-select:none;-webkit-user-select:none;-moz-user-select:-moz-none;cursor:pointer}.dhtmlx_popup_text{overflow:hidden}.dhtmlx_popup_controls{border-radius:6px;padding:5px}.dhtmlx_button,.dhtmlx_popup_button{height:30px;line-height:30px;display:inline-block;margin:0 5px;border-radius:6px;color:#FFF}.dhtmlx_popup_button{min-width:120px}div.dhx_modal_cover{background-color:#000;cursor:default;filter:alpha(opacity=20);opacity:.2;position:fixed;z-index:19999;left:0;top:0;width:100%;height:100%;border:none;zoom:1}.dhtmlx-info img,.dhtmlx_modal_box img{float:left;margin-right:20px}.dhtmlx-alert-error .dhtmlx_popup_title,.dhtmlx-confirm-error .dhtmlx_popup_title{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAsCAIAAAArRUU2AAAATklEQVR4nIWLuw2AMBBDjVuQiBT2oWbRDATrnB0KQOJoqPzRe3BrHI6dcBASYREKovtK6/6DsDOX+stN+3H1YX9ciRgnYq5EWYhS2dftBIuLT4JyIrPCAAAAAElFTkSuQmCC)}.dhtmlx-alert-error,.dhtmlx-confirm-error{border:1px solid red}.dhtmlx_button,.dhtmlx_popup_button{box-shadow:0 0 4px #888;border:1px solid #838383}.dhtmlx_button input,.dhtmlx_popup_button div{border:1px solid #FFF;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAeCAMAAADaS4T1AAAAYFBMVEVwcHBtbW1ra2toaGhmZmZjY2NhYWFeXl5cXFxaWlpXV1dVVVVSUlJQUFBNTU1LS0tJSUlGRkZERERBQUE/Pz88PDw9PT0+Pj5AQEBCQkJDQ0NFRUVHR0dISEhKSkpMTEzqthaMAAAAMklEQVQImQXBhQ2AMAAAsOIMlwWH/8+kRSKVyRVKlVrQaHV6g9FktlhFm93hdLk9Xt8PIfgBvdUqyskAAAAASUVORK5CYII=);background:-webkit-linear-gradient(top,#707070 1%,#3d3d3d 70%,#4c4c4c 99%);background:-moz-linear-gradient(top,#707070 1%,#3d3d3d 70%,#4c4c4c 99%);border-radius:6px;font-size:15px;font-weight:400;-moz-box-sizing:content-box;box-sizing:content-box;color:#fff;padding:0;margin:0;vertical-align:top;height:28px;line-height:28px}.dhtmlx_button input:active,.dhtmlx_button input:focus,.dhtmlx_popup_button div:active,.dhtmlx_popup_button div:focus{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAeCAMAAADaS4T1AAAAXVBMVEVwcHBubm5tbW1sbGxra2tpaWloaGhnZ2dmZmZlZWVjY2NiYmJhYWFgYGBfX19dXV1cXFxbW1taWlpZWVlXV1dWVlZVVVVUVFRTU1NRUVFQUFBPT09OTk5NTU1LS0tT9SY0AAAAMUlEQVQImQXBhQGAMAAAIGxnx2z9/00BiVQmVyhVakGj1ekNRpPZYhVtdofT5fZ4fT8hpwG05JjexgAAAABJRU5ErkJggg==);background:-webkit-linear-gradient(top,#707070 1%,#4c4c4c 99%);background:-moz-linear-gradient(top,#707070 1%,#4c4c4c 99%)}.dhtmlx_popup_title{color:#fff;text-shadow:1px 1px #000;height:40px;line-height:40px;font-size:20px}.dhtmlx_popup_text{margin:15px 15px 5px;color:#000;min-height:30px;border-radius:6px}.dhtmlx-error,.dhtmlx-info{font-size:14px;color:#000;box-shadow:0 0 10px #888;padding:0;background-color:#FFF;border-radius:3px;border:1px solid #fff}.dhtmlx-info div{padding:5px 10px;background-color:#fff;border-radius:3px;border:1px solid #B8B8B8}.dhtmlx-error{background-color:#d81b1b;border:1px solid #ff3c3c;box-shadow:0 0 10px #000}.dhtmlx-error div{background-color:#d81b1b;border:1px solid #940000;color:#FFF}.dhx_cal_event .dhx_body,.dhx_cal_event .dhx_footer,.dhx_cal_event .dhx_header,.dhx_cal_event .dhx_title{background-color:#FFE763;border:1px solid #B7A543;color:#887A2E;overflow:hidden;width:100%;font-family:Tahoma;font-size:8pt}.dhx_move_denied .dhx_cal_event .dhx_header,.dhx_move_denied .dhx_cal_event .dhx_title{cursor:default}.dhx_cal_event .dhx_header{height:1px;margin-left:1px;border-width:1px 1px 0;cursor:pointer}.dhx_cal_event .dhx_title{border-bottom-style:dotted;text-align:center;background-position:right;background-repeat:no-repeat;cursor:pointer}.dhx_cal_event .dhx_body,.dhx_cal_event.dhx_cal_select_menu .dhx_body{border-width:0 1px 1px;padding:5px}.dhx_resize_denied,.dhx_resize_denied .dhx_event_resize{cursor:default!important}.dhx_cal_event .dhx_event_resize{cursor:s-resize}.dhx_cal_event .dhx_footer,.dhx_cal_event .dhx_select_menu_footer{height:1px;margin-left:2px;border-width:0 1px 1px;position:relative}.dhx_cal_event_line{padding-left:10px;cursor:pointer;overflow:hidden}.dhx_cal_event_clear{font-family:Tahoma;font-size:8pt;height:13px;padding-left:2px;white-space:nowrap;overflow:hidden;cursor:pointer}.dhx_in_move{background-color:#FFFF80}.dhx_cal_event.dhx_cal_editor{z-index:999;position:absolute;overflow:hidden}textarea.dhx_cal_editor{width:100%;height:100%;border:0 solid #000;margin:0;padding:0;overflow:auto}div.dhx_menu_head{background-position:0 -43px;width:10px;height:10px;margin-left:5px;margin-top:1px;border:none;cursor:default}div.dhx_menu_icon{width:20px;height:20px;margin-left:-5px;margin-top:0;border:none;cursor:pointer}div.icon_details{background-position:0 0}div.icon_edit{background-position:-22px 0}div.icon_save{background-position:-84px -1px}div.icon_cancel{background-position:-62px 0}div.icon_delete{background-position:-42px 0}.dhx_month_link{position:absolute;box-sizing:border-box;-moz-box-sizing:border-box;text-align:right;cursor:pointer;padding-right:10px}.dhx_month_link a{color:#00f}.dhx_month_link a:hover{text-decoration:underline}.dhx_global_tip{font-family:Tahoma,Helvetica;text-align:center;font-size:20px;position:fixed;top:60px;right:20px;background-color:rgba(255,255,255,.7);color:#000;z-index:10000;padding:20px 30px;width:190px}.dhx_global_tip div{font-size:30px}@media (-moz-touch-enabled){.dhx_cal_container{user-select:none;-moz-user-select:none}}.dhx_unselectable,.dhx_unselectable div{-webkit-user-select:none;-moz-user-select:none;-moz-user-select:-moz-none}.dhx_cal_light{-webkit-tap-highlight-color:transparent;font-size:8pt;position:absolute;z-index:10001;width:580px;height:300px;box-shadow:5px 5px 5px #888}.dhx_mark{position:relative;top:3px;background-image:url(imgs/controls.gif);background-position:0 -43px;padding-left:10px}.dhx_ie6 .dhx_mark{background-position:6px -41px}.dhx_cal_light select{font-family:Tahoma;font-size:8pt;padding:2px;margin:0}.dhx_cal_ltitle{padding:2px 0 2px 5px;overflow:hidden;white-space:nowrap}.dhx_cal_ltitle span{white-space:nowrap}.dhx_cal_lsection{font-weight:700;padding:5px 0 3px 10px}.dhx_section_time{white-space:nowrap}.dhx_cal_lsection .dhx_fullday{float:right;margin-right:5px;font-size:12px;font-weight:400;line-height:20px;vertical-align:top;cursor:pointer}.dhx_cal_lsection{font-size:18px}.dhx_cal_ltext{padding:2px 0 2px 10px;overflow:hidden}.dhx_cal_ltext textarea{overflow:auto;height:100%;width:100%;outline:0!important;resize:none}.dhx_time{font-weight:700}.dhx_cal_larea{overflow:hidden;width:572px;height:1px}.dhx_btn_set{float:left}.dhx_btn_set div{float:left;vertical-align:middle;cursor:pointer}.dhx_save_btn{background-image:url(imgs/controls.gif);background-position:-84px 0;width:21px}.dhx_cancel_btn{background-image:url(imgs/controls.gif);background-position:-63px 0;width:20px}.dhx_delete_btn{background-image:url(imgs/controls.gif);background-position:-42px 0;width:20px}.dhx_cal_cover{width:100%;height:100%;position:absolute;z-index:10000;top:0;left:0;background-color:#000;opacity:.1;filter:alpha(opacity=10)}.dhx_custom_button{padding:0 3px;font-family:Tahoma;font-size:8pt;font-weight:400;margin-right:5px;margin-top:0;cursor:pointer}.dhx_custom_button div{cursor:pointer;float:left;height:21px;line-height:21px;vertical-align:middle}.dhx_cal_light_wide .dhx_cal_larea{border-top-width:0}.dhx_cal_light_wide .dhx_cal_lsection{border:0;float:left;text-align:right;width:100px;height:20px;padding:5px 0 0 10px}.dhx_cal_light_wide .dhx_wrap_section{position:relative;overflow:hidden}.dhx_cal_light_wide .dhx_section_time{padding-top:2px!important;height:20px!important}.dhx_section_time{text-align:center}.dhx_cal_light_wide .dhx_cal_larea{width:730px}.dhx_cal_light_wide{width:738px}.dhx_cal_light_wide .dhx_section_time{background:0 0}.dhx_cal_light_wide .dhx_cal_checkbox label{padding-left:0}.dhx_cal_wide_checkbox input{margin-top:8px;margin-left:14px}.dhx_cal_light input{font-size:8pt}.dhx_cal_light_wide .dhx_cal_lsection .dhx_fullday{float:none;margin-right:0;cursor:pointer}.dhx_custom_button{float:right;height:21px}.dhx_cal_light_wide .dhx_custom_button{position:absolute;top:0;right:0}.dhx_cal_light_wide .dhx_repeat_right{margin-right:55px}.dhx_minical_popup{position:absolute;z-index:10100;width:251px;height:175px}.dhx_scale_bar_header{position:absolute;border-bottom:1px dotted #8894A3;width:100%}.dhx_expand_icon{position:absolute;right:0;background-image:url(imgs/collapse_expand_icon.gif);width:18px;height:18px;cursor:pointer;background-position:0 18px;z-index:16}.dhx_agenda_area{width:100%;overflow-y:auto}.dhx_agenda_line{clear:both;overflow:hidden}.dhx_agenda_line div{float:left;width:188px;text-align:center;overflow:hidden}.dhx_agenda_area .dhx_agenda_line div{border-right:0 dotted #8894A3}.dhx_v_border{position:absolute;left:187px;top:0;width:1px;height:100%}.dhx_agenda_line .dhx_event_icon{width:20px;border-width:0;background:url(imgs/icon.png) 5px 4px no-repeat;cursor:pointer}.dhx_agenda_line span{padding-left:5px}.dhx_year_week{position:relative}.dhx_year_month{height:18px;padding-top:3px;text-align:center;vertical-align:middle}.dhx_year_body .dhx_after .dhx_month_head,.dhx_year_body .dhx_after .dhx_month_head a,.dhx_year_body .dhx_before .dhx_month_head,.dhx_year_body .dhx_before .dhx_month_head a{color:#E2E3E6!important}.dhx_year_body .dhx_month_body{height:0;overflow:hidden}.dhx_month_head.dhx_year_event{background-color:#FFE763}.dhx_year_body .dhx_after .dhx_month_head,.dhx_year_body .dhx_before .dhx_month_head{cursor:default}.dhx_year_tooltip{border:1px solid #BBB;background-image:url(imgs/databg.png);position:absolute;z-index:9998;width:300px;height:auto;font-family:Tahoma;font-size:8pt;overflow:hidden}.dhx_tooltip_line{line-height:20px;height:20px;overflow:hidden}.dhx_tooltip_line .dhx_event_icon{width:20px;height:20px;padding-right:10px;float:left;border-width:0;position:relative;background:url(imgs/icon.png) 5px 4px no-repeat;cursor:pointer}.dhx_tooltip_date{float:left;width:auto;padding-left:5px;text-align:center}.dhx_text_disabled{font-family:Tahoma;font-size:8pt}.dhx_mini_calendar{-moz-box-shadow:5px 5px 5px #888;-khtml-box-shadow:5px 5px 5px #888;-moz-user-select:-moz-none;-webkit-user-select:none;-user-select:none}.dhx_mini_calendar .dhx_month_head{cursor:pointer}.dhx_mini_calendar .dhx_calendar_click{background-color:#C2D5FC}.dhx_cal_navline div.dhx_minical_icon{cursor:pointer;background-image:url(imgs/calendar.gif)}.dhx_matrix_scell{height:100%}.dhx_matrix_cell,.dhx_matrix_scell{overflow:hidden;text-align:center;vertical-align:middle}.dhx_matrix_cell{background-color:#fff}.dhx_matrix_line{overflow:hidden}.dhx_matrix_cell div,.dhx_matrix_scell div{overflow:hidden;text-align:center;height:auto}.dhx_cal_lsection .dhx_readonly{font-size:9pt;font-size:8pt;padding:2px;color:#887A2E}.dhx_cal_event_line .dhx_event_resize{cursor:w-resize;position:absolute;top:0;width:4px;height:100%}.dhx_event_resize_start{left:0}.dhx_event_resize_end{right:0}.dhx_data_table.folder .dhx_matrix_cell,.dhx_matrix_scell.folder{background-color:#969394;cursor:pointer}.dhx_matrix_scell .dhx_scell_level0{padding-left:5px}.dhx_matrix_scell .dhx_scell_level1{padding-left:20px}.dhx_matrix_scell .dhx_scell_level2{padding-left:35px}.dhx_matrix_scell .dhx_scell_level3{padding-left:50px}.dhx_matrix_scell .dhx_scell_level4{padding-left:65px}.dhx_matrix_scell.folder{font-weight:700;text-align:left}.dhx_matrix_scell.folder .dhx_scell_expand{float:left;width:10px;padding-right:3px}.dhx_matrix_scell.folder .dhx_scell_name{float:left;width:auto}.dhx_matrix_scell.item .dhx_scell_name{padding-left:15px;text-align:left}.dhx_data_table.folder .dhx_matrix_cell{border-right:0}.dhx_section_timeline{overflow:hidden;padding:4px 0 2px 10px}.dhx_section_timeline select{width:552px}.dhx_map_area{width:100%;height:100%;overflow-y:auto;overflow-x:hidden}.dhx_map_line .dhx_event_icon{width:20px;border-width:0;background:url(imgs/icon.png) 5px 4px no-repeat;cursor:pointer}.dhx_map_line{clear:both;overflow:hidden}.dhx_map{position:absolute}.dhx_map_line .headline_description,.dhx_map_line div{float:left;border-right:1px dotted #8894A3;text-align:center;line-height:21px;overflow:hidden}.dhx_map_line .dhx_map_description{float:left;border-right:0 dotted #8894A3;text-align:center;line-height:21px;overflow:hidden}.dhx_map_line .line_description{float:left;border-right:1px dotted #8894A3;text-align:left;padding-left:5px;overflow:hidden}.dhx_map_area .dhx_map_line div{border-right:0 dotted #8894A3}.dhtmlXTooltip.tooltip{-moz-box-shadow:3px 3px 3px #888;-webkit-box-shadow:3px 3px 3px #888;-o-box-shadow:3px 3px 3px #888;box-shadow:3px 3px 3px #888;filter:progid:DXImageTransform.Microsoft.Shadow(color='#888888', Direction=135, Strength=5);background-color:#fff;cursor:default;padding:10px;position:absolute;z-index:500;font-family:Tahoma;opacity:1}.dhx_cal_checkbox label{padding-left:5px}.dhx_cal_light .radio{padding:2px 0 2px 10px}.dhx_cal_light .radio input,.dhx_cal_light .radio label{line-height:15px}.dhx_cal_light .radio input{vertical-align:middle;margin:0;padding:0}.dhx_cal_light .radio label{vertical-align:middle;padding-right:10px}.dhx_cal_light .combo{padding:4px}.dhx_cal_light_wide .dhx_combo_box{width:608px!important;left:10px}.dhx_wa_column{float:left}.dhx_wa_scale_bar{font-family:Tahoma;padding-left:10px;font-size:11px}.dhx_wa_day_data{background-color:#FCFEFC;overflow-y:auto}.dhx_wa_ev_body{font-size:12px;padding:5px 0 5px 7px}.dhx_wa_dnd{font-family:Tahoma;position:absolute;padding-right:7px;color:#887AE2!important;background-color:#FFE763!important}.dhx_cal_event_selected{background-color:#9cc1db;color:#fff}.dhx_second_scale_bar{padding-top:2px}.dhx_grid_area{width:100%;height:100%;overflow-y:auto;background-color:#FCFEFC}.dhx_grid_area table{border-collapse:collapse;border-spacing:0;width:100%;table-layout:fixed}.dhx_grid_area td{table-layout:fixed;text-align:center}.dhx_grid_line{height:21px;clear:both;overflow:hidden}.dhx_grid_line div{float:left;cursor:default;padding-top:0;padding-bottom:0;text-align:center;line-height:21px;overflow:hidden}.dhx_grid_area td,.dhx_grid_line div{padding-left:8px;padding-right:8px}.dhx_grid_area tr.dhx_grid_event{height:21px;overflow:hidden;margin:0 0 1px}.dhx_grid_area tr.dhx_grid_event td{border-bottom:1px solid #ECEEF4}.dhx_grid_area tr.dhx_grid_event:nth-child(2n) td,.dhx_grid_area tr.dhx_grid_event:nth-child(2n+1) td{border-bottom-width:0;border-bottom-style:none}.dhx_grid_area tr.dhx_grid_event:nth-child(2n){background-color:#ECEEF4}.dhx_grid_area .dhx_grid_dummy{table-layout:auto;margin:0!important;padding:0!important}.dhx_grid_v_border{position:absolute;border-right:1px solid #A4BED4;width:1px;height:100%}.dhx_grid_event_selected{background-color:#9cc1db!important;color:#fff!important}.dhx_grid_sort_desc .dhx_grid_view_sort{background-position:0 -55px}.dhx_grid_sort_asc .dhx_grid_view_sort{background-position:0 -66px}.dhx_grid_view_sort{width:10px;height:10px;position:absolute;border:none!important;top:5px;background-repeat:no-repeat;background-image:url(imgs/images.png)}.dhx_marked_timespan{position:absolute;width:100%;margin-left:0}.dhx_time_block{position:absolute;width:100%;background:silver;opacity:.4;filter:alpha(opacity=40);z-index:1}.dhx_time_block_reset{opacity:1;filter:alpha(opacity=100)}.dhx_mini_calendar .dhx_marked_timespan,.dhx_scheduler_month .dhx_marked_timespan{display:none}.dhx_now_time{width:100%;border-bottom:2px solid red;z-index:1}.dhx_scheduler_month .dhx_now_time{border-bottom:0;border-left:2px solid red}.dhx_matrix_now_time{border-left:2px solid red;z-index:1}.dhx_matrix_now_time,.dhx_now_time{opacity:.5}.dhx_cal_quick_info{position:absolute;z-index:300;background-color:#8e99ae;background-color:rgba(98,107,127,.5);padding-left:7px;transition:left .5s ease,right .5s;-moz-transition:left .5s ease,right .5s;-webkit-transition:left .5s ease,right .5s;-o-transition:left .5s ease,right .5s}.dhx_no_animate{transition:none;-moz-transition:none;-webkit-transition:none;-o-transition:none}.dhx_cal_quick_info.dhx_qi_left .dhx_qi_big_icon{float:right}.dhx_cal_qi_title{padding:5px 0 10px 5px;letter-spacing:1px}.dhx_cal_qi_tdate{font-size:14px}.dhx_cal_qi_tcontent{font-size:18px;font-weight:700}.dhx_cal_qi_content{background-color:#fefefe;font-size:14px;color:#444;width:275px;overflow:hidden}.dhx_qi_big_icon{margin:5px 9px 5px 0;min-width:60px;line-height:20px;vertical-align:middle;padding:5px 10px 5px 5px;cursor:pointer;background-color:#fefefe}.dhx_cal_qi_controls div{float:left;height:20px;text-align:center;line-height:20px}.dhx_qi_big_icon .dhx_menu_icon{margin:0 8px 0 0}.dhx_drag_marker{width:100%;filter:alpha(Opacity=50);opacity:.5;background-color:#FFE763;position:absolute;box-sizing:border-box!important;border-top:1px solid #B6B6B6;border-bottom:1px solid #b6b6b6}.dhx_cal_data,.dhx_cal_data div,.dhx_cal_data table *,.dhx_cal_header,.dhx_cal_header div,.dhx_cal_navline div,.dhx_cal_quick_info,.dhx_cal_quick_info div,.dhx_multi_day,.dhx_multi_day div,.dhx_tooltip_line div{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}.dhx_cal_data table{border-collapse:separate}.dhx_cal_light .dhx_cal_radio label{margin-bottom:0}.dhx_cal_event div{line-height:normal}.dhx_cal_container{font-size:8pt;position:relative;overflow:hidden}.dhx_cal_container div{-moz-user-select:none;-moz-user-select:-moz-none}.dhx_cal_navline{height:20px;position:absolute;z-index:3;width:750px;color:#2F3A48}.dhx_cal_navline div{position:absolute;white-space:nowrap}.dhx_cal_navline .dhx_cal_date{padding-top:1px}.dhx_cal_button .dhx_left_bg{width:1px;overflow:hidden;height:17px;z-index:20;top:0}.dhx_cal_prev_button{background-image:url(imgs/buttons.png);background-position:0 0;cursor:pointer}.dhx_cal_next_button{background-image:url(imgs/buttons.png);background-position:-30px 0;cursor:pointer}.dhx_cal_today_button{background-image:url(imgs/buttons.png);background-position:-60px 0;cursor:pointer;text-align:center}.dhx_cal_tab{text-align:center;cursor:pointer;background-color:#D8E1EA;-webkit-border-top-left-radius:4px;-webkit-border-top-right-radius:4px;-moz-border-radius-topleft:4px;-moz-border-radius-topright:4px;border-top-left-radius:4px;border-top-right-radius:4px}.dhx_cal_tab.active{cursor:default}.dhx_cal_header{position:absolute;left:10px;top:23px;width:750px;z-index:2;overflow:hidden;color:#2F3A48}.dhx_cal_data{-webkit-tap-highlight-color:transparent;position:absolute;top:44px;width:600px;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;-ms-touch-action:pan-y}.dhx_cal_event,.dhx_cal_event_clear,.dhx_cal_event_line{-ms-touch-action:none}.dhx_scale_bar{position:absolute;text-align:center}.dhx_scale_holder,.dhx_scale_holder_now{position:absolute}.dhx_scale_hour{height:41px;width:50px;text-align:center;line-height:40px;overflow:hidden}.dhx_month_head{padding-right:5px;text-align:right}.dhx_scale_ignore{display:none}.dhx_cal_drag{position:absolute;z-index:9999;background-color:#FFE763;border:1px solid #B7A543;opacity:.5;filter:alpha(opacity=50)}.dhx_loading{position:absolute;width:128px;height:15px;background-image:url(imgs/loading.gif);z-index:9999}.dhx_multi_day,.dhx_multi_day_icon{background-color:#E1E6FF;background-repeat:no-repeat;border-right:1px dotted #8894A3}.dhx_multi_day{position:absolute}.dhx_multi_day_icon,.dhx_multi_day_icon_small{background-position:center center;background-repeat:no-repeat}.dhtmlxLayoutPolyContainer_dhx_skyblue .dhx_cal_container{background-color:#d0e5ff}.dhx_form_repeat,.dhx_form_repeat input{padding:0 0 0 5px;margin:0;font-family:Tahoma,Verdana;font-size:11px;line-height:24px}.dhx_form_repeat{overflow:hidden}.dhx_cal_light_wide .dhx_form_repeat{background-color:transparent}.dhx_repeat_center,.dhx_repeat_divider,.dhx_repeat_left,.dhx_repeat_right{height:115px;-moz-box-sizing:border-box;box-sizing:border-box}.dhx_repeat_center,.dhx_repeat_left{padding:10px 0 0 10px;float:left}.dhx_repeat_left{width:105px}.dhx_repeat_center{width:345px;padding-top:22px}.dhx_repeat_divider{float:left;width:1px}.dhx_repeat_right{float:right;width:173px;padding:17px 3px 0 10px}input.dhx_repeat_text{height:16px;width:27px;margin:0 4px;line-height:18px;padding:0 0 0 2px}.dhx_form_repeat select{height:20px;width:87px;padding:0 0 0 2px;margin:0 4px}input.dhx_repeat_date{height:18px;width:80px;padding:0 0 0 2px;margin:0 4px;background-repeat:no-repeat;background-position:64px 0;border:1px solid #7f9db9;line-height:18px}input.dhx_repeat_radio{margin-right:4px}input.dhx_repeat_checkbox{margin:4px 4px 0 0}.dhx_repeat_days td{padding-right:5px}.dhx_repeat_days label{font-size:10px}.dhx_custom_button{width:90px;-webkit-border-radius:4px;-moz-border-radius:4px;-ms-border-radius:4px;-o-border-radius:4px}.dhx_custom_button_recurring{background-position:-5px 20px;width:20px;margin-right:10px}.dhx_cal_light_rec{width:640px}.dhx_cal_light_rec .dhx_cal_larea{width:632px}.dhx_cal_light_rec.dhx_cal_light_wide{width:816px}.dhx_cal_light_rec.dhx_cal_light_wide .dhx_cal_larea{width:808px}.dhx_cal_event .dhx_title{border-width:1px 1px 0;-webkit-border-top-left-radius:1px;-webkit-border-top-right-radius:1px;-moz-border-radius-topleft:1px;-moz-border-radius-topright:1px;border-top-left-radius:1px;border-top-right-radius:1px;font-family:"Segoe UI",Arial;font-weight:700;font-size:12px;height:14px;line-height:14px}.dhx_cal_event .dhx_body,.dhx_cal_event.dhx_cal_select_menu .dhx_body{padding-bottom:8px;-webkit-border-bottom-right-radius:1px;-webkit-border-bottom-left-radius:1px;-moz-border-radius-bottomright:1px;-moz-border-radius-bottomleft:1px;border-bottom-right-radius:1px;border-bottom-left-radius:1px}.dhx_cal_event .dhx_header,.dhx_cal_event.dhx_cal_select_menu .dhx_footer{display:none}.dhx_cal_event .dhx_footer{height:15px;border:0;background-color:transparent!important;margin-top:-11px}.dhx_cal_event .dhx_footer:hover{background:url(imgs_flat/resizing.png) center center no-repeat}.dhx_cal_event .dhx_body,.dhx_cal_event .dhx_header,.dhx_cal_event .dhx_title{background-color:#5B9BE0;border-color:transparent;color:#fff}.dhx_cal_event,.dhx_cal_event_line{-webkit-box-shadow:0 0 1px #FFF;-moz-box-shadow:0 0 1px #FFF;box-shadow:0 0 1px #FFF}.dhx_cal_event.dhx_cal_editor{-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;border:1px solid transparent}.dhx_cal_editor{font-size:12px;font-family:"Segoe UI",Arial}div.dhx_menu_head,div.dhx_menu_icon{background-image:url(imgs_flat/controls.png)}.dhx_cal_event_line{border:1px solid transparent;background-color:#5B9BE0;color:#FFF;height:17px;line-height:16px;-webkit-border-radius:1px;-moz-border-radius:1px;border-radius:1px}.dhx_cal_event_line:hover div{background:url(imgs_flat/resize_dots.png) repeat-y}.dhx_cal_event_line_start{-webkit-border-top-left-radius:1px;-webkit-border-bottom-left-radius:1px;-moz-border-radius-topleft:1px;-moz-border-radius-bottomleft:1px;border-top-left-radius:1px;border-bottom-left-radius:1px}.dhx_cal_event_line_end{-webkit-border-top-right-radius:1px;-webkit-border-bottom-right-radius:1px;-moz-border-radius-topright:1px;-moz-border-radius-bottomright:1px;border-top-right-radius:1px;border-bottom-right-radius:1px}.dhx_cal_event .dhx_body,.dhx_cal_event_line{font-size:12px;font-family:"Segoe UI",Arial}.dhx_cal_event:hover .dhx_footer{background:url(imgs_flat/resizing.png) center center no-repeat}.dhx_cal_container{background-color:#fff;font-family:"Segoe UI",Arial}.dhx_cal_data{border-top:1px solid #CECECE}.dhx_scale_holder{background-image:url(imgs_flat/databg.png);border-right:1px solid #CECECE}.dhx_scale_holder_now{background-image:url(imgs_flat/databg_now.png);border-right:1px solid #CECECE}.dhx_scale_hour{border-bottom:1px solid #CECECE;background-color:#fff;font:11px/44px Arial;font-family:"Segoe UI",Arial;font-weight:lighter;color:#767676}.dhx_scale_h{display:inline-block;font-size:22px}.dhx_scale_m{display:inline-block;font-size:11px;line-height:35px;vertical-align:top}.dhx_cal_header{border:1px solid #CECECE;border-left:0;border-bottom:0}.dhx_scale_bar{border-left:1px solid #CECECE;font:12px/16px "Segoe UI",Arial;color:#767676;line-height:30px;padding-top:2px;background-color:#fff}.dhx_scale_bar>a{color:#5780AD;text-decoration:none}.dhx_scale_bar>a:hover{text-decoration:underline}.dhx_month_head>a{color:#5780AD;text-decoration:none}.dhx_month_head>a:hover{text-decoration:underline}.dhx_cal_navline div{top:14px}.dhx_cal_date,.dhx_cal_next_button,.dhx_cal_prev_button,.dhx_cal_tab,.dhx_cal_today_button{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0;border:none;color:#454544;height:30px;line-height:30px;background:0 0;font-family:"Segoe UI",Arial;font-weight:lighter}.dhx_cal_navline .dhx_cal_date{border:0;color:#454544;font-family:"Segoe UI",Arial;font-weight:lighter;font-size:22px;text-align:center;top:14px;position:absolute;left:0;width:100%;z-index:-1}.dhx_cal_today_button{background:0 0;color:#5780AD;font-size:13px;font-weight:bolder;left:auto;right:123px;text-decoration:none;width:80px}.dhx_cal_next_button,.dhx_cal_prev_button{left:auto;width:46px}.dhx_cal_prev_button{right:61px;background:url(imgs_flat/arrow_left.png) center center no-repeat}.dhx_cal_next_button{right:14px;background:url(imgs_flat/arrow_right.png) center center no-repeat}.dhx_cal_tab{color:#5780AD;font-size:13px;font-weight:bolder;padding-top:0;text-decoration:none;width:60px}.dhx_cal_tab:hover,.dhx_cal_today_button:hover{text-decoration:underline}.dhx_cal_tab.active{background-color:#5780AD;border:none;color:#FFF;font-family:"Segoe UI",Arial;font-weight:lighter;text-decoration:none}.dhx_cal_tab_standalone{padding:0 5px}.dhx_multi_day,.dhx_multi_day_icon,.dhx_multi_day_icon_small{background-color:#fff}.dhx_multi_day{border-top:1px solid #CECECE}.dhx_multi_day_icon,.dhx_multi_day_icon_small{border-bottom:1px solid #CECECE;border-right:1px solid #CECECE}.dhx_multi_day_icon_small{background-image:url(imgs_flat/clock.png)}.dhx_multi_day_icon{background-image:url(imgs_flat/clock_big.gif)}.dhx_month_body,.dhx_month_head{background-color:#fff}.dhx_after .dhx_month_body,.dhx_after .dhx_month_head,.dhx_before .dhx_month_body,.dhx_before .dhx_month_head{background-color:#F7F7F7}.dhx_month_head{height:21px;padding-top:0;font:12px/21px "Segoe UI",Arial;color:#5780AD;border-right:1px solid #CECECE}.dhx_after .dhx_month_head,.dhx_before .dhx_month_head{color:#bbb}.dhx_month_body{border-right:1px solid #CECECE;border-bottom:1px solid #CECECE}.dhx_now .dhx_month_body,.dhx_now .dhx_month_head{background-color:#FFF3A1;font-weight:400}.dhx_cal_event_clear{color:#0E64A0}.dhx_cal_larea{margin-left:0}.dhx_cal_light_wide .dhx_cal_larea{margin-left:3px}.dhx_cal_light_wide .dhx_wrap_section{padding:5px 0}.dhx_cal_larea,.dhx_cal_light,.dhx_cal_light_wide .dhx_wrap_section,.dhx_cal_lsection,.dhx_cal_ltext textarea,.dhx_wrap_section{background-color:#fff;font-family:"Segoe UI",Arial}.dhx_cal_light input,.dhx_cal_light_wide .dhx_cal_lsection .dhx_fullday,.dhx_cal_lsection,.dhx_cal_lsection .dhx_fullday{color:#444;font-family:"Segoe UI",Arial}.dhx_cal_light_wide .dhx_wrap_section{border-top:0;border-bottom:1px solid #CECECE}.dhx_cal_larea{border:1px solid transparent}.dhx_cal_light,.dhx_cal_light select,.dhx_cal_ltext textarea{color:#2E2E2E}.dhx_cal_light{border:none;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.dhx_cal_light_wide .dhx_cal_lsection,.dhx_cal_light_wide .dhx_cal_lsection .dhx_fullday{font-family:"Segoe UI",Arial;font-size:13px;font-weight:700}.dhx_section_time{background-color:transparent}.dhx_btn_set div:first-child,.dhx_cancel_btn,.dhx_delete_btn,.dhx_save_btn{display:none}.dhx_btn_set,.dhx_btn_set div{height:30px;padding:0 20px;line-height:30px}.dhx_btn_set{margin:12px 0 0;padding:0;font-size:13px;color:#444;font-weight:400;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.dhx_left_btn_set{margin-left:20px}.dhx_right_btn_set{margin-right:20px}.dhx_save_btn_set{border:none;color:#FFF;background-color:#5B9BE0}.dhx_cancel_btn_set{background-color:#FE7510;color:#FFF}.dhx_delete_btn_set{border:1px solid #888;color:#444}.dhx_cal_ltitle{height:30px;line-height:30px;border-bottom:1px solid #CECECE}.dhx_cal_ltitle span{float:left}.dhx_cal_light .dhx_title{font-size:13px;padding-left:13px}.dhx_mark{display:none}.dhx_time{font-size:12px;padding-left:10px}.dhx_close_icon{float:right;width:9px;height:9px;background:url(imgs_flat/close_icon.png) center center no-repeat;padding:10px;margin-top:1px}.dhx_cal_light_wide .dhx_cal_ltext.dhx_cal_template{line-height:22px}.dhx_cal_ltext textarea{line-height:20px;box-sizing:border-box;-moz-box-sizing:border-box;border:1px solid #CECECE;background-color:#F9F9F9}.dhtmlx_modal_box{border:none;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0;background:#fff;font-family:"Segoe UI",Arial;width:330px}.dhtmlx_popup_text{font-size:16px}.dhtmlx_popup_controls{padding-bottom:9px}.dhtmlx_popup_button,.dhtmlx_popup_button div,.dhtmlx_popup_button div:active,.dhtmlx_popup_button:active{color:#444;background:#fff;box-shadow:none;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.dhtmlx_popup_button{border:1px solid #888}.dhtmlx_popup_button div{border:none}.dhtmlx_popup_button.dhtmlx_ok_button{border-color:#5B9BE0;background-color:#5B9BE0;color:#FFF}.dhtmlx_popup_button.dhtmlx_cancel_button{border-color:#FE7510;background-color:#FE7510;color:#FFF}.dhtmlx_popup_button.dhtmlx_cancel_button div,.dhtmlx_popup_button.dhtmlx_ok_button div{background:0 0;color:#FFF}.dhx_cal_container.dhx_mini_calendar{box-sizing:border-box;border:none;box-shadow:0 2px 10px 0 #AAA;border-radius:0}.dhx_mini_calendar .dhx_year_month{border:1px solid #CECECE;font-family:"Segoe UI",Arial}.dhx_mini_calendar .dhx_month_body,.dhx_mini_calendar .dhx_month_head,.dhx_mini_calendar .dhx_scale_bar,.dhx_mini_calendar .dhx_year_body,.dhx_mini_calendar .dhx_year_month{border-color:transparent}.dhx_mini_calendar .dhx_year_body{padding-top:1px}.dhx_mini_calendar .dhx_scale_bar{border-width:0}.dhx_mini_calendar .dhx_year_week{border-bottom:1px solid #CECECE;padding-top:1px}.dhx_mini_calendar .dhx_month_head{padding-right:0;text-align:center}.dhx_mini_calendar .dhx_cal_next_button,.dhx_mini_calendar .dhx_cal_prev_button{border:0;height:20px}.dhx_cal_navline div.dhx_minical_icon{left:210px;top:14px;width:30px;height:30px;background:url(imgs_flat/calendar.gif) 3px 5px no-repeat}.dhx_cal_event_line .dhx_event_resize{background:0 0}.dhx_cal_event_line .dhx_event_resize:hover{background:url(imgs_flat/resize_dots.png) repeat-y}.dhx_matrix_cell,.dhx_matrix_scell{border-bottom:1px solid #CECECE;border-right:1px solid #CECECE}.dhx_cal_header div div{border-left:1px solid #CECECE}.dhx_matrix_scell{font-size:13px}.dhx_second_scale_bar{border-bottom:1px solid #CECECE}.dhx_repeat_divider{border-left:1px solid #CECECE}.dhx_custom_button{background-color:#fff;border:1px solid #a4a4a4;border-radius:0;color:#444}.dhx_cal_light_wide .dhx_custom_button{margin-top:6px}.dhx_custom_button_recurring{background-image:url(imgs_flat/but_repeat.gif)}input.dhx_repeat_date{border-color:#a8a8a8}.dhx_form_repeat{background-color:transparent}.dhx_agenda_line div,.dhx_v_border{border-right:1px solid #CECECE}.dhx_cal_header .dhx_agenda_line,.dhx_cal_header .dhx_agenda_line div{height:100%;line-height:35px}.dhx_agenda_area,.dhx_scheduler_agenda .dhx_cal_data{background-image:url(imgs_flat/agenda_bg.gif)}.dhx_agenda_line{height:26px}.dhx_agenda_line div,.dhx_agenda_line span{line-height:26px}.dhx_agenda_line .dhx_event_icon{background-position:5px 6px}.dhx_year_month{border:1px solid #CECECE}.dhx_scale_bar_last{border-right:1px solid #CECECE}.dhx_year_body{border-left:1px solid #CECECE}.dhx_expand_icon{top:-3px}.dhx_scale_bar .dhx_cal_next_button,.dhx_scale_bar .dhx_cal_prev_button{width:20px;height:100%;top:0!important;border:0}.dhx_scale_bar .dhx_cal_next_button{right:1px!important;border-left:1px solid #CECECE}.dhx_scale_bar .dhx_cal_prev_button{left:1px!important;border-right:1px solid #CECECE}.dhx_map_line .headline_date,.dhx_map_line .headline_description{border:0}.dhx_map_line .headline_date{border-right:1px solid #CECECE}.dhx_map_line.highlight{background-color:#b3daff}.dhx_cal_header .dhx_map_line{height:100%}.dhx_cal_header .dhx_map_line .headline_date,.dhx_cal_header .dhx_map_line .headline_description{height:100%;line-height:35px}.dhx_map_area{background-image:url(imgs_flat/agenda_bg.gif)}.dhx_map_line{height:26px}.dhx_map_line .line_description,.dhx_map_line div{line-height:26px;height:26px}.dhx_map_line .dhx_event_icon{background-position:5px 6px}.dhx_cal_data div.dhx_map_area,.dhx_cal_header div.dhx_map_line{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;border-right:1px solid #cecece}.dhtmlXTooltip.tooltip{border-left:1px solid #CECECE;border-top:1px solid #CECECE;color:#747473;font-size:12px;line-height:16px}.dhx_wa_scale_bar{border-top:1px solid #CECECE;border-bottom:1px solid #CECECE}.dhx_wa_column_last .dhx_wa_day_cont{border-left:1px solid #CECECE}.dhx_wa_ev_body{border-bottom:1px solid #CECECE}.dhx_wa_scale_bar{background-color:#f0ede7}.dhx_wa_ev_body.dhx_cal_event_selected{background-color:#fff3a1;color:#362d26}.dhx_wa_dnd{background-color:#fddb93!important;color:#747473!important;border:1px solid #ccb177}.dhx_text_disabled{color:#2E2E2E}.dhx_cal_ltext .dhx_text_disabled{line-height:22px}.dhx_grid_v_border{border-right-color:#CECECE}.dhx_cal_header .dhx_grid_line,.dhx_cal_header .dhx_grid_line div{height:100%;line-height:35px}.dhx_cal_header .dhx_grid_line div.dhx_grid_view_sort{height:10px;top:12px}.dhx_month_body_border,.dhx_month_head_border,.dhx_scale_bar_border,.dhx_scale_hour_border{border-left:1px solid #CECECE}.dhx_cal_quick_info{background:rgba(204,204,204,.8);border:none;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0;font-family:"Segoe UI",Arial;width:280px}.dhx_cal_qi_title{color:#000}.dhx_cal_qi_tdate{color:#444}.dhx_cal_qi_content{background:0 0;border:none;padding:10px 8px}.dhx_qi_big_icon{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0;border:none;color:#FFF;float:none;font-size:13px}.dhx_qi_big_icon .dhx_menu_icon{display:none!important}.dhx_cal_quick_info .icon_details{background:#5B9BE0;margin-left:100px}.dhx_cal_quick_info .icon_details div{padding-left:12px}.dhx_cal_quick_info .icon_delete{background:#FE7510}.dhx_cal_quick_info .icon_delete div{padding-left:12px}.dhx_cal_navline .dhx_cal_export{width:32px;height:32px;margin:2px;cursor:pointer;top:12px}.dhx_cal_navline .dhx_cal_export.pdf{left:auto;right:249px;background-image:url(imgs_flat/export_pdf.png)}.dhx_cal_navline .dhx_cal_export.ical{left:auto;right:210px;background-image:url(imgs_flat/export_ical.png)}.dhx_mini_calendar{font-family:"Segoe UI",Arial;padding:5px}.dhx_mini_calendar .dhx_calendar_click,.dhx_mini_calendar .dhx_year_event{border-radius:0}.dhx_mini_calendar .dhx_month_head{color:#363636;font-family:"Segoe UI",Arial;font-size:13px;margin:2px}.dhx_mini_calendar .dhx_year_month{color:#454544;line-height:20px;height:25px;font-size:20px;font-weight:lighter}.dhx_mini_calendar .dhx_cal_next_button,.dhx_mini_calendar .dhx_cal_prev_button{top:8px!important}.dhx_mini_calendar .dhx_scale_bar{font-family:"Segoe UI",Arial;font-size:11px}
\ No newline at end of file +.dhtmlx_message_area{position:fixed;right:5px;width:250px;z-index:11}.dhtmlx-info{min-width:120px;font-family:Tahoma;z-index:14;overflow:hidden;margin:5px 5px 10px;-webkit-transition:all .5s ease;-moz-transition:all .5s ease;-o-transition:all .5s ease;transition:all .5s ease}.dhtmlx-info.hidden{height:0;padding:0;border-width:0;margin:0;overflow:hidden}.dhtmlx_modal_box{overflow:hidden;display:inline-block;min-width:300px;text-align:center;position:fixed;box-shadow:0 0 14px #888;z-index:18}.dhtmlx_popup_title{border-top-left-radius:5px;border-top-right-radius:5px;border-width:0;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAoCAMAAAAIaGBFAAAAhFBMVEVwcHBubm5sbGxqampoaGhmZmZlZWVjY2NhYWFfX19dXV1bW1taWlpYWFhWVlZUVFRSUlJRUVFPT09NTU1LS0tJSUlHR0dGRkZERERCQkJAQEA+Pj49PT09PT0+Pj5AQEBBQUFDQ0NERERGRkZHR0dJSUlKSkpMTExMTEw5OTk5OTk5OTkny8YEAAAAQklEQVQImQXBCRJCAAAAwKVSQqdyjSPXNP7/QLsIhA6OTiJnF7GrRCpzc/fw9PKW+/gqlCq1RqvTG/yMJrPF6m/bAVEhAxxnHG0oAAAAAElFTkSuQmCC);background:-webkit-linear-gradient(top,#707070 1%,#3d3d3d 70%,#4c4c4c 97%,#393939 97%);background:-moz-linear-gradient(top,#707070 1%,#3d3d3d 70%,#4c4c4c 97%,#393939 97%)}.dhtmlx-info,.dhtmlx_button,.dhtmlx_popup_button{user-select:none;-webkit-user-select:none;-moz-user-select:-moz-none;cursor:pointer}.dhtmlx_popup_text{overflow:hidden}.dhtmlx_popup_controls{border-radius:6px;padding:5px}.dhtmlx_button,.dhtmlx_popup_button{height:30px;line-height:30px;display:inline-block;margin:0 5px;border-radius:6px;color:#FFF}.dhtmlx_popup_button{min-width:120px}div.dhx_modal_cover{background-color:#000;cursor:default;filter:alpha(opacity=20);opacity:.2;position:fixed;z-index:17;left:0;top:0;width:100%;height:100%;border:none;zoom:1}.dhtmlx-info img,.dhtmlx_modal_box img{float:left;margin-right:20px}.dhtmlx-alert-error .dhtmlx_popup_title,.dhtmlx-confirm-error .dhtmlx_popup_title{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAsCAIAAAArRUU2AAAATklEQVR4nIWLuw2AMBBDjVuQiBT2oWbRDATrnB0KQOJoqPzRe3BrHI6dcBASYREKovtK6/6DsDOX+stN+3H1YX9ciRgnYq5EWYhS2dftBIuLT4JyIrPCAAAAAElFTkSuQmCC)}.dhtmlx-alert-error,.dhtmlx-confirm-error{border:1px solid red}.dhtmlx_button,.dhtmlx_popup_button{box-shadow:0 0 4px #888;border:1px solid #838383}.dhtmlx_button input,.dhtmlx_popup_button div{border:1px solid #FFF;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAeCAMAAADaS4T1AAAAYFBMVEVwcHBtbW1ra2toaGhmZmZjY2NhYWFeXl5cXFxaWlpXV1dVVVVSUlJQUFBNTU1LS0tJSUlGRkZERERBQUE/Pz88PDw9PT0+Pj5AQEBCQkJDQ0NFRUVHR0dISEhKSkpMTEzqthaMAAAAMklEQVQImQXBhQ2AMAAAsOIMlwWH/8+kRSKVyRVKlVrQaHV6g9FktlhFm93hdLk9Xt8PIfgBvdUqyskAAAAASUVORK5CYII=);background:-webkit-linear-gradient(top,#707070 1%,#3d3d3d 70%,#4c4c4c 99%);background:-moz-linear-gradient(top,#707070 1%,#3d3d3d 70%,#4c4c4c 99%);border-radius:6px;font-size:15px;font-weight:400;-moz-box-sizing:content-box;box-sizing:content-box;color:#fff;padding:0;margin:0;vertical-align:top;height:28px;line-height:28px}.dhtmlx_button input:active,.dhtmlx_button input:focus,.dhtmlx_popup_button div:active,.dhtmlx_popup_button div:focus{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAeCAMAAADaS4T1AAAAXVBMVEVwcHBubm5tbW1sbGxra2tpaWloaGhnZ2dmZmZlZWVjY2NiYmJhYWFgYGBfX19dXV1cXFxbW1taWlpZWVlXV1dWVlZVVVVUVFRTU1NRUVFQUFBPT09OTk5NTU1LS0tT9SY0AAAAMUlEQVQImQXBhQGAMAAAIGxnx2z9/00BiVQmVyhVakGj1ekNRpPZYhVtdofT5fZ4fT8hpwG05JjexgAAAABJRU5ErkJggg==);background:-webkit-linear-gradient(top,#707070 1%,#4c4c4c 99%);background:-moz-linear-gradient(top,#707070 1%,#4c4c4c 99%)}.dhtmlx_popup_title{color:#fff;text-shadow:1px 1px #000;height:40px;line-height:40px;font-size:20px}.dhtmlx_popup_text{margin:15px 15px 5px;color:#000;min-height:30px;border-radius:6px}.dhtmlx-error,.dhtmlx-info{font-size:14px;color:#000;box-shadow:0 0 10px #888;padding:0;background-color:#FFF;border-radius:3px;border:1px solid #fff}.dhtmlx-info div{padding:5px 10px;background-color:#fff;border-radius:3px;border:1px solid #B8B8B8}.dhtmlx-error{background-color:#d81b1b;border:1px solid #ff3c3c;box-shadow:0 0 10px #000}.dhtmlx-error div{background-color:#d81b1b;border:1px solid #940000;color:#FFF}.dhx_cal_event .dhx_body,.dhx_cal_event .dhx_footer,.dhx_cal_event .dhx_header,.dhx_cal_event .dhx_title{background-color:#FFE763;border:1px solid #B7A543;color:#887A2E;overflow:hidden;width:100%;font-family:Tahoma;font-size:8pt}.dhx_move_denied .dhx_cal_event .dhx_header,.dhx_move_denied .dhx_cal_event .dhx_title{cursor:default}.dhx_cal_event .dhx_header{height:1px;margin-left:1px;border-width:1px 1px 0;cursor:pointer}.dhx_cal_event .dhx_title{border-bottom-style:dotted;text-align:center;background-position:right;background-repeat:no-repeat;cursor:pointer}.dhx_cal_event .dhx_body,.dhx_cal_event.dhx_cal_select_menu .dhx_body{border-width:0 1px 1px;padding:5px}.dhx_resize_denied,.dhx_resize_denied .dhx_event_resize{cursor:default!important}.dhx_cal_event .dhx_event_resize{cursor:s-resize}.dhx_cal_event .dhx_footer,.dhx_cal_event .dhx_select_menu_footer{height:1px;margin-left:2px;border-width:0 1px 1px;position:relative}.dhx_cal_event_line{padding-left:10px;cursor:pointer;overflow:hidden}.dhx_cal_event_clear{font-family:Tahoma;font-size:8pt;height:13px;padding-left:2px;white-space:nowrap;overflow:hidden;cursor:pointer}.dhx_in_move{background-color:#FFFF80}.dhx_cal_event.dhx_cal_editor{z-index:10;position:absolute;overflow:hidden}textarea.dhx_cal_editor{width:100%;height:100%;border:0 solid #000;margin:0;padding:0;overflow:auto}div.dhx_menu_head{background-position:0 -43px;width:10px;height:10px;margin-left:5px;margin-top:1px;border:none;cursor:default}div.dhx_menu_icon{width:20px;height:20px;margin-left:-5px;margin-top:0;border:none;cursor:pointer}div.icon_details{background-position:0 0}div.icon_edit{background-position:-22px 0}div.icon_save{background-position:-84px -1px}div.icon_cancel{background-position:-62px 0}div.icon_delete{background-position:-42px 0}.dhx_month_link{position:absolute;box-sizing:border-box;-moz-box-sizing:border-box;text-align:right;cursor:pointer;padding-right:10px}.dhx_month_link a{color:#00f}.dhx_month_link a:hover{text-decoration:underline}.dhx_global_tip{font-family:Tahoma,Helvetica;text-align:center;font-size:20px;position:fixed;top:60px;right:20px;background-color:rgba(255,255,255,.7);color:#000;z-index:14;padding:20px 30px;width:190px}.dhx_global_tip div{font-size:30px}@media (-moz-touch-enabled){.dhx_cal_container{user-select:none;-moz-user-select:none}}.dhx_unselectable,.dhx_unselectable div{-webkit-user-select:none;-moz-user-select:none;-moz-user-select:-moz-none}.dhx_cal_light{-webkit-tap-highlight-color:transparent;font-size:8pt;position:absolute;z-index:15;width:580px;height:300px;box-shadow:5px 5px 5px #888}.dhx_mark{position:relative;top:3px;background-image:url(imgs/controls.gif);background-position:0 -43px;padding-left:10px}.dhx_ie6 .dhx_mark{background-position:6px -41px}.dhx_cal_light select{font-family:Tahoma;font-size:8pt;padding:2px;margin:0}.dhx_cal_ltitle{padding:2px 0 2px 5px;overflow:hidden;white-space:nowrap}.dhx_cal_ltitle span{white-space:nowrap}.dhx_cal_lsection{font-weight:700;padding:5px 0 3px 10px}.dhx_section_time{white-space:nowrap}.dhx_cal_lsection .dhx_fullday{float:right;margin-right:5px;font-size:12px;font-weight:400;line-height:20px;vertical-align:top;cursor:pointer}.dhx_cal_lsection{font-size:18px}.dhx_cal_ltext{padding:2px 0 2px 10px;overflow:hidden}.dhx_cal_ltext textarea{overflow:auto;height:100%;width:100%;outline:0!important;resize:none}.dhx_time{font-weight:700}.dhx_cal_larea{overflow:hidden;width:572px;height:1px}.dhx_btn_set{float:left}.dhx_btn_set div{float:left;vertical-align:middle;cursor:pointer}.dhx_save_btn{background-image:url(imgs/controls.gif);background-position:-84px 0;width:21px}.dhx_cancel_btn{background-image:url(imgs/controls.gif);background-position:-63px 0;width:20px}.dhx_delete_btn{background-image:url(imgs/controls.gif);background-position:-42px 0;width:20px}.dhx_cal_cover{width:100%;height:100%;position:absolute;z-index:14;top:0;left:0;background-color:#000;opacity:.1;filter:alpha(opacity=10)}.dhx_custom_button{padding:0 3px;font-family:Tahoma;font-size:8pt;font-weight:400;margin-right:5px;margin-top:0;cursor:pointer}.dhx_custom_button div{cursor:pointer;float:left;height:21px;line-height:21px;vertical-align:middle}.dhx_cal_light_wide .dhx_cal_larea{border-top-width:0}.dhx_cal_light_wide .dhx_cal_lsection{border:0;float:left;text-align:right;width:100px;height:20px;padding:5px 0 0 10px}.dhx_cal_light_wide .dhx_wrap_section{position:relative;overflow:hidden}.dhx_cal_light_wide .dhx_section_time{padding-top:2px!important;height:20px!important}.dhx_section_time{text-align:center}.dhx_cal_light_wide .dhx_cal_larea{width:730px}.dhx_cal_light_wide{width:738px}.dhx_cal_light_wide .dhx_section_time{background:0 0}.dhx_cal_light_wide .dhx_cal_checkbox label{padding-left:0}.dhx_cal_wide_checkbox input{margin-top:8px;margin-left:14px}.dhx_cal_light input{font-size:8pt}.dhx_cal_light_wide .dhx_cal_lsection .dhx_fullday{float:none;margin-right:0;cursor:pointer}.dhx_custom_button{float:right;height:21px}.dhx_cal_light_wide .dhx_custom_button{position:absolute;top:0;right:0}.dhx_cal_light_wide .dhx_repeat_right{margin-right:55px}.dhx_minical_popup{position:absolute;z-index:16;width:251px;height:175px}.dhx_scale_bar_header{position:absolute;border-bottom:1px dotted #8894A3;width:100%}.dhx_expand_icon{position:absolute;right:0;width:18px;height:18px;cursor:pointer;background-position:0 18px;z-index:4}.dhx_agenda_area{width:100%;overflow-y:auto}.dhx_agenda_line{clear:both;overflow:hidden}.dhx_agenda_line div{float:left;width:188px;text-align:center;overflow:hidden}.dhx_agenda_area .dhx_agenda_line div{border-right:0 dotted #8894A3}.dhx_v_border{position:absolute;left:187px;top:0;width:1px;height:100%}.dhx_agenda_line .dhx_event_icon{width:20px;border-width:0;background:url(imgs/icon.png) 5px 4px no-repeat;cursor:pointer}.dhx_agenda_line span{padding-left:5px}.dhx_year_week{position:relative}.dhx_year_month{height:18px;padding-top:3px;text-align:center;vertical-align:middle}.dhx_year_body .dhx_after .dhx_month_head,.dhx_year_body .dhx_after .dhx_month_head a,.dhx_year_body .dhx_before .dhx_month_head,.dhx_year_body .dhx_before .dhx_month_head a{color:#E2E3E6!important}.dhx_year_body .dhx_month_body{height:0;overflow:hidden}.dhx_month_head.dhx_year_event{background-color:#FFE763}.dhx_year_body .dhx_after .dhx_month_head,.dhx_year_body .dhx_before .dhx_month_head{cursor:default}.dhx_year_tooltip{border:1px solid #BBB;background-image:url(imgs/databg.png);position:absolute;z-index:12;width:300px;height:auto;font-family:Tahoma;font-size:8pt;overflow:hidden}.dhx_tooltip_line{line-height:20px;height:20px;overflow:hidden}.dhx_tooltip_line .dhx_event_icon{width:20px;height:20px;padding-right:10px;float:left;border-width:0;position:relative;background:url(imgs/icon.png) 5px 4px no-repeat;cursor:pointer}.dhx_tooltip_date{float:left;width:auto;padding-left:5px;text-align:center}.dhx_text_disabled{font-family:Tahoma;font-size:8pt}.dhx_mini_calendar{-moz-box-shadow:5px 5px 5px #888;-khtml-box-shadow:5px 5px 5px #888;-moz-user-select:-moz-none;-webkit-user-select:none;-user-select:none}.dhx_mini_calendar .dhx_month_head{cursor:pointer}.dhx_mini_calendar .dhx_calendar_click{background-color:#C2D5FC}.dhx_cal_navline div.dhx_minical_icon{cursor:pointer;background-image:url(imgs/calendar.gif)}.dhx_matrix_scell{height:100%}.dhx_matrix_cell,.dhx_matrix_scell{overflow:hidden;text-align:center;vertical-align:middle}.dhx_matrix_cell{background-color:#fff}.dhx_matrix_line{overflow:hidden}.dhx_matrix_cell div,.dhx_matrix_scell div{overflow:hidden;text-align:center;height:auto}.dhx_cal_lsection .dhx_readonly{font-size:9pt;font-size:8pt;padding:2px;color:#887A2E}.dhx_cal_event_line .dhx_event_resize{cursor:w-resize;position:absolute;top:0;width:4px;height:100%}.dhx_event_resize_start{left:0}.dhx_event_resize_end{right:0}.dhx_data_table.folder .dhx_matrix_cell,.dhx_matrix_scell.folder{background-color:#969394;cursor:pointer}.dhx_matrix_scell .dhx_scell_level0{padding-left:5px}.dhx_matrix_scell .dhx_scell_level1{padding-left:20px}.dhx_matrix_scell .dhx_scell_level2{padding-left:35px}.dhx_matrix_scell .dhx_scell_level3{padding-left:50px}.dhx_matrix_scell .dhx_scell_level4{padding-left:65px}.dhx_matrix_scell.folder{font-weight:700;text-align:left}.dhx_matrix_scell.folder .dhx_scell_expand{float:left;width:10px;padding-right:3px}.dhx_matrix_scell.folder .dhx_scell_name{float:left;width:auto}.dhx_matrix_scell.item .dhx_scell_name{padding-left:15px;text-align:left}.dhx_data_table.folder .dhx_matrix_cell{border-right:0}.dhx_section_timeline{overflow:hidden;padding:4px 0 2px 10px}.dhx_section_timeline select{width:552px}.dhx_map_area{width:100%;height:100%;overflow-y:auto;overflow-x:hidden}.dhx_map_line .dhx_event_icon{width:20px;border-width:0;background:url(imgs/icon.png) 5px 4px no-repeat;cursor:pointer}.dhx_map_line{clear:both;overflow:hidden}.dhx_map{position:absolute}.dhx_map_line .headline_description,.dhx_map_line div{float:left;border-right:1px dotted #8894A3;text-align:center;line-height:21px;overflow:hidden}.dhx_map_line .dhx_map_description{float:left;border-right:0 dotted #8894A3;text-align:center;line-height:21px;overflow:hidden}.dhx_map_line .line_description{float:left;border-right:1px dotted #8894A3;text-align:left;padding-left:5px;overflow:hidden}.dhx_map_area .dhx_map_line div{border-right:0 dotted #8894A3}.dhtmlXTooltip.tooltip{-moz-box-shadow:3px 3px 3px #888;-webkit-box-shadow:3px 3px 3px #888;-o-box-shadow:3px 3px 3px #888;box-shadow:3px 3px 3px #888;filter:progid:DXImageTransform.Microsoft.Shadow(color='#888888', Direction=135, Strength=5);background-color:#fff;cursor:default;padding:10px;position:fixed;z-index:9;font-family:Tahoma;opacity:1}.dhx_cal_checkbox label{padding-left:5px}.dhx_cal_light .radio{padding:2px 0 2px 10px}.dhx_cal_light .radio input,.dhx_cal_light .radio label{line-height:15px}.dhx_cal_light .radio input{vertical-align:middle;margin:0;padding:0}.dhx_cal_light .radio label{vertical-align:middle;padding-right:10px}.dhx_cal_light .combo{padding:4px}.dhx_cal_light_wide .combo>div,.dhx_cal_light_wide .dhx_combo_box{width:608px!important;left:10px}.dhx_wa_column{float:left}.dhx_wa_scale_bar{font-family:Tahoma;padding-left:10px;font-size:11px}.dhx_wa_day_data{background-color:#FCFEFC;overflow-y:auto}.dhx_wa_ev_body{font-size:12px;padding:5px 0 5px 7px}.dhx_wa_dnd{font-family:Tahoma;position:absolute;padding-right:7px;color:#887AE2!important;background-color:#FFE763!important}.dhx_cal_event_selected{background-color:#9cc1db;color:#fff}.dhx_second_scale_bar{padding-top:2px}.dhx_grid_area{width:100%;height:100%;overflow-y:auto;background-color:#FCFEFC}.dhx_grid_area table{border-collapse:collapse;border-spacing:0;width:100%;table-layout:fixed}.dhx_grid_area td{table-layout:fixed;text-align:center}.dhx_grid_line{height:21px;clear:both;overflow:hidden}.dhx_grid_line div{float:left;cursor:default;padding-top:0;padding-bottom:0;text-align:center;line-height:21px;overflow:hidden}.dhx_grid_area td,.dhx_grid_line div{padding-left:8px;padding-right:8px}.dhx_grid_area tr.dhx_grid_event{height:21px;overflow:hidden;margin:0 0 1px}.dhx_grid_area tr.dhx_grid_event td{border-bottom:1px solid #ECEEF4}.dhx_grid_area tr.dhx_grid_event:nth-child(2n) td,.dhx_grid_area tr.dhx_grid_event:nth-child(2n+1) td{border-bottom-width:0;border-bottom-style:none}.dhx_grid_area tr.dhx_grid_event:nth-child(2n){background-color:#ECEEF4}.dhx_grid_area .dhx_grid_dummy{table-layout:auto;margin:0!important;padding:0!important}.dhx_grid_v_border{position:absolute;border-right:1px solid #A4BED4;width:1px;height:100%}.dhx_grid_event_selected{background-color:#9cc1db!important;color:#fff!important}.dhx_grid_sort_desc .dhx_grid_view_sort{background-position:0 -55px}.dhx_grid_sort_asc .dhx_grid_view_sort{background-position:0 -66px}.dhx_grid_view_sort{width:10px;height:10px;position:absolute;border:none!important;top:5px;background-repeat:no-repeat;background-image:url(imgs/images.png)}.dhx_marked_timespan{position:absolute;width:100%;margin-left:0}.dhx_time_block{position:absolute;width:100%;background:silver;opacity:.4;filter:alpha(opacity=40);z-index:1}.dhx_time_block_reset{opacity:1;filter:alpha(opacity=100)}.dhx_mini_calendar .dhx_marked_timespan,.dhx_scheduler_month .dhx_marked_timespan{display:none}.dhx_now_time{width:100%;border-bottom:2px solid red;z-index:1}.dhx_scheduler_month .dhx_now_time{border-bottom:0;border-left:2px solid red}.dhx_matrix_now_time{border-left:2px solid red;z-index:1}.dhx_matrix_now_time,.dhx_now_time{opacity:.5}.dhx_cal_quick_info{position:absolute;z-index:8;background-color:#8e99ae;background-color:rgba(98,107,127,.5);padding-left:7px;transition:left .5s ease,right .5s;-moz-transition:left .5s ease,right .5s;-webkit-transition:left .5s ease,right .5s;-o-transition:left .5s ease,right .5s}.dhx_no_animate{transition:none;-moz-transition:none;-webkit-transition:none;-o-transition:none}.dhx_cal_quick_info.dhx_qi_left .dhx_qi_big_icon{float:right}.dhx_cal_qi_title{padding:5px 0 10px 5px;letter-spacing:1px}.dhx_cal_qi_tdate{font-size:14px}.dhx_cal_qi_tcontent{font-size:18px;font-weight:700}.dhx_cal_qi_content{background-color:#fefefe;font-size:14px;color:#444;width:275px;overflow:hidden}.dhx_qi_big_icon{margin:5px 9px 5px 0;min-width:60px;line-height:20px;vertical-align:middle;padding:5px 10px 5px 5px;cursor:pointer;background-color:#fefefe}.dhx_cal_qi_controls div{float:left;height:20px;text-align:center;line-height:20px}.dhx_qi_big_icon .dhx_menu_icon{margin:0 8px 0 0}.dhx_drag_marker{width:100%;filter:alpha(Opacity=50);opacity:.5;background-color:#FFE763;position:absolute;box-sizing:border-box!important;border-top:1px solid #B6B6B6;border-bottom:1px solid #b6b6b6}.dhx_focus_slot{background:#FFE763;position:absolute;pointer-events:none;opacity:.3}.dhx_cal_container :focus{outline-style:auto}.dhtmlx_modal_box *,.dhx_cal_data,.dhx_cal_data div,.dhx_cal_data table *,.dhx_cal_header,.dhx_cal_header div,.dhx_cal_light .dhx_cal_lsection,.dhx_cal_light .dhx_wrap_section,.dhx_cal_navline div,.dhx_cal_quick_info,.dhx_cal_quick_info div,.dhx_multi_day,.dhx_multi_day div,.dhx_tooltip_line div{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}.dhx_cal_data div.dhx_scale_hour,.dhx_cal_data table .dhx_matrix_cell,.dhx_cal_data table .dhx_matrix_scell{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.dhx_cal_data table{border-collapse:separate}.dhx_cal_light .dhx_cal_radio label{margin-bottom:0}.dhx_cal_event div{line-height:normal}.dhx_cal_container{font-size:8pt;position:relative;overflow:hidden}.dhx_cal_container div{-moz-user-select:none;-moz-user-select:-moz-none}.dhx_cal_navline{height:20px;position:absolute;z-index:3;width:750px;color:#2F3A48}.dhx_cal_navline div{position:absolute;white-space:nowrap}.dhx_cal_navline .dhx_cal_date{padding-top:1px}.dhx_cal_button .dhx_left_bg{width:1px;overflow:hidden;height:17px;z-index:5;top:0}.dhx_cal_prev_button{background-image:url(imgs/buttons.png);background-position:0 0;cursor:pointer}.dhx_cal_next_button{background-image:url(imgs/buttons.png);background-position:-30px 0;cursor:pointer}.dhx_cal_today_button{background-image:url(imgs/buttons.png);background-position:-60px 0;cursor:pointer;text-align:center}.dhx_cal_tab{text-align:center;cursor:pointer;background-color:#D8E1EA;-webkit-border-top-left-radius:4px;-webkit-border-top-right-radius:4px;-moz-border-radius-topleft:4px;-moz-border-radius-topright:4px;border-top-left-radius:4px;border-top-right-radius:4px}.dhx_cal_tab.active{cursor:default}.dhx_cal_header{position:absolute;left:10px;top:23px;width:750px;z-index:2;overflow:hidden;color:#2F3A48}.dhx_cal_data{-webkit-tap-highlight-color:transparent;position:absolute;top:44px;width:600px;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;-ms-touch-action:pan-y}.dhx_cal_event,.dhx_cal_event_clear,.dhx_cal_event_line{-ms-touch-action:none}.dhx_scale_bar{position:absolute;text-align:center}.dhx_scale_holder,.dhx_scale_holder_now{position:absolute}.dhx_scale_hour{height:41px;width:50px;text-align:center;line-height:40px;overflow:hidden}.dhx_month_head{padding-right:5px;text-align:right}.dhx_scale_ignore{display:none}.dhx_cal_drag{position:absolute;z-index:13;background-color:#FFE763;border:1px solid #B7A543;opacity:.5;filter:alpha(opacity=50)}.dhx_loading{position:absolute;width:128px;height:15px;background-image:url(imgs/loading.gif);z-index:13}.dhx_multi_day,.dhx_multi_day_icon{background-color:#E1E6FF;background-repeat:no-repeat;border-right:1px dotted #8894A3}.dhx_multi_day{position:absolute}.dhx_multi_day_icon,.dhx_multi_day_icon_small{background-position:center center;background-repeat:no-repeat}.dhtmlxLayoutPolyContainer_dhx_skyblue .dhx_cal_container{background-color:#d0e5ff}.dhx_form_repeat,.dhx_form_repeat input{padding:0 0 0 5px;margin:0;font-family:Tahoma,Verdana;font-size:11px;line-height:24px}.dhx_form_repeat{overflow:hidden}.dhx_cal_light_wide .dhx_form_repeat{background-color:transparent}.dhx_repeat_center,.dhx_repeat_divider,.dhx_repeat_left,.dhx_repeat_right{height:115px;-moz-box-sizing:border-box;box-sizing:border-box}.dhx_repeat_center,.dhx_repeat_left{padding:10px 0 0 10px;float:left}.dhx_repeat_left{width:105px}.dhx_repeat_center{width:345px;padding-top:22px}.dhx_repeat_divider{float:left;width:1px}.dhx_repeat_right{float:right;width:173px;padding:17px 3px 0 10px}input.dhx_repeat_text{height:16px;width:27px;margin:0 4px;line-height:18px;padding:0 0 0 2px}.dhx_form_repeat select{height:20px;width:87px;padding:0 0 0 2px;margin:0 4px}input.dhx_repeat_date{height:18px;width:80px;padding:0 0 0 2px;margin:0 4px;background-repeat:no-repeat;background-position:64px 0;border:1px solid #7f9db9;line-height:18px}input.dhx_repeat_radio{margin-right:4px}input.dhx_repeat_checkbox{margin:4px 4px 0 0}.dhx_repeat_days td{padding-right:5px}.dhx_repeat_days label{font-size:10px}.dhx_custom_button{width:90px;-webkit-border-radius:4px;-moz-border-radius:4px;-ms-border-radius:4px;-o-border-radius:4px}.dhx_custom_button_recurring{background-position:-5px 20px;width:20px;margin-right:10px}.dhx_cal_light_rec{width:640px}.dhx_cal_light_rec .dhx_cal_larea{width:632px}.dhx_cal_light_rec.dhx_cal_light_wide{width:816px}.dhx_cal_light_rec.dhx_cal_light_wide .dhx_cal_larea{width:808px}.dhx_cal_event .dhx_title{border-width:1px 1px 0;-webkit-border-top-left-radius:1px;-webkit-border-top-right-radius:1px;-moz-border-radius-topleft:1px;-moz-border-radius-topright:1px;border-top-left-radius:1px;border-top-right-radius:1px;font-family:"Segoe UI",Arial;font-weight:700;font-size:12px;height:14px;line-height:14px}.dhx_cal_event .dhx_body,.dhx_cal_event.dhx_cal_select_menu .dhx_body{padding-bottom:8px;-webkit-border-bottom-right-radius:1px;-webkit-border-bottom-left-radius:1px;-moz-border-radius-bottomright:1px;-moz-border-radius-bottomleft:1px;border-bottom-right-radius:1px;border-bottom-left-radius:1px}.dhx_cal_event .dhx_header,.dhx_cal_event.dhx_cal_select_menu .dhx_footer{display:none}.dhx_cal_event .dhx_footer{height:15px;border:0;background-color:transparent!important;margin-top:-11px}.dhx_cal_event .dhx_footer:hover{background:url(imgs_flat/resizing.png) center center no-repeat}.dhx_cal_event .dhx_body,.dhx_cal_event .dhx_header,.dhx_cal_event .dhx_title{background-color:#5B9BE0;border-color:transparent;color:#fff}.dhx_cal_event,.dhx_cal_event_line{-webkit-box-shadow:0 0 1px #FFF;-moz-box-shadow:0 0 1px #FFF;box-shadow:0 0 1px #FFF}.dhx_cal_event.dhx_cal_editor{-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;border:1px solid transparent}.dhx_cal_editor{font-size:12px;font-family:"Segoe UI",Arial}div.dhx_menu_head,div.dhx_menu_icon{background-image:url(imgs_flat/controls.png)}.dhx_cal_event_line{border:1px solid transparent;background-color:#5B9BE0;color:#FFF;height:17px;line-height:16px;-webkit-border-radius:1px;-moz-border-radius:1px;border-radius:1px}.dhx_cal_event_line:hover div{background:url(imgs_flat/resize_dots.png) repeat-y}.dhx_cal_event_line_start{-webkit-border-top-left-radius:1px;-webkit-border-bottom-left-radius:1px;-moz-border-radius-topleft:1px;-moz-border-radius-bottomleft:1px;border-top-left-radius:1px;border-bottom-left-radius:1px}.dhx_cal_event_line_end{-webkit-border-top-right-radius:1px;-webkit-border-bottom-right-radius:1px;-moz-border-radius-topright:1px;-moz-border-radius-bottomright:1px;border-top-right-radius:1px;border-bottom-right-radius:1px}.dhx_cal_event .dhx_body,.dhx_cal_event_line{font-size:12px;font-family:"Segoe UI",Arial}.dhx_cal_event:hover .dhx_footer{background:url(imgs_flat/resizing.png) center center no-repeat}.dhx_cal_container{background-color:#fff;font-family:"Segoe UI",Arial}.dhx_cal_data{border-top:1px solid #CECECE}.dhx_scale_holder{background-image:url(imgs_flat/databg.png);border-right:1px solid #CECECE}.dhx_scale_holder_now{background-image:url(imgs_flat/databg_now.png);border-right:1px solid #CECECE}.dhx_scale_hour{border-bottom:1px solid #CECECE;background-color:#fff;font:11px/44px Arial;font-family:"Segoe UI",Arial;font-weight:lighter;color:#767676}.dhx_scale_h{display:inline-block;font-size:22px}.dhx_scale_m{display:inline-block;font-size:11px;line-height:35px;vertical-align:top}.dhx_cal_header{border:1px solid #CECECE;border-left:0;border-bottom:0}.dhx_scale_bar{border-left:1px solid #CECECE;font:12px/16px "Segoe UI",Arial;color:#767676;line-height:30px;padding-top:2px;background-color:#fff}.dhx_scale_bar>a{color:#5780AD;text-decoration:none}.dhx_scale_bar>a:hover{text-decoration:underline}.dhx_month_head>a{color:#5780AD;text-decoration:none}.dhx_month_head>a:hover{text-decoration:underline}.dhx_cal_navline div{top:14px}.dhx_cal_date,.dhx_cal_next_button,.dhx_cal_prev_button,.dhx_cal_tab,.dhx_cal_today_button{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0;border:none;color:#454544;height:30px;line-height:30px;background:0 0;font-family:"Segoe UI",Arial;font-weight:lighter}.dhx_cal_navline .dhx_cal_date{border:0;color:#454544;font-family:"Segoe UI",Arial;font-weight:lighter;font-size:22px;text-align:center;top:14px;position:absolute;left:0;width:100%;z-index:-1}.dhx_cal_today_button{background:0 0;color:#5780AD;font-size:13px;font-weight:bolder;left:auto;right:123px;text-decoration:none;width:80px}.dhx_cal_next_button,.dhx_cal_prev_button{left:auto;width:46px}.dhx_cal_prev_button{right:61px;background:url(imgs_flat/arrow_left.png) center center no-repeat}.dhx_cal_next_button{right:14px;background:url(imgs_flat/arrow_right.png) center center no-repeat}.dhx_cal_tab{color:#5780AD;font-size:13px;font-weight:bolder;padding-top:0;text-decoration:none;width:60px}.dhx_cal_tab:hover,.dhx_cal_today_button:hover{text-decoration:underline}.dhx_cal_tab.active{background-color:#5780AD;border:none;color:#FFF;font-family:"Segoe UI",Arial;font-weight:lighter;text-decoration:none}.dhx_cal_tab_standalone{padding:0 5px}.dhx_multi_day,.dhx_multi_day_icon,.dhx_multi_day_icon_small{background-color:#fff}.dhx_multi_day{border-top:1px solid #CECECE}.dhx_multi_day_icon,.dhx_multi_day_icon_small{border-bottom:1px solid #CECECE;border-right:1px solid #CECECE}.dhx_multi_day_icon_small{background-image:url(imgs_flat/clock.png)}.dhx_multi_day_icon{background-image:url(imgs_flat/clock_big.gif)}.dhx_month_body,.dhx_month_head{background-color:#fff}.dhx_after .dhx_month_body,.dhx_after .dhx_month_head,.dhx_before .dhx_month_body,.dhx_before .dhx_month_head{background-color:#F7F7F7}.dhx_month_head{height:21px;padding-top:0;font:12px/21px "Segoe UI",Arial;color:#5780AD;border-right:1px solid #CECECE}.dhx_after .dhx_month_head,.dhx_before .dhx_month_head{color:#bbb}.dhx_month_body{border-right:1px solid #CECECE;border-bottom:1px solid #CECECE}.dhx_now .dhx_month_body,.dhx_now .dhx_month_head{background-color:#FFF3A1;font-weight:400}.dhx_cal_event_clear{color:#0E64A0}.dhx_cal_larea{margin-left:0}.dhx_cal_light_wide .dhx_cal_larea{margin-left:3px}.dhx_cal_light_wide .dhx_wrap_section{padding:5px 0}.dhx_cal_larea,.dhx_cal_light,.dhx_cal_light_wide .dhx_wrap_section,.dhx_cal_lsection,.dhx_cal_ltext textarea,.dhx_wrap_section{background-color:#fff;font-family:"Segoe UI",Arial}.dhx_cal_light input,.dhx_cal_light_wide .dhx_cal_lsection .dhx_fullday,.dhx_cal_lsection,.dhx_cal_lsection .dhx_fullday{color:#444;font-family:"Segoe UI",Arial}.dhx_cal_light_wide .dhx_wrap_section{border-top:0;border-bottom:1px solid #CECECE}.dhx_cal_larea{border:1px solid transparent}.dhx_cal_light,.dhx_cal_light select,.dhx_cal_ltext textarea{color:#2E2E2E}.dhx_cal_light{border:none;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.dhx_cal_light_wide .dhx_cal_lsection,.dhx_cal_light_wide .dhx_cal_lsection .dhx_fullday{font-family:"Segoe UI",Arial;font-size:13px;font-weight:700}.dhx_section_time{background-color:transparent}.dhx_btn_set div:first-child,.dhx_cancel_btn,.dhx_delete_btn,.dhx_save_btn{display:none}.dhx_btn_set,.dhx_btn_set div{height:30px;padding:0 20px;line-height:30px}.dhx_btn_set{margin:12px 0 0;padding:0;font-size:13px;color:#444;font-weight:400;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.dhx_left_btn_set{margin-left:20px}.dhx_right_btn_set{margin-right:20px}.dhx_save_btn_set{border:none;color:#FFF;background-color:#5B9BE0}.dhx_cancel_btn_set{background-color:#FE7510;color:#FFF}.dhx_delete_btn_set{border:1px solid #888;color:#444}.dhx_cal_ltitle{height:30px;line-height:30px;border-bottom:1px solid #CECECE}.dhx_cal_ltitle span{float:left}.dhx_cal_light .dhx_title{font-size:13px;padding-left:13px}.dhx_mark{display:none}.dhx_time{font-size:12px;padding-left:10px}.dhx_close_icon{float:right;width:9px;height:9px;background:url(imgs_flat/close_icon.png) center center no-repeat;padding:10px;margin-top:1px}.dhx_cal_light_wide .dhx_cal_ltext.dhx_cal_template{line-height:22px}.dhx_cal_ltext textarea{line-height:20px;box-sizing:border-box;-moz-box-sizing:border-box;border:1px solid #CECECE;background-color:#F9F9F9}.dhtmlx_modal_box{border:none;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0;background:#fff;font-family:"Segoe UI",Arial;width:330px}.dhtmlx_popup_text{font-size:16px}.dhtmlx_popup_controls{padding-bottom:9px}.dhtmlx_popup_button,.dhtmlx_popup_button div,.dhtmlx_popup_button div:active,.dhtmlx_popup_button:active{color:#444;background:#fff;box-shadow:none;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.dhtmlx_popup_button{border:1px solid #888}.dhtmlx_popup_button div{border:none}.dhtmlx_popup_button.dhtmlx_ok_button{border-color:#5B9BE0;background-color:#5B9BE0;color:#FFF}.dhtmlx_popup_button.dhtmlx_cancel_button{border-color:#FE7510;background-color:#FE7510;color:#FFF}.dhtmlx_popup_button.dhtmlx_cancel_button div,.dhtmlx_popup_button.dhtmlx_ok_button div{background:0 0;color:#FFF}.dhx_cal_container.dhx_mini_calendar{box-sizing:border-box;border:none;box-shadow:0 2px 10px 0 #AAA;border-radius:0}.dhx_mini_calendar .dhx_year_month{border:1px solid #CECECE;font-family:"Segoe UI",Arial}.dhx_mini_calendar .dhx_month_body,.dhx_mini_calendar .dhx_month_head,.dhx_mini_calendar .dhx_scale_bar,.dhx_mini_calendar .dhx_year_body,.dhx_mini_calendar .dhx_year_month{border-color:transparent}.dhx_mini_calendar .dhx_year_body{padding-top:1px}.dhx_mini_calendar .dhx_scale_bar{border-width:0}.dhx_mini_calendar .dhx_year_week{border-bottom:1px solid #CECECE;padding-top:1px}.dhx_mini_calendar .dhx_month_head{padding-right:0;text-align:center}.dhx_mini_calendar .dhx_cal_next_button,.dhx_mini_calendar .dhx_cal_prev_button{border:0;height:20px}.dhx_cal_navline div.dhx_minical_icon{left:210px;top:14px;width:30px;height:30px;background:url(imgs_flat/calendar.gif) 3px 5px no-repeat}.dhx_cal_event_line .dhx_event_resize{background:0 0}.dhx_cal_event_line .dhx_event_resize:hover{background:url(imgs_flat/resize_dots.png) repeat-y}.dhx_matrix_cell,.dhx_matrix_scell{border-bottom:1px solid #CECECE;border-right:1px solid #CECECE}.dhx_cal_header div div{border-left:1px solid #CECECE}.dhx_matrix_scell{font-size:13px}.dhx_second_scale_bar{border-bottom:1px solid #CECECE}.dhx_repeat_divider{border-left:1px solid #CECECE}.dhx_custom_button{background-color:#fff;border:1px solid #a4a4a4;border-radius:0;color:#444}.dhx_cal_light_wide .dhx_custom_button{margin-top:6px}.dhx_custom_button_recurring{background-image:url(imgs_flat/but_repeat.gif)}input.dhx_repeat_date{border-color:#a8a8a8}.dhx_form_repeat{background-color:transparent}.dhx_agenda_line div,.dhx_v_border{border-right:1px solid #CECECE}.dhx_cal_header .dhx_agenda_line,.dhx_cal_header .dhx_agenda_line div{height:100%;line-height:35px}.dhx_agenda_area,.dhx_scheduler_agenda .dhx_cal_data{background-image:url(imgs_flat/agenda_bg.gif)}.dhx_agenda_line{height:26px}.dhx_agenda_line div,.dhx_agenda_line span{line-height:26px}.dhx_agenda_line .dhx_event_icon{background-position:5px 6px}.dhx_year_month{border:1px solid #CECECE}.dhx_scale_bar_last{border-right:1px solid #CECECE}.dhx_year_body{border-left:1px solid #CECECE}.dhx_expand_icon{top:-3px;background-image:url(imgs_flat/collapse_expand_icon.gif)}.dhx_scale_bar .dhx_cal_next_button,.dhx_scale_bar .dhx_cal_prev_button{width:20px;height:100%;top:0!important;border:0}.dhx_scale_bar .dhx_cal_next_button{right:1px!important;border-left:1px solid #CECECE}.dhx_scale_bar .dhx_cal_prev_button{left:1px!important;border-right:1px solid #CECECE}.dhx_map_line .headline_date,.dhx_map_line .headline_description{border:0}.dhx_map_line .headline_date{border-right:1px solid #CECECE}.dhx_map_line.highlight{background-color:#b3daff}.dhx_cal_header .dhx_map_line{height:100%}.dhx_cal_header .dhx_map_line .headline_date,.dhx_cal_header .dhx_map_line .headline_description{height:100%;line-height:35px}.dhx_map_area{background-image:url(imgs_flat/agenda_bg.gif)}.dhx_map_line{height:26px}.dhx_map_line .line_description,.dhx_map_line div{line-height:26px;height:26px}.dhx_map_line .dhx_event_icon{background-position:5px 6px}.dhx_cal_data div.dhx_map_area,.dhx_cal_header div.dhx_map_line{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;border-right:1px solid #cecece}.dhtmlXTooltip.tooltip{border-left:1px solid #CECECE;border-top:1px solid #CECECE;color:#747473;font-size:12px;line-height:16px}.dhx_wa_scale_bar{border-top:1px solid #CECECE;border-bottom:1px solid #CECECE}.dhx_wa_column_last .dhx_wa_day_cont{border-left:1px solid #CECECE}.dhx_wa_ev_body{border-bottom:1px solid #CECECE}.dhx_wa_scale_bar{background-color:#f0ede7}.dhx_wa_ev_body.dhx_cal_event_selected{background-color:#fff3a1;color:#362d26}.dhx_wa_dnd{background-color:#fddb93!important;color:#747473!important;border:1px solid #ccb177}.dhx_text_disabled{color:#2E2E2E}.dhx_cal_ltext .dhx_text_disabled{line-height:22px}.dhx_grid_v_border{border-right-color:#CECECE}.dhx_cal_header .dhx_grid_line,.dhx_cal_header .dhx_grid_line div{height:100%;line-height:35px}.dhx_cal_header .dhx_grid_line div.dhx_grid_view_sort{height:10px;top:12px}.dhx_month_body_border,.dhx_month_head_border,.dhx_scale_bar_border,.dhx_scale_hour_border{border-left:1px solid #CECECE}.dhx_cal_quick_info{background:rgba(204,204,204,.8);border:none;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0;font-family:"Segoe UI",Arial;width:280px}.dhx_cal_qi_title{color:#000}.dhx_cal_qi_tdate{color:#444}.dhx_cal_qi_content{background:0 0;border:none;padding:10px 8px}.dhx_qi_big_icon{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0;border:none;color:#FFF;float:none;font-size:13px}.dhx_qi_big_icon .dhx_menu_icon{display:none!important}.dhx_cal_quick_info .icon_details{background:#5B9BE0;margin-left:100px}.dhx_cal_quick_info .icon_details div{padding-left:12px}.dhx_cal_quick_info .icon_delete{background:#FE7510}.dhx_cal_quick_info .icon_delete div{padding-left:12px}.dhx_cal_navline .dhx_cal_export{width:32px;height:32px;margin:2px;cursor:pointer;top:12px}.dhx_cal_navline .dhx_cal_export.pdf{left:auto;right:249px;background-image:url(imgs_flat/export_pdf.png)}.dhx_cal_navline .dhx_cal_export.ical{left:auto;right:210px;background-image:url(imgs_flat/export_ical.png)}.dhx_mini_calendar{font-family:"Segoe UI",Arial;padding:5px}.dhx_mini_calendar .dhx_calendar_click,.dhx_mini_calendar .dhx_year_event{border-radius:0}.dhx_mini_calendar .dhx_month_head{color:#363636;font-family:"Segoe UI",Arial;font-size:13px;margin:2px}.dhx_mini_calendar .dhx_year_month{color:#454544;line-height:20px;height:25px;font-size:20px;font-weight:lighter}.dhx_mini_calendar .dhx_cal_next_button,.dhx_mini_calendar .dhx_cal_prev_button{top:8px!important}.dhx_mini_calendar .dhx_scale_bar{font-family:"Segoe UI",Arial;font-size:11px}
\ No newline at end of file diff --git a/codebase/dhtmlxscheduler_glossy.css b/codebase/dhtmlxscheduler_glossy.css index 4b1af58..d72bce6 100644 --- a/codebase/dhtmlxscheduler_glossy.css +++ b/codebase/dhtmlxscheduler_glossy.css @@ -1,9 +1,9 @@ /* @license -dhtmlxScheduler v.4.3.1 Stardard +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. (c) Dinamenta, UAB. */ -.dhtmlx_message_area{position:fixed;right:5px;width:250px;z-index:1000}.dhtmlx-info{min-width:120px;font-family:Tahoma;z-index:10000;overflow:hidden;margin:5px 5px 10px;-webkit-transition:all .5s ease;-moz-transition:all .5s ease;-o-transition:all .5s ease;transition:all .5s ease}.dhtmlx-info.hidden{height:0;padding:0;border-width:0;margin:0;overflow:hidden}.dhtmlx_modal_box{overflow:hidden;display:inline-block;min-width:300px;width:300px;text-align:center;position:fixed;background:-webkit-linear-gradient(top,#fff 1%,#d0d0d0 99%);background:-moz-linear-gradient(top,#fff 1%,#d0d0d0 99%);box-shadow:0 0 14px #888;font-family:Tahoma;z-index:20000;border-radius:6px;border:1px solid #fff}.dhtmlx_popup_title{border-top-left-radius:5px;border-top-right-radius:5px;border-width:0;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAoCAMAAAAIaGBFAAAAhFBMVEVwcHBubm5sbGxqampoaGhmZmZlZWVjY2NhYWFfX19dXV1bW1taWlpYWFhWVlZUVFRSUlJRUVFPT09NTU1LS0tJSUlHR0dGRkZERERCQkJAQEA+Pj49PT09PT0+Pj5AQEBBQUFDQ0NERERGRkZHR0dJSUlKSkpMTExMTEw5OTk5OTk5OTkny8YEAAAAQklEQVQImQXBCRJCAAAAwKVSQqdyjSPXNP7/QLsIhA6OTiJnF7GrRCpzc/fw9PKW+/gqlCq1RqvTG/yMJrPF6m/bAVEhAxxnHG0oAAAAAElFTkSuQmCC);background:-webkit-linear-gradient(top,#707070 1%,#3d3d3d 70%,#4c4c4c 97%,#393939 97%);background:-moz-linear-gradient(top,#707070 1%,#3d3d3d 70%,#4c4c4c 97%,#393939 97%)}.dhtmlx-info,.dhtmlx_button,.dhtmlx_popup_button{user-select:none;-webkit-user-select:none;-moz-user-select:-moz-none;cursor:pointer}.dhtmlx_popup_text{overflow:hidden}.dhtmlx_popup_controls{border-radius:6px;padding:5px}.dhtmlx_button,.dhtmlx_popup_button{height:30px;line-height:30px;display:inline-block;margin:0 5px;border-radius:6px;color:#FFF}.dhtmlx_popup_button{min-width:120px}div.dhx_modal_cover{background-color:#000;cursor:default;filter:alpha(opacity=20);opacity:.2;position:fixed;z-index:19999;left:0;top:0;width:100%;height:100%;border:none;zoom:1}.dhtmlx-info img,.dhtmlx_modal_box img{float:left;margin-right:20px}.dhtmlx-alert-error .dhtmlx_popup_title,.dhtmlx-confirm-error .dhtmlx_popup_title{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAsCAIAAAArRUU2AAAATklEQVR4nIWLuw2AMBBDjVuQiBT2oWbRDATrnB0KQOJoqPzRe3BrHI6dcBASYREKovtK6/6DsDOX+stN+3H1YX9ciRgnYq5EWYhS2dftBIuLT4JyIrPCAAAAAElFTkSuQmCC)}.dhtmlx-alert-error,.dhtmlx-confirm-error{border:1px solid red}.dhtmlx_button,.dhtmlx_popup_button{box-shadow:0 0 4px #888;border:1px solid #838383}.dhtmlx_button input,.dhtmlx_popup_button div{border:1px solid #FFF;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAeCAMAAADaS4T1AAAAYFBMVEVwcHBtbW1ra2toaGhmZmZjY2NhYWFeXl5cXFxaWlpXV1dVVVVSUlJQUFBNTU1LS0tJSUlGRkZERERBQUE/Pz88PDw9PT0+Pj5AQEBCQkJDQ0NFRUVHR0dISEhKSkpMTEzqthaMAAAAMklEQVQImQXBhQ2AMAAAsOIMlwWH/8+kRSKVyRVKlVrQaHV6g9FktlhFm93hdLk9Xt8PIfgBvdUqyskAAAAASUVORK5CYII=);background:-webkit-linear-gradient(top,#707070 1%,#3d3d3d 70%,#4c4c4c 99%);background:-moz-linear-gradient(top,#707070 1%,#3d3d3d 70%,#4c4c4c 99%);border-radius:6px;font-size:15px;font-weight:400;-moz-box-sizing:content-box;box-sizing:content-box;color:#fff;padding:0;margin:0;vertical-align:top;height:28px;line-height:28px}.dhtmlx_button input:active,.dhtmlx_button input:focus,.dhtmlx_popup_button div:active,.dhtmlx_popup_button div:focus{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAeCAMAAADaS4T1AAAAXVBMVEVwcHBubm5tbW1sbGxra2tpaWloaGhnZ2dmZmZlZWVjY2NiYmJhYWFgYGBfX19dXV1cXFxbW1taWlpZWVlXV1dWVlZVVVVUVFRTU1NRUVFQUFBPT09OTk5NTU1LS0tT9SY0AAAAMUlEQVQImQXBhQGAMAAAIGxnx2z9/00BiVQmVyhVakGj1ekNRpPZYhVtdofT5fZ4fT8hpwG05JjexgAAAABJRU5ErkJggg==);background:-webkit-linear-gradient(top,#707070 1%,#4c4c4c 99%);background:-moz-linear-gradient(top,#707070 1%,#4c4c4c 99%)}.dhtmlx_popup_title{color:#fff;text-shadow:1px 1px #000;height:40px;line-height:40px;font-size:20px}.dhtmlx_popup_text{margin:15px 15px 5px;font-size:14px;color:#000;min-height:30px;border-radius:6px}.dhtmlx-error,.dhtmlx-info{font-size:14px;color:#000;box-shadow:0 0 10px #888;padding:0;background-color:#FFF;border-radius:3px;border:1px solid #fff}.dhtmlx-info div{padding:5px 10px;background-color:#fff;border-radius:3px;border:1px solid #B8B8B8}.dhtmlx-error{background-color:#d81b1b;border:1px solid #ff3c3c;box-shadow:0 0 10px #000}.dhtmlx-error div{background-color:#d81b1b;border:1px solid #940000;color:#FFF}.dhx_cal_event .dhx_body,.dhx_cal_event .dhx_footer,.dhx_cal_event .dhx_header,.dhx_cal_event .dhx_title{background-color:#FFE763;border:1px solid #B7A543;color:#887A2E;overflow:hidden;width:100%;font-family:Tahoma;font-size:8pt}.dhx_move_denied .dhx_cal_event .dhx_header,.dhx_move_denied .dhx_cal_event .dhx_title{cursor:default}.dhx_cal_event .dhx_header{height:1px;margin-left:1px;border-width:1px 1px 0;cursor:pointer}.dhx_cal_event .dhx_title{height:12px;border-width:0 1px 1px;border-bottom-style:dotted;font-size:7pt;font-weight:700;text-align:center;background-position:right;background-repeat:no-repeat;cursor:pointer}.dhx_cal_event .dhx_body,.dhx_cal_event.dhx_cal_select_menu .dhx_body{border-width:0 1px 1px;padding:5px}.dhx_resize_denied,.dhx_resize_denied .dhx_event_resize{cursor:default!important}.dhx_cal_event .dhx_event_resize{cursor:s-resize}.dhx_cal_event .dhx_footer,.dhx_cal_event .dhx_select_menu_footer{height:1px;margin-left:2px;border-width:0 1px 1px;position:relative}.dhx_cal_event_line{background-color:#FFE763;border-radius:3px;font-family:Tahoma;font-size:8pt;height:13px;padding-left:10px;cursor:pointer;overflow:hidden}.dhx_cal_event_clear{font-family:Tahoma;font-size:8pt;height:13px;padding-left:2px;white-space:nowrap;overflow:hidden;cursor:pointer}.dhx_in_move{background-color:#FFFF80}.dhx_cal_event.dhx_cal_editor{border:1px solid #B7A543;border-top-style:dotted;z-index:999;position:absolute;overflow:hidden}textarea.dhx_cal_editor{width:100%;height:100%;border:0 solid #000;margin:0;padding:0;overflow:auto}div.dhx_menu_head{background-position:0 -43px;width:10px;height:10px;margin-left:5px;margin-top:1px;cursor:default}div.dhx_menu_icon{width:20px;height:20px;margin-left:-5px;margin-top:0;cursor:pointer}div.icon_details{background-position:0 0}div.icon_edit{background-position:-22px 0}div.icon_save{background-position:-84px -1px}div.icon_cancel{background-position:-62px 0}div.icon_delete{background-position:-42px 0}.dhx_month_link{position:absolute;box-sizing:border-box;-moz-box-sizing:border-box;text-align:right;cursor:pointer;padding-right:10px}.dhx_month_link a{color:#00f}.dhx_month_link a:hover{text-decoration:underline}.dhx_global_tip{font-family:Tahoma,Helvetica;text-align:center;font-size:20px;position:fixed;top:60px;right:20px;background-color:rgba(255,255,255,.7);color:#000;z-index:10000;padding:20px 30px;width:190px}.dhx_global_tip div{font-size:30px}@media (-moz-touch-enabled){.dhx_cal_container{user-select:none;-moz-user-select:none}}.dhx_unselectable,.dhx_unselectable div{-webkit-user-select:none;-moz-user-select:none;-moz-user-select:-moz-none}.dhx_cal_light{-webkit-tap-highlight-color:transparent;border-radius:5px;font-family:Tahoma;font-size:8pt;position:absolute;z-index:10001;width:580px;height:300px;box-shadow:5px 5px 5px #888}.dhx_mark{position:relative;top:3px;background-image:url(imgs/controls.gif);background-position:0 -43px;padding-left:10px}.dhx_ie6 .dhx_mark{background-position:6px -41px}.dhx_cal_light select{font-family:Tahoma;font-size:8pt;padding:2px;margin:0}.dhx_cal_ltitle{padding:2px 0 2px 5px;overflow:hidden;white-space:nowrap}.dhx_cal_ltitle span{white-space:nowrap}.dhx_cal_lsection{background-color:#DBCF8C;font-weight:700}.dhx_section_time{background-color:#DBCF8C;white-space:nowrap}.dhx_cal_lsection .dhx_fullday{float:right;margin-right:5px;font-weight:400;line-height:20px;vertical-align:top;cursor:pointer}.dhx_cal_lsection{font-family:Arial}.dhx_cal_ltext{padding:2px 0 2px 10px;overflow:hidden}.dhx_cal_ltext textarea{overflow:auto;border:none;height:100%;width:100%;outline:0!important;resize:none}.dhx_time{font-weight:700}.dhx_cal_light .dhx_title{padding-left:10px}.dhx_cal_larea{overflow:hidden;margin-left:3px;width:572px;height:1px}.dhx_btn_set{padding:5px 10px 0;float:left}.dhx_btn_set div{float:left;height:21px;line-height:21px;vertical-align:middle;cursor:pointer}.dhx_save_btn{background-position:-84px 0;width:21px}.dhx_cancel_btn{background-position:-63px 0;width:20px}.dhx_delete_btn{background-position:-42px 0;width:20px}.dhx_cal_cover{width:100%;height:100%;position:absolute;z-index:10000;top:0;left:0;background-color:#000;opacity:.1;filter:alpha(opacity=10)}.dhx_custom_button{padding:0 3px;font-family:Tahoma;font-size:8pt;background-color:#FFE763;font-weight:400;margin-right:5px;cursor:pointer}.dhx_custom_button div{cursor:pointer;float:left;height:21px;line-height:21px;vertical-align:middle}.dhx_cal_light_wide .dhx_cal_larea{border-top-width:0}.dhx_cal_light_wide .dhx_cal_lsection{border:0;float:left;text-align:right;width:100px;height:20px;padding:5px 0 0 10px}.dhx_cal_light_wide .dhx_wrap_section{position:relative;background-color:#DBCF8C;overflow:hidden}.dhx_cal_light_wide .dhx_section_time{padding-top:2px!important;height:20px!important}.dhx_cal_light_wide .dhx_cal_larea{width:730px}.dhx_cal_light_wide{width:738px}.dhx_cal_light_wide .dhx_section_time{background:0 0}.dhx_cal_light_wide .dhx_cal_checkbox label{padding-left:0}.dhx_cal_wide_checkbox input{margin-top:8px;margin-left:14px}.dhx_cal_light input{font-family:Tahoma;font-size:8pt}.dhx_cal_light_wide .dhx_cal_lsection .dhx_fullday{float:none;margin-right:0;font-weight:700;font-family:Arial;cursor:pointer}.dhx_custom_button{float:right;height:21px}.dhx_cal_light_wide .dhx_custom_button{position:absolute;top:0;right:0;margin-top:2px}.dhx_cal_light_wide .dhx_repeat_right{margin-right:55px}.dhx_minical_popup{position:absolute;z-index:10100;width:251px;height:175px}.dhx_scale_bar_header{position:absolute;border-bottom:1px dotted #8894A3;width:100%}.dhx_expand_icon{position:absolute;top:0;right:0;background-image:url(imgs/collapse_expand_icon.gif);width:18px;height:18px;cursor:pointer;background-position:0 18px;z-index:16}.dhx_scheduler_agenda .dhx_cal_data{background-image:url(imgs/databg.png)}.dhx_agenda_area{width:100%;overflow-y:auto;background-image:url(imgs/databg.png)}.dhx_agenda_line{height:21px;clear:both;overflow:hidden}.dhx_agenda_line div{float:left;width:188px;border-right:1px dotted #8894A3;text-align:center;line-height:21px;overflow:hidden}.dhx_agenda_area .dhx_agenda_line div{border-right:0 dotted #8894A3}.dhx_v_border{position:absolute;left:187px;top:0;border-right:1px dotted #8894A3;width:1px;height:100%}.dhx_agenda_line .dhx_event_icon{width:20px;border-width:0;background:url(imgs/icon.png) 5px 4px no-repeat;cursor:pointer}.dhx_agenda_line span{padding-left:5px;line-height:21px}.dhx_year_week{position:relative}.dhx_year_month{height:18px;padding-top:3px;text-align:center;vertical-align:middle}.dhx_year_body .dhx_after .dhx_month_head,.dhx_year_body .dhx_after .dhx_month_head a,.dhx_year_body .dhx_before .dhx_month_head,.dhx_year_body .dhx_before .dhx_month_head a{color:#E2E3E6!important}.dhx_year_body .dhx_month_body{height:0;overflow:hidden}.dhx_year_body .dhx_after .dhx_month_head,.dhx_year_body .dhx_before .dhx_month_head{cursor:default}.dhx_year_tooltip{border:1px solid #BBB;background-image:url(imgs/databg.png);position:absolute;z-index:9998;width:300px;height:auto;font-family:Tahoma;font-size:8pt;overflow:hidden}.dhx_tooltip_line{line-height:20px;height:20px;overflow:hidden}.dhx_tooltip_line .dhx_event_icon{width:20px;height:20px;padding-right:10px;float:left;border-width:0;position:relative;background:url(imgs/icon.png) 5px 4px no-repeat;cursor:pointer}.dhx_tooltip_date{float:left;width:auto;padding-left:5px;text-align:center}.dhx_text_disabled{color:#887A2E;font-family:Tahoma;font-size:8pt}.dhx_mini_calendar{-moz-box-shadow:5px 5px 5px #888;-khtml-box-shadow:5px 5px 5px #888;-moz-user-select:-moz-none;-webkit-user-select:none;-user-select:none}.dhx_mini_calendar .dhx_month_head{cursor:pointer}.dhx_mini_calendar .dhx_calendar_click{background-color:#C2D5FC}.dhx_cal_navline div.dhx_minical_icon{width:18px;height:18px;left:190px;top:1px;cursor:pointer;background-image:url(imgs/calendar.gif)}.dhx_matrix_scell{height:100%}.dhx_matrix_cell,.dhx_matrix_scell{overflow:hidden;text-align:center;vertical-align:middle}.dhx_matrix_cell{background-color:#fff}.dhx_matrix_line{overflow:hidden}.dhx_matrix_cell div,.dhx_matrix_scell div{overflow:hidden;text-align:center;height:auto}.dhx_cal_lsection .dhx_readonly{font-size:9pt;font-size:8pt;padding:2px}.dhx_cal_event_line .dhx_event_resize{cursor:w-resize;background:url(imgs/resize_dots.png) repeat-y;position:absolute;top:0;width:4px;height:100%}.dhx_event_resize_start{left:0}.dhx_event_resize_end{right:0}.dhx_data_table.folder .dhx_matrix_cell,.dhx_matrix_scell.folder{background-color:#969394;cursor:pointer}.dhx_matrix_scell .dhx_scell_level0{padding-left:5px}.dhx_matrix_scell .dhx_scell_level1{padding-left:20px}.dhx_matrix_scell .dhx_scell_level2{padding-left:35px}.dhx_matrix_scell .dhx_scell_level3{padding-left:50px}.dhx_matrix_scell .dhx_scell_level4{padding-left:65px}.dhx_matrix_scell.folder{font-weight:700;text-align:left}.dhx_matrix_scell.folder .dhx_scell_expand{float:left;width:10px;padding-right:3px}.dhx_matrix_scell.folder .dhx_scell_name{float:left;width:auto}.dhx_matrix_scell.item .dhx_scell_name{padding-left:15px;text-align:left}.dhx_data_table.folder .dhx_matrix_cell{border-right:0}.dhx_section_timeline{overflow:hidden;padding:4px 0 2px 10px}.dhx_section_timeline select{width:552px}.dhx_map_area{width:100%;height:100%;overflow-y:auto;overflow-x:hidden;background-image:url(imgs/databg.png)}.dhx_map_line .dhx_event_icon{width:20px;border-width:0;background:url(imgs/icon.png) 5px 4px no-repeat;cursor:pointer}.dhx_map_line{height:21px;clear:both;overflow:hidden}.dhx_map{position:absolute}.dhx_map_line .headline_description,.dhx_map_line div{float:left;border-right:1px dotted #8894A3;text-align:center;line-height:21px;overflow:hidden}.dhx_map_line .dhx_map_description{float:left;border-right:0 dotted #8894A3;text-align:center;line-height:21px;overflow:hidden}.dhx_map_line .headline_date,.dhx_map_line .headline_description{border-left:0}.dhx_map_line .line_description{float:left;border-right:1px dotted #8894A3;text-align:left;padding-left:5px;line-height:21px;overflow:hidden}.dhx_map_line.highlight{background-color:#C4C5CC}.dhx_map_area .dhx_map_line div{border-right:0 dotted #8894A3}.dhtmlXTooltip.tooltip{-moz-box-shadow:3px 3px 3px #888;-webkit-box-shadow:3px 3px 3px #888;-o-box-shadow:3px 3px 3px #888;box-shadow:3px 3px 3px #888;filter:progid:DXImageTransform.Microsoft.Shadow(color='#888888', Direction=135, Strength=5);background-color:#fff;border-left:1px dotted #887A2E;border-top:1px dotted #887A2E;color:#887A2E;cursor:default;padding:10px;position:absolute;z-index:500;font-family:Tahoma;font-size:8pt;opacity:1}.dhx_cal_checkbox label{padding-left:5px}.dhx_cal_light .radio{padding:2px 0 2px 10px}.dhx_cal_light .radio input,.dhx_cal_light .radio label{line-height:15px}.dhx_cal_light .radio input{vertical-align:middle;margin:0;padding:0}.dhx_cal_light .radio label{vertical-align:middle;padding-right:10px}.dhx_cal_light .combo{padding:4px}.dhx_wa_column{float:left}.dhx_wa_column_last .dhx_wa_day_cont{border-left:1px dotted #8894A3}.dhx_wa_scale_bar{font-family:Tahoma;padding-left:10px;font-size:11px;border-top:1px dotted #8894A3;border-bottom:1px dotted #8894A3}.dhx_wa_day_data{background-color:#FCFEFC;overflow-y:auto}.dhx_wa_ev_body{border-bottom:1px dotted #789;font-size:12px;padding:5px 0 5px 7px}.dhx_wa_dnd{font-family:Tahoma;position:absolute;padding-right:7px;color:#887AE2!important;background-color:#FFE763!important;border:1px solid #B7A543}.dhx_cal_event_selected{background-color:#9cc1db;color:#fff}.dhx_grid_area{width:100%;height:100%;overflow-y:auto;background-color:#FCFEFC}.dhx_grid_area table{border-collapse:collapse;border-spacing:0;width:100%;table-layout:fixed}.dhx_grid_area td{table-layout:fixed;text-align:center}.dhx_grid_line{height:21px;clear:both;overflow:hidden}.dhx_grid_line div{float:left;cursor:default;padding-top:0;padding-bottom:0;text-align:center;line-height:21px;overflow:hidden}.dhx_grid_area td,.dhx_grid_line div{padding-left:8px;padding-right:8px}.dhx_grid_area tr.dhx_grid_event{height:21px;overflow:hidden;margin:0 0 1px}.dhx_grid_area tr.dhx_grid_event td{border-bottom:1px solid #ECEEF4}.dhx_grid_area tr.dhx_grid_event:nth-child(2n) td,.dhx_grid_area tr.dhx_grid_event:nth-child(2n+1) td{border-bottom-width:0;border-bottom-style:none}.dhx_grid_area tr.dhx_grid_event:nth-child(2n){background-color:#ECEEF4}.dhx_grid_area .dhx_grid_dummy{table-layout:auto;margin:0!important;padding:0!important}.dhx_grid_v_border{position:absolute;border-right:1px solid #A4BED4;width:1px;height:100%}.dhx_grid_event_selected{background-color:#9cc1db!important;color:#fff!important}.dhx_grid_sort_desc .dhx_grid_view_sort{background-position:0 -55px}.dhx_grid_sort_asc .dhx_grid_view_sort{background-position:0 -66px}.dhx_grid_view_sort{width:10px;height:10px;position:absolute;border:none!important;top:5px;background-repeat:no-repeat;background-image:url(imgs/images.png)}.dhx_marked_timespan{position:absolute;width:100%;margin-left:0}.dhx_time_block{position:absolute;width:100%;background:silver;opacity:.4;filter:alpha(opacity=40);z-index:1}.dhx_time_block_reset{opacity:1;filter:alpha(opacity=100)}.dhx_mini_calendar .dhx_marked_timespan,.dhx_scheduler_month .dhx_marked_timespan{display:none}.dhx_now_time{width:100%;border-bottom:2px solid red;z-index:1}.dhx_scheduler_month .dhx_now_time{border-bottom:0;border-left:2px solid red}.dhx_matrix_now_time{border-left:2px solid red;z-index:1}.dhx_matrix_now_time,.dhx_now_time{opacity:.5}.dhx_cal_quick_info{border:2px solid #888;border-radius:5px;position:absolute;z-index:300;background-color:#8e99ae;background-color:rgba(98,107,127,.5);padding-left:7px;width:300px;transition:left .5s ease,right .5s;-moz-transition:left .5s ease,right .5s;-webkit-transition:left .5s ease,right .5s;-o-transition:left .5s ease,right .5s}.dhx_no_animate{transition:none;-moz-transition:none;-webkit-transition:none;-o-transition:none}.dhx_cal_quick_info.dhx_qi_left .dhx_qi_big_icon{float:right}.dhx_cal_qi_title{padding:5px 0 10px 5px;color:#FFF;letter-spacing:1px}.dhx_cal_qi_tdate{font-size:14px}.dhx_cal_qi_tcontent{font-size:18px;font-weight:700}.dhx_cal_qi_content{border:1px solid #888;background-color:#fefefe;padding:16px 8px;font-size:14px;color:#444;width:275px;overflow:hidden}.dhx_qi_big_icon{border-radius:3px;color:#444;margin:5px 9px 5px 0;min-width:60px;line-height:20px;vertical-align:middle;padding:5px 10px 5px 5px;cursor:pointer;background-color:#fefefe;border-bottom:1px solid #666;border-right:1px solid #666;float:left}.dhx_cal_qi_controls div{float:left;height:20px;text-align:center;line-height:20px}.dhx_qi_big_icon .dhx_menu_icon{margin:0 8px 0 0}.dhx_drag_marker{width:100%;filter:alpha(Opacity=50);opacity:.5;background-color:#FFE763;position:absolute;box-sizing:border-box!important;border-top:1px solid #B6B6B6;border-bottom:1px solid #b6b6b6}.dhx_cal_data,.dhx_cal_data div,.dhx_cal_data table *,.dhx_cal_header,.dhx_cal_header div,.dhx_cal_navline div,.dhx_cal_quick_info,.dhx_cal_quick_info div,.dhx_multi_day,.dhx_multi_day div,.dhx_tooltip_line div{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}.dhx_cal_data table{border-collapse:separate}.dhx_cal_light .dhx_cal_radio label{margin-bottom:0}.dhx_cal_event div{line-height:normal}.dhx_cal_container{font-family:Tahoma;font-size:8pt;position:relative;overflow:hidden}.dhx_cal_container div{-moz-user-select:none;-moz-user-select:-moz-none}.dhx_cal_navline{position:absolute;z-index:3;width:750px;color:#2F3A48}.dhx_cal_navline div{position:absolute;top:2px;white-space:nowrap}.dhx_cal_navline .dhx_cal_date{font-weight:600}.dhx_cal_button .dhx_left_bg{width:1px;overflow:hidden;height:17px;z-index:20;top:0}.dhx_cal_prev_button{background-position:0 0;left:50px;cursor:pointer}.dhx_cal_next_button{background-position:-30px 0;left:80px;cursor:pointer}.dhx_cal_today_button{background-position:-60px 0;height:17px;cursor:pointer;text-align:center}.dhx_cal_tab{text-align:center;cursor:pointer;background-color:#D8E1EA;-webkit-border-top-left-radius:4px;-webkit-border-top-right-radius:4px;-moz-border-radius-topleft:4px;-moz-border-radius-topright:4px;border-top-left-radius:4px;border-top-right-radius:4px}.dhx_cal_tab.active{text-decoration:none;cursor:default;font-weight:700;background-color:#C2D5FC}.dhx_cal_header{position:absolute;left:10px;top:23px;width:750px;z-index:2;overflow:hidden;color:#2F3A48}.dhx_cal_data{-webkit-tap-highlight-color:transparent;position:absolute;top:44px;width:600px;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;-ms-touch-action:pan-y}.dhx_cal_event,.dhx_cal_event_clear,.dhx_cal_event_line{-ms-touch-action:none}.dhx_scale_bar{position:absolute;text-align:center}.dhx_scale_holder{position:absolute;background-image:url(imgs/databg.png)}.dhx_scale_holder_now{position:absolute;background-image:url(imgs/databg_now.png)}.dhx_scale_hour{height:41px;width:50px;background-color:#C2D5FC;text-align:center;line-height:40px;overflow:hidden}.dhx_month_head{color:#2F3A48;height:18px;padding-right:5px;padding-top:3px;text-align:right}.dhx_month_body{background-color:#FFF}.dhx_now .dhx_month_body{background-color:#E2EDFF}.dhx_after .dhx_month_head,.dhx_before .dhx_month_head{color:#94A6BB}.dhx_now .dhx_month_head{font-weight:700}.dhx_scale_ignore{display:none}.dhx_cal_drag{position:absolute;z-index:9999;background-color:#FFE763;border:1px solid #B7A543;opacity:.5;filter:alpha(opacity=50)}.dhx_loading{position:absolute;width:128px;height:15px;background-image:url(imgs/loading.gif);z-index:9999}.dhx_multi_day,.dhx_multi_day_icon{background-color:#E1E6FF;background-repeat:no-repeat;border-right:1px dotted #8894A3}.dhx_multi_day{position:absolute}.dhx_multi_day_icon,.dhx_multi_day_icon_small{background-position:center center}.dhtmlxLayoutPolyContainer_dhx_skyblue .dhx_cal_container{background-color:#d0e5ff}.dhx_form_repeat,.dhx_form_repeat input{padding:0 0 0 5px;margin:0;font-family:Tahoma,Verdana;font-size:11px;line-height:24px}.dhx_form_repeat{overflow:hidden;background-color:#FFF4B5}.dhx_cal_light_wide .dhx_form_repeat{background-color:transparent}.dhx_repeat_center,.dhx_repeat_divider,.dhx_repeat_left,.dhx_repeat_right{height:115px;-moz-box-sizing:border-box;box-sizing:border-box}.dhx_repeat_center,.dhx_repeat_left{padding:10px 0 0 10px;float:left}.dhx_repeat_left{width:105px}.dhx_repeat_center{width:345px;padding-top:22px}.dhx_repeat_divider{float:left;width:1px}.dhx_repeat_right{float:right;width:173px;padding:17px 3px 0 10px}input.dhx_repeat_text{height:16px;width:27px;margin:0 4px;line-height:18px;padding:0 0 0 2px}.dhx_form_repeat select{height:20px;width:87px;padding:0 0 0 2px;margin:0 4px}input.dhx_repeat_date{height:18px;width:80px;padding:0 0 0 2px;margin:0 4px;background-repeat:no-repeat;background-position:64px 0;border:1px solid #7f9db9;line-height:18px}input.dhx_repeat_radio{margin-right:4px}input.dhx_repeat_checkbox{margin:4px 4px 0 0}.dhx_repeat_days td{padding-right:5px}.dhx_repeat_days label{font-size:10px}.dhx_custom_button{width:90px;-webkit-border-radius:4px;-moz-border-radius:4px;-ms-border-radius:4px;-o-border-radius:4px;border-radius:4px}.dhx_custom_button_recurring{background-image:url(imgs/but_repeat.gif);background-position:-5px 20px;width:20px;margin-right:10px}.dhx_cal_light_rec{width:640px}.dhx_cal_light_rec .dhx_cal_larea{width:632px}.dhx_cal_light_rec.dhx_cal_light_wide{width:816px}.dhx_cal_light_rec.dhx_cal_light_wide .dhx_cal_larea{width:808px}.dhx_cal_tab.active{border:none}.dhx_multi_day{border:none;border-top:1px solid #A4BED4}.dhx_multi_day_icon,.dhx_multi_day_icon_small{border-right:none}.dhx_cal_container{background-image:url(imgs_glossy/top-days-bg.png);background-position:0 24px;background-repeat:repeat-x;background-color:#EBEBEB}.dhx_cal_navline{background-color:#EBEBEB;height:23px!important}.dhx_cal_next_button,.dhx_cal_prev_button{background-image:url(imgs_glossy/buttons.gif);width:30px;height:20px}.dhx_cal_today_button{padding-top:3px;background-image:url(imgs_glossy/buttons.gif);width:67px;left:110px;text-decoration:none}.dhx_cal_navline .dhx_cal_date{padding-top:4px;left:230px}.dhx_cal_tab{background-image:url(imgs_glossy/white_tab.png);width:60px;height:15px;text-decoration:none;padding-top:4px;margin-top:4px}.dhx_cal_tab.active{background-image:url(imgs_glossy/blue_tab.png);height:18px;width:60px;padding-top:4px;margin-top:2px}.dhx_cal_data{border-top:1px solid #A4BED4}.dhx_cal_header{background-image:url(imgs_glossy/top-days-bg.png);background-repeat:repeat-x;border-top:0;border-right:0}.dhx_scale_bar{background-image:url(imgs_glossy/top-separator.gif);background-position:0 0;background-repeat:no-repeat;background-color:transparent;border-left:0}.dhx_scale_holder,.dhx_scale_holder_now{border-right:1px solid #A4BED4}.dhx_scale_hour{background-image:url(imgs_glossy/left-time-bg.png);border-bottom:1px solid #A4BED4;color:#2F3A48}.dhx_multi_day{background-image:url(imgs_glossy/multi-days-bg.png);background-repeat:repeat;border-bottom:1px solid #A4BED4;border-left:0}.dhx_multi_day_icon,.dhx_multi_day_icon_small{background-image:url(imgs_glossy/clock_big.png);border-bottom:1px solid #A4BED4;border-left:1px solid #fff;background-color:transparent;background-repeat:no-repeat}.dhx_multi_day_icon_small{background-image:url(imgs_glossy/clock_small.png)}.dhx_month_head{background-color:#FFF}.dhx_after .dhx_month_head,.dhx_before .dhx_month_head{background-color:#EFEDE2}.dhx_now .dhx_month_head{background-color:#E4EFFF}.dhx_after .dhx_month_body,.dhx_before .dhx_month_body{background-color:#EFEDE2}.dhx_cal_event div{border:1px solid #FFBD51;background-color:#FFE4AB;color:#000}.dhx_cal_event_clear{color:#000}.dhx_cal_event_line{background-image:url(imgs_glossy/event-bg.png);border:1px solid #FFBD51;color:#000}.dhx_in_move{background-image:url(imgs_glossy/move.png)}.dhx_cal_event .dhx_body,.dhx_cal_event .dhx_title{background-color:#FFE4AB}.dhx_cal_light{-moz-box-shadow:5px 5px 5px #888;-khtml-box-shadow:5px 5px 5px #888;background-color:#EBEBEB;border:2px solid #A4BED4;color:#000}.dhx_cal_larea{border:1px solid #A4BED4;border-width:0 1px 1px;background-color:#FFF}.dhx_cal_lsection{background-image:url(imgs_glossy/lightbox.png);font-size:14px;padding:5px 0 5px 10px;color:#000}.dhx_cal_light_wide .dhx_cal_lsection{background-image:url(imgs_glossy/multi-days-bg.png)}.dhx_cal_ltext textarea{background-color:#fff;color:#000}.dhx_cal_light input,.dhx_cal_light select{color:#000}.dhx_cancel_btn,.dhx_delete_btn,.dhx_save_btn{background-image:url(imgs_glossy/controlls5.png)}div.dhx_menu_head{background-image:url(imgs_glossy/controlls5.png);border:1px solid #FFE4AB}div.dhx_menu_icon{background-image:url(imgs_glossy/controlls5.png);border:none}.dhx_section_time{height:20px!important;padding:7px 0!important;text-align:center;background:#fff}.dhx_year_month{background-image:url(imgs_glossy/top-days-bg.png);border:0}.dhx_year_week{background-image:url(imgs_glossy/top-days-bg.png)}.dhx_month_head{border-right:1px solid #A4BED4}.dhx_matrix_cell,.dhx_matrix_scell,.dhx_month_body{border-right:1px solid #A4BED4;border-bottom:1px solid #A4BED4}.dhx_year_body{border-left:1px solid #A4BED4}.dhx_scale_bar_last{border-right:none}.dhx_month_head.dhx_year_event{background-color:#FFE4AB}.dhx_year_body .dhx_after .dhx_month_head,.dhx_year_body .dhx_after .dhx_month_head a,.dhx_year_body .dhx_before .dhx_month_head,.dhx_year_body .dhx_before .dhx_month_head a{color:#EFEDE2!important}.dhx_cal_lsection .dhx_readonly{color:#000}.dhx_year_tooltip{-moz-box-shadow:2px 2px 2px #888;-khtml-box-shadow:2px 2px 2px #888}.dhx_custom_button{margin-top:-2px}.dhx_cal_lsection.dhx_cal_checkbox{height:16px;line-height:18px}.dhx_cal_light_wide .dhx_cal_lsection.dhx_cal_checkbox{height:20px}.dhx_cal_light_wide .dhx_combo_box{width:602px!important;left:0}.dhx_cal_checkbox label{vertical-align:top}.dhx_cal_light_wide .dhx_cal_lsection{color:#000}.dhx_cal_light_wide .dhx_wrap_section{border-top:1px solid #A4BED4;background-image:url(imgs_glossy/multi-days-bg.png)}.dhx_cal_light_wide .dhx_cal_ltext{border-left:1px solid #A4BED4;background-color:#fff}.dhx_custom_button{background:#fff;color:#000}.dhx_form_repeat{background:#fff}.dhx_repeat_divider{border-left:1px solid #A4BED4}.dhx_cal_header.dhx_second_cal_header{background-image:url(imgs_glossy/second-top-days-bg.png);padding-right:20px}.dhx_cal_header div div{border-left:0}.dhx_scale_bar{padding-top:4px}.dhx_second_scale_bar{border-bottom:0;padding-top:4px}.dhx_cal_light_wide .dhx_cal_lsection .dhx_fullday,.dhx_cal_lsection .dhx_fullday{color:#000;font-size:14px}.dhx_cal_light_wide .dhx_cal_lsection{font-size:14px;padding-right:10px}.dhx_month_body_border,.dhx_month_head_border,.dhx_scale_bar_border,.dhx_scale_hour_border{border-left:1px solid #A4BED4}.dhx_cal_navline .dhx_cal_export{width:18px;height:18px;margin:2px;cursor:pointer;top:1px}.dhx_cal_navline .dhx_cal_export.pdf{left:2px;background-image:url(imgs_glossy/export_pdf.png)}.dhx_cal_navline .dhx_cal_export.ical{left:24px;background-image:url(imgs_glossy/export_ical.png)}
\ No newline at end of file +.dhtmlx_message_area{position:fixed;right:5px;width:250px;z-index:11}.dhtmlx-info{min-width:120px;font-family:Tahoma;z-index:14;overflow:hidden;margin:5px 5px 10px;-webkit-transition:all .5s ease;-moz-transition:all .5s ease;-o-transition:all .5s ease;transition:all .5s ease}.dhtmlx-info.hidden{height:0;padding:0;border-width:0;margin:0;overflow:hidden}.dhtmlx_modal_box{overflow:hidden;display:inline-block;min-width:300px;width:300px;text-align:center;position:fixed;background:-webkit-linear-gradient(top,#fff 1%,#d0d0d0 99%);background:-moz-linear-gradient(top,#fff 1%,#d0d0d0 99%);box-shadow:0 0 14px #888;font-family:Tahoma;z-index:18;border-radius:6px;border:1px solid #fff}.dhtmlx_popup_title{border-top-left-radius:5px;border-top-right-radius:5px;border-width:0;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAoCAMAAAAIaGBFAAAAhFBMVEVwcHBubm5sbGxqampoaGhmZmZlZWVjY2NhYWFfX19dXV1bW1taWlpYWFhWVlZUVFRSUlJRUVFPT09NTU1LS0tJSUlHR0dGRkZERERCQkJAQEA+Pj49PT09PT0+Pj5AQEBBQUFDQ0NERERGRkZHR0dJSUlKSkpMTExMTEw5OTk5OTk5OTkny8YEAAAAQklEQVQImQXBCRJCAAAAwKVSQqdyjSPXNP7/QLsIhA6OTiJnF7GrRCpzc/fw9PKW+/gqlCq1RqvTG/yMJrPF6m/bAVEhAxxnHG0oAAAAAElFTkSuQmCC);background:-webkit-linear-gradient(top,#707070 1%,#3d3d3d 70%,#4c4c4c 97%,#393939 97%);background:-moz-linear-gradient(top,#707070 1%,#3d3d3d 70%,#4c4c4c 97%,#393939 97%)}.dhtmlx-info,.dhtmlx_button,.dhtmlx_popup_button{user-select:none;-webkit-user-select:none;-moz-user-select:-moz-none;cursor:pointer}.dhtmlx_popup_text{overflow:hidden}.dhtmlx_popup_controls{border-radius:6px;padding:5px}.dhtmlx_button,.dhtmlx_popup_button{height:30px;line-height:30px;display:inline-block;margin:0 5px;border-radius:6px;color:#FFF}.dhtmlx_popup_button{min-width:120px}div.dhx_modal_cover{background-color:#000;cursor:default;filter:alpha(opacity=20);opacity:.2;position:fixed;z-index:17;left:0;top:0;width:100%;height:100%;border:none;zoom:1}.dhtmlx-info img,.dhtmlx_modal_box img{float:left;margin-right:20px}.dhtmlx-alert-error .dhtmlx_popup_title,.dhtmlx-confirm-error .dhtmlx_popup_title{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAsCAIAAAArRUU2AAAATklEQVR4nIWLuw2AMBBDjVuQiBT2oWbRDATrnB0KQOJoqPzRe3BrHI6dcBASYREKovtK6/6DsDOX+stN+3H1YX9ciRgnYq5EWYhS2dftBIuLT4JyIrPCAAAAAElFTkSuQmCC)}.dhtmlx-alert-error,.dhtmlx-confirm-error{border:1px solid red}.dhtmlx_button,.dhtmlx_popup_button{box-shadow:0 0 4px #888;border:1px solid #838383}.dhtmlx_button input,.dhtmlx_popup_button div{border:1px solid #FFF;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAeCAMAAADaS4T1AAAAYFBMVEVwcHBtbW1ra2toaGhmZmZjY2NhYWFeXl5cXFxaWlpXV1dVVVVSUlJQUFBNTU1LS0tJSUlGRkZERERBQUE/Pz88PDw9PT0+Pj5AQEBCQkJDQ0NFRUVHR0dISEhKSkpMTEzqthaMAAAAMklEQVQImQXBhQ2AMAAAsOIMlwWH/8+kRSKVyRVKlVrQaHV6g9FktlhFm93hdLk9Xt8PIfgBvdUqyskAAAAASUVORK5CYII=);background:-webkit-linear-gradient(top,#707070 1%,#3d3d3d 70%,#4c4c4c 99%);background:-moz-linear-gradient(top,#707070 1%,#3d3d3d 70%,#4c4c4c 99%);border-radius:6px;font-size:15px;font-weight:400;-moz-box-sizing:content-box;box-sizing:content-box;color:#fff;padding:0;margin:0;vertical-align:top;height:28px;line-height:28px}.dhtmlx_button input:active,.dhtmlx_button input:focus,.dhtmlx_popup_button div:active,.dhtmlx_popup_button div:focus{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAeCAMAAADaS4T1AAAAXVBMVEVwcHBubm5tbW1sbGxra2tpaWloaGhnZ2dmZmZlZWVjY2NiYmJhYWFgYGBfX19dXV1cXFxbW1taWlpZWVlXV1dWVlZVVVVUVFRTU1NRUVFQUFBPT09OTk5NTU1LS0tT9SY0AAAAMUlEQVQImQXBhQGAMAAAIGxnx2z9/00BiVQmVyhVakGj1ekNRpPZYhVtdofT5fZ4fT8hpwG05JjexgAAAABJRU5ErkJggg==);background:-webkit-linear-gradient(top,#707070 1%,#4c4c4c 99%);background:-moz-linear-gradient(top,#707070 1%,#4c4c4c 99%)}.dhtmlx_popup_title{color:#fff;text-shadow:1px 1px #000;height:40px;line-height:40px;font-size:20px}.dhtmlx_popup_text{margin:15px 15px 5px;font-size:14px;color:#000;min-height:30px;border-radius:6px}.dhtmlx-error,.dhtmlx-info{font-size:14px;color:#000;box-shadow:0 0 10px #888;padding:0;background-color:#FFF;border-radius:3px;border:1px solid #fff}.dhtmlx-info div{padding:5px 10px;background-color:#fff;border-radius:3px;border:1px solid #B8B8B8}.dhtmlx-error{background-color:#d81b1b;border:1px solid #ff3c3c;box-shadow:0 0 10px #000}.dhtmlx-error div{background-color:#d81b1b;border:1px solid #940000;color:#FFF}.dhx_cal_event .dhx_body,.dhx_cal_event .dhx_footer,.dhx_cal_event .dhx_header,.dhx_cal_event .dhx_title{background-color:#FFE763;border:1px solid #B7A543;color:#887A2E;overflow:hidden;width:100%;font-family:Tahoma;font-size:8pt}.dhx_move_denied .dhx_cal_event .dhx_header,.dhx_move_denied .dhx_cal_event .dhx_title{cursor:default}.dhx_cal_event .dhx_header{height:1px;margin-left:1px;border-width:1px 1px 0;cursor:pointer}.dhx_cal_event .dhx_title{height:12px;border-width:0 1px 1px;border-bottom-style:dotted;font-size:7pt;font-weight:700;text-align:center;background-position:right;background-repeat:no-repeat;cursor:pointer}.dhx_cal_event .dhx_body,.dhx_cal_event.dhx_cal_select_menu .dhx_body{border-width:0 1px 1px;padding:5px}.dhx_resize_denied,.dhx_resize_denied .dhx_event_resize{cursor:default!important}.dhx_cal_event .dhx_event_resize{cursor:s-resize}.dhx_cal_event .dhx_footer,.dhx_cal_event .dhx_select_menu_footer{height:1px;margin-left:2px;border-width:0 1px 1px;position:relative}.dhx_cal_event_line{background-color:#FFE763;border-radius:3px;font-family:Tahoma;font-size:8pt;height:13px;padding-left:10px;cursor:pointer;overflow:hidden}.dhx_cal_event_clear{font-family:Tahoma;font-size:8pt;height:13px;padding-left:2px;white-space:nowrap;overflow:hidden;cursor:pointer}.dhx_in_move{background-color:#FFFF80}.dhx_cal_event.dhx_cal_editor{border:1px solid #B7A543;border-top-style:dotted;z-index:10;position:absolute;overflow:hidden}textarea.dhx_cal_editor{width:100%;height:100%;border:0 solid #000;margin:0;padding:0;overflow:auto}div.dhx_menu_head{background-position:0 -43px;width:10px;height:10px;margin-left:5px;margin-top:1px;cursor:default}div.dhx_menu_icon{width:20px;height:20px;margin-left:-5px;margin-top:0;cursor:pointer}div.icon_details{background-position:0 0}div.icon_edit{background-position:-22px 0}div.icon_save{background-position:-84px -1px}div.icon_cancel{background-position:-62px 0}div.icon_delete{background-position:-42px 0}.dhx_month_link{position:absolute;box-sizing:border-box;-moz-box-sizing:border-box;text-align:right;cursor:pointer;padding-right:10px}.dhx_month_link a{color:#00f}.dhx_month_link a:hover{text-decoration:underline}.dhx_global_tip{font-family:Tahoma,Helvetica;text-align:center;font-size:20px;position:fixed;top:60px;right:20px;background-color:rgba(255,255,255,.7);color:#000;z-index:14;padding:20px 30px;width:190px}.dhx_global_tip div{font-size:30px}@media (-moz-touch-enabled){.dhx_cal_container{user-select:none;-moz-user-select:none}}.dhx_unselectable,.dhx_unselectable div{-webkit-user-select:none;-moz-user-select:none;-moz-user-select:-moz-none}.dhx_cal_light{-webkit-tap-highlight-color:transparent;border-radius:5px;font-family:Tahoma;font-size:8pt;position:absolute;z-index:15;width:580px;height:300px;box-shadow:5px 5px 5px #888}.dhx_mark{position:relative;top:3px;background-image:url(imgs/controls.gif);background-position:0 -43px;padding-left:10px}.dhx_ie6 .dhx_mark{background-position:6px -41px}.dhx_cal_light select{font-family:Tahoma;font-size:8pt;padding:2px;margin:0}.dhx_cal_ltitle{padding:2px 0 2px 5px;overflow:hidden;white-space:nowrap}.dhx_cal_ltitle span{white-space:nowrap}.dhx_cal_lsection{background-color:#DBCF8C;font-weight:700}.dhx_section_time{background-color:#DBCF8C;white-space:nowrap}.dhx_cal_lsection .dhx_fullday{float:right;margin-right:5px;font-weight:400;line-height:20px;vertical-align:top;cursor:pointer}.dhx_cal_lsection{font-family:Arial}.dhx_cal_ltext{padding:2px 0 2px 10px;overflow:hidden}.dhx_cal_ltext textarea{overflow:auto;border:none;height:100%;width:100%;outline:0!important;resize:none}.dhx_time{font-weight:700}.dhx_cal_light .dhx_title{padding-left:10px}.dhx_cal_larea{overflow:hidden;margin-left:3px;width:572px;height:1px}.dhx_btn_set{padding:5px 10px 0;float:left}.dhx_btn_set div{float:left;height:21px;line-height:21px;vertical-align:middle;cursor:pointer}.dhx_save_btn{background-position:-84px 0;width:21px}.dhx_cancel_btn{background-position:-63px 0;width:20px}.dhx_delete_btn{background-position:-42px 0;width:20px}.dhx_cal_cover{width:100%;height:100%;position:absolute;z-index:14;top:0;left:0;background-color:#000;opacity:.1;filter:alpha(opacity=10)}.dhx_custom_button{padding:0 3px;font-family:Tahoma;font-size:8pt;background-color:#FFE763;font-weight:400;margin-right:5px;cursor:pointer}.dhx_custom_button div{cursor:pointer;float:left;height:21px;line-height:21px;vertical-align:middle}.dhx_cal_light_wide .dhx_cal_larea{border-top-width:0}.dhx_cal_light_wide .dhx_cal_lsection{border:0;float:left;text-align:right;width:100px;height:20px;padding:5px 0 0 10px}.dhx_cal_light_wide .dhx_wrap_section{position:relative;background-color:#DBCF8C;overflow:hidden}.dhx_cal_light_wide .dhx_section_time{padding-top:2px!important;height:20px!important}.dhx_cal_light_wide .dhx_cal_larea{width:730px}.dhx_cal_light_wide{width:738px}.dhx_cal_light_wide .dhx_section_time{background:0 0}.dhx_cal_light_wide .dhx_cal_checkbox label{padding-left:0}.dhx_cal_wide_checkbox input{margin-top:8px;margin-left:14px}.dhx_cal_light input{font-family:Tahoma;font-size:8pt}.dhx_cal_light_wide .dhx_cal_lsection .dhx_fullday{float:none;margin-right:0;font-weight:700;font-family:Arial;cursor:pointer}.dhx_custom_button{float:right;height:21px}.dhx_cal_light_wide .dhx_custom_button{position:absolute;top:0;right:0;margin-top:2px}.dhx_cal_light_wide .dhx_repeat_right{margin-right:55px}.dhx_minical_popup{position:absolute;z-index:16;width:251px;height:175px}.dhx_scale_bar_header{position:absolute;border-bottom:1px dotted #8894A3;width:100%}.dhx_expand_icon{position:absolute;top:0;right:0;width:18px;height:18px;cursor:pointer;background-position:0 18px;z-index:4}.dhx_scheduler_agenda .dhx_cal_data{background-image:url(imgs/databg.png)}.dhx_agenda_area{width:100%;overflow-y:auto;background-image:url(imgs/databg.png)}.dhx_agenda_line{height:21px;clear:both;overflow:hidden}.dhx_agenda_line div{float:left;width:188px;border-right:1px dotted #8894A3;text-align:center;line-height:21px;overflow:hidden}.dhx_agenda_area .dhx_agenda_line div{border-right:0 dotted #8894A3}.dhx_v_border{position:absolute;left:187px;top:0;border-right:1px dotted #8894A3;width:1px;height:100%}.dhx_agenda_line .dhx_event_icon{width:20px;border-width:0;background:url(imgs/icon.png) 5px 4px no-repeat;cursor:pointer}.dhx_agenda_line span{padding-left:5px;line-height:21px}.dhx_year_week{position:relative}.dhx_year_month{height:18px;padding-top:3px;text-align:center;vertical-align:middle}.dhx_year_body .dhx_after .dhx_month_head,.dhx_year_body .dhx_after .dhx_month_head a,.dhx_year_body .dhx_before .dhx_month_head,.dhx_year_body .dhx_before .dhx_month_head a{color:#E2E3E6!important}.dhx_year_body .dhx_month_body{height:0;overflow:hidden}.dhx_year_body .dhx_after .dhx_month_head,.dhx_year_body .dhx_before .dhx_month_head{cursor:default}.dhx_year_tooltip{border:1px solid #BBB;background-image:url(imgs/databg.png);position:absolute;z-index:12;width:300px;height:auto;font-family:Tahoma;font-size:8pt;overflow:hidden}.dhx_tooltip_line{line-height:20px;height:20px;overflow:hidden}.dhx_tooltip_line .dhx_event_icon{width:20px;height:20px;padding-right:10px;float:left;border-width:0;position:relative;background:url(imgs/icon.png) 5px 4px no-repeat;cursor:pointer}.dhx_tooltip_date{float:left;width:auto;padding-left:5px;text-align:center}.dhx_text_disabled{color:#887A2E;font-family:Tahoma;font-size:8pt}.dhx_mini_calendar{-moz-box-shadow:5px 5px 5px #888;-khtml-box-shadow:5px 5px 5px #888;-moz-user-select:-moz-none;-webkit-user-select:none;-user-select:none}.dhx_mini_calendar .dhx_month_head{cursor:pointer}.dhx_mini_calendar .dhx_calendar_click{background-color:#C2D5FC}.dhx_cal_navline div.dhx_minical_icon{width:18px;height:18px;left:190px;top:1px;cursor:pointer;background-image:url(imgs/calendar.gif)}.dhx_matrix_scell{height:100%}.dhx_matrix_cell,.dhx_matrix_scell{overflow:hidden;text-align:center;vertical-align:middle}.dhx_matrix_cell{background-color:#fff}.dhx_matrix_line{overflow:hidden}.dhx_matrix_cell div,.dhx_matrix_scell div{overflow:hidden;text-align:center;height:auto}.dhx_cal_lsection .dhx_readonly{font-size:9pt;font-size:8pt;padding:2px}.dhx_cal_event_line .dhx_event_resize{cursor:w-resize;background:url(imgs/resize_dots.png) repeat-y;position:absolute;top:0;width:4px;height:100%}.dhx_event_resize_start{left:0}.dhx_event_resize_end{right:0}.dhx_data_table.folder .dhx_matrix_cell,.dhx_matrix_scell.folder{background-color:#969394;cursor:pointer}.dhx_matrix_scell .dhx_scell_level0{padding-left:5px}.dhx_matrix_scell .dhx_scell_level1{padding-left:20px}.dhx_matrix_scell .dhx_scell_level2{padding-left:35px}.dhx_matrix_scell .dhx_scell_level3{padding-left:50px}.dhx_matrix_scell .dhx_scell_level4{padding-left:65px}.dhx_matrix_scell.folder{font-weight:700;text-align:left}.dhx_matrix_scell.folder .dhx_scell_expand{float:left;width:10px;padding-right:3px}.dhx_matrix_scell.folder .dhx_scell_name{float:left;width:auto}.dhx_matrix_scell.item .dhx_scell_name{padding-left:15px;text-align:left}.dhx_data_table.folder .dhx_matrix_cell{border-right:0}.dhx_section_timeline{overflow:hidden;padding:4px 0 2px 10px}.dhx_section_timeline select{width:552px}.dhx_map_area{width:100%;height:100%;overflow-y:auto;overflow-x:hidden;background-image:url(imgs/databg.png)}.dhx_map_line .dhx_event_icon{width:20px;border-width:0;background:url(imgs/icon.png) 5px 4px no-repeat;cursor:pointer}.dhx_map_line{height:21px;clear:both;overflow:hidden}.dhx_map{position:absolute}.dhx_map_line .headline_description,.dhx_map_line div{float:left;border-right:1px dotted #8894A3;text-align:center;line-height:21px;overflow:hidden}.dhx_map_line .dhx_map_description{float:left;border-right:0 dotted #8894A3;text-align:center;line-height:21px;overflow:hidden}.dhx_map_line .headline_date,.dhx_map_line .headline_description{border-left:0}.dhx_map_line .line_description{float:left;border-right:1px dotted #8894A3;text-align:left;padding-left:5px;line-height:21px;overflow:hidden}.dhx_map_line.highlight{background-color:#C4C5CC}.dhx_map_area .dhx_map_line div{border-right:0 dotted #8894A3}.dhtmlXTooltip.tooltip{-moz-box-shadow:3px 3px 3px #888;-webkit-box-shadow:3px 3px 3px #888;-o-box-shadow:3px 3px 3px #888;box-shadow:3px 3px 3px #888;filter:progid:DXImageTransform.Microsoft.Shadow(color='#888888', Direction=135, Strength=5);background-color:#fff;border-left:1px dotted #887A2E;border-top:1px dotted #887A2E;color:#887A2E;cursor:default;padding:10px;position:fixed;z-index:9;font-family:Tahoma;font-size:8pt;opacity:1}.dhx_cal_checkbox label{padding-left:5px}.dhx_cal_light .radio{padding:2px 0 2px 10px}.dhx_cal_light .radio input,.dhx_cal_light .radio label{line-height:15px}.dhx_cal_light .radio input{vertical-align:middle;margin:0;padding:0}.dhx_cal_light .radio label{vertical-align:middle;padding-right:10px}.dhx_cal_light .combo{padding:4px}.dhx_wa_column{float:left}.dhx_wa_column_last .dhx_wa_day_cont{border-left:1px dotted #8894A3}.dhx_wa_scale_bar{font-family:Tahoma;padding-left:10px;font-size:11px;border-top:1px dotted #8894A3;border-bottom:1px dotted #8894A3}.dhx_wa_day_data{background-color:#FCFEFC;overflow-y:auto}.dhx_wa_ev_body{border-bottom:1px dotted #789;font-size:12px;padding:5px 0 5px 7px}.dhx_wa_dnd{font-family:Tahoma;position:absolute;padding-right:7px;color:#887AE2!important;background-color:#FFE763!important;border:1px solid #B7A543}.dhx_cal_event_selected{background-color:#9cc1db;color:#fff}.dhx_grid_area{width:100%;height:100%;overflow-y:auto;background-color:#FCFEFC}.dhx_grid_area table{border-collapse:collapse;border-spacing:0;width:100%;table-layout:fixed}.dhx_grid_area td{table-layout:fixed;text-align:center}.dhx_grid_line{height:21px;clear:both;overflow:hidden}.dhx_grid_line div{float:left;cursor:default;padding-top:0;padding-bottom:0;text-align:center;line-height:21px;overflow:hidden}.dhx_grid_area td,.dhx_grid_line div{padding-left:8px;padding-right:8px}.dhx_grid_area tr.dhx_grid_event{height:21px;overflow:hidden;margin:0 0 1px}.dhx_grid_area tr.dhx_grid_event td{border-bottom:1px solid #ECEEF4}.dhx_grid_area tr.dhx_grid_event:nth-child(2n) td,.dhx_grid_area tr.dhx_grid_event:nth-child(2n+1) td{border-bottom-width:0;border-bottom-style:none}.dhx_grid_area tr.dhx_grid_event:nth-child(2n){background-color:#ECEEF4}.dhx_grid_area .dhx_grid_dummy{table-layout:auto;margin:0!important;padding:0!important}.dhx_grid_v_border{position:absolute;border-right:1px solid #A4BED4;width:1px;height:100%}.dhx_grid_event_selected{background-color:#9cc1db!important;color:#fff!important}.dhx_grid_sort_desc .dhx_grid_view_sort{background-position:0 -55px}.dhx_grid_sort_asc .dhx_grid_view_sort{background-position:0 -66px}.dhx_grid_view_sort{width:10px;height:10px;position:absolute;border:none!important;top:5px;background-repeat:no-repeat;background-image:url(imgs/images.png)}.dhx_marked_timespan{position:absolute;width:100%;margin-left:0}.dhx_time_block{position:absolute;width:100%;background:silver;opacity:.4;filter:alpha(opacity=40);z-index:1}.dhx_time_block_reset{opacity:1;filter:alpha(opacity=100)}.dhx_mini_calendar .dhx_marked_timespan,.dhx_scheduler_month .dhx_marked_timespan{display:none}.dhx_now_time{width:100%;border-bottom:2px solid red;z-index:1}.dhx_scheduler_month .dhx_now_time{border-bottom:0;border-left:2px solid red}.dhx_matrix_now_time{border-left:2px solid red;z-index:1}.dhx_matrix_now_time,.dhx_now_time{opacity:.5}.dhx_cal_quick_info{border:2px solid #888;border-radius:5px;position:absolute;z-index:8;background-color:#8e99ae;background-color:rgba(98,107,127,.5);padding-left:7px;width:300px;transition:left .5s ease,right .5s;-moz-transition:left .5s ease,right .5s;-webkit-transition:left .5s ease,right .5s;-o-transition:left .5s ease,right .5s}.dhx_no_animate{transition:none;-moz-transition:none;-webkit-transition:none;-o-transition:none}.dhx_cal_quick_info.dhx_qi_left .dhx_qi_big_icon{float:right}.dhx_cal_qi_title{padding:5px 0 10px 5px;color:#FFF;letter-spacing:1px}.dhx_cal_qi_tdate{font-size:14px}.dhx_cal_qi_tcontent{font-size:18px;font-weight:700}.dhx_cal_qi_content{border:1px solid #888;background-color:#fefefe;padding:16px 8px;font-size:14px;color:#444;width:275px;overflow:hidden}.dhx_qi_big_icon{border-radius:3px;color:#444;margin:5px 9px 5px 0;min-width:60px;line-height:20px;vertical-align:middle;padding:5px 10px 5px 5px;cursor:pointer;background-color:#fefefe;border-bottom:1px solid #666;border-right:1px solid #666;float:left}.dhx_cal_qi_controls div{float:left;height:20px;text-align:center;line-height:20px}.dhx_qi_big_icon .dhx_menu_icon{margin:0 8px 0 0}.dhx_drag_marker{width:100%;filter:alpha(Opacity=50);opacity:.5;background-color:#FFE763;position:absolute;box-sizing:border-box!important;border-top:1px solid #B6B6B6;border-bottom:1px solid #b6b6b6}.dhx_focus_slot{background:#FFE763;position:absolute;pointer-events:none;opacity:.3}.dhx_cal_container :focus{outline-style:auto}.dhtmlx_modal_box *,.dhx_cal_data,.dhx_cal_data div,.dhx_cal_data table *,.dhx_cal_header,.dhx_cal_header div,.dhx_cal_light .dhx_cal_lsection,.dhx_cal_light .dhx_wrap_section,.dhx_cal_navline div,.dhx_cal_quick_info,.dhx_cal_quick_info div,.dhx_multi_day,.dhx_multi_day div,.dhx_tooltip_line div{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}.dhx_cal_data div.dhx_scale_hour,.dhx_cal_data table .dhx_matrix_cell,.dhx_cal_data table .dhx_matrix_scell{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.dhx_cal_data table{border-collapse:separate}.dhx_cal_light .dhx_cal_radio label{margin-bottom:0}.dhx_cal_event div{line-height:normal}.dhx_cal_container{font-family:Tahoma;font-size:8pt;position:relative;overflow:hidden}.dhx_cal_container div{-moz-user-select:none;-moz-user-select:-moz-none}.dhx_cal_navline{position:absolute;z-index:3;width:750px;color:#2F3A48}.dhx_cal_navline div{position:absolute;top:2px;white-space:nowrap}.dhx_cal_navline .dhx_cal_date{font-weight:600}.dhx_cal_button .dhx_left_bg{width:1px;overflow:hidden;height:17px;z-index:5;top:0}.dhx_cal_prev_button{background-position:0 0;left:50px;cursor:pointer}.dhx_cal_next_button{background-position:-30px 0;left:80px;cursor:pointer}.dhx_cal_today_button{background-position:-60px 0;height:17px;cursor:pointer;text-align:center}.dhx_cal_tab{text-align:center;cursor:pointer;background-color:#D8E1EA;-webkit-border-top-left-radius:4px;-webkit-border-top-right-radius:4px;-moz-border-radius-topleft:4px;-moz-border-radius-topright:4px;border-top-left-radius:4px;border-top-right-radius:4px}.dhx_cal_tab.active{text-decoration:none;cursor:default;font-weight:700;background-color:#C2D5FC}.dhx_cal_header{position:absolute;left:10px;top:23px;width:750px;z-index:2;overflow:hidden;color:#2F3A48}.dhx_cal_data{-webkit-tap-highlight-color:transparent;position:absolute;top:44px;width:600px;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;-ms-touch-action:pan-y}.dhx_cal_event,.dhx_cal_event_clear,.dhx_cal_event_line{-ms-touch-action:none}.dhx_scale_bar{position:absolute;text-align:center}.dhx_scale_holder{position:absolute;background-image:url(imgs/databg.png)}.dhx_scale_holder_now{position:absolute;background-image:url(imgs/databg_now.png)}.dhx_scale_hour{height:41px;width:50px;background-color:#C2D5FC;text-align:center;line-height:40px;overflow:hidden}.dhx_month_head{color:#2F3A48;height:18px;padding-right:5px;padding-top:3px;text-align:right}.dhx_month_body{background-color:#FFF}.dhx_now .dhx_month_body{background-color:#E2EDFF}.dhx_after .dhx_month_head,.dhx_before .dhx_month_head{color:#94A6BB}.dhx_now .dhx_month_head{font-weight:700}.dhx_scale_ignore{display:none}.dhx_cal_drag{position:absolute;z-index:13;background-color:#FFE763;border:1px solid #B7A543;opacity:.5;filter:alpha(opacity=50)}.dhx_loading{position:absolute;width:128px;height:15px;background-image:url(imgs/loading.gif);z-index:13}.dhx_multi_day,.dhx_multi_day_icon{background-color:#E1E6FF;background-repeat:no-repeat;border-right:1px dotted #8894A3}.dhx_multi_day{position:absolute}.dhx_multi_day_icon,.dhx_multi_day_icon_small{background-position:center center}.dhtmlxLayoutPolyContainer_dhx_skyblue .dhx_cal_container{background-color:#d0e5ff}.dhx_form_repeat,.dhx_form_repeat input{padding:0 0 0 5px;margin:0;font-family:Tahoma,Verdana;font-size:11px;line-height:24px}.dhx_form_repeat{overflow:hidden;background-color:#FFF4B5}.dhx_cal_light_wide .dhx_form_repeat{background-color:transparent}.dhx_repeat_center,.dhx_repeat_divider,.dhx_repeat_left,.dhx_repeat_right{height:115px;-moz-box-sizing:border-box;box-sizing:border-box}.dhx_repeat_center,.dhx_repeat_left{padding:10px 0 0 10px;float:left}.dhx_repeat_left{width:105px}.dhx_repeat_center{width:345px;padding-top:22px}.dhx_repeat_divider{float:left;width:1px}.dhx_repeat_right{float:right;width:173px;padding:17px 3px 0 10px}input.dhx_repeat_text{height:16px;width:27px;margin:0 4px;line-height:18px;padding:0 0 0 2px}.dhx_form_repeat select{height:20px;width:87px;padding:0 0 0 2px;margin:0 4px}input.dhx_repeat_date{height:18px;width:80px;padding:0 0 0 2px;margin:0 4px;background-repeat:no-repeat;background-position:64px 0;border:1px solid #7f9db9;line-height:18px}input.dhx_repeat_radio{margin-right:4px}input.dhx_repeat_checkbox{margin:4px 4px 0 0}.dhx_repeat_days td{padding-right:5px}.dhx_repeat_days label{font-size:10px}.dhx_custom_button{width:90px;-webkit-border-radius:4px;-moz-border-radius:4px;-ms-border-radius:4px;-o-border-radius:4px;border-radius:4px}.dhx_custom_button_recurring{background-image:url(imgs/but_repeat.gif);background-position:-5px 20px;width:20px;margin-right:10px}.dhx_cal_light_rec{width:640px}.dhx_cal_light_rec .dhx_cal_larea{width:632px}.dhx_cal_light_rec.dhx_cal_light_wide{width:816px}.dhx_cal_light_rec.dhx_cal_light_wide .dhx_cal_larea{width:808px}.dhx_cal_tab.active{border:none}.dhx_multi_day{border:none;border-top:1px solid #A4BED4}.dhx_multi_day_icon,.dhx_multi_day_icon_small{border-right:none}.dhx_cal_container{background-image:url(imgs_glossy/top-days-bg.png);background-position:0 24px;background-repeat:repeat-x;background-color:#EBEBEB}.dhx_cal_navline{background-color:#EBEBEB;height:23px!important}.dhx_cal_next_button,.dhx_cal_prev_button{background-image:url(imgs_glossy/buttons.gif);width:30px;height:20px}.dhx_cal_today_button{padding-top:3px;background-image:url(imgs_glossy/buttons.gif);width:67px;left:110px;text-decoration:none}.dhx_cal_navline .dhx_cal_date{padding-top:4px;left:230px}.dhx_cal_tab{background-image:url(imgs_glossy/white_tab.png);width:60px;height:15px;text-decoration:none;padding-top:4px;margin-top:4px}.dhx_cal_tab.active{background-image:url(imgs_glossy/blue_tab.png);height:18px;width:60px;padding-top:4px;margin-top:2px}.dhx_cal_data{border-top:1px solid #A4BED4}.dhx_cal_header{background-image:url(imgs_glossy/top-days-bg.png);background-repeat:repeat-x;border-top:0;border-right:0}.dhx_scale_bar{background-image:url(imgs_glossy/top-separator.gif);background-position:0 0;background-repeat:no-repeat;background-color:transparent;border-left:0}.dhx_scale_holder,.dhx_scale_holder_now{border-right:1px solid #A4BED4}.dhx_scale_hour{background-image:url(imgs_glossy/left-time-bg.png);border-bottom:1px solid #A4BED4;color:#2F3A48}.dhx_multi_day{background-image:url(imgs_glossy/multi-days-bg.png);background-repeat:repeat;border-bottom:1px solid #A4BED4;border-left:0}.dhx_multi_day_icon,.dhx_multi_day_icon_small{background-image:url(imgs_glossy/clock_big.png);border-bottom:1px solid #A4BED4;border-left:1px solid #fff;background-color:transparent;background-repeat:no-repeat}.dhx_multi_day_icon_small{background-image:url(imgs_glossy/clock_small.png)}.dhx_month_head{background-color:#FFF}.dhx_after .dhx_month_head,.dhx_before .dhx_month_head{background-color:#EFEDE2}.dhx_now .dhx_month_head{background-color:#E4EFFF}.dhx_after .dhx_month_body,.dhx_before .dhx_month_body{background-color:#EFEDE2}.dhx_cal_event div{border:1px solid #FFBD51;background-color:#FFE4AB;color:#000}.dhx_cal_event_clear{color:#000}.dhx_cal_event_line{background-image:url(imgs_glossy/event-bg.png);border:1px solid #FFBD51;color:#000}.dhx_in_move{background-image:url(imgs_glossy/move.png)}.dhx_cal_event .dhx_body,.dhx_cal_event .dhx_title{background-color:#FFE4AB}.dhx_cal_light{-moz-box-shadow:5px 5px 5px #888;-khtml-box-shadow:5px 5px 5px #888;background-color:#EBEBEB;border:2px solid #A4BED4;color:#000}.dhx_cal_larea{border:1px solid #A4BED4;border-width:0 1px 1px;background-color:#FFF}.dhx_cal_lsection{background-image:url(imgs_glossy/lightbox.png);font-size:14px;padding:5px 0 5px 10px;color:#000}.dhx_cal_light_wide .dhx_cal_lsection{background-image:url(imgs_glossy/multi-days-bg.png)}.dhx_cal_ltext textarea{background-color:#fff;color:#000}.dhx_cal_light input,.dhx_cal_light select{color:#000}.dhx_cancel_btn,.dhx_delete_btn,.dhx_save_btn{background-image:url(imgs_glossy/controlls5.png)}div.dhx_menu_head{background-image:url(imgs_glossy/controlls5.png);border:1px solid #FFE4AB}div.dhx_menu_icon{background-image:url(imgs_glossy/controlls5.png);border:none}.dhx_section_time{height:20px!important;padding:7px 0!important;text-align:center;background:#fff}.dhx_year_month{background-image:url(imgs_glossy/top-days-bg.png);border:0}.dhx_year_week{background-image:url(imgs_glossy/top-days-bg.png)}.dhx_month_head{border-right:1px solid #A4BED4}.dhx_matrix_cell,.dhx_matrix_scell,.dhx_month_body{border-right:1px solid #A4BED4;border-bottom:1px solid #A4BED4}.dhx_year_body{border-left:1px solid #A4BED4}.dhx_scale_bar_last{border-right:none}.dhx_month_head.dhx_year_event{background-color:#FFE4AB}.dhx_year_body .dhx_after .dhx_month_head,.dhx_year_body .dhx_after .dhx_month_head a,.dhx_year_body .dhx_before .dhx_month_head,.dhx_year_body .dhx_before .dhx_month_head a{color:#EFEDE2!important}.dhx_cal_lsection .dhx_readonly{color:#000}.dhx_year_tooltip{-moz-box-shadow:2px 2px 2px #888;-khtml-box-shadow:2px 2px 2px #888}.dhx_custom_button{margin-top:-2px}.dhx_cal_lsection.dhx_cal_checkbox{height:16px;line-height:18px}.dhx_cal_light_wide .dhx_cal_lsection.dhx_cal_checkbox{height:20px}.dhx_cal_light_wide .combo>div,.dhx_cal_light_wide .dhx_combo_box{width:602px!important;left:0}.dhx_cal_checkbox label{vertical-align:top}.dhx_cal_light_wide .dhx_cal_lsection{color:#000}.dhx_cal_light_wide .dhx_wrap_section{border-top:1px solid #A4BED4;background-image:url(imgs_glossy/multi-days-bg.png)}.dhx_cal_light_wide .dhx_cal_ltext{border-left:1px solid #A4BED4;background-color:#fff}.dhx_custom_button{background:#fff;color:#000}.dhx_form_repeat{background:#fff}.dhx_repeat_divider{border-left:1px solid #A4BED4}.dhx_cal_header.dhx_second_cal_header{background-image:url(imgs_glossy/second-top-days-bg.png);padding-right:20px}.dhx_cal_header div div{border-left:0}.dhx_scale_bar{padding-top:4px}.dhx_second_scale_bar{border-bottom:0;padding-top:4px}.dhx_cal_light_wide .dhx_cal_lsection .dhx_fullday,.dhx_cal_lsection .dhx_fullday{color:#000;font-size:14px}.dhx_cal_light_wide .dhx_cal_lsection{font-size:14px;padding-right:10px}.dhx_month_body_border,.dhx_month_head_border,.dhx_scale_bar_border,.dhx_scale_hour_border{border-left:1px solid #A4BED4}.dhx_cal_navline .dhx_cal_export{width:18px;height:18px;margin:2px;cursor:pointer;top:1px}.dhx_cal_navline .dhx_cal_export.pdf{left:2px;background-image:url(imgs_glossy/export_pdf.png)}.dhx_cal_navline .dhx_cal_export.ical{left:24px;background-image:url(imgs_glossy/export_ical.png)}.dhx_expand_icon{background-image:url(imgs_glossy/collapse_expand_icon.gif)}
\ No newline at end of file diff --git a/codebase/ext/dhtmlxscheduler_active_links.js b/codebase/ext/dhtmlxscheduler_active_links.js index 3e957e7..1b435f9 100644 --- a/codebase/ext/dhtmlxscheduler_active_links.js +++ b/codebase/ext/dhtmlxscheduler_active_links.js @@ -1,12 +1,11 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. (c) Dinamenta, UAB. */ -scheduler.config.active_link_view="day",scheduler._active_link_click=function(e){var t=e.target||event.srcElement,i=t.getAttribute("jump_to"),s=scheduler.date.str_to_date(scheduler.config.api_date);return i?(scheduler.setCurrentView(s(i),scheduler.config.active_link_view),e&&e.preventDefault&&e.preventDefault(),!1):void 0},scheduler.attachEvent("onTemplatesReady",function(){var e=function(e,t){t=t||e+"_scale_date",scheduler.templates["_active_links_old_"+t]||(scheduler.templates["_active_links_old_"+t]=scheduler.templates[t]); - -var i=scheduler.templates["_active_links_old_"+t],s=scheduler.date.date_to_str(scheduler.config.api_date);scheduler.templates[t]=function(e){return"<a jump_to='"+s(e)+"' href='#'>"+i(e)+"</a>"}};if(e("week"),e("","month_day"),this.matrix)for(var t in this.matrix)e(t);this._detachDomEvent(this._obj,"click",scheduler._active_link_click),dhtmlxEvent(this._obj,"click",scheduler._active_link_click)}); +scheduler.config.active_link_view="day",scheduler._active_link_click=function(e){var t=e.target||event.srcElement,c=t.getAttribute("jump_to"),i=scheduler.date.str_to_date(scheduler.config.api_date);return c?(scheduler.setCurrentView(i(c),scheduler.config.active_link_view),e&&e.preventDefault&&e.preventDefault(),!1):void 0},scheduler.attachEvent("onTemplatesReady",function(){var e=function(e,t){t=t||e+"_scale_date",scheduler.templates["_active_links_old_"+t]||(scheduler.templates["_active_links_old_"+t]=scheduler.templates[t]); +var c=scheduler.templates["_active_links_old_"+t],i=scheduler.date.date_to_str(scheduler.config.api_date);scheduler.templates[t]=function(e){return"<a jump_to='"+i(e)+"' href='#'>"+c(e)+"</a>"}};if(e("week"),e("","month_day"),this.matrix)for(var t in this.matrix)e(t);this._detachDomEvent(this._obj,"click",scheduler._active_link_click),dhtmlxEvent(this._obj,"click",scheduler._active_link_click)}); //# sourceMappingURL=../sources/ext/dhtmlxscheduler_active_links.js.map
\ No newline at end of file diff --git a/codebase/ext/dhtmlxscheduler_agenda_view.js b/codebase/ext/dhtmlxscheduler_agenda_view.js index fc635e7..46c457a 100644 --- a/codebase/ext/dhtmlxscheduler_agenda_view.js +++ b/codebase/ext/dhtmlxscheduler_agenda_view.js @@ -1,17 +1,16 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. (c) Dinamenta, UAB. */ -scheduler.date.add_agenda=function(e){return scheduler.date.add(e,1,"year")},scheduler.templates.agenda_time=function(e,t,s){return s._timed?this.day_date(s.start_date,s.end_date,s)+" "+this.event_date(e):scheduler.templates.day_date(e)+" – "+scheduler.templates.day_date(t)},scheduler.templates.agenda_text=function(e,t,s){return s.text},scheduler.templates.agenda_date=function(){return""},scheduler.date.agenda_start=function(){return scheduler.date.date_part(scheduler._currentDate())},scheduler.attachEvent("onTemplatesReady",function(){ -function e(e){if(e){var t=scheduler.locale.labels;scheduler._els.dhx_cal_header[0].innerHTML="<div class='dhx_agenda_line'><div>"+t.date+"</div><span style='padding-left:25px'>"+t.description+"</span></div>",scheduler._table_view=!0,scheduler.set_sizes()}}function t(){var e=(scheduler._date,scheduler.get_visible_events());e.sort(function(e,t){return e.start_date>t.start_date?1:-1});for(var t="<div class='dhx_agenda_area'>",s=0;s<e.length;s++){var i=e[s],a=i.color?"background:"+i.color+";":"",r=i.textColor?"color:"+i.textColor+";":"",n=scheduler.templates.event_class(i.start_date,i.end_date,i); - -t+="<div class='dhx_agenda_line"+(n?" "+n:"")+"' event_id='"+i.id+"' style='"+r+a+(i._text_style||"")+"'><div class='dhx_agenda_event_time'>"+scheduler.templates.agenda_time(i.start_date,i.end_date,i)+"</div>",t+="<div class='dhx_event_icon icon_details'> </div>",t+="<span>"+scheduler.templates.agenda_text(i.start_date,i.end_date,i)+"</span></div>"}t+="<div class='dhx_v_border'></div></div>",scheduler._els.dhx_cal_data[0].innerHTML=t,scheduler._els.dhx_cal_data[0].childNodes[0].scrollTop=scheduler._agendaScrollTop||0; - -var d=scheduler._els.dhx_cal_data[0].childNodes[0],o=d.childNodes[d.childNodes.length-1];o.style.height=d.offsetHeight<scheduler._els.dhx_cal_data[0].offsetHeight?"100%":d.offsetHeight+"px";var l=scheduler._els.dhx_cal_data[0].firstChild.childNodes;scheduler._els.dhx_cal_date[0].innerHTML=scheduler.templates.agenda_date(scheduler._min_date,scheduler._max_date,scheduler._mode),scheduler._rendered=[];for(var s=0;s<l.length-1;s++)scheduler._rendered[s]=l[s]}var s=scheduler.dblclick_dhx_cal_data;scheduler.dblclick_dhx_cal_data=function(){ -if("agenda"==this._mode)!this.config.readonly&&this.config.dblclick_create&&this.addEventNow();else if(s)return s.apply(this,arguments)},scheduler.attachEvent("onSchedulerResize",function(){return"agenda"==this._mode?(this.agenda_view(!0),!1):!0});var i=scheduler.render_data;scheduler.render_data=function(e){return"agenda"!=this._mode?i.apply(this,arguments):void t()};var a=scheduler.render_view_data;scheduler.render_view_data=function(){return"agenda"==this._mode&&(scheduler._agendaScrollTop=scheduler._els.dhx_cal_data[0].childNodes[0].scrollTop, -scheduler._els.dhx_cal_data[0].childNodes[0].scrollTop=0),a.apply(this,arguments)},scheduler.agenda_view=function(s){scheduler._min_date=scheduler.config.agenda_start||scheduler.date.agenda_start(scheduler._date),scheduler._max_date=scheduler.config.agenda_end||scheduler.date.add_agenda(scheduler._min_date,1),scheduler._table_view=!0,e(s),s&&t()}}); +scheduler.date.add_agenda=function(e){return scheduler.date.add(e,1,"year")},scheduler.templates.agenda_time=function(e,t,i){return i._timed?this.day_date(i.start_date,i.end_date,i)+" "+this.event_date(e):scheduler.templates.day_date(e)+" – "+scheduler.templates.day_date(t)},scheduler.templates.agenda_text=function(e,t,i){return i.text},scheduler.templates.agenda_date=function(){return""},scheduler.date.agenda_start=function(){return scheduler.date.date_part(scheduler._currentDate())},scheduler.attachEvent("onTemplatesReady",function(){ +function e(e){if(e){var t=scheduler.locale.labels,i=scheduler._waiAria.agendaHeadAttrString(),a=scheduler._waiAria.agendaHeadDateString(t.date),r=scheduler._waiAria.agendaHeadDescriptionString(t.description);scheduler._els.dhx_cal_header[0].innerHTML="<div "+i+" class='dhx_agenda_line'><div "+a+">"+t.date+"</div><span style='padding-left:25px' "+r+">"+t.description+"</span></div>",scheduler._table_view=!0,scheduler.set_sizes()}}function t(){var e=(scheduler._date,scheduler.get_visible_events());e.sort(function(e,t){ +return e.start_date>t.start_date?1:-1});for(var t,i=scheduler._waiAria.agendaDataAttrString(),a="<div class='dhx_agenda_area' "+i+">",r=0;r<e.length;r++){var s=e[r],n=s.color?"background:"+s.color+";":"",d=s.textColor?"color:"+s.textColor+";":"",l=scheduler.templates.event_class(s.start_date,s.end_date,s);t=scheduler._waiAria.agendaEventAttrString(s);var o=scheduler._waiAria.agendaDetailsBtnString();a+="<div "+t+" class='dhx_agenda_line"+(l?" "+l:"")+"' event_id='"+s.id+"' style='"+d+n+(s._text_style||"")+"'><div class='dhx_agenda_event_time'>"+scheduler.templates.agenda_time(s.start_date,s.end_date,s)+"</div>", +a+="<div "+o+" class='dhx_event_icon icon_details'> </div>",a+="<span>"+scheduler.templates.agenda_text(s.start_date,s.end_date,s)+"</span></div>"}a+="<div class='dhx_v_border'></div></div>",scheduler._els.dhx_cal_data[0].innerHTML=a,scheduler._els.dhx_cal_data[0].childNodes[0].scrollTop=scheduler._agendaScrollTop||0;var h=scheduler._els.dhx_cal_data[0].childNodes[0],_=h.childNodes[h.childNodes.length-1];_.style.height=h.offsetHeight<scheduler._els.dhx_cal_data[0].offsetHeight?"100%":h.offsetHeight+"px"; +var c=scheduler._els.dhx_cal_data[0].firstChild.childNodes;scheduler._els.dhx_cal_date[0].innerHTML=scheduler.templates.agenda_date(scheduler._min_date,scheduler._max_date,scheduler._mode),scheduler._rendered=[];for(var r=0;r<c.length-1;r++)scheduler._rendered[r]=c[r]}var i=scheduler.dblclick_dhx_cal_data;scheduler.dblclick_dhx_cal_data=function(){if("agenda"==this._mode)!this.config.readonly&&this.config.dblclick_create&&this.addEventNow();else if(i)return i.apply(this,arguments)},scheduler.attachEvent("onSchedulerResize",function(){ +return"agenda"==this._mode?(this.agenda_view(!0),!1):!0});var a=scheduler.render_data;scheduler.render_data=function(e){return"agenda"!=this._mode?a.apply(this,arguments):void t()};var r=scheduler.render_view_data;scheduler.render_view_data=function(){return"agenda"==this._mode&&(scheduler._agendaScrollTop=scheduler._els.dhx_cal_data[0].childNodes[0].scrollTop,scheduler._els.dhx_cal_data[0].childNodes[0].scrollTop=0),r.apply(this,arguments)},scheduler.agenda_view=function(i){scheduler._min_date=scheduler.config.agenda_start||scheduler.date.agenda_start(scheduler._date), +scheduler._max_date=scheduler.config.agenda_end||scheduler.date.add_agenda(scheduler._min_date,1),e(i),i?(scheduler._cols=null,scheduler._colsS=null,scheduler._table_view=!0,t()):scheduler._table_view=!1}}); //# sourceMappingURL=../sources/ext/dhtmlxscheduler_agenda_view.js.map
\ No newline at end of file diff --git a/codebase/ext/dhtmlxscheduler_all_timed.js b/codebase/ext/dhtmlxscheduler_all_timed.js index 8fac02e..327bb83 100644 --- a/codebase/ext/dhtmlxscheduler_all_timed.js +++ b/codebase/ext/dhtmlxscheduler_all_timed.js @@ -1,18 +1,14 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. (c) Dinamenta, UAB. */ -!function(){scheduler.config.all_timed="short";var e=function(e){return!((e.end_date-e.start_date)/36e5>=24)};scheduler._safe_copy=function(e){var t=null,a=null;return e.event_pid&&(t=scheduler.getEvent(e.event_pid)),t&&t.isPrototypeOf(e)?(a=scheduler._copy_event(e),delete a.event_length,delete a.event_pid,delete a.rec_pattern,delete a.rec_type):a=scheduler._lame_clone(e),a};var t=scheduler._pre_render_events_line;scheduler._pre_render_events_line=function(a,i){function n(e){var t=r(e.start_date); - -return+e.end_date>+t}function r(e){var t=scheduler.date.add(e,1,"day");return t=scheduler.date.date_part(t)}function l(e,t){var a=scheduler.date.date_part(new Date(e));return a.setHours(t),a}if(!this.config.all_timed)return t.call(this,a,i);for(var d=0;d<a.length;d++){var o=a[d];if(!o._timed)if("short"!=this.config.all_timed||e(o)){var s=this._safe_copy(o);s.start_date=new Date(s.start_date),n(o)?(s.end_date=r(s.start_date),24!=this.config.last_hour&&(s.end_date=l(s.start_date,this.config.last_hour))):s.end_date=new Date(o.end_date); - -var _=!1;s.start_date<this._max_date&&s.end_date>this._min_date&&s.start_date<s.end_date&&(a[d]=s,_=!0);var c=this._safe_copy(o);if(c.end_date=new Date(c.end_date),c.start_date<this._min_date?c.start_date=l(this._min_date,this.config.first_hour):c.start_date=l(r(o.start_date),this.config.first_hour),c.start_date<this._max_date&&c.start_date<c.end_date){if(!_){a[d--]=c;continue}a.splice(d+1,0,c)}}else a.splice(d--,1)}var u="move"==this._drag_mode?!1:i;return t.call(this,a,u)};var a=scheduler.get_visible_events; - +!function(){scheduler.config.all_timed="short";var e=function(e){return!((e.end_date-e.start_date)/36e5>=24)};scheduler._safe_copy=function(e){var t=null,a=scheduler._copy_event(e);return e.event_pid&&(t=scheduler.getEvent(e.event_pid)),t&&t.isPrototypeOf(e)&&(delete a.event_length,delete a.event_pid,delete a.rec_pattern,delete a.rec_type),a};var t=scheduler._pre_render_events_line;scheduler._pre_render_events_line=function(a,i){function r(e){var t=s(e.start_date);return+e.end_date>+t}function s(e){ +var t=scheduler.date.add(e,1,"day");return t=scheduler.date.date_part(t)}function n(e,t){var a=scheduler.date.date_part(new Date(e));return a.setHours(t),a}if(!this.config.all_timed)return t.call(this,a,i);for(var d=0;d<a.length;d++){var l=a[d];if(!l._timed)if("short"!=this.config.all_timed||e(l)){var o=this._safe_copy(l);o.start_date=new Date(o.start_date),r(l)?(o.end_date=s(o.start_date),24!=this.config.last_hour&&(o.end_date=n(o.start_date,this.config.last_hour))):o.end_date=new Date(l.end_date); +var _=!1;o.start_date<this._max_date&&o.end_date>this._min_date&&o.start_date<o.end_date&&(a[d]=o,_=!0);var h=this._safe_copy(l);if(h.end_date=new Date(h.end_date),h.start_date<this._min_date?h.start_date=n(this._min_date,this.config.first_hour):h.start_date=n(s(l.start_date),this.config.first_hour),h.start_date<this._max_date&&h.start_date<h.end_date){if(!_){a[d--]=h;continue}a.splice(d+1,0,h)}}else a.splice(d--,1)}var c="move"==this._drag_mode?!1:i;return t.call(this,a,c)};var a=scheduler.get_visible_events; scheduler.get_visible_events=function(e){return this.config.all_timed&&this.config.multi_day?a.call(this,!1):a.call(this,e)},scheduler.attachEvent("onBeforeViewChange",function(e,t,a,i){return scheduler._allow_dnd="day"==a||"week"==a,!0}),scheduler._is_main_area_event=function(t){return!!(t._timed||this.config.all_timed===!0||"short"==this.config.all_timed&&e(t))};var i=scheduler.updateEvent;scheduler.updateEvent=function(e){var t,a=scheduler.config.all_timed&&!(scheduler.isOneDayEvent(scheduler._events[e])||scheduler.getState().drag_id); - a&&(t=scheduler.config.update_render,scheduler.config.update_render=!0),i.apply(scheduler,arguments),a&&(scheduler.config.update_render=t)}}(); //# sourceMappingURL=../sources/ext/dhtmlxscheduler_all_timed.js.map
\ No newline at end of file diff --git a/codebase/ext/dhtmlxscheduler_collision.js b/codebase/ext/dhtmlxscheduler_collision.js index 056a4f9..3c8e8d9 100644 --- a/codebase/ext/dhtmlxscheduler_collision.js +++ b/codebase/ext/dhtmlxscheduler_collision.js @@ -1,15 +1,13 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. (c) Dinamenta, UAB. */ -!function(){function e(e){var a=scheduler._get_section_view();a&&e&&(t=scheduler.getEvent(e)[scheduler._get_section_property()])}var t,a;scheduler.config.collision_limit=1,scheduler.attachEvent("onBeforeDrag",function(t){return e(t),!0}),scheduler.attachEvent("onBeforeLightbox",function(t){var i=scheduler.getEvent(t);return a=[i.start_date,i.end_date],e(t),!0}),scheduler.attachEvent("onEventChanged",function(e){if(!e||!scheduler.getEvent(e))return!0;var t=scheduler.getEvent(e);if(!scheduler.checkCollision(t)){ -if(!a)return!1;t.start_date=a[0],t.end_date=a[1],t._timed=this.isOneDayEvent(t)}return!0}),scheduler.attachEvent("onBeforeEventChanged",function(e,t,a){return scheduler.checkCollision(e)}),scheduler.attachEvent("onEventAdded",function(e,t){var a=scheduler.checkCollision(t);a||scheduler.deleteEvent(e)}),scheduler.attachEvent("onEventSave",function(e,t,a){if(t=scheduler._lame_clone(t),t.id=e,!t.start_date||!t.end_date){var i=scheduler.getEvent(e);t.start_date=new Date(i.start_date),t.end_date=new Date(i.end_date); - -}return t.rec_type&&scheduler._roll_back_dates(t),scheduler.checkCollision(t)}),scheduler._check_sections_collision=function(e,t){var a=scheduler._get_section_property();return e[a]==t[a]&&e.id!=t.id?!0:!1},scheduler.checkCollision=function(e){var a=[],i=scheduler.config.collision_limit;if(e.rec_type)for(var n=scheduler.getRecDates(e),r=0;r<n.length;r++)for(var l=scheduler.getEvents(n[r].start_date,n[r].end_date),d=0;d<l.length;d++)(l[d].event_pid||l[d].id)!=e.id&&a.push(l[d]);else{a=scheduler.getEvents(e.start_date,e.end_date); - -for(var o=0;o<a.length;o++)if(a[o].id==e.id){a.splice(o,1);break}}var s=scheduler._get_section_view(),_=scheduler._get_section_property(),c=!0;if(s){for(var u=0,o=0;o<a.length;o++)a[o].id!=e.id&&this._check_sections_collision(a[o],e)&&u++;u>=i&&(c=!1)}else a.length>=i&&(c=!1);if(!c){var h=!scheduler.callEvent("onEventCollision",[e,a]);return h||(e[_]=t||e[_]),h}return c}}(); +!function(){function e(e){var i=scheduler._get_section_view();i&&e&&(t=scheduler.getEvent(e)[scheduler._get_section_property()])}var t,i;scheduler.config.collision_limit=1,scheduler.attachEvent("onBeforeDrag",function(t){return e(t),!0}),scheduler.attachEvent("onBeforeLightbox",function(t){var a=scheduler.getEvent(t);return i=[a.start_date,a.end_date],e(t),!0}),scheduler.attachEvent("onEventChanged",function(e){if(!e||!scheduler.getEvent(e))return!0;var t=scheduler.getEvent(e);if(!scheduler.checkCollision(t)){ +if(!i)return!1;t.start_date=i[0],t.end_date=i[1],t._timed=this.isOneDayEvent(t)}return!0}),scheduler.attachEvent("onBeforeEventChanged",function(e,t,i){return scheduler.checkCollision(e)}),scheduler.attachEvent("onEventAdded",function(e,t){var i=scheduler.checkCollision(t);i||scheduler.deleteEvent(e)}),scheduler.attachEvent("onEventSave",function(e,t,i){if(t=scheduler._lame_clone(t),t.id=e,!t.start_date||!t.end_date){var a=scheduler.getEvent(e);t.start_date=new Date(a.start_date),t.end_date=new Date(a.end_date); +}return t.rec_type&&scheduler._roll_back_dates(t),scheduler.checkCollision(t)}),scheduler._check_sections_collision=function(e,t){var i=scheduler._get_section_property();return e[i]==t[i]&&e.id!=t.id?!0:!1},scheduler.checkCollision=function(e){var i=[],a=scheduler.config.collision_limit;if(e.rec_type)for(var r=scheduler.getRecDates(e),s=0;s<r.length;s++)for(var n=scheduler.getEvents(r[s].start_date,r[s].end_date),d=0;d<n.length;d++)(n[d].event_pid||n[d].id)!=e.id&&i.push(n[d]);else{i=scheduler.getEvents(e.start_date,e.end_date); +for(var l=0;l<i.length;l++)if(i[l].id==e.id){i.splice(l,1);break}}var o=scheduler._get_section_view(),h=scheduler._get_section_property(),_=!0;if(o){for(var c=0,l=0;l<i.length;l++)i[l].id!=e.id&&this._check_sections_collision(i[l],e)&&c++;c>=a&&(_=!1)}else i.length>=a&&(_=!1);if(!_){var u=!scheduler.callEvent("onEventCollision",[e,i]);return u||(e[h]=t||e[h]),u}return _}}(); //# sourceMappingURL=../sources/ext/dhtmlxscheduler_collision.js.map
\ No newline at end of file diff --git a/codebase/ext/dhtmlxscheduler_container_autoresize.js b/codebase/ext/dhtmlxscheduler_container_autoresize.js index af278ee..2d02ef9 100644 --- a/codebase/ext/dhtmlxscheduler_container_autoresize.js +++ b/codebase/ext/dhtmlxscheduler_container_autoresize.js @@ -1,20 +1,18 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. (c) Dinamenta, UAB. */ -!function(){scheduler.config.container_autoresize=!0,scheduler.config.month_day_min_height=90;var e=scheduler._pre_render_events,t=!0;scheduler._pre_render_events=function(a,i){if(!scheduler.config.container_autoresize||!t)return e.apply(this,arguments);var n=this.xy.bar_height,l=this._colsS.heights,r=this._colsS.heights=[0,0,0,0,0,0,0],d=this._els.dhx_cal_data[0];if(a=this._table_view?this._pre_render_events_table(a,i):this._pre_render_events_line(a,i),this._table_view)if(i)this._colsS.heights=l; -else{var o=d.firstChild;if(o.rows){for(var s=0;s<o.rows.length;s++){if(r[s]++,r[s]*n>this._colsS.height-this.xy.month_head_height){var _=o.rows[s].cells,c=this._colsS.height-this.xy.month_head_height;1*this.config.max_month_events!==this.config.max_month_events||r[s]<=this.config.max_month_events?c=r[s]*n:(this.config.max_month_events+1)*n>this._colsS.height-this.xy.month_head_height&&(c=(this.config.max_month_events+1)*n);for(var u=0;u<_.length;u++)_[u].childNodes[1].style.height=c+"px";r[s]=(r[s-1]||0)+_[0].offsetHeight; - -}r[s]=(r[s-1]||0)+o.rows[s].cells[0].offsetHeight}r.unshift(0),o.parentNode.offsetHeight<o.parentNode.scrollHeight&&!o._h_fix}else if(a.length||"visible"!=this._els.dhx_multi_day[0].style.visibility||(r[0]=-1),a.length||-1==r[0]){var h=(o.parentNode.childNodes,(r[0]+1)*n+1+"px");d.style.top=this._els.dhx_cal_navline[0].offsetHeight+this._els.dhx_cal_header[0].offsetHeight+parseInt(h,10)+"px",d.style.height=this._obj.offsetHeight-parseInt(d.style.top,10)-(this.xy.margin_top||0)+"px";var p=this._els.dhx_multi_day[0]; - -p.style.height=h,p.style.visibility=-1==r[0]?"hidden":"visible",p=this._els.dhx_multi_day[1],p.style.height=h,p.style.visibility=-1==r[0]?"hidden":"visible",p.className=r[0]?"dhx_multi_day_icon":"dhx_multi_day_icon_small",this._dy_shift=(r[0]+1)*n,r[0]=0}}return a};var a=["dhx_cal_navline","dhx_cal_header","dhx_multi_day","dhx_cal_data"],i=function(e){for(var t=0,i=0;i<a.length;i++){var n=a[i],l=scheduler._els[n]?scheduler._els[n][0]:null,r=0;switch(n){case"dhx_cal_navline":case"dhx_cal_header":r=parseInt(l.style.height,10); - -break;case"dhx_multi_day":r=l?l.offsetHeight:0,1==r&&(r=0);break;case"dhx_cal_data":var d=scheduler.getState().mode;if(r=l.childNodes[1]&&"month"!=d?l.childNodes[1].offsetHeight:Math.max(l.offsetHeight-1,l.scrollHeight),"month"==d){if(scheduler.config.month_day_min_height&&!e){var o=l.getElementsByTagName("tr").length;r=o*scheduler.config.month_day_min_height}e&&(l.style.height=r+"px")}if(scheduler.matrix&&scheduler.matrix[d])if(e)r+=2,l.style.height=r+"px";else{r=2;for(var s=scheduler.matrix[d],_=s.y_unit,c=0;c<_.length;c++)r+=_[c].children?s.folder_dy||s.dy:s.dy; - -}("day"==d||"week"==d)&&(r+=2)}t+=r}scheduler._obj.style.height=t+"px",e||scheduler.updateView()},n=function(){if(!scheduler.config.container_autoresize||!t)return!0;var e=scheduler.getState().mode;i(),(scheduler.matrix&&scheduler.matrix[e]||"month"==e)&&window.setTimeout(function(){i(!0)},1)};scheduler.attachEvent("onViewChange",n),scheduler.attachEvent("onXLE",n),scheduler.attachEvent("onEventChanged",n),scheduler.attachEvent("onEventCreated",n),scheduler.attachEvent("onEventAdded",n),scheduler.attachEvent("onEventDeleted",n), -scheduler.attachEvent("onAfterSchedulerResize",n),scheduler.attachEvent("onClearAll",n),scheduler.attachEvent("onBeforeExpand",function(){return t=!1,!0}),scheduler.attachEvent("onBeforeCollapse",function(){return t=!0,!0})}(); +!function(){scheduler.config.container_autoresize=!0,scheduler.config.month_day_min_height=90,scheduler.config.min_grid_size=25,scheduler.config.min_map_size=400;var e=scheduler._pre_render_events,t=!0,i=0,a=0;scheduler._pre_render_events=function(r,s){if(!scheduler.config.container_autoresize||!t)return e.apply(this,arguments);var n=this.xy.bar_height,d=this._colsS.heights,l=this._colsS.heights=[0,0,0,0,0,0,0],o=this._els.dhx_cal_data[0];if(r=this._table_view?this._pre_render_events_table(r,s):this._pre_render_events_line(r,s), +this._table_view)if(s)this._colsS.heights=d;else{var h=o.firstChild;if(h.rows){for(var _=0;_<h.rows.length;_++){if(l[_]++,l[_]*n>this._colsS.height-this.xy.month_head_height){var c=h.rows[_].cells,u=this._colsS.height-this.xy.month_head_height;1*this.config.max_month_events!==this.config.max_month_events||l[_]<=this.config.max_month_events?u=l[_]*n:(this.config.max_month_events+1)*n>this._colsS.height-this.xy.month_head_height&&(u=(this.config.max_month_events+1)*n);for(var g=0;g<c.length;g++)c[g].childNodes[1].style.height=u+"px"; +l[_]=(l[_-1]||0)+c[0].offsetHeight}l[_]=(l[_-1]||0)+h.rows[_].cells[0].offsetHeight}l.unshift(0),h.parentNode.offsetHeight<h.parentNode.scrollHeight&&!h._h_fix}else if(r.length||"visible"!=this._els.dhx_multi_day[0].style.visibility||(l[0]=-1),r.length||-1==l[0]){var f=(h.parentNode.childNodes,(l[0]+1)*n+1);a!=f+1&&(this._obj.style.height=i-a+f-1+"px"),f+="px",o.style.top=this._els.dhx_cal_navline[0].offsetHeight+this._els.dhx_cal_header[0].offsetHeight+parseInt(f,10)+"px",o.style.height=this._obj.offsetHeight-parseInt(o.style.top,10)-(this.xy.margin_top||0)+"px"; +var v=this._els.dhx_multi_day[0];v.style.height=f,v.style.visibility=-1==l[0]?"hidden":"visible",v=this._els.dhx_multi_day[1],v.style.height=f,v.style.visibility=-1==l[0]?"hidden":"visible",v.className=l[0]?"dhx_multi_day_icon":"dhx_multi_day_icon_small",this._dy_shift=(l[0]+1)*n,l[0]=0}}return r};var r=["dhx_cal_navline","dhx_cal_header","dhx_multi_day","dhx_cal_data"],s=function(e){i=0;for(var t=0;t<r.length;t++){var s=r[t],n=scheduler._els[s]?scheduler._els[s][0]:null,d=0;switch(s){case"dhx_cal_navline": +case"dhx_cal_header":d=parseInt(n.style.height,10);break;case"dhx_multi_day":d=n?n.offsetHeight-1:0,a=d;break;case"dhx_cal_data":var l=scheduler.getState().mode;if(d=n.childNodes[1]&&"month"!=l?n.childNodes[1].offsetHeight:Math.max(n.offsetHeight-1,n.scrollHeight),"month"==l){if(scheduler.config.month_day_min_height&&!e){var o=n.getElementsByTagName("tr").length;d=o*scheduler.config.month_day_min_height}e&&(n.style.height=d+"px")}else if("year"==l)d=190*scheduler.config.year_y;else if("agenda"==l){ +if(d=0,n.childNodes&&n.childNodes.length)for(var h=0;h<n.childNodes.length;h++)d+=n.childNodes[h].offsetHeight;d+2<scheduler.config.min_grid_size?d=scheduler.config.min_grid_size:d+=2}else if("week_agenda"==l){for(var _,c,u=scheduler.xy.week_agenda_scale_height+scheduler.config.min_grid_size,g=0;g<n.childNodes.length;g++){c=n.childNodes[g];for(var h=0;h<c.childNodes.length;h++){for(var f=0,v=c.childNodes[h].childNodes[1],m=0;m<v.childNodes.length;m++)f+=v.childNodes[m].offsetHeight;_=f+scheduler.xy.week_agenda_scale_height, +_=1!=g||2!=h&&3!=h?_:2*_,_>u&&(u=_)}}d=3*u}else if("map"==l){d=0;for(var p=n.querySelectorAll(".dhx_map_line"),h=0;h<p.length;h++)d+=p[h].offsetHeight;d+2<scheduler.config.min_map_size?d=scheduler.config.min_map_size:d+=2}else if(scheduler._gridView)if(d=0,n.childNodes[1].childNodes[0].childNodes&&n.childNodes[1].childNodes[0].childNodes.length){for(var p=n.childNodes[1].childNodes[0].childNodes[0].childNodes,h=0;h<p.length;h++)d+=p[h].offsetHeight;d+=2,d<scheduler.config.min_grid_size&&(d=scheduler.config.min_grid_size); +}else d=scheduler.config.min_grid_size;if(scheduler.matrix&&scheduler.matrix[l])if(e)d+=2,n.style.height=d+"px";else{d=2;for(var x=scheduler.matrix[l],b=x.y_unit,y=0;y<b.length;y++)d+=b[y].children?x.folder_dy||x.dy:x.dy}("day"==l||"week"==l||scheduler._props&&scheduler._props[l])&&(d+=2)}i+=d}scheduler._obj.style.height=i+"px",e||scheduler.updateView()},n=function(){if(!scheduler.config.container_autoresize||!t)return!0;var e=scheduler.getState().mode;s(),(scheduler.matrix&&scheduler.matrix[e]||"month"==e)&&window.setTimeout(function(){ +s(!0)},1)};scheduler.attachEvent("onViewChange",n),scheduler.attachEvent("onXLE",n),scheduler.attachEvent("onEventChanged",n),scheduler.attachEvent("onEventCreated",n),scheduler.attachEvent("onEventAdded",n),scheduler.attachEvent("onEventDeleted",n),scheduler.attachEvent("onAfterSchedulerResize",n),scheduler.attachEvent("onClearAll",n),scheduler.attachEvent("onBeforeExpand",function(){return t=!1,!0}),scheduler.attachEvent("onBeforeCollapse",function(){return t=!0,!0})}(); //# sourceMappingURL=../sources/ext/dhtmlxscheduler_container_autoresize.js.map
\ No newline at end of file diff --git a/codebase/ext/dhtmlxscheduler_cookie.js b/codebase/ext/dhtmlxscheduler_cookie.js index b0bfb40..ff6f4ec 100644 --- a/codebase/ext/dhtmlxscheduler_cookie.js +++ b/codebase/ext/dhtmlxscheduler_cookie.js @@ -1,13 +1,12 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. (c) Dinamenta, UAB. */ -!function(){function e(e,t,a){var i=e+"="+a+(t?"; "+t:"");document.cookie=i}function t(e){var t=e+"=";if(document.cookie.length>0){var a=document.cookie.indexOf(t);if(-1!=a){a+=t.length;var i=document.cookie.indexOf(";",a);return-1==i&&(i=document.cookie.length),document.cookie.substring(a,i)}}return""}var a=!0;scheduler.attachEvent("onBeforeViewChange",function(i,n,l,r){if(a&&scheduler._get_url_nav){var d=scheduler._get_url_nav();(d.date||d.mode||d.event)&&(a=!1)}if(a){a=!1;var o=t("scheduler_settings"); - -if(o){scheduler._min_date||(scheduler._min_date=r),o=unescape(o).split("@"),o[0]=this.templates.xml_date(o[0]);var s=this.isViewExists(o[1])?o[1]:l,_=isNaN(+o[0])?r:o[0];return window.setTimeout(function(){scheduler.setCurrentView(_,s)},1),!1}}var c=escape(this.templates.xml_format(r||n)+"@"+(l||i));return e("scheduler_settings","expires=Sun, 31 Jan 9999 22:00:00 GMT",c),!0});var i=scheduler._load;scheduler._load=function(){var e=arguments;if(!scheduler._date&&scheduler._load_mode){var t=this;window.setTimeout(function(){ -i.apply(t,e)},1)}else i.apply(this,e)}}(); +!function(){function e(e,t,i){var a=e+"="+i+(t?"; "+t:"");document.cookie=a}function t(e){var t=e+"=";if(document.cookie.length>0){var i=document.cookie.indexOf(t);if(-1!=i){i+=t.length;var a=document.cookie.indexOf(";",i);return-1==a&&(a=document.cookie.length),document.cookie.substring(i,a)}}return""}var i=!0;scheduler.attachEvent("onBeforeViewChange",function(a,r,s,n){if(i&&scheduler._get_url_nav){var d=scheduler._get_url_nav();(d.date||d.mode||d.event)&&(i=!1)}if(i){i=!1;var l=t("scheduler_settings"); +if(l){scheduler._min_date||(scheduler._min_date=n),l=unescape(l).split("@"),l[0]=this.templates.xml_date(l[0]);var o=this.isViewExists(l[1])?l[1]:s,h=isNaN(+l[0])?n:l[0];return window.setTimeout(function(){scheduler.setCurrentView(h,o)},1),!1}}var _=escape(this.templates.xml_format(n||r)+"@"+(s||a));return e("scheduler_settings","expires=Sun, 31 Jan 9999 22:00:00 GMT",_),!0});var a=scheduler._load;scheduler._load=function(){var e=arguments;if(!scheduler._date&&scheduler._load_mode){var t=this;window.setTimeout(function(){ +a.apply(t,e)},1)}else a.apply(this,e)}}(); //# sourceMappingURL=../sources/ext/dhtmlxscheduler_cookie.js.map
\ No newline at end of file diff --git a/codebase/ext/dhtmlxscheduler_csp.js b/codebase/ext/dhtmlxscheduler_csp.js new file mode 100644 index 0000000..4c52af9 --- /dev/null +++ b/codebase/ext/dhtmlxscheduler_csp.js @@ -0,0 +1,15 @@ +/* +@license +dhtmlxScheduler v.4.4.0 Stardard + +This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. + +(c) Dinamenta, UAB. +*/ +scheduler.date.date_to_str=function(e,t){return function(i){return e.replace(/%[a-zA-Z]/g,function(e){switch(e){case"%d":return t?scheduler.date.to_fixed(i.getUTCDate()):scheduler.date.to_fixed(i.getDate());case"%m":return t?scheduler.date.to_fixed(i.getUTCMonth()+1):scheduler.date.to_fixed(i.getMonth()+1);case"%j":return t?i.getUTCDate():i.getDate();case"%n":return t?i.getUTCMonth()+1:i.getMonth()+1;case"%y":return t?scheduler.date.to_fixed(i.getUTCFullYear()%100):scheduler.date.to_fixed(i.getFullYear()%100); +case"%Y":return t?i.getUTCFullYear():i.getFullYear();case"%D":return t?scheduler.locale.date.day_short[i.getUTCDay()]:scheduler.locale.date.day_short[i.getDay()];case"%l":return t?scheduler.locale.date.day_full[i.getUTCDay()]:scheduler.locale.date.day_full[i.getDay()];case"%M":return t?scheduler.locale.date.month_short[i.getUTCMonth()]:scheduler.locale.date.month_short[i.getMonth()];case"%F":return t?scheduler.locale.date.month_full[i.getUTCMonth()]:scheduler.locale.date.month_full[i.getMonth()];case"%h": +return t?scheduler.date.to_fixed((i.getUTCHours()+11)%12+1):scheduler.date.to_fixed((i.getHours()+11)%12+1);case"%g":return t?(i.getUTCHours()+11)%12+1:(i.getHours()+11)%12+1;case"%G":return t?i.getUTCHours():i.getHours();case"%H":return t?scheduler.date.to_fixed(i.getUTCHours()):scheduler.date.to_fixed(i.getHours());case"%i":return t?scheduler.date.to_fixed(i.getUTCMinutes()):scheduler.date.to_fixed(i.getMinutes());case"%a":return t?i.getUTCHours()>11?"pm":"am":i.getHours()>11?"pm":"am";case"%A": +return t?i.getUTCHours()>11?"PM":"AM":i.getHours()>11?"PM":"AM";case"%s":return t?scheduler.date.to_fixed(i.getUTCSeconds()):scheduler.date.to_fixed(i.getSeconds());case"%W":return t?scheduler.date.to_fixed(scheduler.date.getUTCISOWeek(i)):scheduler.date.to_fixed(scheduler.date.getISOWeek(i));default:return e}})}},scheduler.date.str_to_date=function(e,t){return function(i){for(var a=[0,0,1,0,0,0],r=i.match(/[a-zA-Z]+|[0-9]+/g),s=e.match(/%[a-zA-Z]/g),n=0;n<s.length;n++)switch(s[n]){case"%j":case"%d": +a[2]=r[n]||1;break;case"%n":case"%m":a[1]=(r[n]||1)-1;break;case"%y":a[0]=1*r[n]+(r[n]>50?1900:2e3);break;case"%g":case"%G":case"%h":case"%H":a[3]=r[n]||0;break;case"%i":a[4]=r[n]||0;break;case"%Y":a[0]=r[n]||0;break;case"%a":case"%A":a[3]=a[3]%12+("am"==(r[n]||"").toLowerCase()?0:12);break;case"%s":a[5]=r[n]||0;break;case"%M":a[1]=scheduler.locale.date.month_short_hash[r[n]]||0;break;case"%F":a[1]=scheduler.locale.date.month_full_hash[r[n]]||0}return t?new Date(Date.UTC(a[0],a[1],a[2],a[3],a[4],a[5])):new Date(a[0],a[1],a[2],a[3],a[4],a[5]); +}}; +//# sourceMappingURL=../sources/ext/dhtmlxscheduler_csp.js.map
\ No newline at end of file diff --git a/codebase/ext/dhtmlxscheduler_editors.js b/codebase/ext/dhtmlxscheduler_editors.js index b41ccde..304ea8b 100644 --- a/codebase/ext/dhtmlxscheduler_editors.js +++ b/codebase/ext/dhtmlxscheduler_editors.js @@ -1,18 +1,15 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. (c) Dinamenta, UAB. */ -scheduler.form_blocks.combo={render:function(e){e.cached_options||(e.cached_options={});var t="";return t+="<div class='"+e.type+"' style='height:"+(e.height||20)+"px;' ></div>"},set_value:function(e,t,a,i){!function(){function t(){if(e._combo&&e._combo.DOMParent){var t=e._combo;t.unload?t.unload():t.destructor&&t.destructor(),t.DOMParent=t.DOMelem=null}}t();var a=scheduler.attachEvent("onAfterLightbox",function(){t(),scheduler.detachEvent(a)})}(),window.dhx_globalImgPath=i.image_path||"/",e._combo=new dhtmlXCombo(e,i.name,e.offsetWidth-8), -i.onchange&&e._combo.attachEvent("onChange",i.onchange),i.options_height&&e._combo.setOptionHeight(i.options_height);var n=e._combo;if(n.enableFilteringMode(i.filtering,i.script_path||null,!!i.cache),i.script_path){var r=a[i.map_to];r?i.cached_options[r]?(n.addOption(r,i.cached_options[r]),n.disable(1),n.selectOption(0),n.disable(0)):dhtmlxAjax.get(i.script_path+"?id="+r+"&uid="+scheduler.uid(),function(e){var t=e.doXPath("//option")[0],a=t.childNodes[0].nodeValue;i.cached_options[r]=a,n.addOption(r,a), -n.disable(1),n.selectOption(0),n.disable(0)}):n.setComboValue("")}else{for(var l=[],d=0;d<i.options.length;d++){var o=i.options[d],s=[o.key,o.label,o.css];l.push(s)}if(n.addOption(l),a[i.map_to]){var _=n.getIndexByValue(a[i.map_to]);n.selectOption(_)}}},get_value:function(e,t,a){var i=e._combo.getSelectedValue();return a.script_path&&(a.cached_options[i]=e._combo.getSelectedText()),i},focus:function(e){}},scheduler.form_blocks.radio={render:function(e){var t="";t+="<div class='dhx_cal_ltext dhx_cal_radio' style='height:"+e.height+"px;' >"; - -for(var a=0;a<e.options.length;a++){var i=scheduler.uid();t+="<input id='"+i+"' type='radio' name='"+e.name+"' value='"+e.options[a].key+"'><label for='"+i+"'> "+e.options[a].label+"</label>",e.vertical&&(t+="<br/>")}return t+="</div>"},set_value:function(e,t,a,i){for(var n=e.getElementsByTagName("input"),r=0;r<n.length;r++){n[r].checked=!1;var l=a[i.map_to]||t;n[r].value==l&&(n[r].checked=!0)}},get_value:function(e,t,a){for(var i=e.getElementsByTagName("input"),n=0;n<i.length;n++)if(i[n].checked)return i[n].value; - -},focus:function(e){}},scheduler.form_blocks.checkbox={render:function(e){return scheduler.config.wide_form?'<div class="dhx_cal_wide_checkbox" '+(e.height?"style='height:"+e.height+"px;'":"")+"></div>":""},set_value:function(e,t,a,i){e=document.getElementById(i.id);var n=scheduler.uid(),r="undefined"!=typeof i.checked_value?t==i.checked_value:!!t;e.className+=" dhx_cal_checkbox";var l="<input id='"+n+"' type='checkbox' value='true' name='"+i.name+"'"+(r?"checked='true'":"")+"'>",d="<label for='"+n+"'>"+(scheduler.locale.labels["section_"+i.name]||i.name)+"</label>"; - -if(scheduler.config.wide_form?(e.innerHTML=d,e.nextSibling.innerHTML=l):e.innerHTML=l+d,i.handler){var o=e.getElementsByTagName("input")[0];o.onclick=i.handler}},get_value:function(e,t,a){e=document.getElementById(a.id);var i=e.getElementsByTagName("input")[0];return i||(i=e.nextSibling.getElementsByTagName("input")[0]),i.checked?a.checked_value||!0:a.unchecked_value||!1},focus:function(e){}}; +scheduler.form_blocks.combo={render:function(e){e.cached_options||(e.cached_options={});var t="";return t+="<div class='"+e.type+"' style='height:"+(e.height||20)+"px;' ></div>"},set_value:function(e,t,a,r){!function(){function t(){if(e._combo&&e._combo.DOMParent){var t=e._combo;t.unload?t.unload():t.destructor&&t.destructor(),t.DOMParent=t.DOMelem=null}}t();var a=scheduler.attachEvent("onAfterLightbox",function(){t(),scheduler.detachEvent(a)})}(),window.dhx_globalImgPath=r.image_path||"/",e._combo=new dhtmlXCombo(e,r.name,e.offsetWidth-8), +r.onchange&&e._combo.attachEvent("onChange",r.onchange),r.options_height&&e._combo.setOptionHeight(r.options_height);var i=e._combo;if(i.enableFilteringMode(r.filtering,r.script_path||null,!!r.cache),r.script_path){var s=a[r.map_to];s?r.cached_options[s]?(i.addOption(s,r.cached_options[s]),i.disable(1),i.selectOption(0),i.disable(0)):dhtmlxAjax.get(r.script_path+"?id="+s+"&uid="+scheduler.uid(),function(e){var t=e.doXPath("//option")[0],a=t.childNodes[0].nodeValue;r.cached_options[s]=a,i.addOption(s,a), +i.disable(1),i.selectOption(0),i.disable(0)}):i.setComboValue("")}else{for(var n=[],d=0;d<r.options.length;d++){var l=r.options[d],o=[l.key,l.label,l.css];n.push(o)}if(i.addOption(n),a[r.map_to]){var h=i.getIndexByValue(a[r.map_to]);i.selectOption(h)}}},get_value:function(e,t,a){var r=e._combo.getSelectedValue();return a.script_path&&(a.cached_options[r]=e._combo.getSelectedText()),r},focus:function(e){}},scheduler.form_blocks.radio={render:function(e){var t="";t+="<div class='dhx_cal_ltext dhx_cal_radio' style='height:"+e.height+"px;' >"; +for(var a=0;a<e.options.length;a++){var r=scheduler.uid();t+="<input id='"+r+"' type='radio' name='"+e.name+"' value='"+e.options[a].key+"'><label for='"+r+"'> "+e.options[a].label+"</label>",e.vertical&&(t+="<br/>")}return t+="</div>"},set_value:function(e,t,a,r){for(var i=e.getElementsByTagName("input"),s=0;s<i.length;s++){i[s].checked=!1;var n=a[r.map_to]||t;i[s].value==n&&(i[s].checked=!0)}},get_value:function(e,t,a){for(var r=e.getElementsByTagName("input"),i=0;i<r.length;i++)if(r[i].checked)return r[i].value; +},focus:function(e){}},scheduler.form_blocks.checkbox={render:function(e){return scheduler.config.wide_form?'<div class="dhx_cal_wide_checkbox" '+(e.height?"style='height:"+e.height+"px;'":"")+"></div>":""},set_value:function(e,t,a,r){e=document.getElementById(r.id);var i=scheduler.uid(),s="undefined"!=typeof r.checked_value?t==r.checked_value:!!t;e.className+=" dhx_cal_checkbox";var n="<input id='"+i+"' type='checkbox' value='true' name='"+r.name+"'"+(s?"checked='true'":"")+"'>",d="<label for='"+i+"'>"+(scheduler.locale.labels["section_"+r.name]||r.name)+"</label>"; +if(scheduler.config.wide_form?(e.innerHTML=d,e.nextSibling.innerHTML=n):e.innerHTML=n+d,r.handler){var l=e.getElementsByTagName("input")[0];l.onclick=r.handler}},get_value:function(e,t,a){e=document.getElementById(a.id);var r=e.getElementsByTagName("input")[0];return r||(r=e.nextSibling.getElementsByTagName("input")[0]),r.checked?a.checked_value||!0:a.unchecked_value||!1},focus:function(e){}}; //# sourceMappingURL=../sources/ext/dhtmlxscheduler_editors.js.map
\ No newline at end of file diff --git a/codebase/ext/dhtmlxscheduler_expand.js b/codebase/ext/dhtmlxscheduler_expand.js index bf92001..cac302c 100644 --- a/codebase/ext/dhtmlxscheduler_expand.js +++ b/codebase/ext/dhtmlxscheduler_expand.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. diff --git a/codebase/ext/dhtmlxscheduler_html_templates.js b/codebase/ext/dhtmlxscheduler_html_templates.js index c9298d7..5d497c5 100644 --- a/codebase/ext/dhtmlxscheduler_html_templates.js +++ b/codebase/ext/dhtmlxscheduler_html_templates.js @@ -1,10 +1,10 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. (c) Dinamenta, UAB. */ -scheduler.attachEvent("onTemplatesReady",function(){for(var e=document.body.getElementsByTagName("DIV"),t=0;t<e.length;t++){var a=e[t].className||"";if(a=a.split(":"),2==a.length&&"template"==a[0]){var i='return "'+(e[t].innerHTML||"").replace(/\"/g,'\\"').replace(/[\n\r]+/g,"")+'";';i=unescape(i).replace(/\{event\.([a-z]+)\}/g,function(e,t){return'"+ev.'+t+'+"'}),scheduler.templates[a[1]]=Function("start","end","ev",i),e[t].style.display="none"}}}); +scheduler.attachEvent("onTemplatesReady",function(){for(var e=document.body.getElementsByTagName("DIV"),t=0;t<e.length;t++){var r=e[t].className||"";if(r=r.split(":"),2==r.length&&"template"==r[0]){var a='return "'+(e[t].innerHTML||"").replace(/\"/g,'\\"').replace(/[\n\r]+/g,"")+'";';a=unescape(a).replace(/\{event\.([a-z]+)\}/g,function(e,t){return'"+ev.'+t+'+"'}),scheduler.templates[r[1]]=Function("start","end","ev",a),e[t].style.display="none"}}}); //# sourceMappingURL=../sources/ext/dhtmlxscheduler_html_templates.js.map
\ No newline at end of file diff --git a/codebase/ext/dhtmlxscheduler_key_nav.js b/codebase/ext/dhtmlxscheduler_key_nav.js index f81bb20..1fbad35 100644 --- a/codebase/ext/dhtmlxscheduler_key_nav.js +++ b/codebase/ext/dhtmlxscheduler_key_nav.js @@ -1,15 +1,92 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. (c) Dinamenta, UAB. */ -scheduler._temp_key_scope=function(){function e(e){delete e.rec_type,delete e.rec_pattern,delete e.event_pid,delete e.event_length}scheduler.config.key_nav=!0;var t,a,i=null;scheduler.attachEvent("onMouseMove",function(e,i){t=scheduler.getActionData(i).date,a=scheduler.getActionData(i).section}),scheduler._make_pasted_event=function(i){var n=i.end_date-i.start_date,r=scheduler._lame_copy({},i);if(e(r),r.start_date=new Date(t),r.end_date=new Date(r.start_date.valueOf()+n),a){var l=scheduler._get_section_property(); - -scheduler.config.multisection?r[l]=i[l]:r[l]=a}return r},scheduler._do_paste=function(e,t,a){scheduler.addEvent(t),scheduler.callEvent("onEventPasted",[e,t,a])},scheduler._is_key_nav_active=function(){return this._is_initialized()&&!this._is_lightbox_open()&&this.config.key_nav?!0:!1},dhtmlxEvent(document,_isOpera?"keypress":"keydown",function(e){if(!scheduler._is_key_nav_active())return!0;if(e=e||event,37==e.keyCode||39==e.keyCode){e.cancelBubble=!0;var t=scheduler.date.add(scheduler._date,37==e.keyCode?-1:1,scheduler._mode); - -return scheduler.setCurrentView(t),!0}var a=scheduler._select_id;if(e.ctrlKey&&67==e.keyCode)return a&&(scheduler._buffer_id=a,i=!0,scheduler.callEvent("onEventCopied",[scheduler.getEvent(a)])),!0;if(e.ctrlKey&&88==e.keyCode&&a){i=!1,scheduler._buffer_id=a;var n=scheduler.getEvent(a);scheduler.updateEvent(n.id),scheduler.callEvent("onEventCut",[n])}if(e.ctrlKey&&86==e.keyCode){var n=scheduler.getEvent(scheduler._buffer_id);if(n){var r=scheduler._make_pasted_event(n);if(i)r.id=scheduler.uid(),scheduler._do_paste(i,r,n); -else{var l=scheduler.callEvent("onBeforeEventChanged",[r,e,!1,n]);l&&(scheduler._do_paste(i,r,n),i=!0)}}return!0}})},scheduler._temp_key_scope(); +!function(){function e(e){function t(t){var a={minicalButton:e.$keyboardNavigation.MinicalButton,minicalDate:e.$keyboardNavigation.MinicalCell,scheduler:e.$keyboardNavigation.SchedulerNode,dataArea:e.$keyboardNavigation.DataArea,timeSlot:e.$keyboardNavigation.TimeSlot,event:e.$keyboardNavigation.Event};return a[t]||a.scheduler}e.config.key_nav=!0,e.config.key_nav_step=30,e.addShortcut=function(e,a,i){var r=t(i);r&&r.prototype.bind(e,a)},e.removeShortcut=function(e,a){var i=t(a);i&&i.prototype.unbind(e); +},e.focus=function(){if(e.config.key_nav){var t=e.$keyboardNavigation.dispatcher;t.enable();var a=t.getActiveNode();!a||a instanceof e.$keyboardNavigation.MinicalButton||a instanceof e.$keyboardNavigation.MinicalCell?t.setDefaultNode():t.focusNode(t.getActiveNode())}},e.$keyboardNavigation={},e._compose=function(){for(var e=Array.prototype.slice.call(arguments,0),t={},a=0;a<e.length;a++){var i=e[a];"function"==typeof i&&(i=new i);for(var r in i)t[r]=i[r]}return t},e.$keyboardNavigation.shortcuts={ +createCommand:function(){return{modifiers:{shift:!1,alt:!1,ctrl:!1,meta:!1},keyCode:null}},parse:function(e){for(var t=[],a=this.getExpressions(this.trim(e)),i=0;i<a.length;i++){for(var r=this.getWords(a[i]),n=this.createCommand(),s=0;s<r.length;s++)this.commandKeys[r[s]]?n.modifiers[r[s]]=!0:this.specialKeys[r[s]]?n.keyCode=this.specialKeys[r[s]]:n.keyCode=r[s].charCodeAt(0);t.push(n)}return t},getCommandFromEvent:function(e){var t=this.createCommand();t.modifiers.shift=!!e.shiftKey,t.modifiers.alt=!!e.altKey, +t.modifiers.ctrl=!!e.ctrlKey,t.modifiers.meta=!!e.metaKey,t.keyCode=e.which||e.keyCode;var a=String.fromCharCode(t.keyCode);return a&&(t.keyCode=a.toLowerCase().charCodeAt(0)),t},getHashFromEvent:function(e){return this.getHash(this.getCommandFromEvent(e))},getHash:function(e){var t=[];for(var a in e.modifiers)e.modifiers[a]&&t.push(a);return t.push(e.keyCode),t.join(this.junctionChar)},getExpressions:function(e){return e.split(this.junctionChar)},getWords:function(e){return e.split(this.combinationChar); +},trim:function(e){return e.replace(/\s/g,"")},junctionChar:",",combinationChar:"+",commandKeys:{shift:16,alt:18,ctrl:17,meta:!0},specialKeys:{backspace:8,tab:9,enter:13,esc:27,space:32,up:38,down:40,left:37,right:39,home:36,end:35,pageup:33,pagedown:34,"delete":46,insert:45,plus:107,f1:112,f2:113,f3:114,f4:115,f5:116,f6:117,f7:118,f8:119,f9:120,f10:121,f11:122,f12:123}},e.$keyboardNavigation.EventHandler={_handlers:null,findHandler:function(t){this._handlers||(this._handlers={});var a=e.$keyboardNavigation.shortcuts,i=a.getHash(t); +return this._handlers[i]},doAction:function(e,t){var a=this.findHandler(e);a&&(a.call(this,t),t.preventDefault?t.preventDefault():t.returnValue=!1)},bind:function(t,a){this._handlers||(this._handlers={});for(var i=e.$keyboardNavigation.shortcuts,r=i.parse(t),n=0;n<r.length;n++)this._handlers[i.getHash(r[n])]=a},unbind:function(t){for(var a=e.$keyboardNavigation.shortcuts,i=a.parse(t),r=0;r<i.length;r++)this._handlers[a.getHash(i[r])]&&delete this._handlers[a.getHash(i[r])]},bindAll:function(e){for(var t in e)this.bind(t,e[t]); +},initKeys:function(){this._handlers||(this._handlers={}),this.keys&&this.bindAll(this.keys)}},function(){e.$keyboardNavigation.getFocusableNodes=e._getFocusableNodes,e.$keyboardNavigation.trapFocus=function(t,a){if(9!=a.keyCode)return!1;for(var i=e.$keyboardNavigation.getFocusableNodes(t),r=document.activeElement,n=-1,s=0;s<i.length;s++)if(i[s]==r){n=s;break}var d,o;if(a.shiftKey){if(d=0>=n?i[i.length-1]:n-1,o=i[d])return o.focus(),a.preventDefault(),!0}else if(d=n>=i.length-1?0:n+1,o=i[d])return o.focus(), +a.preventDefault(),!0;return!1}}(),e.$keyboardNavigation.marker={clear:function(){for(var t=e.$container.querySelectorAll(".dhx_focus_slot"),a=0;a<t.length;a++)t[a].parentNode.removeChild(t[a])},createElement:function(){var e=document.createElement("DIV");return e.setAttribute("tabindex",-1),e.className="dhx_focus_slot",e},renderMultiple:function(t,a,i){for(var r=[],n=new Date(t),s=new Date(Math.min(a.valueOf(),e.date.add(e.date.day_start(new Date(t)),1,"day").valueOf()));n.valueOf()<a.valueOf();)r=r.concat(i.call(this,n,new Date(Math.min(s.valueOf(),a.valueOf())))), +n=e.date.day_start(e.date.add(n,1,"day")),s=e.date.day_start(e.date.add(n,1,"day")),s=new Date(Math.min(s.valueOf(),a.valueOf()));return r},render:function(t,a,i){this.clear();var r=[],n=e.$keyboardNavigation.TimeSlot.prototype._modes,s=e.$keyboardNavigation.TimeSlot.prototype._getMode();switch(s){case n.units:r=this.renderVerticalMarker(t,a,i);break;case n.timeline:r=this.renderTimelineMarker(t,a,i);break;case n.year:r=r.concat(this.renderMultiple(t,a,this.renderYearMarker));break;case n.month:r=this.renderMonthMarker(t,a); +break;case n.weekAgenda:r=r.concat(this.renderMultiple(t,a,this.renderWeekAgendaMarker));break;case n.list:r=this.renderAgendaMarker(t,a);break;case n.dayColumns:r=r.concat(this.renderMultiple(t,a,this.renderVerticalMarker))}this.addWaiAriaLabel(r,t,a,i),this.addDataAttributes(r,t,a,i);for(var d=r.length-1;d>=0;d--)if(r[d].offsetWidth)return r[d];return null},addDataAttributes:function(t,a,i,r){for(var n=e.date.date_to_str(e.config.api_date),s=n(a),d=n(i),o=0;o<t.length;o++)t[o].setAttribute("data-start-date",s), +t[o].setAttribute("data-end-date",d),r&&t[o].setAttribute("data-section",r)},addWaiAriaLabel:function(t,a,i,r){var n="",s=e.getState(),d=s.mode,o=!1;n+=e.templates.day_date(a),e.date.day_start(new Date(a)).valueOf()!=a.valueOf()&&(n+=" "+e.templates.hour_scale(a),o=!0),e.date.day_start(new Date(a)).valueOf()!=e.date.day_start(new Date(i)).valueOf()&&(n+=" - "+e.templates.day_date(i),(o||e.date.day_start(new Date(i)).valueOf()!=i.valueOf())&&(n+=" "+e.templates.hour_scale(i))),r&&(e.matrix&&e.matrix[d]?n+=", "+e.templates[d+"_scale_label"](r.key,r.label,r):e._props&&e._props[d]&&(n+=", "+e.templates[d+"_scale_text"](r.key,r.label,r))); +for(var l=0;l<t.length;l++)e._waiAria.setAttributes(t[l],{"aria-label":n,"aria-live":"polite"})},renderWeekAgendaMarker:function(t,a){for(var i=e.$container.querySelectorAll(".dhx_wa_day_cont .dhx_wa_scale_bar"),r=e.date.week_start(new Date(e.getState().min_date)),n=-1,s=e.date.day_start(new Date(t)),d=0;d<i.length&&(n++,e.date.day_start(new Date(r)).valueOf()!=s.valueOf());d++)r=e.date.add(r,1,"day");return-1!=n?this._wrapDiv(i[n]):[]},_wrapDiv:function(e){var t=this.createElement();return t.style.top=e.offsetTop+"px", +t.style.left=e.offsetLeft+"px",t.style.width=e.offsetWidth+"px",t.style.height=e.offsetHeight+"px",e.appendChild(t),[t]},renderYearMarker:function(t,a){var i=e._get_year_cell(t);i.style.position="relative";var r=this.createElement();return r.style.top="0px",r.style.left="0px",r.style.width="100%",r.style.height="100%",i.appendChild(r),[r]},renderAgendaMarker:function(t,a){var i=this.createElement();return i.style.height="1px",i.style.width="100%",i.style.opacity=1,i.style.top="0px",i.style.left="0px", +e.$container.querySelector(".dhx_cal_data").appendChild(i),[i]},renderTimelineMarker:function(t,a,i){var r=e._lame_copy({},e.matrix[e._mode]),n=r._scales;r.round_position=!1;var s=[],d=t?new Date(t):e._min_date,o=a?new Date(a):e._max_date;if(d.valueOf()<e._min_date.valueOf()&&(d=new Date(e._min_date)),o.valueOf()>e._max_date.valueOf()&&(o=new Date(e._max_date)),!r._trace_x)return s;for(var l=0;l<r._trace_x.length&&!e._is_column_visible(r._trace_x[l]);l++);if(l==r._trace_x.length)return s;var c=n[i]; +if(!(a>d&&o>t))return s;var h=this.createElement(),_=e._timeline_getX({start_date:t},!1,r)-1,u=e._timeline_getX({start_date:a},!1,r)-1,v=r._section_height[i]-1||r.dy-1,g=0;e._isRender("cell")&&(g=c.offsetTop,_+=r.dx,u+=r.dx,c=e.$container.querySelector(".dhx_cal_data"));var f=Math.max(1,u-_-1);return h.style.cssText="height: "+v+"px; left: "+_+"px; width: "+f+"px; top: "+g+"px;",c.insertBefore(h,c.firstChild),s.push(h),s},renderMonthCell:function(t){for(var a=e.$container.querySelectorAll(".dhx_month_head"),i=[],r=0;r<a.length;r++)i.push(a[r].parentNode); +for(var n=e.date.week_start(new Date(e.getState().min_date)),s=-1,d=0,o=-1,l=n,c=e.date.day_start(new Date(t)),r=0;r<i.length&&(s++,6==o?(d++,o=0):o++,e.date.day_start(new Date(l)).valueOf()!=c.valueOf());r++)l=e.date.add(l,1,"day");if(-1==s)return[];var h=e._colsS[o],_=e._colsS.heights[d],u=this.createElement();u.style.top=_+"px",u.style.left=h+"px",u.style.width=e._cols[o]+"px",u.style.height=(e._colsS.heights[d+1]-_||e._colsS.height)+"px";var v=e.$container.querySelector(".dhx_cal_data"),g=v.querySelector("table"); +return g.nextSibling?v.insertBefore(u,g.nextSibling):v.appendChild(u),u},renderMonthMarker:function(t,a){for(var i=[],r=t;r.valueOf()<a.valueOf();)i.push(this.renderMonthCell(r)),r=e.date.add(r,1,"day");return i},renderVerticalMarker:function(t,a,i){var r=e.locate_holder_day(t),n=[],s=null,d=e.config;if(e._ignores[r])return n;if(e._props&&e._props[e._mode]&&i){var o=e._props[e._mode];r=o.order[i];var l=o.order[i];o.days>1?r=e.locate_holder_day(t)+l:(r=l,o.size&&r>o.position+o.size&&(r=0))}if(s=e.locate_holder(r), +!s||s.querySelector(".dhx_scale_hour"))return document.createElement("div");var c=Math.max(60*t.getHours()+t.getMinutes(),60*d.first_hour),h=Math.min(60*a.getHours()+a.getMinutes(),60*d.last_hour);if(!h&&e.date.day_start(new Date(a)).valueOf()>e.date.day_start(new Date(t)).valueOf()&&(h=60*d.last_hour),c>=h)return[];var _=this.createElement(),u=e.config.hour_size_px*d.last_hour+1,v=36e5;return _.style.top=Math.round((60*c*1e3-e.config.first_hour*v)*e.config.hour_size_px/v)%u+"px",_.style.lineHeight=_.style.height=Math.max(Math.round(60*(h-c)*1e3*e.config.hour_size_px/v)%u,1)+"px", +_.style.width="100%",s.appendChild(_),n.push(_),n[0]}},e.$keyboardNavigation.SchedulerNode=function(){},e.$keyboardNavigation.SchedulerNode.prototype=e._compose(e.$keyboardNavigation.EventHandler,{getDefaultNode:function(){var t=new e.$keyboardNavigation.TimeSlot;return t.isValid()||(t=t.fallback()),t},_modes:{month:"month",year:"year",dayColumns:"dayColumns",timeline:"timeline",units:"units",weekAgenda:"weekAgenda",list:"list"},getMode:function(){var t=e.getState(),a=t.mode;return e.matrix&&e.matrix[a]?this._modes.timeline:e._props&&e._props[a]?this._modes.units:"month"==a?this._modes.month:"year"==a?this._modes.year:"week_agenda"==a?this._modes.weekAgenda:"map"==a||"agenda"==a||e._grid&&e["grid_"+a]?this._modes.list:this._modes.dayColumns; +},focus:function(){e.focus()},blur:function(){},disable:function(){e.$container.setAttribute("tabindex","0")},enable:function(){e.$container&&e.$container.removeAttribute("tabindex")},isEnabled:function(){return e.$container.hasAttribute("tabindex")},_compareEvents:function(e,t){return e.start_date.valueOf()==t.start_date.valueOf()?e.id>t.id?1:-1:e.start_date.valueOf()>t.start_date.valueOf()?1:-1},_pickEvent:function(t,a,i,r){var n=e.getState();t=new Date(Math.max(n.min_date.valueOf(),t.valueOf())), +a=new Date(Math.min(n.max_date.valueOf(),a.valueOf()));var s=e.getEvents(t,a);s.sort(this._compareEvents),r&&(s=s.reverse());for(var d=!!i,o=0;o<s.length&&d;o++)s[o].id==i&&(d=!1),s.splice(o,1),o--;return s[0]},nextEventHandler:function(t){var a=e.$keyboardNavigation.dispatcher.activeNode,i=t||a&&a.eventId,r=null;if(i&&e.getEvent(i)){var n=e.getEvent(i);r=e.$keyboardNavigation.SchedulerNode.prototype._pickEvent(n.start_date,e.date.add(n.start_date,1,"year"),n.id,!1)}if(!r&&!t){var s=e.getState();r=e.$keyboardNavigation.SchedulerNode.prototype._pickEvent(s.min_date,e.date.add(s.min_date,1,"year"),null,!1); +}if(r){var d=new e.$keyboardNavigation.Event(r.id);d.isValid()?(a&&a.blur(),e.$keyboardNavigation.dispatcher.setActiveNode(d)):this.nextEventHandler(r.id)}},prevEventHandler:function(t){var a=e.$keyboardNavigation.dispatcher.activeNode,i=t||a&&a.eventId,r=null;if(i&&e.getEvent(i)){var n=e.getEvent(i);r=e.$keyboardNavigation.SchedulerNode.prototype._pickEvent(e.date.add(n.end_date,-1,"year"),n.end_date,n.id,!0)}if(!r&&!t){var s=e.getState();r=e.$keyboardNavigation.SchedulerNode.prototype._pickEvent(e.date.add(s.max_date,-1,"year"),s.max_date,null,!0); +}if(r){var d=new e.$keyboardNavigation.Event(r.id);d.isValid()?(a&&a.blur(),e.$keyboardNavigation.dispatcher.setActiveNode(d)):this.prevEventHandler(r.id)}},keys:{"alt+1, alt+2, alt+3, alt+4, alt+5, alt+6, alt+7, alt+8, alt+9":function(t){var a=e.$keyboardNavigation.HeaderCell.prototype.getNodes(".dhx_cal_navline .dhx_cal_tab"),i=t.key;void 0===i&&(i=t.keyCode-48),a[1*i-1]&&a[1*i-1].click()},"ctrl+left,meta+left":function(t){e._click.dhx_cal_prev_button()},"ctrl+right,meta+right":function(t){e._click.dhx_cal_next_button(); +},"ctrl+up,meta+up":function(t){var a=e.$container.querySelector(".dhx_cal_data");a.scrollTop-=20},"ctrl+down,meta+down":function(t){var a=e.$container.querySelector(".dhx_cal_data");a.scrollTop+=20},e:function(){this.nextEventHandler()},home:function(){e.setCurrentView(new Date)},"shift+e":function(){this.prevEventHandler()},"ctrl+enter,meta+enter":function(){e.addEventNow({start_date:new Date(e.getState().date)})},"ctrl+c,meta+c":function(t){e._key_nav_copy_paste(t)},"ctrl+v,meta+v":function(t){ +e._key_nav_copy_paste(t)},"ctrl+x,meta+x":function(t){e._key_nav_copy_paste(t)}}}),e.$keyboardNavigation.SchedulerNode.prototype.bindAll(e.$keyboardNavigation.SchedulerNode.prototype.keys),e.$keyboardNavigation.KeyNavNode=function(){},e.$keyboardNavigation.KeyNavNode.prototype=e._compose(e.$keyboardNavigation.EventHandler,{isValid:function(){return!0},fallback:function(){return null},moveTo:function(t){e.$keyboardNavigation.dispatcher.setActiveNode(t)},compareTo:function(e){if(!e)return!1;for(var t in this){ +if(!!this[t]!=!!e[t])return!1;var a=!(!this[t]||!this[t].toString),i=!(!e[t]||!e[t].toString);if(i!=a)return!1;if(i&&a){if(e[t].toString()!=this[t].toString())return!1}else if(e[t]!=this[t])return!1}return!0},getNode:function(){},focus:function(){var e=this.getNode();e&&(e.setAttribute("tabindex","-1"),e.focus&&e.focus())},blur:function(){var e=this.getNode();e&&e.setAttribute("tabindex","-1")}}),e.$keyboardNavigation.HeaderCell=function(e){this.index=e||0},e.$keyboardNavigation.HeaderCell.prototype=e._compose(e.$keyboardNavigation.KeyNavNode,{ +getNode:function(e){e=e||this.index||0;var t=this.getNodes();return t[e]?t[e]:void 0},getNodes:function(t){t=t||[".dhx_cal_navline .dhx_cal_prev_button",".dhx_cal_navline .dhx_cal_next_button",".dhx_cal_navline .dhx_cal_today_button",".dhx_cal_navline .dhx_cal_tab"].join(", ");var a=Array.prototype.slice.call(e.$container.querySelectorAll(t));return a.sort(function(e,t){return e.offsetLeft-t.offsetLeft}),a},_handlers:null,isValid:function(){return!!this.getNode(this.index)},fallback:function(){var t=this.getNode(0); +return t||(t=new e.$keyboardNavigation.TimeSlot),t},keys:{left:function(){var t=this.index-1;0>t&&(t=this.getNodes().length-1),this.moveTo(new e.$keyboardNavigation.HeaderCell(t))},right:function(){var t=this.index+1;t>=this.getNodes().length&&(t=0),this.moveTo(new e.$keyboardNavigation.HeaderCell(t))},down:function(){this.moveTo(new e.$keyboardNavigation.TimeSlot)},enter:function(){var e=this.getNode();e&&e.click()}}}),e.$keyboardNavigation.HeaderCell.prototype.bindAll(e.$keyboardNavigation.HeaderCell.prototype.keys), +e.$keyboardNavigation.Event=function(t){if(this.eventId=null,e.getEvent(t)){var a=e.getEvent(t);this.start=new Date(a.start_date),this.end=new Date(a.end_date),this.section=this._getSection(a),this.eventId=t}},e.$keyboardNavigation.Event.prototype=e._compose(e.$keyboardNavigation.KeyNavNode,{_getNodes:function(){return Array.prototype.slice.call(e.$container.querySelectorAll("[event_id]"))},_modes:e.$keyboardNavigation.SchedulerNode.prototype._modes,getMode:e.$keyboardNavigation.SchedulerNode.prototype.getMode, +_handlers:null,isValid:function(){return!(!e.getEvent(this.eventId)||!this.getNode())},fallback:function(){var t=this._getNodes()[0],a=null;if(t&&e._locate_event(t)){var i=e._locate_event(t);a=new e.$keyboardNavigation.Event(i)}else a=new e.$keyboardNavigation.TimeSlot;return a},getNode:function(){return e.$container.querySelector("[event_id='"+this.eventId+"']")},focus:function(){var t=e.getEvent(this.eventId),a=e.getState();(t.start_date.valueOf()>a.max_date.valueOf()||t.end_date.valueOf()<=a.min_date.valueOf())&&e.setCurrentView(t.start_date), +e.$keyboardNavigation.KeyNavNode.prototype.focus.apply(this)},blur:function(){e.$keyboardNavigation.KeyNavNode.prototype.blur.apply(this)},_getSection:function(t){var a=null,i=e.getState().mode;if(e.matrix&&e.matrix[i]){var r=e.matrix[e.getState().mode];a=t[r.y_property]}else if(e._props&&e._props[i]){var n=e._props[i];a=t[n.map_to]}return a},_moveToSlot:function(t){var a=e.getEvent(this.eventId);if(a){var i=this._getSection(a),r=new e.$keyboardNavigation.TimeSlot(a.start_date,null,i);this.moveTo(r.nextSlot(r,t)); +}else this.moveTo(new e.$keyboardNavigation.TimeSlot)},keys:{left:function(){this._moveToSlot("left")},right:function(){this._moveToSlot("right")},down:function(){this.getMode()==this._modes.list?e.$keyboardNavigation.SchedulerNode.prototype.nextEventHandler():this._moveToSlot("down")},space:function(){var t=this.getNode();t&&t.click?t.click():this.moveTo(new e.$keyboardNavigation.TimeSlot)},up:function(){this.getMode()==this._modes.list?e.$keyboardNavigation.SchedulerNode.prototype.prevEventHandler():this._moveToSlot("up"); +},"delete":function(){e.getEvent(this.eventId)?e._click.buttons["delete"](this.eventId):this.moveTo(new e.$keyboardNavigation.TimeSlot)},enter:function(){e.getEvent(this.eventId)?e.showLightbox(this.eventId):this.moveTo(new e.$keyboardNavigation.TimeSlot)}}}),e.$keyboardNavigation.Event.prototype.bindAll(e.$keyboardNavigation.Event.prototype.keys),e.$keyboardNavigation.TimeSlot=function(t,a,i,r){var n=e.getState(),s=e.matrix&&e.matrix[n.mode];t||(s?(t=e.date[s.name+"_start"](new Date(n.date)),t=this.findVisibleColumn(t)):(t=new Date(e.getState().min_date), +t=this.findVisibleColumn(t),t.setHours(e.config.first_hour))),a||(a=s?e.date.add(t,s.x_step,s.x_unit):e.date.add(t,e.config.key_nav_step,"minute")),this.section=i||this._getDefaultSection(),this.start_date=new Date(t),this.end_date=new Date(a),this.movingDate=r||null},e.$keyboardNavigation.TimeSlot.prototype=e._compose(e.$keyboardNavigation.KeyNavNode,{_handlers:null,clone:function(t){return new e.$keyboardNavigation.TimeSlot(t.start_date,t.end_date,t.section,t.movingDate)},_getMultisectionView:function(){ +var t,a=e.getState();return e._props&&e._props[a.mode]?t=e._props[a.mode]:e.matrix&&e.matrix[a.mode]&&(t=e.matrix[a.mode]),t},_getDefaultSection:function(){var e=null,t=this._getMultisectionView();return t&&!e&&(e=this._getNextSection()),e},_getNextSection:function(e,t){var a=this._getMultisectionView(),i=a.order[e],r=i;r=void 0!==i?i+t:a.size&&a.position?a.position:0,r=0>r?r=(a.options||a.y_unit).length-1:r;var n=a.options||a.y_unit;return n[r]?n[r].key:null},isValid:function(){var t=e.getState(),a=!(this.start_date.valueOf()<t.min_date.valueOf()||this.start_date.valueOf()>=t.max_date.valueOf()); +if(!a)return!1;if(!this.isVisible(this.start_date,this.end_date))return!1;var i=this._getMultisectionView();return i?void 0!==i.order[this.section]:!0},fallback:function(){var t=new e.$keyboardNavigation.TimeSlot;return t.isValid()?t:new e.$keyboardNavigation.DataArea},getNodes:function(){return Array.prototype.slice.call(e.$container.querySelectorAll(".dhx_focus_slot"))},getNode:function(){return this.getNodes()[0]},focus:function(){e.$keyboardNavigation.marker.render(this.start_date,this.end_date,this.section), +e.$keyboardNavigation.KeyNavNode.prototype.focus.apply(this),e.$keyboardNavigation._pasteDate=this.start_date,e.$keyboardNavigation._pasteSection=this.section},blur:function(){e.$keyboardNavigation.KeyNavNode.prototype.blur.apply(this),e.$keyboardNavigation.marker.clear()},_modes:e.$keyboardNavigation.SchedulerNode.prototype._modes,_getMode:e.$keyboardNavigation.SchedulerNode.prototype.getMode,addMonthDate:function(t,a,i){var r;switch(a){case"up":r=e.date.add(t,-1,"week");break;case"down":r=e.date.add(t,1,"week"); +break;case"left":r=e.date.day_start(e.date.add(t,-1,"day")),r=this.findVisibleColumn(r,-1);break;case"right":r=e.date.day_start(e.date.add(t,1,"day")),r=this.findVisibleColumn(r,1);break;default:r=e.date.day_start(new Date(t))}var n=e.getState();return(t.valueOf()<n.min_date.valueOf()||!i&&t.valueOf()>=n.max_date.valueOf())&&(r=new Date(n.min_date)),r},nextMonthSlot:function(t,a,i){var r,n;return r=this.addMonthDate(t.start_date,a,i),r.setHours(e.config.first_hour),n=new Date(r),n.setHours(e.config.last_hour), +{start_date:r,end_date:n}},_alignTimeSlot:function(t,a,i,r){for(var n=new Date(a);n.valueOf()<t.valueOf();)n=e.date.add(n,r,i);return n.valueOf()>t.valueOf()&&(n=e.date.add(n,-r,i)),n},nextTimelineSlot:function(t,a,i){var r=e.getState(),n=e.matrix[r.mode],s=this._alignTimeSlot(t.start_date,e.date[n.name+"_start"](new Date(t.start_date)),n.x_unit,n.x_step),d=this._alignTimeSlot(t.end_date,e.date[n.name+"_start"](new Date(t.end_date)),n.x_unit,n.x_step);d.valueOf()<=s.valueOf()&&(d=e.date.add(s,n.x_step,n.x_unit)); +var o=this.clone(t);switch(o.start_date=s,o.end_date=d,o.section=t.section||this._getNextSection(),a){case"up":o.section=this._getNextSection(t.section,-1);break;case"down":o.section=this._getNextSection(t.section,1);break;case"left":o.start_date=this.findVisibleColumn(e.date.add(o.start_date,-n.x_step,n.x_unit),-1),o.end_date=e.date.add(o.start_date,n.x_step,n.x_unit);break;case"right":o.start_date=this.findVisibleColumn(e.date.add(o.start_date,n.x_step,n.x_unit),1),o.end_date=e.date.add(o.start_date,n.x_step,n.x_unit); +}return(o.start_date.valueOf()<r.min_date.valueOf()||o.start_date.valueOf()>=r.max_date.valueOf())&&(i&&o.start_date.valueOf()>=r.max_date.valueOf()?o.start_date=new Date(r.max_date):(o.start_date=e.date[r.mode+"_start"](e.date.add(r.date,"left"==a?-1:1,r.mode)),o.end_date=e.date.add(o.start_date,n.x_step,n.x_unit))),o},nextUnitsSlot:function(t,a,i){var r=this.clone(t);r.section=t.section||this._getNextSection();var n=t.section||this._getNextSection(),s=e.getState(),d=e._props[s.mode];switch(a){case"left": +n=this._getNextSection(t.section,-1);var o=d.size?d.size-1:d.options.length;d.days>1&&d.order[n]==o-1&&e.date.add(t.start_date,-1,"day").valueOf()>=s.min_date.valueOf()&&(r=this.nextDaySlot(t,a,i));break;case"right":n=this._getNextSection(t.section,1),d.days>1&&!d.order[n]&&e.date.add(t.start_date,1,"day").valueOf()<s.max_date.valueOf()&&(r=this.nextDaySlot(t,a,i));break;default:r=this.nextDaySlot(t,a,i),n=t.section}return r.section=n,r},_moveDate:function(t,a){var i=this.findVisibleColumn(e.date.add(t,a,"day"),a); +return i.setHours(t.getHours()),i.setMinutes(t.getMinutes()),i},isBeforeLastHour:function(t,a){var i=t.getMinutes(),r=t.getHours(),n=e.config.last_hour;return n>r||!a&&(24==n||r==n)&&!i},isAfterFirstHour:function(t,a){var i=t.getMinutes(),r=t.getHours(),n=e.config.first_hour,s=e.config.last_hour;return r>=n||!a&&!i&&(!r&&24==s||r==s)},isInVisibleDayTime:function(e,t){return this.isBeforeLastHour(e,t)&&this.isAfterFirstHour(e,t)},nextDaySlot:function(t,a,i){var r,n,s=e.config.key_nav_step,d=this._alignTimeSlot(t.start_date,e.date.day_start(new Date(t.start_date)),"minute",s),o=t.start_date; +switch(a){case"up":if(r=e.date.add(d,-s,"minute"),!this.isInVisibleDayTime(r,!0)&&(!i||this.isInVisibleDayTime(o,!0))){var l=!0;i&&e.date.date_part(new Date(r)).valueOf()!=e.date.date_part(new Date(o)).valueOf()&&(l=!1),l&&(r=this.findVisibleColumn(e.date.add(t.start_date,-1,"day"),-1)),r.setHours(e.config.last_hour),r.setMinutes(0),r=e.date.add(r,-s,"minute")}n=e.date.add(r,s,"minute");break;case"down":r=e.date.add(d,s,"minute");var c=i?r:e.date.add(r,s,"minute");if(!this.isInVisibleDayTime(c,!1)&&(!i||this.isInVisibleDayTime(o,!1)))if(i){ +var l=!0;e.date.date_part(new Date(o)).valueOf()==o.valueOf()&&(l=!1),l&&(r=this.findVisibleColumn(e.date.add(t.start_date,1,"day"),1)),r.setHours(e.config.first_hour),r.setMinutes(0),r=e.date.add(r,s,"minute")}else r=this.findVisibleColumn(e.date.add(t.start_date,1,"day"),1),r.setHours(e.config.first_hour),r.setMinutes(0);n=e.date.add(r,s,"minute");break;case"left":r=this._moveDate(t.start_date,-1),n=this._moveDate(t.end_date,-1);break;case"right":r=this._moveDate(t.start_date,1),n=this._moveDate(t.end_date,1); +break;default:r=d,n=e.date.add(r,s,"minute")}return{start_date:r,end_date:n}},nextWeekAgendaSlot:function(t,a){var i,r,n=e.getState();switch(a){case"down":case"left":i=e.date.day_start(e.date.add(t.start_date,-1,"day")),i=this.findVisibleColumn(i,-1);break;case"up":case"right":i=e.date.day_start(e.date.add(t.start_date,1,"day")),i=this.findVisibleColumn(i,1);break;default:i=e.date.day_start(t.start_date)}return(t.start_date.valueOf()<n.min_date.valueOf()||t.start_date.valueOf()>=n.max_date.valueOf())&&(i=new Date(n.min_date)), +r=new Date(i),r.setHours(e.config.last_hour),{start_date:i,end_date:r}},nextAgendaSlot:function(e,t){return{start_date:e.start_date,end_date:e.end_date}},isDateVisible:function(t){if(!e._ignores_detected)return!0;var a,i=e.matrix&&e.matrix[e.getState().mode];return a=i?e._get_date_index(i,t):e.locate_holder_day(t),!e._ignores[a]},findVisibleColumn:function(t,a){var i=t;a=a||1;for(var r=e.getState();!this.isDateVisible(i)&&(a>0&&i.valueOf()<=r.max_date.valueOf()||0>a&&i.valueOf()>=r.min_date.valueOf());)i=this.nextDateColumn(i,a); +return i},nextDateColumn:function(t,a){a=a||1;var i,r=e.matrix&&e.matrix[e.getState().mode];return i=r?e.date.add(t,a*r.x_step,r.x_unit):e.date.day_start(e.date.add(t,a,"day"))},isVisible:function(t,a){if(!e._ignores_detected)return!0;for(var i=new Date(t);i.valueOf()<a.valueOf();){if(this.isDateVisible(i))return!0;i=this.nextDateColumn(i)}return!1},nextSlot:function(t,a,i,r){var n;i=i||this._getMode();var s=e.$keyboardNavigation.TimeSlot.prototype.clone(t);switch(i){case this._modes.units:n=this.nextUnitsSlot(s,a,r); +break;case this._modes.timeline:n=this.nextTimelineSlot(s,a,r);break;case this._modes.year:n=this.nextMonthSlot(s,a,r);break;case this._modes.month:n=this.nextMonthSlot(s,a,r);break;case this._modes.weekAgenda:n=this.nextWeekAgendaSlot(s,a,r);break;case this._modes.list:n=this.nextAgendaSlot(s,a,r);break;case this._modes.dayColumns:n=this.nextDaySlot(s,a,r)}return n.start_date.valueOf()>=n.end_date.valueOf()&&(n=this.nextSlot(n,a,i)),e.$keyboardNavigation.TimeSlot.prototype.clone(n)},extendSlot:function(t,a){ +var i,r=this._getMode();switch(r){case this._modes.units:i="left"==a||"right"==a?this.nextUnitsSlot(t,a):this.extendUnitsSlot(t,a);break;case this._modes.timeline:i="down"==a||"up"==a?this.nextTimelineSlot(t,a):this.extendTimelineSlot(t,a);break;case this._modes.year:i=this.extendMonthSlot(t,a);break;case this._modes.month:i=this.extendMonthSlot(t,a);break;case this._modes.dayColumns:i=this.extendDaySlot(t,a);break;case this._modes.weekAgenda:i=this.extendWeekAgendaSlot(t,a);break;default:i=t}var n=e.getState(); +return i.start_date.valueOf()<n.min_date.valueOf()&&(i.start_date=this.findVisibleColumn(n.min_date),i.start_date.setHours(e.config.first_hour)),i.end_date.valueOf()>n.max_date.valueOf()&&(i.end_date=this.findVisibleColumn(n.max_date,-1)),e.$keyboardNavigation.TimeSlot.prototype.clone(i)},extendTimelineSlot:function(e,t){return this.extendGenericSlot({left:"start_date",right:"end_date"},e,t,"timeline")},extendWeekAgendaSlot:function(e,t){return this.extendGenericSlot({left:"start_date",right:"end_date" +},e,t,"weekAgenda")},extendGenericSlot:function(t,a,i,r){var n,s=a.movingDate;if(s||(s=t[i]),!s||!t[i])return a;if(!i)return e.$keyboardNavigation.TimeSlot.prototype.clone(a);n=this.nextSlot({start_date:a[s],section:a.section},i,r,!0),n.start_date.valueOf()==a.start_date.valueOf()&&(n=this.nextSlot({start_date:n.start_date,section:n.section},i,r,!0)),n.movingDate=s;var d=this.extendSlotDates(a,n,n.movingDate);return d.end_date.valueOf()<=d.start_date.valueOf()&&(n.movingDate="end_date"==n.movingDate?"start_date":"end_date"), +d=this.extendSlotDates(a,n,n.movingDate),n.start_date=d.start_date,n.end_date=d.end_date,n},extendSlotDates:function(e,t,a){var i={start_date:null,end_date:null};return"start_date"==a?(i.start_date=t.start_date,i.end_date=e.end_date):(i.start_date=e.start_date,i.end_date=t.start_date),i},extendMonthSlot:function(t,a){var t=this.extendGenericSlot({up:"start_date",down:"end_date",left:"start_date",right:"end_date"},t,a,"month");return t.start_date.setHours(e.config.first_hour),t.end_date=e.date.add(t.end_date,-1,"day"), +t.end_date.setHours(e.config.last_hour),t},extendUnitsSlot:function(e,t){var a;switch(t){case"down":case"up":a=this.extendDaySlot(e,t);break;default:a=e}return a.section=e.section,a},extendDaySlot:function(e,t){return this.extendGenericSlot({up:"start_date",down:"end_date",left:"start_date",right:"end_date"},e,t,"dayColumns")},scrollSlot:function(t){var a=e.getState(),i=this.nextSlot(this,t);(i.start_date.valueOf()<a.min_date.valueOf()||i.start_date.valueOf()>=a.max_date.valueOf())&&e.setCurrentView(new Date(i.start_date)), +this.moveTo(i)},keys:{left:function(){this.scrollSlot("left")},right:function(){this.scrollSlot("right")},down:function(){var t=this._getMode();t==this._modes.list?e.$keyboardNavigation.SchedulerNode.prototype.nextEventHandler():this.scrollSlot("down")},up:function(){var t=this._getMode();t==this._modes.list?e.$keyboardNavigation.SchedulerNode.prototype.prevEventHandler():this.scrollSlot("up")},"shift+down":function(){this.moveTo(this.extendSlot(this,"down"))},"shift+up":function(){this.moveTo(this.extendSlot(this,"up")); +},"shift+right":function(){this.moveTo(this.extendSlot(this,"right"))},"shift+left":function(){this.moveTo(this.extendSlot(this,"left"))},enter:function(){var t={start_date:new Date(this.start_date),end_date:new Date(this.end_date)},a=e.getState().mode;if(e.matrix&&e.matrix[a]){var i=e.matrix[e.getState().mode];t[i.y_property]=this.section}else if(e._props&&e._props[a]){var r=e._props[a];t[r.map_to]=this.section}e.addEventNow(t)}}}),e.$keyboardNavigation.TimeSlot.prototype.bindAll(e.$keyboardNavigation.TimeSlot.prototype.keys), +e.$keyboardNavigation.MinicalButton=function(e,t){this.container=e,this.index=t||0},e.$keyboardNavigation.MinicalButton.prototype=e._compose(e.$keyboardNavigation.KeyNavNode,{isValid:function(){return!0},focus:function(){e.$keyboardNavigation.dispatcher.globalNode.disable(),this.container.removeAttribute("tabindex"),e.$keyboardNavigation.KeyNavNode.prototype.focus.apply(this)},blur:function(){this.container.setAttribute("tabindex","0"),e.$keyboardNavigation.KeyNavNode.prototype.blur.apply(this)}, +getNode:function(){return this.index?this.container.querySelector(".dhx_cal_next_button"):this.container.querySelector(".dhx_cal_prev_button")},keys:{right:function(t){this.moveTo(new e.$keyboardNavigation.MinicalButton(this.container,this.index?0:1))},left:function(t){this.moveTo(new e.$keyboardNavigation.MinicalButton(this.container,this.index?0:1))},down:function(){var t=new e.$keyboardNavigation.MinicalCell(this.container,0,0);t&&!t.isValid()&&(t=t.fallback()),this.moveTo(t)},enter:function(e){ +this.getNode().click()}}}),e.$keyboardNavigation.MinicalButton.prototype.bindAll(e.$keyboardNavigation.MinicalButton.prototype.keys),e.$keyboardNavigation.MinicalCell=function(e,t,a){this.container=e,this.row=t||0,this.col=a||0},e.$keyboardNavigation.MinicalCell.prototype=e._compose(e.$keyboardNavigation.KeyNavNode,{isValid:function(){var e=this._getGrid();return!(!e[this.row]||!e[this.row][this.col])},fallback:function(){var t=this.row,a=this.col,i=this._getGrid();i[t]||(t=0);var r=!0;if(t>i.length/2&&(r=!1), +r){for(var n=a;n<i[t].length;n++)if(i[t][n]||n!=i[t].length-1||(t++,a=0),i[t][n])return new e.$keyboardNavigation.MinicalCell(this.container,t,n)}else for(var n=a;n<i[t].length;n--)if(i[t][n]||n||(t--,a=i[t].length-1),i[t][n])return new e.$keyboardNavigation.MinicalCell(this.container,t,n);return new e.$keyboardNavigation.MinicalButton(this.container,0)},focus:function(){e.$keyboardNavigation.dispatcher.globalNode.disable(),this.container.removeAttribute("tabindex"),e.$keyboardNavigation.KeyNavNode.prototype.focus.apply(this); +},blur:function(){this.container.setAttribute("tabindex","0"),e.$keyboardNavigation.KeyNavNode.prototype.blur.apply(this)},_getNode:function(e,t){return this.container.querySelector(".dhx_year_body tr:nth-child("+(e+1)+") td:nth-child("+(t+1)+")")},getNode:function(){return this._getNode(this.row,this.col)},_getGrid:function(){for(var t=this.container.querySelectorAll(".dhx_year_body tr"),a=[],i=0;i<t.length;i++){a[i]=[];for(var r=t[i],n=r.querySelectorAll("td"),s=0;s<n.length;s++){var d=n[s],o=!0,l=e._getClassName(d); +(l.indexOf("dhx_after")>-1||l.indexOf("dhx_before")>-1||l.indexOf("dhx_scale_ignore")>-1)&&(o=!1),a[i][s]=o}}return a},keys:{right:function(t){var a=this._getGrid(),i=this.row,r=this.col+1;a[i]&&a[i][r]||(a[i+1]?(i+=1,r=0):r=this.col);var n=new e.$keyboardNavigation.MinicalCell(this.container,i,r);n.isValid()||(n=n.fallback()),this.moveTo(n)},left:function(t){var a=this._getGrid(),i=this.row,r=this.col-1;a[i]&&a[i][r]||(a[i-1]?(i-=1,r=a[i].length-1):r=this.col);var n=new e.$keyboardNavigation.MinicalCell(this.container,i,r); +n.isValid()||(n=n.fallback()),this.moveTo(n)},down:function(){var t=this._getGrid(),a=this.row+1,i=this.col;t[a]&&t[a][i]||(a=this.row);var r=new e.$keyboardNavigation.MinicalCell(this.container,a,i);r.isValid()||(r=r.fallback()),this.moveTo(r)},up:function(){var t=this._getGrid(),a=this.row-1,i=this.col;if(t[a]&&t[a][i]){var r=new e.$keyboardNavigation.MinicalCell(this.container,a,i);r.isValid()||(r=r.fallback()),this.moveTo(r)}else{var n=0;this.col>t[this.row].length/2&&(n=1),this.moveTo(new e.$keyboardNavigation.MinicalButton(this.container,n)); +}},enter:function(e){this.getNode().querySelector(".dhx_month_head").click()}}}),e.$keyboardNavigation.MinicalCell.prototype.bindAll(e.$keyboardNavigation.MinicalCell.prototype.keys),e.$keyboardNavigation.DataArea=function(e){this.index=e||0},e.$keyboardNavigation.DataArea.prototype=e._compose(e.$keyboardNavigation.KeyNavNode,{getNode:function(t){return e.$container.querySelector(".dhx_cal_data")},_handlers:null,isValid:function(){return!0},fallback:function(){return this},keys:{"up,down,right,left":function(){ +this.moveTo(new e.$keyboardNavigation.TimeSlot)}}}),e.$keyboardNavigation.DataArea.prototype.bindAll(e.$keyboardNavigation.DataArea.prototype.keys),dhtmlx._modalsStack||(dhtmlx._modalsStack=[]),function(){function t(){return!(!l.length&&!dhtmlx._modalsStack.length)}function a(e,t){for(;e&&e!=t;)e=e.parentNode;return!(e!=t)}function i(i){setTimeout(function(){t()||a(document.activeElement,e.$container)||e.focus()},1)}function r(t){e.eventRemove(t,"keydown",d),e.event(t,"keydown",d),l.push(t)}function n(){ +var t=l.pop();t&&e.eventRemove(t,"keydown",d),i(t)}function s(e){return dhtmlx._modalsStack.length?e==dhtmlx._modalsStack[dhtmlx._modalsStack.length-1]:e==l[l.length-1]}function d(t){var t=t||window.event,a=t.currentTarget;s(a)&&e.$keyboardNavigation.trapFocus(a,t)}function o(){r(e.getLightbox())}var l=[];if(e.attachEvent("onLightbox",o),e.attachEvent("onAfterLightbox",n),e.attachEvent("onAfterQuickInfo",function(){i()}),!dhtmlx._keyNavMessagePopup){dhtmlx._keyNavMessagePopup=!0;var c=null,h=null; +dhtmlx.attachEvent("onMessagePopup",function(t){for(c=document.activeElement,h=c;h&&e._getClassName(h).indexOf("dhx_cal_data")<0;)h=h.parentNode;h&&(h=h.parentNode),e.eventRemove(t,"keydown",d),e.event(t,"keydown",d),dhtmlx._modalsStack.push(t)}),dhtmlx.attachEvent("onAfterMessagePopup",function(){var t=dhtmlx._modalsStack.pop();t&&e.eventRemove(t,"keydown",d),setTimeout(function(){for(var t=document.activeElement;t&&e._getClassName(t).indexOf("dhx_cal_light")<0;)t=t.parentNode;t||(c&&c.parentNode?c.focus():h&&h.parentNode&&h.focus(), +c=null,h=null)},1)})}e.$keyboardNavigation.isModal=t}(),e.$keyboardNavigation.dispatcher={isActive:!1,activeNode:null,globalNode:new e.$keyboardNavigation.SchedulerNode,enable:function(){this.isActive=!0,this.globalNode.enable(),this.setActiveNode(this.getActiveNode())},disable:function(){this.isActive=!1,this.globalNode.disable()},isEnabled:function(){return!!this.isActive},getDefaultNode:function(){return this.globalNode.getDefaultNode()},setDefaultNode:function(){this.setActiveNode(this.getDefaultNode()); +},getActiveNode:function(){var e=this.activeNode;return e&&!e.isValid()&&(e=e.fallback()),e},focusGlobalNode:function(){this.blurNode(this.globalNode),this.focusNode(this.globalNode)},setActiveNode:function(e){e&&e.isValid()&&(this.activeNode&&this.activeNode.compareTo(e)||this.isEnabled()&&(this.blurNode(this.activeNode),this.activeNode=e,this.focusNode(this.activeNode)))},focusNode:function(t){t&&t.focus&&(t.focus(),t.getNode&&document.activeElement!=t.getNode()&&this.setActiveNode(new e.$keyboardNavigation.DataArea)); +},blurNode:function(e){e&&e.blur&&e.blur()},keyDownHandler:function(t){var a=this.getActiveNode();if((!e.$keyboardNavigation.isModal()||a&&a.container&&e._locate_css({target:a.container},"dhx_minical_popup",!1))&&this.isEnabled()){t=t||window.event;var i=this.globalNode,r=e.$keyboardNavigation.shortcuts.getCommandFromEvent(t);a?a.findHandler(r)?a.doAction(r,t):i.findHandler(r)&&i.doAction(r,t):this.setDefaultNode()}}},e._temp_key_scope=function(){function t(e){e=e||window.event,s.x=e.clientX,s.y=e.clientY; +}function a(){for(var t=!1,a=!1,i=document.elementFromPoint(s.x,s.y);i&&i!=e._obj;)i=i.parentNode;return t=!(i!=e._obj),a=e.$keyboardNavigation.dispatcher.isEnabled(),t||a}function i(e){delete e.rec_type,delete e.rec_pattern,delete e.event_pid,delete e.event_length}function r(){var t=e.$keyboardNavigation.dispatcher.getActiveNode();return t&&t.eventId?t.eventId:e._select_id}e.config.key_nav=!0,e.$keyboardNavigation._pasteDate=null,e.$keyboardNavigation._pasteSection=null;var n=null,s={};document.body?dhtmlxEvent(document.body,"mousemove",t):dhtmlxEvent(window,"load",function(){ +dhtmlxEvent(document.body,"mousemove",t)}),e.attachEvent("onMouseMove",function(t,a){var i=e.getState();if(i.mode&&i.min_date){var r=e.getActionData(a);e.$keyboardNavigation._pasteDate=r.date,e.$keyboardNavigation._pasteSection=r.section}}),e._make_pasted_event=function(t){var a=e.$keyboardNavigation._pasteDate,r=e.$keyboardNavigation._pasteSection,n=t.end_date-t.start_date,s=e._lame_copy({},t);if(i(s),s.start_date=new Date(a),s.end_date=new Date(s.start_date.valueOf()+n),r){var d=e._get_section_property(); +e.config.multisection?s[d]=t[d]:s[d]=r}return s},e._do_paste=function(t,a,i){e.addEvent(a),e.callEvent("onEventPasted",[t,a,i])},e._is_key_nav_active=function(){return this._is_initialized()&&!this._is_lightbox_open()&&this.config.key_nav?!0:!1},e._key_nav_copy_paste=function(t){if(!e._is_key_nav_active())return!0;if(t=t||event,37==t.keyCode||39==t.keyCode){t.cancelBubble=!0;var i=e.date.add(e._date,37==t.keyCode?-1:1,e._mode);return e.setCurrentView(i),!0}var s=r();if((t.ctrlKey||t.metaKey)&&67==t.keyCode)return s&&(e._buffer_id=s, +n=!0,e.callEvent("onEventCopied",[e.getEvent(s)])),!0;if((t.ctrlKey||t.metaKey)&&88==t.keyCode&&s){n=!1,e._buffer_id=s;var d=e.getEvent(s);e.updateEvent(d.id),e.callEvent("onEventCut",[d])}if((t.ctrlKey||t.metaKey)&&86==t.keyCode&&a(t)){var d=e.getEvent(e._buffer_id);if(d){var o=e._make_pasted_event(d);if(n)o.id=e.uid(),e._do_paste(n,o,d);else{var l=e.callEvent("onBeforeEventChanged",[o,t,!1,d]);l&&(e._do_paste(n,o,d),n=!0)}}return!0}}},e._temp_key_scope(),function(){function t(e){clearTimeout(_), +_=setTimeout(e,1)}function a(t){if(e.config.key_nav&&l.isEnabled()){var a=t,i=new e.$keyboardNavigation.Event(a.eventId);if(!i.isValid()){var r=i.start||a.start,n=i.end||a.end,s=i.section||a.section;i=new e.$keyboardNavigation.TimeSlot(r,n,s),i.isValid()||(i=new e.$keyboardNavigation.TimeSlot)}l.setActiveNode(i);var d=l.getActiveNode();d&&d.getNode&&document.activeElement!=d.getNode()&&l.focusNode(l.getActiveNode())}}function i(e,t){for(;e&&e!=t;)e=e.parentNode;return!(e!=t)}function r(e){for(var t=0;t<v.length;t++)if(i(e,v[t]))return!0; +return!1}function n(t){var a=t.target;l.enable(),l.setActiveNode(new e.$keyboardNavigation.MinicalButton(a,0))}function s(a){var i=a.target||a.srcElement,r=e._locate_css(a,"dhx_cal_prev_button",!1),n=e._locate_css(a,"dhx_cal_next_button",!1),s=e._locate_css(a,"dhx_year_body",!1),d=0,o=0;if(s){for(var c,h,_=i;_&&"td"!=_.tagName.toLowerCase();)_=_.parentNode;if(_&&(h=_,c=h.parentNode),c&&h){for(var u=c.parentNode.querySelectorAll("tr"),v=0;v<u.length;v++)if(u[v]==c){d=v;break}for(var g=c.querySelectorAll("td"),v=0;v<g.length;v++)if(g[v]==h){ +o=v;break}}}var f=a.currentTarget;t(function(){(r||n||s)&&(l.enable(),l.activeNode=null),r?l.setActiveNode(new e.$keyboardNavigation.MinicalButton(f,0)):n?l.setActiveNode(new e.$keyboardNavigation.MinicalButton(f,1)):s&&l.setActiveNode(new e.$keyboardNavigation.MinicalCell(f,d,o))})}function d(){if(e.config.key_nav){var t,a=document.activeElement;return t=!a||e._locate_css(a,"dhx_cal_quick_info",!1)?!1:i(a,e.$container)||r(a)}}function o(e){e&&!l.isEnabled()?l.enable():!e&&l.isEnabled()&&l.disable(); +}var l=e.$keyboardNavigation.dispatcher,c=function(t){return e.config.key_nav&&!e._edit_id?l.keyDownHandler(t):void 0},h=function(){l.focusGlobalNode()};e.attachEvent("onDataRender",function(){if(e.config.key_nav&&l.isEnabled()&&!e.getState().editor_id){var t=l.getActiveNode();if(t instanceof e.$keyboardNavigation.MinicalButton||t instanceof e.$keyboardNavigation.MinicalCell)return;t.isValid()?l.focusNode(t):l.setActiveNode(t.fallback()),l.focusNode(l.getActiveNode())}}),e.attachEvent("onSchedulerReady",function(){ +var t=e.$container;e.eventRemove(document,"keydown",c),e.eventRemove(t,"focus",h),e.config.key_nav?(e.event(document,"keydown",c),e.event(t,"focus",h),t.setAttribute("tabindex","0")):t.removeAttribute("tabindex")});var _=null;e.attachEvent("onEventAdded",function(i,r){if(!e.config.key_nav)return!0;if(l.isEnabled()){var n=new e.$keyboardNavigation.Event(i);t(function(){a(n)})}});var u=e.updateEvent;e.updateEvent=function(i){var r=!1,n=document.activeElement;n&&e._getClassName(n).indexOf("dhx_cal_editor")>-1&&(r=!0); +var s=u.apply(this,arguments);if(e.config.key_nav&&l.isEnabled()){var d=l.getActiveNode();if(d.eventId==i||r){var o=new e.$keyboardNavigation.Event(i);r?(l.disable(),t(function(){l.enable(),a(o)})):a(o)}}return s},e.attachEvent("onEventDeleted",function(t){if(!e.config.key_nav)return!0;if(l.isEnabled()){var a=l.getActiveNode();a.eventId==t&&l.setActiveNode(new e.$keyboardNavigation.TimeSlot)}return!0}),e.attachEvent("onClearAll",function(){return e.config.key_nav?void(l.isEnabled()&&l.getActiveNode()instanceof e.$keyboardNavigation.Event&&l.setActiveNode(new e.$keyboardNavigation.TimeSlot)):!0; +}),e.attachEvent("onClick",function(i){if(!e.config.key_nav)return!0;var r=new e.$keyboardNavigation.Event(i);return t(function(){e.getEvent(i)&&(l.enable(),a(r))}),!0}),e.attachEvent("onEmptyClick",function(t,a){if(!e.config.key_nav)return!0;if(l.isEnabled()||l.enable(),l.isEnabled()){var i=e.getActionData(a);if(i.date){var r=e.$keyboardNavigation.TimeSlot;l.setActiveNode(r.prototype.nextSlot(new r(i.date,null,i.section)))}}});var v=[],g=e.renderCalendar;e.renderCalendar=function(){var t=g.apply(this,arguments); +t._key_nav_click||(t._key_nav_click=!0,e.event(t,"click",s)),t._key_nav_focus||(t._key_nav_focus=!0,e.event(t,"focus",n));for(var a=!1,i=0;i<v.length;i++)if(v[i]==t){a=!0;break}if(a||v.push(t),l.isEnabled()){var r=l.getActiveNode();r.container==t?l.focusNode(r):t.setAttribute("tabindex","0")}else t.setAttribute("tabindex","0");return t};var f=e.destroyCalendar;e.destroyCalendar=function(t){for(var a=0;a<v.length;a++)v[a]==t&&(e.eventRemove(v[a],"focus",n),v[a].splice(a,1),a--);return f.apply(this,arguments); +},setInterval(function(){var t=d();t?o(t):!t&&l.isEnabled()&&setTimeout(function(){e.config.key_nav?o(d()):e.$container.removeAttribute("tabindex")},20)},500)}()}window.Scheduler?window.Scheduler.plugin(e):e(window.scheduler)}(); //# sourceMappingURL=../sources/ext/dhtmlxscheduler_key_nav.js.map
\ No newline at end of file diff --git a/codebase/ext/dhtmlxscheduler_layer.js b/codebase/ext/dhtmlxscheduler_layer.js index e01f7b0..2d7b724 100644 --- a/codebase/ext/dhtmlxscheduler_layer.js +++ b/codebase/ext/dhtmlxscheduler_layer.js @@ -1,37 +1,28 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. (c) Dinamenta, UAB. */ scheduler.attachEvent("onTemplatesReady",function(){this.layers.sort(function(e,t){return e.zIndex-t.zIndex}),scheduler._dp_init=function(e){e._methods=["_set_event_text_style","","changeEventId","deleteEvent"],this.attachEvent("onEventAdded",function(t){!this._loading&&this.validId(t)&&this.getEvent(t)&&this.getEvent(t).layer==e.layer&&e.setUpdated(t,!0,"inserted")}),this.attachEvent("onBeforeEventDelete",function(t){if(this.getEvent(t)&&this.getEvent(t).layer==e.layer){if(!this.validId(t))return; - -var a=e.getState(t);return"inserted"==a||this._new_event?(e.setUpdated(t,!1),!0):"deleted"==a?!1:"true_deleted"==a?!0:(e.setUpdated(t,!0,"deleted"),!1)}return!0}),this.attachEvent("onEventChanged",function(t){!this._loading&&this.validId(t)&&this.getEvent(t)&&this.getEvent(t).layer==e.layer&&e.setUpdated(t,!0,"updated")}),e._getRowData=function(e,t){var a=this.obj.getEvent(e),i={};for(var n in a)0!==n.indexOf("_")&&(a[n]&&a[n].getUTCFullYear?i[n]=this.obj.templates.xml_format(a[n]):i[n]=a[n]);return i; - +var a=e.getState(t);return"inserted"==a||this._new_event?(e.setUpdated(t,!1),!0):"deleted"==a?!1:"true_deleted"==a?!0:(e.setUpdated(t,!0,"deleted"),!1)}return!0}),this.attachEvent("onEventChanged",function(t){!this._loading&&this.validId(t)&&this.getEvent(t)&&this.getEvent(t).layer==e.layer&&e.setUpdated(t,!0,"updated")}),e._getRowData=function(e,t){var a=this.obj.getEvent(e),i={};for(var r in a)0!==r.indexOf("_")&&(a[r]&&a[r].getUTCFullYear?i[r]=this.obj.templates.xml_format(a[r]):i[r]=a[r]);return i; },e._clearUpdateFlag=function(){},e.attachEvent("insertCallback",scheduler._update_callback),e.attachEvent("updateCallback",scheduler._update_callback),e.attachEvent("deleteCallback",function(e,t){this.obj.setUserData(t,this.action_param,"true_deleted"),this.obj.deleteEvent(t)})},function(){var e=function(t){if(null===t||"object"!=typeof t)return t;var a=new t.constructor;for(var i in t)a[i]=e(t[i]);return a};scheduler._dataprocessors=[],scheduler._layers_zindex={};for(var t=0;t<scheduler.layers.length;t++){ if(scheduler.config["lightbox_"+scheduler.layers[t].name]={},scheduler.config["lightbox_"+scheduler.layers[t].name].sections=e(scheduler.config.lightbox.sections),scheduler._layers_zindex[scheduler.layers[t].name]=scheduler.config.inital_layer_zindex||5+3*t,scheduler.layers[t].url){var a=new dataProcessor(scheduler.layers[t].url);a.layer=scheduler.layers[t].name,scheduler._dataprocessors.push(a),scheduler._dataprocessors[t].init(scheduler)}scheduler.layers[t].isDefault&&(scheduler.defaultLayer=scheduler.layers[t].name); - }}(),scheduler.showLayer=function(e){this.toggleLayer(e,!0)},scheduler.hideLayer=function(e){this.toggleLayer(e,!1)},scheduler.toggleLayer=function(e,t){var a=this.getLayer(e);"undefined"!=typeof t?a.visible=!!t:a.visible=!a.visible,this.setCurrentView(this._date,this._mode)},scheduler.getLayer=function(e){var t,a;"string"==typeof e&&(a=e),"object"==typeof e&&(a=e.layer);for(var i=0;i<scheduler.layers.length;i++)scheduler.layers[i].name==a&&(t=scheduler.layers[i]);return t},scheduler.attachEvent("onBeforeLightbox",function(e){ -var t=this.getEvent(e);return this.config.lightbox.sections=this.config["lightbox_"+t.layer].sections,scheduler.resetLightbox(),!0}),scheduler.attachEvent("onClick",function(e,t){var a=scheduler.getEvent(e);return!scheduler.getLayer(a.layer).noMenu}),scheduler.attachEvent("onEventCollision",function(e,t){var a=this.getLayer(e);if(!a.checkCollision)return!1;for(var i=0,n=0;n<t.length;n++)t[n].layer==a.name&&t[n].id!=e.id&&i++;return i>=scheduler.config.collision_limit}),scheduler.addEvent=function(e,t,a,i,n){ -var r=e;1!=arguments.length&&(r=n||{},r.start_date=e,r.end_date=t,r.text=a,r.id=i,r.layer=this.defaultLayer),r.id=r.id||scheduler.uid(),r.text=r.text||"","string"==typeof r.start_date&&(r.start_date=this.templates.api_date(r.start_date)),"string"==typeof r.end_date&&(r.end_date=this.templates.api_date(r.end_date)),r._timed=this.isOneDayEvent(r);var l=!this._events[r.id];this._events[r.id]=r,this.event_updated(r),this._loading||this.callEvent(l?"onEventAdded":"onEventChanged",[r.id,r])},this._evs_layer={}; - -for(var e=0;e<this.layers.length;e++)this._evs_layer[this.layers[e].name]=[];scheduler.addEventNow=function(e,t,a){var i={};"object"==typeof e&&(i=e,e=null);var n=6e4*(this.config.event_duration||this.config.time_step);e||(e=Math.round(scheduler._currentDate().valueOf()/n)*n);var r=new Date(e);if(!t){var l=this.config.first_hour;l>r.getHours()&&(r.setHours(l),e=r.valueOf()),t=e+n}i.start_date=i.start_date||r,i.end_date=i.end_date||new Date(t),i.text=i.text||this.locale.labels.new_event,i.id=this._drag_id=this.uid(), +var t=this.getEvent(e);return this.config.lightbox.sections=this.config["lightbox_"+t.layer].sections,scheduler.resetLightbox(),!0}),scheduler.attachEvent("onClick",function(e,t){var a=scheduler.getEvent(e);return!scheduler.getLayer(a.layer).noMenu}),scheduler.attachEvent("onEventCollision",function(e,t){var a=this.getLayer(e);if(!a.checkCollision)return!1;for(var i=0,r=0;r<t.length;r++)t[r].layer==a.name&&t[r].id!=e.id&&i++;return i>=scheduler.config.collision_limit}),scheduler.addEvent=function(e,t,a,i,r){ +var n=e;1!=arguments.length&&(n=r||{},n.start_date=e,n.end_date=t,n.text=a,n.id=i,n.layer=this.defaultLayer),n.id=n.id||scheduler.uid(),n.text=n.text||"","string"==typeof n.start_date&&(n.start_date=this.templates.api_date(n.start_date)),"string"==typeof n.end_date&&(n.end_date=this.templates.api_date(n.end_date)),n._timed=this.isOneDayEvent(n);var s=!this._events[n.id];this._events[n.id]=n,this.event_updated(n),this._loading||this.callEvent(s?"onEventAdded":"onEventChanged",[n.id,n])},this._evs_layer={}; +for(var e=0;e<this.layers.length;e++)this._evs_layer[this.layers[e].name]=[];scheduler.addEventNow=function(e,t,a){var i={};"object"==typeof e&&(i=e,e=null);var r=6e4*(this.config.event_duration||this.config.time_step);e||(e=Math.round(scheduler._currentDate().valueOf()/r)*r);var n=new Date(e);if(!t){var s=this.config.first_hour;s>n.getHours()&&(n.setHours(s),e=n.valueOf()),t=e+r}i.start_date=i.start_date||n,i.end_date=i.end_date||new Date(t),i.text=i.text||this.locale.labels.new_event,i.id=this._drag_id=this.uid(), i.layer=this.defaultLayer,this._drag_mode="new-size",this._loading=!0,this.addEvent(i),this.callEvent("onEventCreated",[this._drag_id,a]),this._loading=!1,this._drag_event={},this._on_mouse_up(a)},scheduler._t_render_view_data=function(e){if(this.config.multi_day&&!this._table_view){for(var t=[],a=[],i=0;i<e.length;i++)e[i]._timed?t.push(e[i]):a.push(e[i]);this._table_view=!0,this.render_data(a),this._table_view=!1,this.render_data(t)}else this.render_data(e)},scheduler.render_view_data=function(){ if(this._not_render)return void(this._render_wait=!0);this._render_wait=!1,this.clear_view(),this._evs_layer={};for(var e=0;e<this.layers.length;e++)this._evs_layer[this.layers[e].name]=[];for(var t=this.get_visible_events(),e=0;e<t.length;e++)this._evs_layer[t[e].layer]&&this._evs_layer[t[e].layer].push(t[e]);if("month"==this._mode){for(var a=[],e=0;e<this.layers.length;e++)this.layers[e].visible&&(a=a.concat(this._evs_layer[this.layers[e].name]));this._t_render_view_data(a)}else for(var e=0;e<this.layers.length;e++)if(this.layers[e].visible){ -var i=this._evs_layer[this.layers[e].name];this._t_render_view_data(i)}},scheduler._render_v_bar=function(e,t,a,i,n,r,l,d,s){var o=e.id;-1==l.indexOf("<div class=")&&(l=scheduler.templates["event_header_"+e.layer]?scheduler.templates["event_header_"+e.layer](e.start_date,e.end_date,e):l),-1==d.indexOf("<div class=")&&(d=scheduler.templates["event_text_"+e.layer]?scheduler.templates["event_text_"+e.layer](e.start_date,e.end_date,e):d);var _=document.createElement("DIV"),c="dhx_cal_event",u=scheduler.templates["event_class_"+e.layer]?scheduler.templates["event_class_"+e.layer](e.start_date,e.end_date,e):scheduler.templates.event_class(e.start_date,e.end_date,e); - -u&&(c=c+" "+u);var h='<div event_id="'+o+'" class="'+c+'" style="position:absolute; top:'+a+"px; left:"+t+"px; width:"+(i-4)+"px; height:"+n+"px;"+(r||"")+'">';return h+='<div class="dhx_header" style=" width:'+(i-6)+'px;" > </div>',h+='<div class="dhx_title">'+l+"</div>",h+='<div class="dhx_body" style=" width:'+(i-(this._quirks?4:14))+"px; height:"+(n-(this._quirks?20:30))+'px;">'+d+"</div>",h+='<div class="dhx_footer" style=" width:'+(i-8)+"px;"+(s?" margin-top:-1px;":"")+'" ></div></div>', -_.innerHTML=h,_.style.zIndex=100,_.firstChild},scheduler.render_event_bar=function(e){var t=this._els.dhx_cal_data[0],a=this._colsS[e._sday],i=this._colsS[e._eday];i==a&&(i=this._colsS[e._eday+1]);var n=this.xy.bar_height,r=this._colsS.heights[e._sweek]+(this._colsS.height?this.xy.month_scale_height+2:2)+e._sorder*n,l=document.createElement("DIV"),d=e._timed?"dhx_cal_event_clear":"dhx_cal_event_line",s=scheduler.templates["event_class_"+e.layer]?scheduler.templates["event_class_"+e.layer](e.start_date,e.end_date,e):scheduler.templates.event_class(e.start_date,e.end_date,e); - -s&&(d=d+" "+s);var o='<div event_id="'+e.id+'" class="'+d+'" style="position:absolute; top:'+r+"px; left:"+a+"px; width:"+(i-a-15)+"px;"+(e._text_style||"")+'">';e._timed&&(o+=scheduler.templates["event_bar_date_"+e.layer]?scheduler.templates["event_bar_date_"+e.layer](e.start_date,e.end_date,e):scheduler.templates.event_bar_date(e.start_date,e.end_date,e)),o+=scheduler.templates["event_bar_text_"+e.layer]?scheduler.templates["event_bar_text_"+e.layer](e.start_date,e.end_date,e):scheduler.templates.event_bar_text(e.start_date,e.end_date,e)+"</div>)", -o+="</div>",l.innerHTML=o,this._rendered.push(l.firstChild),t.appendChild(l.firstChild)},scheduler.render_event=function(e){var t=scheduler.xy.menu_width;if(scheduler.getLayer(e.layer).noMenu&&(t=0),!(e._sday<0)){var a=scheduler.locate_holder(e._sday);if(a){var i=60*e.start_date.getHours()+e.start_date.getMinutes(),n=60*e.end_date.getHours()+e.end_date.getMinutes()||60*scheduler.config.last_hour,r=Math.round((60*i*1e3-60*this.config.first_hour*60*1e3)*this.config.hour_size_px/36e5)%(24*this.config.hour_size_px)+1,l=Math.max(scheduler.xy.min_event_height,(n-i)*this.config.hour_size_px/60)+1,d=Math.floor((a.clientWidth-t)/e._count),s=e._sorder*d+1; - -e._inner||(d*=e._count-e._sorder);var o=this._render_v_bar(e.id,t+s,r,d,l,e._text_style,scheduler.templates.event_header(e.start_date,e.end_date,e),scheduler.templates.event_text(e.start_date,e.end_date,e));if(this._rendered.push(o),a.appendChild(o),s=s+parseInt(a.style.left,10)+t,r+=this._dy_shift,o.style.zIndex=this._layers_zindex[e.layer],this._edit_id==e.id){o.style.zIndex=parseInt(o.style.zIndex)+1;var _=o.style.zIndex;d=Math.max(d-4,scheduler.xy.editor_width);var o=document.createElement("DIV"); - -o.setAttribute("event_id",e.id),this.set_xy(o,d,l-20,s,r+14),o.className="dhx_cal_editor",o.style.zIndex=_;var c=document.createElement("DIV");this.set_xy(c,d-6,l-26),c.style.cssText+=";margin:2px 2px 2px 2px;overflow:hidden;",c.style.zIndex=_,o.appendChild(c),this._els.dhx_cal_data[0].appendChild(o),this._rendered.push(o),c.innerHTML="<textarea class='dhx_cal_editor'>"+e.text+"</textarea>",this._quirks7&&(c.firstChild.style.height=l-12+"px"),this._editor=c.firstChild,this._editor.onkeypress=function(e){ -if((e||event).shiftKey)return!0;var t=(e||event).keyCode;t==scheduler.keys.edit_save&&scheduler.editStop(!0),t==scheduler.keys.edit_cancel&&scheduler.editStop(!1)},this._editor.onselectstart=function(e){return(e||event).cancelBubble=!0,!0},c.firstChild.focus(),this._els.dhx_cal_data[0].scrollLeft=0,c.firstChild.select()}if(this._select_id==e.id){o.style.zIndex=parseInt(o.style.zIndex)+1;for(var u=this.config["icons_"+(this._edit_id==e.id?"edit":"select")],h="",p=0;p<u.length;p++)h+="<div class='dhx_menu_icon "+u[p]+"' title='"+this.locale.labels[u[p]]+"'></div>"; - -var v=this._render_v_bar(e.id,s-t+1,r,t,20*u.length+26,"","<div class='dhx_menu_head'></div>",h,!0);v.style.left=s-t+1,v.style.zIndex=o.style.zIndex,this._els.dhx_cal_data[0].appendChild(v),this._rendered.push(v)}}}},scheduler.filter_agenda=function(e,t){var a=scheduler.getLayer(t.layer);return a&&a.visible}}); +var i=this._evs_layer[this.layers[e].name];this._t_render_view_data(i)}},scheduler._render_v_bar=function(e,t,a,i,r,n,s,d,o){var l=e.id;-1==s.indexOf("<div class=")&&(s=scheduler.templates["event_header_"+e.layer]?scheduler.templates["event_header_"+e.layer](e.start_date,e.end_date,e):s),-1==d.indexOf("<div class=")&&(d=scheduler.templates["event_text_"+e.layer]?scheduler.templates["event_text_"+e.layer](e.start_date,e.end_date,e):d);var h=document.createElement("DIV"),c="dhx_cal_event",_=scheduler.templates["event_class_"+e.layer]?scheduler.templates["event_class_"+e.layer](e.start_date,e.end_date,e):scheduler.templates.event_class(e.start_date,e.end_date,e); +_&&(c=c+" "+_);var u='<div event_id="'+l+'" class="'+c+'" style="position:absolute; top:'+a+"px; left:"+t+"px; width:"+(i-4)+"px; height:"+r+"px;"+(n||"")+'">';return u+='<div class="dhx_header" style=" width:'+(i-6)+'px;" > </div>',u+='<div class="dhx_title">'+s+"</div>",u+='<div class="dhx_body" style=" width:'+(i-(this._quirks?4:14))+"px; height:"+(r-(this._quirks?20:30))+'px;">'+d+"</div>",u+='<div class="dhx_footer" style=" width:'+(i-8)+"px;"+(o?" margin-top:-1px;":"")+'" ></div></div>', +h.innerHTML=u,h.style.zIndex=100,h.firstChild},scheduler.render_event_bar=function(e){var t=this._els.dhx_cal_data[0],a=this._colsS[e._sday],i=this._colsS[e._eday];i==a&&(i=this._colsS[e._eday+1]);var r=this.xy.bar_height,n=this._colsS.heights[e._sweek]+(this._colsS.height?this.xy.month_scale_height+2:2)+e._sorder*r,s=document.createElement("DIV"),d=e._timed?"dhx_cal_event_clear":"dhx_cal_event_line",o=scheduler.templates["event_class_"+e.layer]?scheduler.templates["event_class_"+e.layer](e.start_date,e.end_date,e):scheduler.templates.event_class(e.start_date,e.end_date,e); +o&&(d=d+" "+o);var l='<div event_id="'+e.id+'" class="'+d+'" style="position:absolute; top:'+n+"px; left:"+a+"px; width:"+(i-a-15)+"px;"+(e._text_style||"")+'">';e._timed&&(l+=scheduler.templates["event_bar_date_"+e.layer]?scheduler.templates["event_bar_date_"+e.layer](e.start_date,e.end_date,e):scheduler.templates.event_bar_date(e.start_date,e.end_date,e)),l+=scheduler.templates["event_bar_text_"+e.layer]?scheduler.templates["event_bar_text_"+e.layer](e.start_date,e.end_date,e):scheduler.templates.event_bar_text(e.start_date,e.end_date,e)+"</div>)", +l+="</div>",s.innerHTML=l,this._rendered.push(s.firstChild),t.appendChild(s.firstChild)},scheduler.render_event=function(e){var t=scheduler.xy.menu_width;if(scheduler.getLayer(e.layer).noMenu&&(t=0),!(e._sday<0)){var a=scheduler.locate_holder(e._sday);if(a){var i=60*e.start_date.getHours()+e.start_date.getMinutes(),r=60*e.end_date.getHours()+e.end_date.getMinutes()||60*scheduler.config.last_hour,n=Math.round((60*i*1e3-60*this.config.first_hour*60*1e3)*this.config.hour_size_px/36e5)%(24*this.config.hour_size_px)+1,s=Math.max(scheduler.xy.min_event_height,(r-i)*this.config.hour_size_px/60)+1,d=Math.floor((a.clientWidth-t)/e._count),o=e._sorder*d+1; +e._inner||(d*=e._count-e._sorder);var l=this._render_v_bar(e.id,t+o,n,d,s,e._text_style,scheduler.templates.event_header(e.start_date,e.end_date,e),scheduler.templates.event_text(e.start_date,e.end_date,e));if(this._rendered.push(l),a.appendChild(l),o=o+parseInt(a.style.left,10)+t,n+=this._dy_shift,l.style.zIndex=this._layers_zindex[e.layer],this._edit_id==e.id){l.style.zIndex=parseInt(l.style.zIndex)+1;var h=l.style.zIndex;d=Math.max(d-4,scheduler.xy.editor_width);var l=document.createElement("DIV"); +l.setAttribute("event_id",e.id),this.set_xy(l,d,s-20,o,n+14),l.className="dhx_cal_editor",l.style.zIndex=h;var c=document.createElement("DIV");this.set_xy(c,d-6,s-26),c.style.cssText+=";margin:2px 2px 2px 2px;overflow:hidden;",c.style.zIndex=h,l.appendChild(c),this._els.dhx_cal_data[0].appendChild(l),this._rendered.push(l),c.innerHTML="<textarea class='dhx_cal_editor'>"+e.text+"</textarea>",this._quirks7&&(c.firstChild.style.height=s-12+"px"),this._editor=c.firstChild,this._editor.onkeypress=function(e){ +if((e||event).shiftKey)return!0;var t=(e||event).keyCode;t==scheduler.keys.edit_save&&scheduler.editStop(!0),t==scheduler.keys.edit_cancel&&scheduler.editStop(!1)},this._editor.onselectstart=function(e){return(e||event).cancelBubble=!0,!0},c.firstChild.focus(),this._els.dhx_cal_data[0].scrollLeft=0,c.firstChild.select()}if(this._select_id==e.id){l.style.zIndex=parseInt(l.style.zIndex)+1;for(var _=this.config["icons_"+(this._edit_id==e.id?"edit":"select")],u="",v=0;v<_.length;v++)u+="<div class='dhx_menu_icon "+_[v]+"' title='"+this.locale.labels[_[v]]+"'></div>"; +var f=this._render_v_bar(e.id,o-t+1,n,t,20*_.length+26,"","<div class='dhx_menu_head'></div>",u,!0);f.style.left=o-t+1,f.style.zIndex=l.style.zIndex,this._els.dhx_cal_data[0].appendChild(f),this._rendered.push(f)}}}},scheduler.filter_agenda=function(e,t){var a=scheduler.getLayer(t.layer);return a&&a.visible}}); //# sourceMappingURL=../sources/ext/dhtmlxscheduler_layer.js.map
\ No newline at end of file diff --git a/codebase/ext/dhtmlxscheduler_limit.js b/codebase/ext/dhtmlxscheduler_limit.js index 772e1ba..3d704bc 100644 --- a/codebase/ext/dhtmlxscheduler_limit.js +++ b/codebase/ext/dhtmlxscheduler_limit.js @@ -1,50 +1,41 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. (c) Dinamenta, UAB. */ -scheduler.config.limit_start=null,scheduler.config.limit_end=null,scheduler.config.limit_view=!1,scheduler.config.check_limits=!0,scheduler.config.mark_now=!0,scheduler.config.display_marked_timespans=!0,scheduler._temp_limit_scope=function(){function e(e,t,a,r,i){var n=scheduler,l=[],d={_props:"map_to",matrix:"y_property"};for(var s in d){var o=d[s];if(n[s])for(var _ in n[s]){var c=n[s][_],u=c[o];e[u]&&(l=n._add_timespan_zones(l,scheduler._get_blocked_zones(t[_],e[u],a,r,i)))}}return l=n._add_timespan_zones(l,scheduler._get_blocked_zones(t,"global",a,r,i)); - +scheduler.config.limit_start=null,scheduler.config.limit_end=null,scheduler.config.limit_view=!1,scheduler.config.check_limits=!0,scheduler.config.mark_now=!0,scheduler.config.display_marked_timespans=!0,scheduler._temp_limit_scope=function(){function e(e,t,a,r,i){var n=scheduler,s=[],d={_props:"map_to",matrix:"y_property"};for(var l in d){var o=d[l];if(n[l])for(var _ in n[l]){var h=n[l][_],c=h[o];e[c]&&(s=n._add_timespan_zones(s,scheduler._get_blocked_zones(t[_],e[c],a,r,i)))}}return s=n._add_timespan_zones(s,scheduler._get_blocked_zones(t,"global",a,r,i)); }var t=null,a="dhx_time_block",r="default",i=function(e,t,a){return t instanceof Date&&a instanceof Date?(e.start_date=t,e.end_date=a):(e.days=t,e.zones=a),e},n=function(e,t,r){var n="object"==typeof e?e:{days:e};return n.type=a,n.css="",t&&(r&&(n.sections=r),n=i(n,e,t)),n};scheduler.blockTime=function(e,t,a){var r=n(e,t,a);return scheduler.addMarkedTimespan(r)},scheduler.unblockTime=function(e,t,a){t=t||"fullday";var r=n(e,t,a);return scheduler.deleteMarkedTimespan(r)},scheduler.attachEvent("onBeforeViewChange",function(e,t,a,r){ -function i(e,t){var a=scheduler.config.limit_start,r=scheduler.config.limit_end,i=scheduler.date.add(e,1,t);return e.valueOf()>r.valueOf()||i<=a.valueOf()}return scheduler.config.limit_view&&(r=r||t,a=a||e,i(r,a)&&t.valueOf()!=r.valueOf())?(setTimeout(function(){var e=i(t,a)?scheduler.config.limit_start:t;scheduler.setCurrentView(i(e,a)?null:e,a)},1),!1):!0}),scheduler.checkInMarkedTimespan=function(t,a,i){a=a||r;for(var n=!0,l=new Date(t.start_date.valueOf()),d=scheduler.date.add(l,1,"day"),s=scheduler._marked_timespans;l<t.end_date;l=scheduler.date.date_part(d), -d=scheduler.date.add(l,1,"day")){var o=+scheduler.date.date_part(new Date(l)),_=l.getDay(),c=e(t,s,_,o,a);if(c)for(var u=0;u<c.length;u+=2){var h=scheduler._get_zone_minutes(l),p=t.end_date>d||t.end_date.getDate()!=l.getDate()?1440:scheduler._get_zone_minutes(t.end_date),v=c[u],m=c[u+1];if(p>v&&m>h&&(n="function"==typeof i?i(t,h,p,v,m):!1,!n))break}}return!n};var l=scheduler.checkLimitViolation=function(e){if(!e)return!0;if(!scheduler.config.check_limits)return!0;var t=scheduler,r=t.config,i=[];if(e.rec_type)for(var n=scheduler.getRecDates(e),l=0;l<n.length;l++){ -var d=scheduler._copy_event(e);scheduler._lame_copy(d,n[l]),i.push(d)}else i=[e];for(var s=!0,o=0;o<i.length;o++){var _=!0,d=i[o];d._timed=scheduler.isOneDayEvent(d),_=r.limit_start&&r.limit_end?d.start_date.valueOf()>=r.limit_start.valueOf()&&d.end_date.valueOf()<=r.limit_end.valueOf():!0,_&&(_=!scheduler.checkInMarkedTimespan(d,a,function(e,a,r,i,n){var l=!0;return n>=a&&a>=i&&((1440==n||n>r)&&(l=!1),e._timed&&t._drag_id&&"new-size"==t._drag_mode?(e.start_date.setHours(0),e.start_date.setMinutes(n)):l=!1), -(r>=i&&n>r||i>a&&r>n)&&(e._timed&&t._drag_id&&"new-size"==t._drag_mode?(e.end_date.setHours(0),e.end_date.setMinutes(i)):l=!1),l})),_||(_=t.checkEvent("onLimitViolation")?t.callEvent("onLimitViolation",[d.id,d]):_),s=s&&_}return s||(t._drag_id=null,t._drag_mode=null),s};scheduler._get_blocked_zones=function(e,t,a,r,i){var n=[];if(e&&e[t])for(var l=e[t],d=this._get_relevant_blocked_zones(a,r,l,i),s=0;s<d.length;s++)n=this._add_timespan_zones(n,d[s].zones);return n},scheduler._get_relevant_blocked_zones=function(e,t,a,r){ -var i=a[t]&&a[t][r]?a[t][r]:a[e]&&a[e][r]?a[e][r]:[];return i},scheduler.attachEvent("onMouseDown",function(e){return!(e==a)}),scheduler.attachEvent("onBeforeDrag",function(e){return e?l(scheduler.getEvent(e)):!0}),scheduler.attachEvent("onClick",function(e,t){return l(scheduler.getEvent(e))}),scheduler.attachEvent("onBeforeLightbox",function(e){var a=scheduler.getEvent(e);return t=[a.start_date,a.end_date],l(a)}),scheduler.attachEvent("onEventSave",function(e,t,a){if(!t.start_date||!t.end_date){ -var r=scheduler.getEvent(e);t.start_date=new Date(r.start_date),t.end_date=new Date(r.end_date)}if(t.rec_type){var i=scheduler._lame_clone(t);return scheduler._roll_back_dates(i),l(i)}return l(t)}),scheduler.attachEvent("onEventAdded",function(e){if(!e)return!0;var t=scheduler.getEvent(e);return!l(t)&&scheduler.config.limit_start&&scheduler.config.limit_end&&(t.start_date<scheduler.config.limit_start&&(t.start_date=new Date(scheduler.config.limit_start)),t.start_date.valueOf()>=scheduler.config.limit_end.valueOf()&&(t.start_date=this.date.add(scheduler.config.limit_end,-1,"day")), -t.end_date<scheduler.config.limit_start&&(t.end_date=new Date(scheduler.config.limit_start)),t.end_date.valueOf()>=scheduler.config.limit_end.valueOf()&&(t.end_date=this.date.add(scheduler.config.limit_end,-1,"day")),t.start_date.valueOf()>=t.end_date.valueOf()&&(t.end_date=this.date.add(t.start_date,this.config.event_duration||this.config.time_step,"minute")),t._timed=this.isOneDayEvent(t)),!0}),scheduler.attachEvent("onEventChanged",function(e){if(!e)return!0;var a=scheduler.getEvent(e);if(!l(a)){ -if(!t)return!1;a.start_date=t[0],a.end_date=t[1],a._timed=this.isOneDayEvent(a)}return!0}),scheduler.attachEvent("onBeforeEventChanged",function(e,t,a){return l(e)}),scheduler.attachEvent("onBeforeEventCreated",function(e){var t=scheduler.getActionData(e).date,a={_timed:!0,start_date:t,end_date:scheduler.date.add(t,scheduler.config.time_step,"minute")};return l(a)}),scheduler.attachEvent("onViewChange",function(){scheduler._mark_now()}),scheduler.attachEvent("onSchedulerResize",function(){return window.setTimeout(function(){ +function i(e,t){var a=scheduler.config.limit_start,r=scheduler.config.limit_end,i=scheduler.date.add(e,1,t);return e.valueOf()>r.valueOf()||i<=a.valueOf()}return scheduler.config.limit_view&&(r=r||t,a=a||e,i(r,a)&&t.valueOf()!=r.valueOf())?(setTimeout(function(){var e=i(t,a)?scheduler.config.limit_start:t;scheduler.setCurrentView(i(e,a)?null:e,a)},1),!1):!0}),scheduler.checkInMarkedTimespan=function(t,a,i){a=a||r;for(var n=!0,s=new Date(t.start_date.valueOf()),d=scheduler.date.add(s,1,"day"),l=scheduler._marked_timespans;s<t.end_date;s=scheduler.date.date_part(d), +d=scheduler.date.add(s,1,"day")){var o=+scheduler.date.date_part(new Date(s)),_=s.getDay(),h=e(t,l,_,o,a);if(h)for(var c=0;c<h.length;c+=2){var u=scheduler._get_zone_minutes(s),v=t.end_date>d||t.end_date.getDate()!=s.getDate()?1440:scheduler._get_zone_minutes(t.end_date),f=h[c],g=h[c+1];if(v>f&&g>u&&(n="function"==typeof i?i(t,u,v,f,g):!1,!n))break}}return!n};var s=scheduler.checkLimitViolation=function(e){if(!e)return!0;if(!scheduler.config.check_limits)return!0;var t=scheduler,r=t.config,i=[];if(e.rec_type)for(var n=scheduler.getRecDates(e),s=0;s<n.length;s++){ +var d=scheduler._copy_event(e);scheduler._lame_copy(d,n[s]),i.push(d)}else i=[e];for(var l=!0,o=0;o<i.length;o++){var _=!0,d=i[o];d._timed=scheduler.isOneDayEvent(d),_=r.limit_start&&r.limit_end?d.start_date.valueOf()>=r.limit_start.valueOf()&&d.end_date.valueOf()<=r.limit_end.valueOf():!0,_&&(_=!scheduler.checkInMarkedTimespan(d,a,function(e,a,r,i,n){var s=!0;return n>=a&&a>=i&&((1440==n||n>r)&&(s=!1),e._timed&&t._drag_id&&"new-size"==t._drag_mode?(e.start_date.setHours(0),e.start_date.setMinutes(n)):s=!1), +(r>=i&&n>r||i>a&&r>n)&&(e._timed&&t._drag_id&&"new-size"==t._drag_mode?(e.end_date.setHours(0),e.end_date.setMinutes(i)):s=!1),s})),_||(_=t.checkEvent("onLimitViolation")?t.callEvent("onLimitViolation",[d.id,d]):_),l=l&&_}return l||(t._drag_id=null,t._drag_mode=null),l};scheduler._get_blocked_zones=function(e,t,a,r,i){var n=[];if(e&&e[t])for(var s=e[t],d=this._get_relevant_blocked_zones(a,r,s,i),l=0;l<d.length;l++)n=this._add_timespan_zones(n,d[l].zones);return n},scheduler._get_relevant_blocked_zones=function(e,t,a,r){ +var i=a[t]&&a[t][r]?a[t][r]:a[e]&&a[e][r]?a[e][r]:[];return i},scheduler.attachEvent("onMouseDown",function(e){return!(e==a)}),scheduler.attachEvent("onBeforeDrag",function(e){return e?s(scheduler.getEvent(e)):!0}),scheduler.attachEvent("onClick",function(e,t){return s(scheduler.getEvent(e))}),scheduler.attachEvent("onBeforeLightbox",function(e){var a=scheduler.getEvent(e);return t=[a.start_date,a.end_date],s(a)}),scheduler.attachEvent("onEventSave",function(e,t,a){if(!t.start_date||!t.end_date){ +var r=scheduler.getEvent(e);t.start_date=new Date(r.start_date),t.end_date=new Date(r.end_date)}if(t.rec_type){var i=scheduler._lame_clone(t);return scheduler._roll_back_dates(i),s(i)}return s(t)}),scheduler.attachEvent("onEventAdded",function(e){if(!e)return!0;var t=scheduler.getEvent(e);return!s(t)&&scheduler.config.limit_start&&scheduler.config.limit_end&&(t.start_date<scheduler.config.limit_start&&(t.start_date=new Date(scheduler.config.limit_start)),t.start_date.valueOf()>=scheduler.config.limit_end.valueOf()&&(t.start_date=this.date.add(scheduler.config.limit_end,-1,"day")), +t.end_date<scheduler.config.limit_start&&(t.end_date=new Date(scheduler.config.limit_start)),t.end_date.valueOf()>=scheduler.config.limit_end.valueOf()&&(t.end_date=this.date.add(scheduler.config.limit_end,-1,"day")),t.start_date.valueOf()>=t.end_date.valueOf()&&(t.end_date=this.date.add(t.start_date,this.config.event_duration||this.config.time_step,"minute")),t._timed=this.isOneDayEvent(t)),!0}),scheduler.attachEvent("onEventChanged",function(e){if(!e)return!0;var a=scheduler.getEvent(e);if(!s(a)){ +if(!t)return!1;a.start_date=t[0],a.end_date=t[1],a._timed=this.isOneDayEvent(a)}return!0}),scheduler.attachEvent("onBeforeEventChanged",function(e,t,a){return s(e)}),scheduler.attachEvent("onBeforeEventCreated",function(e){var t=scheduler.getActionData(e).date,a={_timed:!0,start_date:t,end_date:scheduler.date.add(t,scheduler.config.time_step,"minute")};return s(a)}),scheduler.attachEvent("onViewChange",function(){scheduler._mark_now()}),scheduler.attachEvent("onSchedulerResize",function(){return window.setTimeout(function(){ scheduler._mark_now()},1),!0}),scheduler.attachEvent("onTemplatesReady",function(){scheduler._mark_now_timer=window.setInterval(function(){scheduler._is_initialized()&&scheduler._mark_now()},6e4)}),scheduler._mark_now=function(e){var t="dhx_now_time";this._els[t]||(this._els[t]=[]);var a=scheduler._currentDate(),r=this.config;if(scheduler._remove_mark_now(),!e&&r.mark_now&&a<this._max_date&&a>this._min_date&&a.getHours()>=r.first_hour&&a.getHours()<r.last_hour){var i=this.locate_holder_day(a);this._els[t]=scheduler._append_mark_now(i,a); - -}},scheduler._append_mark_now=function(e,t){var a="dhx_now_time",r=scheduler._get_zone_minutes(t),i={zones:[r,r+1],css:a,type:a};if(!this._table_view){if(this._props&&this._props[this._mode]){for(var n=this._props[this._mode],l=n.size||n.options.length,d=e*l,s=(e+1)*l,o=(this._els.dhx_cal_data[0].childNodes,[]),_=d;s>_;_++){var c=_;i.days=c;var u=scheduler._render_marked_timespan(i,null,c)[0];o.push(u)}return o}return i.days=e,scheduler._render_marked_timespan(i,null,e)}return"month"==this._mode?(i.days=+scheduler.date.date_part(t), +}},scheduler._append_mark_now=function(e,t){var a="dhx_now_time",r=scheduler._get_zone_minutes(t),i={zones:[r,r+1],css:a,type:a};if(!this._table_view){if(this._props&&this._props[this._mode]){var n,s,d=this._props[this._mode],l=d.size||d.options.length;d.days>1?(n=e,s=e+l):(n=0,s=n+l);for(var o=[],_=n;s>_;_++){var h=_;i.days=h;var c=scheduler._render_marked_timespan(i,null,h)[0];o.push(c)}return o}return i.days=e,scheduler._render_marked_timespan(i,null,e)}return"month"==this._mode?(i.days=+scheduler.date.date_part(t), scheduler._render_marked_timespan(i,null,null)):void 0},scheduler._remove_mark_now=function(){for(var e="dhx_now_time",t=this._els[e],a=0;a<t.length;a++){var r=t[a],i=r.parentNode;i&&i.removeChild(r)}this._els[e]=[]},scheduler._marked_timespans={global:{}},scheduler._get_zone_minutes=function(e){return 60*e.getHours()+e.getMinutes()},scheduler._prepare_timespan_options=function(e){var t=[],a=[];if("fullweek"==e.days&&(e.days=[0,1,2,3,4,5,6]),e.days instanceof Array){for(var i=e.days.slice(),n=0;n<i.length;n++){ -var l=scheduler._lame_clone(e);l.days=i[n],t.push.apply(t,scheduler._prepare_timespan_options(l))}return t}if(!e||!(e.start_date&&e.end_date&&e.end_date>e.start_date||void 0!==e.days&&e.zones))return t;var d=0,s=1440;"fullday"==e.zones&&(e.zones=[d,s]),e.zones&&e.invert_zones&&(e.zones=scheduler.invertZones(e.zones)),e.id=scheduler.uid(),e.css=e.css||"",e.type=e.type||r;var o=e.sections;if(o){for(var _ in o)if(o.hasOwnProperty(_)){var c=o[_];c instanceof Array||(c=[c]);for(var n=0;n<c.length;n++){ -var u=scheduler._lame_copy({},e);u.sections={},u.sections[_]=c[n],a.push(u)}}}else a.push(e);for(var h=0;h<a.length;h++){var p=a[h],v=p.start_date,m=p.end_date;if(v&&m)for(var g=scheduler.date.date_part(new Date(v)),b=scheduler.date.add(g,1,"day");m>g;){var u=scheduler._lame_copy({},p);delete u.start_date,delete u.end_date,u.days=g.valueOf();var y=v>g?scheduler._get_zone_minutes(v):d,f=m>b||m.getDate()!=g.getDate()?s:scheduler._get_zone_minutes(m);u.zones=[y,f],t.push(u),g=b,b=scheduler.date.add(b,1,"day"); - -}else p.days instanceof Date&&(p.days=scheduler.date.date_part(p.days).valueOf()),p.zones=e.zones.slice(),t.push(p)}return t},scheduler._get_dates_by_index=function(e,t,a){var r=[];t=scheduler.date.date_part(new Date(t||scheduler._min_date)),a=new Date(a||scheduler._max_date);for(var i=t.getDay(),n=e-i>=0?e-i:7-t.getDay()+e,l=scheduler.date.add(t,n,"day");a>l;l=scheduler.date.add(l,1,"week"))r.push(l);return r},scheduler._get_css_classes_by_config=function(e){var t=[];return e.type==a&&(t.push(a), -e.css&&t.push(a+"_reset")),t.push("dhx_marked_timespan",e.css),t.join(" ")},scheduler._get_block_by_config=function(e){var t=document.createElement("DIV");return e.html&&("string"==typeof e.html?t.innerHTML=e.html:t.appendChild(e.html)),t},scheduler._render_marked_timespan=function(e,t,a){var r=[],i=scheduler.config,n=this._min_date,l=this._max_date,d=!1;if(!i.display_marked_timespans)return r;if(!a&&0!==a){if(e.days<7)a=e.days;else{var s=new Date(e.days);if(d=+s,!(+l>+s&&+s>=+n))return r;a=s.getDay(); - -}var o=n.getDay();o>a?a=7-(o-a):a-=o}var _=e.zones,c=scheduler._get_css_classes_by_config(e);if(scheduler._table_view&&"month"==scheduler._mode){var u=[],h=[];if(t)u.push(t),h.push(a);else{h=d?[d]:scheduler._get_dates_by_index(a);for(var p=0;p<h.length;p++)u.push(this._scales[h[p]])}for(var p=0;p<u.length;p++){t=u[p],a=h[p];var v=Math.floor((this._correct_shift(a,1)-n.valueOf())/(864e5*this._cols.length)),m=this.locate_holder_day(a,!1)%this._cols.length;if(!this._ignores[m]){var g=scheduler._get_block_by_config(e),b=Math.max(t.offsetHeight-1,0),y=Math.max(t.offsetWidth-1,0),f=this._colsS[m],x=this._colsS.heights[v]+(this._colsS.height?this.xy.month_scale_height+2:2)-1; - -g.className=c,g.style.top=x+"px",g.style.lineHeight=g.style.height=b+"px";for(var k=0;k<_.length;k+=2){var w=_[p],D=_[p+1];if(w>=D)return[];var E=g.cloneNode(!0);E.style.left=f+Math.round(w/1440*y)+"px",E.style.width=Math.round((D-w)/1440*y)+"px",t.appendChild(E),r.push(E)}}}}else{var M=a;if(this._ignores[this.locate_holder_day(a,!1)])return r;if(this._props&&this._props[this._mode]&&e.sections&&e.sections[this._mode]){var S=this._props[this._mode];M=S.order[e.sections[this._mode]];var O=S.order[e.sections[this._mode]]; - -if(S.days>1){var N=S.size||S.options.length;M=M*N+O}else M=O,S.size&&M>S.position+S.size&&(M=0)}t=t?t:scheduler.locate_holder(M);for(var p=0;p<_.length;p+=2){var w=Math.max(_[p],60*i.first_hour),D=Math.min(_[p+1],60*i.last_hour);if(w>=D){if(p+2<_.length)continue;return[]}var E=scheduler._get_block_by_config(e);E.className=c;var L=24*this.config.hour_size_px+1,A=36e5;E.style.top=Math.round((60*w*1e3-this.config.first_hour*A)*this.config.hour_size_px/A)%L+"px",E.style.lineHeight=E.style.height=Math.max(Math.round(60*(D-w)*1e3*this.config.hour_size_px/A)%L,1)+"px", -t.appendChild(E),r.push(E)}}return r},scheduler.markTimespan=function(e){var t=[],a=!1;this._els.dhx_cal_data||(scheduler.get_elements(),a=!0);var r=this._els.dhx_cal_data[0],i=scheduler._marked_timespans_ids,n=scheduler._marked_timespans_types,l=scheduler._marked_timespans;scheduler.deleteMarkedTimespan(),scheduler.addMarkedTimespan(e);for(var d=new Date(scheduler._min_date),s=0,o=r.childNodes.length;o>s;s++){var _=r.childNodes[s];_.firstChild&&(_.firstChild.className||"").indexOf("dhx_scale_hour")>-1||(t.push.apply(t,scheduler._on_scale_add_marker(_,d)), -d=scheduler.date.add(d,1,"day"))}return a&&(scheduler._els=[]),scheduler._marked_timespans_ids=i,scheduler._marked_timespans_types=n,scheduler._marked_timespans=l,t},scheduler.unmarkTimespan=function(e){if(e)for(var t=0;t<e.length;t++){var a=e[t];a.parentNode&&a.parentNode.removeChild(a)}},scheduler._marked_timespans_ids={},scheduler.addMarkedTimespan=function(e){var t=scheduler._prepare_timespan_options(e),a="global";if(t.length){var r=t[0].id,i=scheduler._marked_timespans,n=scheduler._marked_timespans_ids; - -n[r]||(n[r]=[]);for(var l=0;l<t.length;l++){var d=t[l],s=d.days,o=(d.zones,d.css,d.sections),_=d.type;if(d.id=r,o){for(var c in o)if(o.hasOwnProperty(c)){i[c]||(i[c]={});var u=o[c],h=i[c];h[u]||(h[u]={}),h[u][s]||(h[u][s]={}),h[u][s][_]||(h[u][s][_]=[],scheduler._marked_timespans_types||(scheduler._marked_timespans_types={}),scheduler._marked_timespans_types[_]||(scheduler._marked_timespans_types[_]=!0));var p=h[u][s][_];d._array=p,p.push(d),n[r].push(d)}}else{i[a][s]||(i[a][s]={}),i[a][s][_]||(i[a][s][_]=[]), -scheduler._marked_timespans_types||(scheduler._marked_timespans_types={}),scheduler._marked_timespans_types[_]||(scheduler._marked_timespans_types[_]=!0);var p=i[a][s][_];d._array=p,p.push(d),n[r].push(d)}}return r}},scheduler._add_timespan_zones=function(e,t){var a=e.slice();if(t=t.slice(),!a.length)return t;for(var r=0;r<a.length;r+=2)for(var i=a[r],n=a[r+1],l=r+2==a.length,d=0;d<t.length;d+=2){var s=t[d],o=t[d+1];if(o>n&&n>=s||i>s&&o>=i)a[r]=Math.min(i,s),a[r+1]=Math.max(n,o),r-=2;else{if(!l)continue; - -var _=i>s?0:2;a.splice(r+_,0,s,o)}t.splice(d--,2);break}return a},scheduler._subtract_timespan_zones=function(e,t){for(var a=e.slice(),r=0;r<a.length;r+=2)for(var i=a[r],n=a[r+1],l=0;l<t.length;l+=2){var d=t[l],s=t[l+1];if(s>i&&n>d){var o=!1;i>=d&&s>=n&&a.splice(r,2),d>i&&(a.splice(r,2,i,d),o=!0),n>s&&a.splice(o?r+2:r,o?0:2,s,n),r-=2;break}}return a},scheduler.invertZones=function(e){return scheduler._subtract_timespan_zones([0,1440],e.slice())},scheduler._delete_marked_timespan_by_id=function(e){ -var t=scheduler._marked_timespans_ids[e];if(t)for(var a=0;a<t.length;a++)for(var r=t[a],i=r._array,n=0;n<i.length;n++)if(i[n]==r){i.splice(n,1);break}},scheduler._delete_marked_timespan_by_config=function(e){var t=scheduler._marked_timespans,a=e.sections,i=e.days,n=e.type||r,l=[];if(a){for(var d in a)if(a.hasOwnProperty(d)&&t[d]){var s=a[d];t[d][s]&&t[d][s][i]&&t[d][s][i][n]&&(l=t[d][s][i][n])}}else t.global[i]&&t.global[i][n]&&(l=t.global[i][n]);for(var o=0;o<l.length;o++){var _=l[o],c=scheduler._subtract_timespan_zones(_.zones,e.zones); - -if(c.length)_.zones=c;else{l.splice(o,1),o--;for(var u=scheduler._marked_timespans_ids[_.id],h=0;h<u.length;h++)if(u[h]==_){u.splice(h,1);break}}}for(var o in scheduler._marked_timespans.timeline)for(var p in scheduler._marked_timespans.timeline[o])for(var h in scheduler._marked_timespans.timeline[o][p])h===n&&delete scheduler._marked_timespans.timeline[o][p][h]},scheduler.deleteMarkedTimespan=function(e){if(arguments.length||(scheduler._marked_timespans={global:{}},scheduler._marked_timespans_ids={}, -scheduler._marked_timespans_types={}),"object"!=typeof e)scheduler._delete_marked_timespan_by_id(e);else{e.start_date&&e.end_date||(e.days||(e.days="fullweek"),e.zones||(e.zones="fullday"));var t=[];if(e.type)t.push(e.type);else for(var a in scheduler._marked_timespans_types)t.push(a);for(var r=scheduler._prepare_timespan_options(e),i=0;i<r.length;i++)for(var n=r[i],l=0;l<t.length;l++){var d=scheduler._lame_clone(n);d.type=t[l],scheduler._delete_marked_timespan_by_config(d)}}},scheduler._get_types_to_render=function(e,t){ -var a=e?e:{};for(var r in t||{})t.hasOwnProperty(r)&&(a[r]=t[r]);return a},scheduler._get_configs_to_render=function(e){var t=[];for(var a in e)e.hasOwnProperty(a)&&t.push.apply(t,e[a]);return t},scheduler._on_scale_add_marker=function(e,t){if(!scheduler._table_view||"month"==scheduler._mode){var a=t.getDay(),r=t.valueOf(),i=this._mode,n=scheduler._marked_timespans,l=[],d=[];if(this._props&&this._props[i]){var s=this._props[i],o=s.options,_=scheduler._get_unit_index(s,t),c=o[_];if(s.days>1){var u=864e5,h=Math.floor((t-scheduler._min_date)/u); - -t=scheduler.date.add(scheduler._min_date,Math.floor(h/o.length),"day"),t=scheduler.date.date_part(t)}else t=scheduler.date.date_part(new Date(this._date));if(a=t.getDay(),r=t.valueOf(),n[i]&&n[i][c.key]){var p=n[i][c.key],v=scheduler._get_types_to_render(p[a],p[r]);l.push.apply(l,scheduler._get_configs_to_render(v))}}var m=n.global,g=m[r]||m[a];l.push.apply(l,scheduler._get_configs_to_render(g));for(var b=0;b<l.length;b++)d.push.apply(d,scheduler._render_marked_timespan(l[b],e,t));return d}},scheduler.attachEvent("onScaleAdd",scheduler._on_scale_add_marker), -scheduler.dblclick_dhx_marked_timespan=function(e,t){scheduler.config.dblclick_create||scheduler.callEvent("onScaleDblClick",[scheduler.getActionData(e).date,t,e]),scheduler.addEventNow(scheduler.getActionData(e).date,null,e)}},scheduler._temp_limit_scope(); +var s=scheduler._lame_clone(e);s.days=i[n],t.push.apply(t,scheduler._prepare_timespan_options(s))}return t}if(!e||!(e.start_date&&e.end_date&&e.end_date>e.start_date||void 0!==e.days&&e.zones)&&!e.type)return t;var d=0,l=1440;"fullday"==e.zones&&(e.zones=[d,l]),e.zones&&e.invert_zones&&(e.zones=scheduler.invertZones(e.zones)),e.id=scheduler.uid(),e.css=e.css||"",e.type=e.type||r;var o=e.sections;if(o){for(var _ in o)if(o.hasOwnProperty(_)){var h=o[_];h instanceof Array||(h=[h]);for(var n=0;n<h.length;n++){ +var c=scheduler._lame_copy({},e);c.sections={},c.sections[_]=h[n],a.push(c)}}}else a.push(e);for(var u=0;u<a.length;u++){var v=a[u],f=v.start_date,g=v.end_date;if(f&&g)for(var m=scheduler.date.date_part(new Date(f)),p=scheduler.date.add(m,1,"day");g>m;){var c=scheduler._lame_copy({},v);delete c.start_date,delete c.end_date,c.days=m.valueOf();var y=f>m?scheduler._get_zone_minutes(f):d,b=g>p||g.getDate()!=m.getDate()?l:scheduler._get_zone_minutes(g);c.zones=[y,b],t.push(c),m=p,p=scheduler.date.add(p,1,"day"); +}else v.days instanceof Date&&(v.days=scheduler.date.date_part(v.days).valueOf()),v.zones=e.zones.slice(),t.push(v)}return t},scheduler._get_dates_by_index=function(e,t,a){var r=[];t=scheduler.date.date_part(new Date(t||scheduler._min_date)),a=new Date(a||scheduler._max_date);for(var i=t.getDay(),n=e-i>=0?e-i:7-t.getDay()+e,s=scheduler.date.add(t,n,"day");a>s;s=scheduler.date.add(s,1,"week"))r.push(s);return r},scheduler._get_css_classes_by_config=function(e){var t=[];return e.type==a&&(t.push(a), +e.css&&t.push(a+"_reset")),t.push("dhx_marked_timespan",e.css),t.join(" ")},scheduler._get_block_by_config=function(e){var t=document.createElement("DIV");return e.html&&("string"==typeof e.html?t.innerHTML=e.html:t.appendChild(e.html)),t},scheduler._render_marked_timespan=function(e,t,a){var r=[],i=scheduler.config,n=this._min_date,s=this._max_date,d=!1;if(!i.display_marked_timespans)return r;if(!a&&0!==a){if(e.days<7)a=e.days;else{var l=new Date(e.days);if(d=+l,!(+s>+l&&+l>=+n))return r;a=l.getDay(); +}var o=n.getDay();o>a?a=7-(o-a):a-=o}var _=e.zones,h=scheduler._get_css_classes_by_config(e);if(scheduler._table_view&&"month"==scheduler._mode){var c=[],u=[];if(t)c.push(t),u.push(a);else{u=d?[d]:scheduler._get_dates_by_index(a);for(var v=0;v<u.length;v++)c.push(this._scales[u[v]])}for(var v=0;v<c.length;v++){t=c[v],a=u[v];var f=Math.floor((this._correct_shift(a,1)-n.valueOf())/(864e5*this._cols.length)),g=this.locate_holder_day(a,!1)%this._cols.length;if(!this._ignores[g]){var m=scheduler._get_block_by_config(e),p=Math.max(t.offsetHeight-1,0),y=Math.max(t.offsetWidth-1,0),b=this._colsS[g],x=this._colsS.heights[f]+(this._colsS.height?this.xy.month_scale_height+2:2)-1; +m.className=h,m.style.top=x+"px",m.style.lineHeight=m.style.height=p+"px";for(var w=0;w<_.length;w+=2){var k=_[v],D=_[v+1];if(k>=D)return[];var E=m.cloneNode(!0);E.style.left=b+Math.round(k/1440*y)+"px",E.style.width=Math.round((D-k)/1440*y)+"px",t.appendChild(E),r.push(E)}}}}else{var N=a;if(this._ignores[this.locate_holder_day(a,!1)])return r;if(this._props&&this._props[this._mode]&&e.sections&&e.sections[this._mode]){var S=this._props[this._mode];N=S.order[e.sections[this._mode]];var A=S.order[e.sections[this._mode]]; +if(S.days>1){var M=S.size||S.options.length;N=N*M+A}else N=A,S.size&&N>S.position+S.size&&(N=0)}t=t?t:scheduler.locate_holder(N);for(var v=0;v<_.length;v+=2){var k=Math.max(_[v],60*i.first_hour),D=Math.min(_[v+1],60*i.last_hour);if(k>=D){if(v+2<_.length)continue;return[]}var E=scheduler._get_block_by_config(e);E.className=h;var C=24*this.config.hour_size_px+1,O=36e5;E.style.top=Math.round((60*k*1e3-this.config.first_hour*O)*this.config.hour_size_px/O)%C+"px",E.style.lineHeight=E.style.height=Math.max(Math.round(60*(D-k)*1e3*this.config.hour_size_px/O)%C,1)+"px", +t.appendChild(E),r.push(E)}}return r},scheduler._mark_timespans=function(){var e=this._els.dhx_cal_data[0],t=[];if(scheduler._table_view&&"month"==scheduler._mode)for(var a in this._scales){var r=new Date(+a);t.push.apply(t,scheduler._on_scale_add_marker(this._scales[a],r))}else for(var r=new Date(scheduler._min_date),i=0,n=e.childNodes.length;n>i;i++){var s=e.childNodes[i];s.firstChild&&scheduler._getClassName(s.firstChild).indexOf("dhx_scale_hour")>-1||(t.push.apply(t,scheduler._on_scale_add_marker(s,r)), +r=scheduler.date.add(r,1,"day"))}return t},scheduler.markTimespan=function(e){var t=!1;this._els.dhx_cal_data||(scheduler.get_elements(),t=!0);var a=scheduler._marked_timespans_ids,r=scheduler._marked_timespans_types,i=scheduler._marked_timespans;scheduler.deleteMarkedTimespan(),scheduler.addMarkedTimespan(e);var n=scheduler._mark_timespans();return t&&(scheduler._els=[]),scheduler._marked_timespans_ids=a,scheduler._marked_timespans_types=r,scheduler._marked_timespans=i,n},scheduler.unmarkTimespan=function(e){ +if(e)for(var t=0;t<e.length;t++){var a=e[t];a.parentNode&&a.parentNode.removeChild(a)}},scheduler._addMarkerTimespanConfig=function(e){var t="global",a=scheduler._marked_timespans,r=e.id,i=scheduler._marked_timespans_ids;i[r]||(i[r]=[]);var n=e.days,s=e.sections,d=e.type;if(e.id=r,s){for(var l in s)if(s.hasOwnProperty(l)){a[l]||(a[l]={});var o=s[l],_=a[l];_[o]||(_[o]={}),_[o][n]||(_[o][n]={}),_[o][n][d]||(_[o][n][d]=[],scheduler._marked_timespans_types||(scheduler._marked_timespans_types={}),scheduler._marked_timespans_types[d]||(scheduler._marked_timespans_types[d]=!0)); +var h=_[o][n][d];e._array=h,h.push(e),i[r].push(e)}}else{a[t][n]||(a[t][n]={}),a[t][n][d]||(a[t][n][d]=[]),scheduler._marked_timespans_types||(scheduler._marked_timespans_types={}),scheduler._marked_timespans_types[d]||(scheduler._marked_timespans_types[d]=!0);var h=a[t][n][d];e._array=h,h.push(e),i[r].push(e)}},scheduler._marked_timespans_ids={},scheduler.addMarkedTimespan=function(e){var t=scheduler._prepare_timespan_options(e);if(t.length){for(var a=t[0].id,r=0;r<t.length;r++)scheduler._addMarkerTimespanConfig(t[r]); +return a}},scheduler._add_timespan_zones=function(e,t){var a=e.slice();if(t=t.slice(),!a.length)return t;for(var r=0;r<a.length;r+=2)for(var i=a[r],n=a[r+1],s=r+2==a.length,d=0;d<t.length;d+=2){var l=t[d],o=t[d+1];if(o>n&&n>=l||i>l&&o>=i)a[r]=Math.min(i,l),a[r+1]=Math.max(n,o),r-=2;else{if(!s)continue;var _=i>l?0:2;a.splice(r+_,0,l,o)}t.splice(d--,2);break}return a},scheduler._subtract_timespan_zones=function(e,t){for(var a=e.slice(),r=0;r<a.length;r+=2)for(var i=a[r],n=a[r+1],s=0;s<t.length;s+=2){ +var d=t[s],l=t[s+1];if(l>i&&n>d){var o=!1;i>=d&&l>=n&&a.splice(r,2),d>i&&(a.splice(r,2,i,d),o=!0),n>l&&a.splice(o?r+2:r,o?0:2,l,n),r-=2;break}}return a},scheduler.invertZones=function(e){return scheduler._subtract_timespan_zones([0,1440],e.slice())},scheduler._delete_marked_timespan_by_id=function(e){var t=scheduler._marked_timespans_ids[e];if(t)for(var a=0;a<t.length;a++)for(var r=t[a],i=r._array,n=0;n<i.length;n++)if(i[n]==r){i.splice(n,1);break}},scheduler._delete_marked_timespan_by_config=function(e){ +var t,a=scheduler._marked_timespans,i=e.sections,n=e.days,s=e.type||r;if(i){for(var d in i)if(i.hasOwnProperty(d)&&a[d]){var l=i[d];a[d][l]&&(t=a[d][l])}}else t=a.global;if(t)if(void 0!==n)t[n]&&t[n][s]&&(scheduler._addMarkerTimespanConfig(e),scheduler._delete_marked_timespans_list(t[n][s],e));else for(var o in t)if(t[o][s]){var _=scheduler._lame_clone(e);e.days=o,scheduler._addMarkerTimespanConfig(_),scheduler._delete_marked_timespans_list(t[o][s],e)}},scheduler._delete_marked_timespans_list=function(e,t){ +for(var a=0;a<e.length;a++){var r=e[a],i=scheduler._subtract_timespan_zones(r.zones,t.zones);if(i.length)r.zones=i;else{e.splice(a,1),a--;for(var n=scheduler._marked_timespans_ids[r.id],s=0;s<n.length;s++)if(n[s]==r){n.splice(s,1);break}}}},scheduler.deleteMarkedTimespan=function(e){if(arguments.length||(scheduler._marked_timespans={global:{}},scheduler._marked_timespans_ids={},scheduler._marked_timespans_types={}),"object"!=typeof e)scheduler._delete_marked_timespan_by_id(e);else{e.start_date&&e.end_date||(void 0!==e.days||e.type||(e.days="fullweek"), +e.zones||(e.zones="fullday"));var t=[];if(e.type)t.push(e.type);else for(var a in scheduler._marked_timespans_types)t.push(a);for(var r=scheduler._prepare_timespan_options(e),i=0;i<r.length;i++)for(var n=r[i],s=0;s<t.length;s++){var d=scheduler._lame_clone(n);d.type=t[s],scheduler._delete_marked_timespan_by_config(d)}}},scheduler._get_types_to_render=function(e,t){var a=e?scheduler._lame_copy({},e):{};for(var r in t||{})t.hasOwnProperty(r)&&(a[r]=t[r]);return a},scheduler._get_configs_to_render=function(e){ +var t=[];for(var a in e)e.hasOwnProperty(a)&&t.push.apply(t,e[a]);return t},scheduler._on_scale_add_marker=function(e,t){if(!scheduler._table_view||"month"==scheduler._mode){var a=t.getDay(),r=t.valueOf(),i=this._mode,n=scheduler._marked_timespans,s=[],d=[];if(this._props&&this._props[i]){var l=this._props[i],o=l.options,_=scheduler._get_unit_index(l,t),h=o[_];if(l.days>1){var c=864e5,u=Math.round((t-scheduler._min_date)/c);t=scheduler.date.add(scheduler._min_date,Math.floor(u/o.length),"day"),t=scheduler.date.date_part(t); +}else t=scheduler.date.date_part(new Date(this._date));if(a=t.getDay(),r=t.valueOf(),n[i]&&n[i][h.key]){var v=n[i][h.key],f=scheduler._get_types_to_render(v[a],v[r]);s.push.apply(s,scheduler._get_configs_to_render(f))}}var g=n.global,m=g[r]||g[a];s.push.apply(s,scheduler._get_configs_to_render(m));for(var p=0;p<s.length;p++)d.push.apply(d,scheduler._render_marked_timespan(s[p],e,t));return d}},scheduler.attachEvent("onScaleAdd",function(){scheduler._on_scale_add_marker.apply(scheduler,arguments)}), +scheduler.dblclick_dhx_marked_timespan=function(e,t){scheduler.callEvent("onScaleDblClick",[scheduler.getActionData(e).date,t,e]),scheduler.config.dblclick_create&&scheduler.addEventNow(scheduler.getActionData(e).date,null,e)}},scheduler._temp_limit_scope(); //# sourceMappingURL=../sources/ext/dhtmlxscheduler_limit.js.map
\ No newline at end of file diff --git a/codebase/ext/dhtmlxscheduler_map_view.js b/codebase/ext/dhtmlxscheduler_map_view.js index ab7d018..d24e3d2 100644 --- a/codebase/ext/dhtmlxscheduler_map_view.js +++ b/codebase/ext/dhtmlxscheduler_map_view.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -11,30 +11,23 @@ scheduler.locale.labels.marker_geo_fail="Sorry, could not get your current posit start_date:scheduler._date,end_date:scheduler.date.add(scheduler._date,scheduler.config.time_step,"minute")})},scheduler.templates.map_time=function(e,t,a){return a._timed?this.day_date(a.start_date,a.end_date,a)+" "+this.event_date(e):scheduler.templates.day_date(e)+" – "+scheduler.templates.day_date(t)},scheduler.templates.map_text=function(e,t,a){return a.text},scheduler.date.map_start=function(e){return e},scheduler.date.add_map=function(e,t,a){return new Date(e.valueOf())},scheduler.templates.map_date=function(e,t,a){ return""},scheduler._latLngUpdate=!1,scheduler.attachEvent("onSchedulerReady",function(){function e(e){if(e){var t=scheduler.locale.labels;scheduler._els.dhx_cal_header[0].innerHTML="<div class='dhx_map_line' style='width: "+(scheduler.xy.map_date_width+scheduler.xy.map_description_width+2)+"px;' ><div class='headline_date' style='width: "+scheduler.xy.map_date_width+"px;'>"+t.date+"</div><div class='headline_description' style='width: "+scheduler.xy.map_description_width+"px;'>"+t.description+"</div></div>", scheduler._table_view=!0,scheduler.set_sizes()}}function t(){scheduler._selected_event_id=null,scheduler.map._infowindow.close();var e=scheduler.map._markers;for(var t in e)e.hasOwnProperty(t)&&(e[t].setMap(null),delete scheduler.map._markers[t],scheduler.map._infowindows_content[t]&&delete scheduler.map._infowindows_content[t])}function a(){var e=scheduler.get_visible_events();e.sort(function(e,t){return e.start_date.valueOf()==t.start_date.valueOf()?e.id>t.id?1:-1:e.start_date>t.start_date?1:-1; - -});for(var t="<div class='dhx_map_area'>",a=0;a<e.length;a++){var r=e[a],n=r.id==scheduler._selected_event_id?"dhx_map_line highlight":"dhx_map_line",i=r.color?"background:"+r.color+";":"",l=r.textColor?"color:"+r.textColor+";":"";t+="<div class='"+n+"' event_id='"+r.id+"' style='"+i+l+(r._text_style||"")+" width: "+(scheduler.xy.map_date_width+scheduler.xy.map_description_width+2)+"px;'><div style='width: "+scheduler.xy.map_date_width+"px;' >"+scheduler.templates.map_time(r.start_date,r.end_date,r)+"</div>", -t+="<div class='dhx_event_icon icon_details'> </div>",t+="<div class='line_description' style='width:"+(scheduler.xy.map_description_width-25)+"px;'>"+scheduler.templates.map_text(r.start_date,r.end_date,r)+"</div></div>"}t+="<div class='dhx_v_border' style='left: "+(scheduler.xy.map_date_width-2)+"px;'></div><div class='dhx_v_border_description'></div></div>",scheduler._els.dhx_cal_data[0].scrollTop=0,scheduler._els.dhx_cal_data[0].innerHTML=t,scheduler._els.dhx_cal_data[0].style.width=scheduler.xy.map_date_width+scheduler.xy.map_description_width+1+"px"; - -var d=scheduler._els.dhx_cal_data[0].firstChild.childNodes;scheduler._els.dhx_cal_date[0].innerHTML=scheduler.templates[scheduler._mode+"_date"](scheduler._min_date,scheduler._max_date,scheduler._mode),scheduler._rendered=[];for(var a=0;a<d.length-2;a++)scheduler._rendered[a]=d[a]}function r(e){var t=document.getElementById(e),a=scheduler._y-scheduler.xy.nav_height;0>a&&(a=0);var r=scheduler._x-scheduler.xy.map_date_width-scheduler.xy.map_description_width-1;0>r&&(r=0),t.style.height=a+"px",t.style.width=r+"px", -t.style.marginLeft=scheduler.xy.map_date_width+scheduler.xy.map_description_width+1+"px",t.style.marginTop=scheduler.xy.nav_height+2+"px"}scheduler._isMapPositionSet=!1;var n=document.createElement("div");n.className="dhx_map",n.id="dhx_gmap",n.style.dispay="none";var i=scheduler._obj;i.appendChild(n),scheduler._els.dhx_gmap=[],scheduler._els.dhx_gmap.push(n),r("dhx_gmap");var l={zoom:scheduler.config.map_inital_zoom||10,center:scheduler.config.map_initial_position,mapTypeId:scheduler.config.map_type||google.maps.MapTypeId.ROADMAP -},d=new google.maps.Map(document.getElementById("dhx_gmap"),l);d.disableDefaultUI=!1,d.disableDoubleClickZoom=!scheduler.config.readonly,google.maps.event.addListener(d,"dblclick",function(e){if(!scheduler.config.readonly&&scheduler.config.dblclick_create){var t=e.latLng;geocoder.geocode({latLng:t},function(e,a){a==google.maps.GeocoderStatus.OK&&(t=e[0].geometry.location,scheduler.addEventNow({lat:t.lat(),lng:t.lng(),event_location:e[0].formatted_address,start_date:scheduler._date,end_date:scheduler.date.add(scheduler._date,scheduler.config.time_step,"minute") -}))})}});var s={content:""};scheduler.config.map_infowindow_max_width&&(s.maxWidth=scheduler.config.map_infowindow_max_width),scheduler.map={_points:[],_markers:[],_infowindow:new google.maps.InfoWindow(s),_infowindows_content:[],_initialization_count:-1,_obj:d},geocoder=new google.maps.Geocoder,scheduler.config.map_resolve_user_location&&navigator.geolocation&&(scheduler._isMapPositionSet||navigator.geolocation.getCurrentPosition(function(e){var t=new google.maps.LatLng(e.coords.latitude,e.coords.longitude); - +});for(var t=scheduler._waiAria.mapAttrString(),a="<div "+t+" class='dhx_map_area'>",r=0;r<e.length;r++){var i=e[r],n=i.id==scheduler._selected_event_id?"dhx_map_line highlight":"dhx_map_line",s=i.color?"background:"+i.color+";":"",d=i.textColor?"color:"+i.textColor+";":"",t=scheduler._waiAria.mapRowAttrString(i),l=scheduler._waiAria.mapDetailsBtnString();a+="<div "+t+" class='"+n+"' event_id='"+i.id+"' style='"+s+d+(i._text_style||"")+" width: "+(scheduler.xy.map_date_width+scheduler.xy.map_description_width+2)+"px;'><div style='width: "+scheduler.xy.map_date_width+"px;' >"+scheduler.templates.map_time(i.start_date,i.end_date,i)+"</div>", +a+="<div "+l+" class='dhx_event_icon icon_details'> </div>",a+="<div class='line_description' style='width:"+(scheduler.xy.map_description_width-25)+"px;'>"+scheduler.templates.map_text(i.start_date,i.end_date,i)+"</div></div>"}a+="<div class='dhx_v_border' style='left: "+(scheduler.xy.map_date_width-2)+"px;'></div><div class='dhx_v_border_description'></div></div>",scheduler._els.dhx_cal_data[0].scrollTop=0,scheduler._els.dhx_cal_data[0].innerHTML=a,scheduler._els.dhx_cal_data[0].style.width=scheduler.xy.map_date_width+scheduler.xy.map_description_width+1+"px"; +var o=scheduler._els.dhx_cal_data[0].firstChild.childNodes;scheduler._els.dhx_cal_date[0].innerHTML=scheduler.templates[scheduler._mode+"_date"](scheduler._min_date,scheduler._max_date,scheduler._mode),scheduler._rendered=[];for(var r=0;r<o.length-2;r++)scheduler._rendered[r]=o[r]}function r(e){var t=document.getElementById(e),a=scheduler._y-scheduler.xy.nav_height;0>a&&(a=0);var r=scheduler._x-scheduler.xy.map_date_width-scheduler.xy.map_description_width-1;0>r&&(r=0),t.style.height=a+"px",t.style.width=r+"px", +t.style.marginLeft=scheduler.xy.map_date_width+scheduler.xy.map_description_width+1+"px",t.style.marginTop=scheduler.xy.nav_height+2+"px"}scheduler._isMapPositionSet=!1;var i=document.createElement("div");i.className="dhx_map",i.id="dhx_gmap",i.style.dispay="none";var n=scheduler._obj;n.appendChild(i),scheduler._els.dhx_gmap=[],scheduler._els.dhx_gmap.push(i),r("dhx_gmap");var s={zoom:scheduler.config.map_inital_zoom||10,center:scheduler.config.map_initial_position,mapTypeId:scheduler.config.map_type||google.maps.MapTypeId.ROADMAP +},d=new google.maps.Map(document.getElementById("dhx_gmap"),s);d.disableDefaultUI=!1,d.disableDoubleClickZoom=!scheduler.config.readonly,google.maps.event.addListener(d,"dblclick",function(e){if(!scheduler.config.readonly&&scheduler.config.dblclick_create){var t=e.latLng;geocoder.geocode({latLng:t},function(e,a){a==google.maps.GeocoderStatus.OK&&(t=e[0].geometry.location,scheduler.addEventNow({lat:t.lat(),lng:t.lng(),event_location:e[0].formatted_address,start_date:scheduler._date,end_date:scheduler.date.add(scheduler._date,scheduler.config.time_step,"minute") +}))})}});var l={content:""};scheduler.config.map_infowindow_max_width&&(l.maxWidth=scheduler.config.map_infowindow_max_width),scheduler.map={_points:[],_markers:[],_infowindow:new google.maps.InfoWindow(l),_infowindows_content:[],_initialization_count:-1,_obj:d},geocoder=new google.maps.Geocoder,scheduler.config.map_resolve_user_location&&navigator.geolocation&&(scheduler._isMapPositionSet||navigator.geolocation.getCurrentPosition(function(e){var t=new google.maps.LatLng(e.coords.latitude,e.coords.longitude); d.setCenter(t),d.setZoom(scheduler.config.map_zoom_after_resolve||10),scheduler.map._infowindow.setContent(scheduler.locale.labels.marker_geo_success),scheduler.map._infowindow.position=d.getCenter(),scheduler.map._infowindow.open(d),scheduler._isMapPositionSet=!0},function(){scheduler.map._infowindow.setContent(scheduler.locale.labels.marker_geo_fail),scheduler.map._infowindow.setPosition(d.getCenter()),scheduler.map._infowindow.open(d),scheduler._isMapPositionSet=!0})),google.maps.event.addListener(d,"resize",function(e){ -n.style.zIndex="5",d.setZoom(d.getZoom())}),google.maps.event.addListener(d,"tilesloaded",function(e){n.style.zIndex="5"}),n.style.display="none",scheduler.attachEvent("onSchedulerResize",function(){return"map"==this._mode?(this.map_view(!0),!1):!0});var o=scheduler.render_data;scheduler.render_data=function(e,t){if("map"!=this._mode)return o.apply(this,arguments);a();for(var r=scheduler.get_visible_events(),n=0;n<r.length;n++)scheduler.map._markers[r[n].id]||c(r[n],!1,!1)},scheduler.map_view=function(n){ -scheduler.map._initialization_count++;var i,l=scheduler._els.dhx_gmap[0];if(scheduler._els.dhx_cal_data[0].style.width=scheduler.xy.map_date_width+scheduler.xy.map_description_width+1+"px",scheduler._min_date=scheduler.config.map_start||scheduler._currentDate(),scheduler._max_date=scheduler.config.map_end||scheduler.date.add(scheduler._currentDate(),1,"year"),scheduler._table_view=!0,e(n),n){t(),a(),l.style.display="block",r("dhx_gmap"),i=scheduler.map._obj.getCenter();for(var d=scheduler.get_visible_events(),s=0;s<d.length;s++)scheduler.map._markers[d[s].id]||c(d[s]); - -}else l.style.display="none";google.maps.event.trigger(scheduler.map._obj,"resize"),0===scheduler.map._initialization_count&&i&&scheduler.map._obj.setCenter(i),scheduler._selected_event_id&&_(scheduler._selected_event_id)};var _=function(e){scheduler.map._obj.setCenter(scheduler.map._points[e]),scheduler.callEvent("onClick",[e])},c=function(e,t,a){var r=scheduler.config.map_error_position;e.lat&&e.lng&&(r=new google.maps.LatLng(e.lat,e.lng));var n=scheduler.templates.marker_text(e.start_date,e.end_date,e); - -scheduler._new_event||(scheduler.map._infowindows_content[e.id]=n,scheduler.map._markers[e.id]&&scheduler.map._markers[e.id].setMap(null),scheduler.map._markers[e.id]=new google.maps.Marker({position:r,map:scheduler.map._obj}),google.maps.event.addListener(scheduler.map._markers[e.id],"click",function(){scheduler.map._infowindow.setContent(scheduler.map._infowindows_content[e.id]),scheduler.map._infowindow.open(scheduler.map._obj,scheduler.map._markers[e.id]),scheduler._selected_event_id=e.id,scheduler.render_data(); - +i.style.zIndex="5",d.setZoom(d.getZoom())}),google.maps.event.addListener(d,"tilesloaded",function(e){i.style.zIndex="5"}),i.style.display="none",scheduler.attachEvent("onSchedulerResize",function(){return"map"==this._mode?(this.map_view(!0),!1):!0});var o=scheduler.render_data;scheduler.render_data=function(e,t){if("map"!=this._mode)return o.apply(this,arguments);a();for(var r=scheduler.get_visible_events(),i=0;i<r.length;i++)scheduler.map._markers[r[i].id]||c(r[i],!1,!1)},scheduler.map_view=function(i){ +scheduler.map._initialization_count++;var n,s=scheduler._els.dhx_gmap[0];if(scheduler._els.dhx_cal_data[0].style.width=scheduler.xy.map_date_width+scheduler.xy.map_description_width+1+"px",scheduler._min_date=scheduler.config.map_start||scheduler._currentDate(),scheduler._max_date=scheduler.config.map_end||scheduler.date.add(scheduler._currentDate(),1,"year"),scheduler._table_view=!0,e(i),i){t(),a(),s.style.display="block",r("dhx_gmap"),n=scheduler.map._obj.getCenter();for(var d=scheduler.get_visible_events(),l=0;l<d.length;l++)scheduler.map._markers[d[l].id]||c(d[l]); +}else s.style.display="none";google.maps.event.trigger(scheduler.map._obj,"resize"),0===scheduler.map._initialization_count&&n&&scheduler.map._obj.setCenter(n),scheduler._selected_event_id&&_(scheduler._selected_event_id)};var _=function(e){scheduler.map._obj.setCenter(scheduler.map._points[e]),scheduler.callEvent("onClick",[e])},c=function(e,t,a){var r=scheduler.config.map_error_position;e.lat&&e.lng&&(r=new google.maps.LatLng(e.lat,e.lng));var i=scheduler.templates.marker_text(e.start_date,e.end_date,e); +scheduler._new_event||(scheduler.map._infowindows_content[e.id]=i,scheduler.map._markers[e.id]&&scheduler.map._markers[e.id].setMap(null),scheduler.map._markers[e.id]=new google.maps.Marker({position:r,map:scheduler.map._obj}),google.maps.event.addListener(scheduler.map._markers[e.id],"click",function(){scheduler.map._infowindow.setContent(scheduler.map._infowindows_content[e.id]),scheduler.map._infowindow.open(scheduler.map._obj,scheduler.map._markers[e.id]),scheduler._selected_event_id=e.id,scheduler.render_data(); }),scheduler.map._points[e.id]=r,t&&scheduler.map._obj.setCenter(scheduler.map._points[e.id]),a&&scheduler.callEvent("onClick",[e.id]))};scheduler.attachEvent("onClick",function(e,t){if("map"==this._mode){scheduler._selected_event_id=e;for(var a=0;a<scheduler._rendered.length;a++)scheduler._rendered[a].className="dhx_map_line",scheduler._rendered[a].getAttribute("event_id")==e&&(scheduler._rendered[a].className+=" highlight");scheduler.map._points[e]&&scheduler.map._markers[e]&&(scheduler.map._obj.setCenter(scheduler.map._points[e]), -google.maps.event.trigger(scheduler.map._markers[e],"click"))}return!0});var u=function(e){e.event_location&&geocoder?geocoder.geocode({address:e.event_location,language:scheduler.uid().toString()},function(t,a){var r={};a!=google.maps.GeocoderStatus.OK?(r=scheduler.callEvent("onLocationError",[e.id]),r&&r!==!0||(r=scheduler.config.map_error_position)):r=t[0].geometry.location,e.lat=r.lat(),e.lng=r.lng(),scheduler._selected_event_id=e.id,scheduler._latLngUpdate=!0,scheduler.callEvent("onEventChanged",[e.id,e]), -c(e,!0,!0)}):c(e,!0,!0)},h=function(e){e.event_location&&geocoder&&geocoder.geocode({address:e.event_location,language:scheduler.uid().toString()},function(t,a){var r={};a!=google.maps.GeocoderStatus.OK?(r=scheduler.callEvent("onLocationError",[e.id]),r&&r!==!0||(r=scheduler.config.map_error_position)):r=t[0].geometry.location,e.lat=r.lat(),e.lng=r.lng(),scheduler._latLngUpdate=!0,scheduler.callEvent("onEventChanged",[e.id,e])})},p=function(e,t,a,r){setTimeout(function(){var r=e.apply(t,a);return e=t=a=null, -r},r||1)};scheduler.attachEvent("onEventChanged",function(e,t){if(this._latLngUpdate)this._latLngUpdate=!1;else{var a=scheduler.getEvent(e);a.start_date<scheduler._min_date&&a.end_date>scheduler._min_date||a.start_date<scheduler._max_date&&a.end_date>scheduler._max_date||a.start_date.valueOf()>=scheduler._min_date&&a.end_date.valueOf()<=scheduler._max_date?(scheduler.map._markers[e]&&scheduler.map._markers[e].setMap(null),u(a)):(scheduler._selected_event_id=null,scheduler.map._infowindow.close(), +google.maps.event.trigger(scheduler.map._markers[e],"click"))}return!0});var h=function(e){e.event_location&&geocoder?geocoder.geocode({address:e.event_location,language:scheduler.uid().toString()},function(t,a){var r={};a!=google.maps.GeocoderStatus.OK?(r=scheduler.callEvent("onLocationError",[e.id]),r&&r!==!0||(r=scheduler.config.map_error_position)):r=t[0].geometry.location,e.lat=r.lat(),e.lng=r.lng(),scheduler._selected_event_id=e.id,scheduler._latLngUpdate=!0,scheduler.callEvent("onEventChanged",[e.id,e]), +c(e,!0,!0)}):c(e,!0,!0)},u=function(e){e.event_location&&geocoder&&geocoder.geocode({address:e.event_location,language:scheduler.uid().toString()},function(t,a){var r={};a!=google.maps.GeocoderStatus.OK?(r=scheduler.callEvent("onLocationError",[e.id]),r&&r!==!0||(r=scheduler.config.map_error_position)):r=t[0].geometry.location,e.lat=r.lat(),e.lng=r.lng(),scheduler._latLngUpdate=!0,scheduler.callEvent("onEventChanged",[e.id,e])})},v=function(e,t,a,r){setTimeout(function(){var r=e.apply(t,a);return e=t=a=null, +r},r||1)};scheduler.attachEvent("onEventChanged",function(e,t){if(this._latLngUpdate)this._latLngUpdate=!1;else{var a=scheduler.getEvent(e);a.start_date<scheduler._min_date&&a.end_date>scheduler._min_date||a.start_date<scheduler._max_date&&a.end_date>scheduler._max_date||a.start_date.valueOf()>=scheduler._min_date&&a.end_date.valueOf()<=scheduler._max_date?(scheduler.map._markers[e]&&scheduler.map._markers[e].setMap(null),h(a)):(scheduler._selected_event_id=null,scheduler.map._infowindow.close(), scheduler.map._markers[e]&&scheduler.map._markers[e].setMap(null))}return!0}),scheduler.attachEvent("onEventIdChange",function(e,t){var a=scheduler.getEvent(t);return(a.start_date<scheduler._min_date&&a.end_date>scheduler._min_date||a.start_date<scheduler._max_date&&a.end_date>scheduler._max_date||a.start_date.valueOf()>=scheduler._min_date&&a.end_date.valueOf()<=scheduler._max_date)&&(scheduler.map._markers[e]&&(scheduler.map._markers[e].setMap(null),delete scheduler.map._markers[e]),scheduler.map._infowindows_content[e]&&delete scheduler.map._infowindows_content[e], -u(a)),!0}),scheduler.attachEvent("onEventAdded",function(e,t){return scheduler._dataprocessor||(t.start_date<scheduler._min_date&&t.end_date>scheduler._min_date||t.start_date<scheduler._max_date&&t.end_date>scheduler._max_date||t.start_date.valueOf()>=scheduler._min_date&&t.end_date.valueOf()<=scheduler._max_date)&&(scheduler.map._markers[e]&&scheduler.map._markers[e].setMap(null),u(t)),!0}),scheduler.attachEvent("onBeforeEventDelete",function(e,t){return scheduler.map._markers[e]&&scheduler.map._markers[e].setMap(null), -scheduler._selected_event_id=null,scheduler.map._infowindow.close(),!0}),scheduler._event_resolve_delay=1500,scheduler.attachEvent("onEventLoading",function(e){return scheduler.config.map_resolve_event_location&&e.event_location&&!e.lat&&!e.lng&&(scheduler._event_resolve_delay+=1500,p(h,this,[e],scheduler._event_resolve_delay)),!0}),scheduler.attachEvent("onEventCancel",function(e,t){return t&&(scheduler.map._markers[e]&&scheduler.map._markers[e].setMap(null),scheduler.map._infowindow.close()),!0; - +h(a)),!0}),scheduler.attachEvent("onEventAdded",function(e,t){return scheduler._dataprocessor||(t.start_date<scheduler._min_date&&t.end_date>scheduler._min_date||t.start_date<scheduler._max_date&&t.end_date>scheduler._max_date||t.start_date.valueOf()>=scheduler._min_date&&t.end_date.valueOf()<=scheduler._max_date)&&(scheduler.map._markers[e]&&scheduler.map._markers[e].setMap(null),h(t)),!0}),scheduler.attachEvent("onBeforeEventDelete",function(e,t){return scheduler.map._markers[e]&&scheduler.map._markers[e].setMap(null), +scheduler._selected_event_id=null,scheduler.map._infowindow.close(),!0}),scheduler._event_resolve_delay=1500,scheduler.attachEvent("onEventLoading",function(e){return scheduler.config.map_resolve_event_location&&e.event_location&&!e.lat&&!e.lng&&(scheduler._event_resolve_delay+=1500,v(u,this,[e],scheduler._event_resolve_delay)),!0}),scheduler.attachEvent("onEventCancel",function(e,t){return t&&(scheduler.map._markers[e]&&scheduler.map._markers[e].setMap(null),scheduler.map._infowindow.close()),!0; })}); //# sourceMappingURL=../sources/ext/dhtmlxscheduler_map_view.js.map
\ No newline at end of file diff --git a/codebase/ext/dhtmlxscheduler_minical.js b/codebase/ext/dhtmlxscheduler_minical.js index 8730a02..3fcd35f 100644 --- a/codebase/ext/dhtmlxscheduler_minical.js +++ b/codebase/ext/dhtmlxscheduler_minical.js @@ -1,37 +1,30 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. (c) Dinamenta, UAB. */ -scheduler.templates.calendar_month=scheduler.date.date_to_str("%F %Y"),scheduler.templates.calendar_scale_date=scheduler.date.date_to_str("%D"),scheduler.templates.calendar_date=scheduler.date.date_to_str("%d"),scheduler.config.minicalendar={mark_events:!0},scheduler._synced_minicalendars=[],scheduler.renderCalendar=function(e,t,a){var r=null,n=e.date||scheduler._currentDate();if("string"==typeof n&&(n=this.templates.api_date(n)),t)r=this._render_calendar(t.parentNode,n,e,t),scheduler.unmarkCalendar(r); -else{var i=e.container,d=e.position;if("string"==typeof i&&(i=document.getElementById(i)),"string"==typeof d&&(d=document.getElementById(d)),d&&"undefined"==typeof d.left){var l=getOffset(d);d={top:l.top+d.offsetHeight,left:l.left}}i||(i=scheduler._get_def_cont(d)),r=this._render_calendar(i,n,e),r.onclick=function(e){e=e||event;var t=e.target||e.srcElement;if(-1!=t.className.indexOf("dhx_month_head")){var a=t.parentNode.className;if(-1==a.indexOf("dhx_after")&&-1==a.indexOf("dhx_before")){var r=scheduler.templates.xml_date(this.getAttribute("date")); - -r.setDate(parseInt(t.innerHTML,10)),scheduler.unmarkCalendar(this),scheduler.markCalendar(this,r,"dhx_calendar_click"),this._last_date=r,this.conf.handler&&this.conf.handler.call(scheduler,r,this)}}}}if(scheduler.config.minicalendar.mark_events)for(var s=scheduler.date.month_start(n),o=scheduler.date.add(s,1,"month"),_=this.getEvents(s,o),c=this["filter_"+this._mode],u=0;u<_.length;u++){var h=_[u];if(!c||c(h.id,h)){var p=h.start_date;for(p.valueOf()<s.valueOf()&&(p=s),p=scheduler.date.date_part(new Date(p.valueOf()));p<h.end_date&&(this.markCalendar(r,p,"dhx_year_event"), -p=this.date.add(p,1,"day"),!(p.valueOf()>=o.valueOf())););}}return this._markCalendarCurrentDate(r),r.conf=e,e.sync&&!a&&this._synced_minicalendars.push(r),r.conf._on_xle_handler||(r.conf._on_xle_handler=scheduler.attachEvent("onXLE",function(){scheduler.updateCalendar(r,r.conf.date)})),r},scheduler._get_def_cont=function(e){return this._def_count||(this._def_count=document.createElement("DIV"),this._def_count.className="dhx_minical_popup",this._def_count.onclick=function(e){(e||event).cancelBubble=!0; - -},document.body.appendChild(this._def_count)),this._def_count.style.left=e.left+"px",this._def_count.style.top=e.top+"px",this._def_count._created=new Date,this._def_count},scheduler._locateCalendar=function(e,t){if("string"==typeof t&&(t=scheduler.templates.api_date(t)),+t>+e._max_date||+t<+e._min_date)return null;for(var a=e.childNodes[2].childNodes[0],r=0,n=new Date(e._min_date);+this.date.add(n,1,"week")<=+t;)n=this.date.add(n,1,"week"),r++;var i=scheduler.config.start_on_monday,d=(t.getDay()||(i?7:0))-(i?1:0); - -return a.rows[r].cells[d].firstChild},scheduler.markCalendar=function(e,t,a){var r=this._locateCalendar(e,t);r&&(r.className+=" "+a)},scheduler.unmarkCalendar=function(e,t,a){if(t=t||e._last_date,a=a||"dhx_calendar_click",t){var r=this._locateCalendar(e,t);r&&(r.className=(r.className||"").replace(RegExp(a,"g")))}},scheduler._week_template=function(e){for(var t=e||250,a=0,r=document.createElement("div"),n=this.date.week_start(scheduler._currentDate()),i=0;7>i;i++)this._cols[i]=Math.floor(t/(7-i)), -this._render_x_header(i,a,n,r),n=this.date.add(n,1,"day"),t-=this._cols[i],a+=this._cols[i];return r.lastChild.className+=" dhx_scale_bar_last",r},scheduler.updateCalendar=function(e,t){e.conf.date=t,this.renderCalendar(e.conf,e,!0)},scheduler._mini_cal_arrows=[" "," "],scheduler._render_calendar=function(e,t,a,r){var n=scheduler.templates,i=this._cols;this._cols=[];var d=this._mode;this._mode="calendar";var l=this._colsS;this._colsS={height:0};var s=new Date(this._min_date),o=new Date(this._max_date),_=new Date(scheduler._date),c=n.month_day,u=this._ignores_detected; - -this._ignores_detected=0,n.month_day=n.calendar_date,t=this.date.month_start(t);var h,p=this._week_template(e.offsetWidth-1-this.config.minicalendar.padding);if(r?h=r:(h=document.createElement("DIV"),h.className="dhx_cal_container dhx_mini_calendar"),h.setAttribute("date",this.templates.xml_format(t)),h.innerHTML="<div class='dhx_year_month'></div><div class='dhx_year_week'>"+p.innerHTML+"</div><div class='dhx_year_body'></div>",h.childNodes[0].innerHTML=this.templates.calendar_month(t),a.navigation)for(var v=function(e,t){ -var a=scheduler.date.add(e._date,t,"month");scheduler.updateCalendar(e,a),scheduler._date.getMonth()==e._date.getMonth()&&scheduler._date.getFullYear()==e._date.getFullYear()&&scheduler._markCalendarCurrentDate(e)},m=["dhx_cal_prev_button","dhx_cal_next_button"],g=["left:1px;top:2px;position:absolute;","left:auto; right:1px;top:2px;position:absolute;"],b=[-1,1],f=function(e){return function(){if(a.sync)for(var t=scheduler._synced_minicalendars,r=0;r<t.length;r++)v(t[r],e);else v(h,e)}},y=0;2>y;y++){ -var x=document.createElement("DIV");x.className=m[y],x.style.cssText=g[y],x.innerHTML=this._mini_cal_arrows[y],h.firstChild.appendChild(x),x.onclick=f(b[y])}h._date=new Date(t),h.week_start=(t.getDay()-(this.config.start_on_monday?1:0)+7)%7;var k=h._min_date=this.date.week_start(t);h._max_date=this.date.add(h._min_date,6,"week"),this._reset_month_scale(h.childNodes[2],t,k);for(var w=h.childNodes[2].firstChild.rows,D=w.length;6>D;D++){var E=w[w.length-1];w[0].parentNode.appendChild(E.cloneNode(!0)); - -var M=parseInt(E.childNodes[E.childNodes.length-1].childNodes[0].innerHTML);M=10>M?M:0;for(var S=0;S<w[D].childNodes.length;S++)w[D].childNodes[S].className="dhx_after",w[D].childNodes[S].childNodes[0].innerHTML=scheduler.date.to_fixed(++M)}return r||e.appendChild(h),h.childNodes[1].style.height=h.childNodes[1].childNodes[0].offsetHeight-1+"px",this._cols=i,this._mode=d,this._colsS=l,this._min_date=s,this._max_date=o,scheduler._date=_,n.month_day=c,this._ignores_detected=u,h},scheduler.destroyCalendar=function(e,t){ -!e&&this._def_count&&this._def_count.firstChild&&(t||(new Date).valueOf()-this._def_count._created.valueOf()>500)&&(e=this._def_count.firstChild),e&&(e.onclick=null,e.innerHTML="",e.parentNode&&e.parentNode.removeChild(e),this._def_count&&(this._def_count.style.top="-1000px"),e.conf&&e.conf._on_xle_handler&&scheduler.detachEvent(e.conf._on_xle_handler))},scheduler.isCalendarVisible=function(){return this._def_count&&parseInt(this._def_count.style.top,10)>0?this._def_count:!1},scheduler._attach_minical_events=function(){ -dhtmlxEvent(document.body,"click",function(){scheduler.destroyCalendar()}),scheduler._attach_minical_events=function(){}},scheduler.attachEvent("onTemplatesReady",function(){scheduler._attach_minical_events()}),scheduler.templates.calendar_time=scheduler.date.date_to_str("%d-%m-%Y"),scheduler.form_blocks.calendar_time={render:function(){var e="<input class='dhx_readonly' type='text' readonly='true'>",t=scheduler.config,a=this.date.date_part(scheduler._currentDate()),r=1440,n=0;t.limit_time_select&&(n=60*t.first_hour, -r=60*t.last_hour+1),a.setHours(n/60),e+=" <select>";for(var i=n;r>i;i+=1*this.config.time_step){var d=this.templates.time_picker(a);e+="<option value='"+i+"'>"+d+"</option>",a=this.date.add(a,this.config.time_step,"minute")}e+="</select>";scheduler.config.full_day;return"<div style='height:30px;padding-top:0; font-size:inherit;' class='dhx_section_time'>"+e+"<span style='font-weight:normal; font-size:10pt;'> – </span>"+e+"</div>"},set_value:function(e,t,a){function r(e,t,a){s(e,t,a), -e.value=scheduler.templates.calendar_time(t),e._date=scheduler.date.date_part(new Date(t))}var n,i,d=e.getElementsByTagName("input"),l=e.getElementsByTagName("select"),s=function(e,t,a){e.onclick=function(){scheduler.destroyCalendar(null,!0),scheduler.renderCalendar({position:e,date:new Date(this._date),navigation:!0,handler:function(t){e.value=scheduler.templates.calendar_time(t),e._date=new Date(t),scheduler.destroyCalendar(),scheduler.config.event_duration&&scheduler.config.auto_end_date&&0===a&&u(); - -}})}};if(scheduler.config.full_day){if(!e._full_day){var o="<label class='dhx_fullday'><input type='checkbox' name='full_day' value='true'> "+scheduler.locale.labels.full_day+" </label></input>";scheduler.config.wide_form||(o=e.previousSibling.innerHTML+o),e.previousSibling.innerHTML=o,e._full_day=!0}var _=e.previousSibling.getElementsByTagName("input")[0],c=0===scheduler.date.time_part(a.start_date)&&0===scheduler.date.time_part(a.end_date);_.checked=c,l[0].disabled=_.checked,l[1].disabled=_.checked, -_.onclick=function(){if(_.checked===!0){var t={};scheduler.form_blocks.calendar_time.get_value(e,t),n=scheduler.date.date_part(t.start_date),i=scheduler.date.date_part(t.end_date),(+i==+n||+i>=+n&&(0!==a.end_date.getHours()||0!==a.end_date.getMinutes()))&&(i=scheduler.date.add(i,1,"day"))}var s=n||a.start_date,o=i||a.end_date;r(d[0],s),r(d[1],o),l[0].value=60*s.getHours()+s.getMinutes(),l[1].value=60*o.getHours()+o.getMinutes(),l[0].disabled=_.checked,l[1].disabled=_.checked}}if(scheduler.config.event_duration&&scheduler.config.auto_end_date){ -var u=function(){n=scheduler.date.add(d[0]._date,l[0].value,"minute"),i=new Date(n.getTime()+60*scheduler.config.event_duration*1e3),d[1].value=scheduler.templates.calendar_time(i),d[1]._date=scheduler.date.date_part(new Date(i)),l[1].value=60*i.getHours()+i.getMinutes()};l[0].onchange=u}r(d[0],a.start_date,0),r(d[1],a.end_date,1),s=function(){},l[0].value=60*a.start_date.getHours()+a.start_date.getMinutes(),l[1].value=60*a.end_date.getHours()+a.end_date.getMinutes()},get_value:function(e,t){var a=e.getElementsByTagName("input"),r=e.getElementsByTagName("select"); - -return t.start_date=scheduler.date.add(a[0]._date,r[0].value,"minute"),t.end_date=scheduler.date.add(a[1]._date,r[1].value,"minute"),t.end_date<=t.start_date&&(t.end_date=scheduler.date.add(t.start_date,scheduler.config.time_step,"minute")),{start_date:new Date(t.start_date),end_date:new Date(t.end_date)}},focus:function(e){}},scheduler.linkCalendar=function(e,t){var a=function(){var a=scheduler._date,r=new Date(a.valueOf());return t&&(r=t(r)),r.setDate(1),scheduler.updateCalendar(e,r),!0};scheduler.attachEvent("onViewChange",a), -scheduler.attachEvent("onXLE",a),scheduler.attachEvent("onEventAdded",a),scheduler.attachEvent("onEventChanged",a),scheduler.attachEvent("onAfterEventDelete",a),a()},scheduler._markCalendarCurrentDate=function(e){var t=scheduler._date,a=scheduler._mode,r=scheduler.date.month_start(new Date(e._date)),n=scheduler.date.add(r,1,"month");if("day"==a||this._props&&this._props[a])r.valueOf()<=t.valueOf()&&n>t&&scheduler.markCalendar(e,t,"dhx_calendar_click");else if("week"==a)for(var i=scheduler.date.week_start(new Date(t.valueOf())),d=0;7>d;d++)r.valueOf()<=i.valueOf()&&n>i&&scheduler.markCalendar(e,i,"dhx_calendar_click"), -i=scheduler.date.add(i,1,"day")},scheduler.attachEvent("onEventCancel",function(){scheduler.destroyCalendar(null,!0)}); +scheduler.templates.calendar_month=scheduler.date.date_to_str("%F %Y"),scheduler.templates.calendar_scale_date=scheduler.date.date_to_str("%D"),scheduler.templates.calendar_date=scheduler.date.date_to_str("%d"),scheduler.config.minicalendar={mark_events:!0},scheduler._synced_minicalendars=[],scheduler.renderCalendar=function(e,t,a){var r=null,i=e.date||scheduler._currentDate();if("string"==typeof i&&(i=this.templates.api_date(i)),t)r=this._render_calendar(t.parentNode,i,e,t),scheduler.unmarkCalendar(r);else{ +var n=e.container,s=e.position;if("string"==typeof n&&(n=document.getElementById(n)),"string"==typeof s&&(s=document.getElementById(s)),s&&"undefined"==typeof s.left){var d=getOffset(s);s={top:d.top+s.offsetHeight,left:d.left}}n||(n=scheduler._get_def_cont(s)),r=this._render_calendar(n,i,e),r.onclick=function(e){e=e||event;var t=e.target||e.srcElement;if(-1!=t.className.indexOf("dhx_month_head")){var a=t.parentNode.className;if(-1==a.indexOf("dhx_after")&&-1==a.indexOf("dhx_before")){var r=scheduler.templates.xml_date(this.getAttribute("date")); +r.setDate(parseInt(t.innerHTML,10)),scheduler.unmarkCalendar(this),scheduler.markCalendar(this,r,"dhx_calendar_click"),this._last_date=r,this.conf.handler&&this.conf.handler.call(scheduler,r,this)}}}}if(scheduler.config.minicalendar.mark_events)for(var l=scheduler.date.month_start(i),o=scheduler.date.add(l,1,"month"),_=this.getEvents(l,o),c=this["filter_"+this._mode],h={},u=0;u<_.length;u++){var v=_[u];if(!c||c(v.id,v)){var f=v.start_date;for(f.valueOf()<l.valueOf()&&(f=l),f=scheduler.date.date_part(new Date(f.valueOf()));f<v.end_date&&(h[+f]||(h[+f]=!0, +this.markCalendar(r,f,"dhx_year_event")),f=this.date.add(f,1,"day"),!(f.valueOf()>=o.valueOf())););}}return this._markCalendarCurrentDate(r),r.conf=e,e.sync&&!a&&this._synced_minicalendars.push(r),r.conf._on_xle_handler||(r.conf._on_xle_handler=scheduler.attachEvent("onXLE",function(){scheduler.updateCalendar(r,r.conf.date)})),r},scheduler._get_def_cont=function(e){return this._def_count||(this._def_count=document.createElement("DIV"),this._def_count.className="dhx_minical_popup",this._def_count.onclick=function(e){ +(e||event).cancelBubble=!0},document.body.appendChild(this._def_count)),this._def_count.style.left=e.left+"px",this._def_count.style.top=e.top+"px",this._def_count._created=new Date,this._def_count},scheduler._locateCalendar=function(e,t){if("string"==typeof t&&(t=scheduler.templates.api_date(t)),+t>+e._max_date||+t<+e._min_date)return null;for(var a=e.querySelector(".dhx_year_body").childNodes[0],r=0,i=new Date(e._min_date);+this.date.add(i,1,"week")<=+t;)i=this.date.add(i,1,"week"),r++;var n=scheduler.config.start_on_monday,s=(t.getDay()||(n?7:0))-(n?1:0); +return a.rows[r].cells[s].firstChild},scheduler.markCalendar=function(e,t,a){var r=this._locateCalendar(e,t);r&&(r.className+=" "+a)},scheduler.unmarkCalendar=function(e,t,a){if(t=t||e._last_date,a=a||"dhx_calendar_click",t){var r=this._locateCalendar(e,t);r&&(r.className=(r.className||"").replace(RegExp(a,"g")))}},scheduler._week_template=function(e){for(var t=e||250,a=0,r=document.createElement("div"),i=this.date.week_start(scheduler._currentDate()),n=0;7>n;n++)this._cols[n]=Math.floor(t/(7-n)), +this._render_x_header(n,a,i,r),i=this.date.add(i,1,"day"),t-=this._cols[n],a+=this._cols[n];return r.lastChild.className+=" dhx_scale_bar_last",r},scheduler.updateCalendar=function(e,t){e.conf.date=t,this.renderCalendar(e.conf,e,!0)},scheduler._mini_cal_arrows=[" "," "],scheduler._render_calendar=function(e,t,a,r){var i=scheduler.templates,n=this._cols;this._cols=[];var s=this._mode;this._mode="calendar";var d=this._colsS;this._colsS={height:0};var l=new Date(this._min_date),o=new Date(this._max_date),_=new Date(scheduler._date),c=i.month_day,h=this._ignores_detected; +this._ignores_detected=0,i.month_day=i.calendar_date,t=this.date.month_start(t);var u,v=this._week_template(e.offsetWidth-1-this.config.minicalendar.padding);r?u=r:(u=document.createElement("DIV"),u.className="dhx_cal_container dhx_mini_calendar"),u.setAttribute("date",this.templates.xml_format(t)),u.innerHTML="<div class='dhx_year_month'></div><div class='dhx_year_grid'><div class='dhx_year_week'>"+(v?v.innerHTML:"")+"</div><div class='dhx_year_body'></div></div>";var f=u.querySelector(".dhx_year_month"),g=u.querySelector(".dhx_year_week"),m=u.querySelector(".dhx_year_body"); +if(f.innerHTML=this.templates.calendar_month(t),a.navigation)for(var p=function(e,t){var a=scheduler.date.add(e._date,t,"month");scheduler.updateCalendar(e,a),scheduler._date.getMonth()==e._date.getMonth()&&scheduler._date.getFullYear()==e._date.getFullYear()&&scheduler._markCalendarCurrentDate(e)},y=["dhx_cal_prev_button","dhx_cal_next_button"],b=["left:1px;top:2px;position:absolute;","left:auto; right:1px;top:2px;position:absolute;"],x=[-1,1],w=function(e){return function(){if(a.sync)for(var t=scheduler._synced_minicalendars,r=0;r<t.length;r++)p(t[r],e);else p(u,e); +}},k=[scheduler.locale.labels.prev,scheduler.locale.labels.next],E=0;2>E;E++){var D=document.createElement("DIV");D.className=y[E],scheduler._waiAria.headerButtonsAttributes(D,k[E]),D.style.cssText=b[E],D.innerHTML=this._mini_cal_arrows[E],f.appendChild(D),D.onclick=w(x[E])}u._date=new Date(t),u.week_start=(t.getDay()-(this.config.start_on_monday?1:0)+7)%7;var N=u._min_date=this.date.week_start(t);u._max_date=this.date.add(u._min_date,6,"week"),this._reset_month_scale(m,t,N,6),r||e.appendChild(u), +g.style.height=g.childNodes[0].offsetHeight-1+"px";var S=scheduler.uid();scheduler._waiAria.minicalHeader(f,S),scheduler._waiAria.minicalGrid(u.querySelector(".dhx_year_grid"),S),scheduler._waiAria.minicalRow(g);for(var A=g.querySelectorAll(".dhx_scale_bar"),M=0;M<A.length;M++)scheduler._waiAria.minicalHeadCell(A[M]);for(var C=m.querySelectorAll("td"),O=new Date(l),M=0;M<C.length;M++)scheduler._waiAria.minicalDayCell(C[M],new Date(O)),O=scheduler.date.add(O,1,"day");return scheduler._waiAria.minicalHeader(f,S), +this._cols=n,this._mode=s,this._colsS=d,this._min_date=l,this._max_date=o,scheduler._date=_,i.month_day=c,this._ignores_detected=h,u},scheduler.destroyCalendar=function(e,t){!e&&this._def_count&&this._def_count.firstChild&&(t||(new Date).valueOf()-this._def_count._created.valueOf()>500)&&(e=this._def_count.firstChild),e&&(e.onclick=null,e.innerHTML="",e.parentNode&&e.parentNode.removeChild(e),this._def_count&&(this._def_count.style.top="-1000px"),e.conf&&e.conf._on_xle_handler&&scheduler.detachEvent(e.conf._on_xle_handler)); +},scheduler.isCalendarVisible=function(){return this._def_count&&parseInt(this._def_count.style.top,10)>0?this._def_count:!1},scheduler._attach_minical_events=function(){dhtmlxEvent(document.body,"click",function(){scheduler.destroyCalendar()}),scheduler._attach_minical_events=function(){}},scheduler.attachEvent("onTemplatesReady",function(){scheduler._attach_minical_events()}),scheduler.templates.calendar_time=scheduler.date.date_to_str("%d-%m-%Y"),scheduler.form_blocks.calendar_time={render:function(e){ +var t="<input class='dhx_readonly' type='text' readonly='true'>",a=scheduler.config,r=this.date.date_part(scheduler._currentDate()),i=1440,n=0;a.limit_time_select&&(n=60*a.first_hour,i=60*a.last_hour+1),r.setHours(n/60),e._time_values=[],t+=" <select>";for(var s=n;i>s;s+=1*this.config.time_step){var d=this.templates.time_picker(r);t+="<option value='"+s+"'>"+d+"</option>",e._time_values.push(s),r=this.date.add(r,this.config.time_step,"minute")}t+="</select>";scheduler.config.full_day;return"<div style='height:30px;padding-top:0; font-size:inherit;' class='dhx_section_time'>"+t+"<span style='font-weight:normal; font-size:10pt;'> – </span>"+t+"</div>"; +},set_value:function(e,t,a,r){function i(e,t,a){_(e,t,a),e.value=scheduler.templates.calendar_time(t),e._date=scheduler.date.date_part(new Date(t))}function n(e){for(var t=r._time_values,a=60*e.getHours()+e.getMinutes(),i=a,n=!1,s=0;s<t.length;s++){var d=t[s];if(d===a){n=!0;break}a>d&&(i=d)}return n||i?n?a:i:-1}var s,d,l=e.getElementsByTagName("input"),o=e.getElementsByTagName("select"),_=function(e,t,a){e.onclick=function(){scheduler.destroyCalendar(null,!0),scheduler.renderCalendar({position:e, +date:new Date(this._date),navigation:!0,handler:function(t){e.value=scheduler.templates.calendar_time(t),e._date=new Date(t),scheduler.destroyCalendar(),scheduler.config.event_duration&&scheduler.config.auto_end_date&&0===a&&v()}})}};if(scheduler.config.full_day){if(!e._full_day){var c="<label class='dhx_fullday'><input type='checkbox' name='full_day' value='true'> "+scheduler.locale.labels.full_day+" </label></input>";scheduler.config.wide_form||(c=e.previousSibling.innerHTML+c),e.previousSibling.innerHTML=c, +e._full_day=!0}var h=e.previousSibling.getElementsByTagName("input")[0],u=0===scheduler.date.time_part(a.start_date)&&0===scheduler.date.time_part(a.end_date);h.checked=u,o[0].disabled=h.checked,o[1].disabled=h.checked,h.onclick=function(){if(h.checked===!0){var t={};scheduler.form_blocks.calendar_time.get_value(e,t),s=scheduler.date.date_part(t.start_date),d=scheduler.date.date_part(t.end_date),(+d==+s||+d>=+s&&(0!==a.end_date.getHours()||0!==a.end_date.getMinutes()))&&(d=scheduler.date.add(d,1,"day")); +}var r=s||a.start_date,n=d||a.end_date;i(l[0],r),i(l[1],n),o[0].value=60*r.getHours()+r.getMinutes(),o[1].value=60*n.getHours()+n.getMinutes(),o[0].disabled=h.checked,o[1].disabled=h.checked}}if(scheduler.config.event_duration&&scheduler.config.auto_end_date){var v=function(){s=scheduler.date.add(l[0]._date,o[0].value,"minute"),d=new Date(s.getTime()+60*scheduler.config.event_duration*1e3),l[1].value=scheduler.templates.calendar_time(d),l[1]._date=scheduler.date.date_part(new Date(d)),o[1].value=60*d.getHours()+d.getMinutes(); +};o[0].onchange=v}i(l[0],a.start_date,0),i(l[1],a.end_date,1),_=function(){},o[0].value=n(a.start_date),o[1].value=n(a.end_date)},get_value:function(e,t){var a=e.getElementsByTagName("input"),r=e.getElementsByTagName("select");return t.start_date=scheduler.date.add(a[0]._date,r[0].value,"minute"),t.end_date=scheduler.date.add(a[1]._date,r[1].value,"minute"),t.end_date<=t.start_date&&(t.end_date=scheduler.date.add(t.start_date,scheduler.config.time_step,"minute")),{start_date:new Date(t.start_date), +end_date:new Date(t.end_date)}},focus:function(e){}},scheduler.linkCalendar=function(e,t){var a=function(){var a=scheduler._date,r=new Date(a.valueOf());return t&&(r=t(r)),r.setDate(1),scheduler.updateCalendar(e,r),!0};scheduler.attachEvent("onViewChange",a),scheduler.attachEvent("onXLE",a),scheduler.attachEvent("onEventAdded",a),scheduler.attachEvent("onEventChanged",a),scheduler.attachEvent("onAfterEventDelete",a),a()},scheduler._markCalendarCurrentDate=function(e){var t=scheduler._date,a=scheduler._mode,r=scheduler.date.month_start(new Date(e._date)),i=scheduler.date.add(r,1,"month"); +if("day"==a||this._props&&this._props[a])r.valueOf()<=t.valueOf()&&i>t&&scheduler.markCalendar(e,t,"dhx_calendar_click");else if("week"==a)for(var n=scheduler.date.week_start(new Date(t.valueOf())),s=0;7>s;s++)r.valueOf()<=n.valueOf()&&i>n&&scheduler.markCalendar(e,n,"dhx_calendar_click"),n=scheduler.date.add(n,1,"day")},scheduler.attachEvent("onEventCancel",function(){scheduler.destroyCalendar(null,!0)}); //# sourceMappingURL=../sources/ext/dhtmlxscheduler_minical.js.map
\ No newline at end of file diff --git a/codebase/ext/dhtmlxscheduler_monthheight.js b/codebase/ext/dhtmlxscheduler_monthheight.js index ce33da3..d98d55d 100644 --- a/codebase/ext/dhtmlxscheduler_monthheight.js +++ b/codebase/ext/dhtmlxscheduler_monthheight.js @@ -1,11 +1,11 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. (c) Dinamenta, UAB. */ -scheduler.attachEvent("onTemplatesReady",function(){scheduler.xy.scroll_width=0;var e=scheduler.render_view_data;scheduler.render_view_data=function(){var t=this._els.dhx_cal_data[0];t.firstChild._h_fix=!0,e.apply(scheduler,arguments);var a=parseInt(t.style.height);t.style.height="1px",t.style.height=t.scrollHeight+"px",this._obj.style.height=this._obj.clientHeight+t.scrollHeight-a+"px"};var t=scheduler._reset_month_scale;scheduler._reset_month_scale=function(e,a,r){var n={clientHeight:100};t.apply(scheduler,[n,a,r]), +scheduler.attachEvent("onTemplatesReady",function(){scheduler.xy.scroll_width=0;var e=scheduler.render_view_data;scheduler.render_view_data=function(){var t=this._els.dhx_cal_data[0];t.firstChild._h_fix=!0,e.apply(scheduler,arguments);var a=parseInt(t.style.height);t.style.height="1px",t.style.height=t.scrollHeight+"px",this._obj.style.height=this._obj.clientHeight+t.scrollHeight-a+"px"};var t=scheduler._reset_month_scale;scheduler._reset_month_scale=function(e,a,r,i){var n={clientHeight:100};t.apply(scheduler,[n,a,r,i]), e.innerHTML=n.innerHTML}}); //# sourceMappingURL=../sources/ext/dhtmlxscheduler_monthheight.js.map
\ No newline at end of file diff --git a/codebase/ext/dhtmlxscheduler_multiselect.js b/codebase/ext/dhtmlxscheduler_multiselect.js index 0b3c0d2..7102585 100644 --- a/codebase/ext/dhtmlxscheduler_multiselect.js +++ b/codebase/ext/dhtmlxscheduler_multiselect.js @@ -1,13 +1,12 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. (c) Dinamenta, UAB. */ -scheduler.form_blocks.multiselect={render:function(e){for(var t="<div class='dhx_multi_select_"+e.name+"' style='overflow: auto; height: "+e.height+"px; position: relative;' >",a=0;a<e.options.length;a++)t+="<label><input type='checkbox' value='"+e.options[a].key+"'/>"+e.options[a].label+"</label>",convertStringToBoolean(e.vertical)&&(t+="<br/>");return t+="</div>"},set_value:function(e,t,a,r){function n(t){for(var a=e.getElementsByTagName("input"),r=0;r<a.length;r++)a[r].checked=!!t[a[r].value]} -for(var i=e.getElementsByTagName("input"),d=0;d<i.length;d++)i[d].checked=!1;var l={};if(a[r.map_to]){for(var s=(a[r.map_to]+"").split(","),d=0;d<s.length;d++)l[s[d]]=!0;n(l)}else{if(scheduler._new_event||!r.script_url)return;var o=document.createElement("div");o.className="dhx_loading",o.style.cssText="position: absolute; top: 40%; left: 40%;",e.appendChild(o),dhtmlxAjax.get(r.script_url+"?dhx_crosslink_"+r.map_to+"="+a.id+"&uid="+scheduler.uid(),function(t){for(var a=t.doXPath("//data/item"),i={},d=0;d<a.length;d++)i[a[d].getAttribute(r.map_to)]=!0; - -n(i),e.removeChild(o)})}},get_value:function(e,t,a){for(var r=[],n=e.getElementsByTagName("input"),i=0;i<n.length;i++)n[i].checked&&r.push(n[i].value);return r.join(",")},focus:function(e){}}; +scheduler.form_blocks.multiselect={render:function(e){for(var t="<div class='dhx_multi_select_"+e.name+"' style='overflow: auto; height: "+e.height+"px; position: relative;' >",a=0;a<e.options.length;a++)t+="<label><input type='checkbox' value='"+e.options[a].key+"'/>"+e.options[a].label+"</label>",convertStringToBoolean(e.vertical)&&(t+="<br/>");return t+="</div>"},set_value:function(e,t,a,r){function i(t){for(var a=e.getElementsByTagName("input"),r=0;r<a.length;r++)a[r].checked=!!t[a[r].value]} +for(var n=e.getElementsByTagName("input"),s=0;s<n.length;s++)n[s].checked=!1;var d={};if(a[r.map_to]){for(var l=(a[r.map_to]+"").split(r.delimiter||scheduler.config.section_delimiter||","),s=0;s<l.length;s++)d[l[s]]=!0;i(d)}else{if(scheduler._new_event||!r.script_url)return;var o=document.createElement("div");o.className="dhx_loading",o.style.cssText="position: absolute; top: 40%; left: 40%;",e.appendChild(o),dhtmlxAjax.get(r.script_url+"?dhx_crosslink_"+r.map_to+"="+a.id+"&uid="+scheduler.uid(),function(t){ +for(var a=t.doXPath("//data/item"),n={},s=0;s<a.length;s++)n[a[s].getAttribute(r.map_to)]=!0;i(n),e.removeChild(o)})}},get_value:function(e,t,a){for(var r=[],i=e.getElementsByTagName("input"),n=0;n<i.length;n++)i[n].checked&&r.push(i[n].value);return r.join(a.delimiter||scheduler.config.section_delimiter||",")},focus:function(e){}}; //# sourceMappingURL=../sources/ext/dhtmlxscheduler_multiselect.js.map
\ No newline at end of file diff --git a/codebase/ext/dhtmlxscheduler_multisource.js b/codebase/ext/dhtmlxscheduler_multisource.js index f10cead..3b0a11e 100644 --- a/codebase/ext/dhtmlxscheduler_multisource.js +++ b/codebase/ext/dhtmlxscheduler_multisource.js @@ -1,10 +1,10 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. (c) Dinamenta, UAB. */ -!function(){function e(e){var t=function(){};return t.prototype=e,t}var t=scheduler._load;scheduler._load=function(a,r){if(a=a||this._load_url,"object"==typeof a)for(var n=e(this._loaded),i=0;i<a.length;i++)this._loaded=new n,t.call(this,a[i],r);else t.apply(this,arguments)}}(); +!function(){function e(e){var t=function(){};return t.prototype=e,t}var t=scheduler._load;scheduler._load=function(a,r){if(a=a||this._load_url,"object"==typeof a)for(var i=e(this._loaded),n=0;n<a.length;n++)this._loaded=new i,t.call(this,a[n],r);else t.apply(this,arguments)}}(); //# sourceMappingURL=../sources/ext/dhtmlxscheduler_multisource.js.map
\ No newline at end of file diff --git a/codebase/ext/dhtmlxscheduler_mvc.js b/codebase/ext/dhtmlxscheduler_mvc.js index 3bfc2d4..81ddd37 100644 --- a/codebase/ext/dhtmlxscheduler_mvc.js +++ b/codebase/ext/dhtmlxscheduler_mvc.js @@ -1,15 +1,13 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. (c) Dinamenta, UAB. */ -!function(){function e(e){var t={};for(var a in e)0!==a.indexOf("_")&&(t[a]=e[a]);return d.use_id||delete t.id,t}function t(){clearTimeout(i),i=setTimeout(function(){scheduler.updateView()},1)}function a(e){e._loading=!0,e._not_render=!0,e.callEvent("onXLS",[])}function r(e){e._not_render=!1,e._render_wait&&e.render_view_data(),e._loading=!1,e.callEvent("onXLE",[])}function n(e){return d.use_id?e.id:e.cid}var i,d={use_id:!1};scheduler.backbone=function(i,l){function s(){o.length&&(scheduler.parse(o,"json"), -o=[])}l&&(d=l),i.bind("change",function(e,a){var r=n(e),i=scheduler._events[r]=e.toJSON();i.id=r,scheduler._init_event(i),t()}),i.bind("remove",function(e,t){var a=n(e);scheduler._events[a]&&scheduler.deleteEvent(a)});var o=[];i.bind("add",function(e,t){var a=n(e);if(!scheduler._events[a]){var r=e.toJSON();r.id=a,scheduler._init_event(r),o.push(r),1==o.length&&setTimeout(s,1)}}),i.bind("request",function(e){e instanceof Backbone.Collection&&a(scheduler)}),i.bind("sync",function(e){e instanceof Backbone.Collection&&r(scheduler); - -}),i.bind("error",function(e){e instanceof Backbone.Collection&&r(scheduler)}),scheduler.attachEvent("onEventCreated",function(e){var t=new i.model(scheduler.getEvent(e));return scheduler._events[e]=t.toJSON(),scheduler._events[e].id=e,!0}),scheduler.attachEvent("onEventAdded",function(t){if(!i.get(t)){var a=e(scheduler.getEvent(t)),r=new i.model(a),d=n(r);d!=t&&this.changeEventId(t,d),i.add(r),i.trigger("scheduler:add",r)}return!0}),scheduler.attachEvent("onEventChanged",function(t){var a=i.get(t),r=e(scheduler.getEvent(t)); - -return a.set(r),i.trigger("scheduler:change",a),!0}),scheduler.attachEvent("onEventDeleted",function(e){var t=i.get(e);return t&&(i.trigger("scheduler:remove",t),i.remove(e)),!0})}}(); +!function(){function e(e){var t={};for(var a in e)0!==a.indexOf("_")&&(t[a]=e[a]);return s.use_id||delete t.id,t}function t(){clearTimeout(n),n=setTimeout(function(){scheduler.updateView()},1)}function a(e){e._loading=!0,e._not_render=!0,e.callEvent("onXLS",[])}function r(e){e._not_render=!1,e._render_wait&&e.render_view_data(),e._loading=!1,e.callEvent("onXLE",[])}function i(e){return s.use_id?e.id:e.cid}var n,s={use_id:!1};scheduler.backbone=function(n,d){function l(){o.length&&(scheduler.parse(o,"json"), +o=[])}d&&(s=d),n.bind("change",function(e,a){var r=i(e),n=scheduler._events[r]=e.toJSON();n.id=r,scheduler._init_event(n),t()}),n.bind("remove",function(e,t){var a=i(e);scheduler._events[a]&&scheduler.deleteEvent(a)});var o=[];n.bind("add",function(e,t){var a=i(e);if(!scheduler._events[a]){var r=e.toJSON();r.id=a,scheduler._init_event(r),o.push(r),1==o.length&&setTimeout(l,1)}}),n.bind("request",function(e){e instanceof Backbone.Collection&&a(scheduler)}),n.bind("sync",function(e){e instanceof Backbone.Collection&&r(scheduler); +}),n.bind("error",function(e){e instanceof Backbone.Collection&&r(scheduler)}),scheduler.attachEvent("onEventCreated",function(e){var t=new n.model(scheduler.getEvent(e));return scheduler._events[e]=t.toJSON(),scheduler._events[e].id=e,!0}),scheduler.attachEvent("onEventAdded",function(t){if(!n.get(t)){var a=e(scheduler.getEvent(t)),r=new n.model(a),s=i(r);s!=t&&this.changeEventId(t,s),n.add(r),n.trigger("scheduler:add",r)}return!0}),scheduler.attachEvent("onEventChanged",function(t){var a=n.get(t),r=e(scheduler.getEvent(t)); +return a.set(r),n.trigger("scheduler:change",a),!0}),scheduler.attachEvent("onEventDeleted",function(e){var t=n.get(e);return t&&(n.trigger("scheduler:remove",t),n.remove(e)),!0})}}(); //# sourceMappingURL=../sources/ext/dhtmlxscheduler_mvc.js.map
\ No newline at end of file diff --git a/codebase/ext/dhtmlxscheduler_offline.js b/codebase/ext/dhtmlxscheduler_offline.js index 7732743..85ca7e6 100644 --- a/codebase/ext/dhtmlxscheduler_offline.js +++ b/codebase/ext/dhtmlxscheduler_offline.js @@ -1,16 +1,13 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. (c) Dinamenta, UAB. */ scheduler.load=function(e,t){var a;return"string"==typeof t&&(this._process=t,a=t,t=arguments[2]),this._load_url=e,this._after_call=t,e.$proxy?void e.load(this,"string"==typeof a?a:null):void this._load(e,this._date)},scheduler._dp_init_backup=scheduler._dp_init,scheduler._dp_init=function(e){e._sendData=function(e,t){if(e){if(!this.callEvent("onBeforeDataSending",t?[t,this.getState(t),e]:[null,null,e]))return!1;if(t&&(this._in_progress[t]=(new Date).valueOf()),this.serverProcessor.$proxy){var a="POST"!=this._tMode?"get":"post",r=[]; - -for(var n in e)r.push({id:n,data:e[n],operation:this.getState(n)});return void this.serverProcessor._send(r,a,this)}var i=new dtmlXMLLoaderObject(this.afterUpdate,this,!0),d=this.serverProcessor+(this._user?getUrlSymbol(this.serverProcessor)+["dhx_user="+this._user,"dhx_version="+this.obj.getUserData(0,"version")].join("&"):"");"POST"!=this._tMode?i.loadXML(d+(-1!=d.indexOf("?")?"&":"?")+this.serialize(e,t)):i.loadXML(d,!0,this.serialize(e,t)),this._waitMode++}},e._updatesToParams=function(e){for(var t={},a=0;a<e.length;a++)t[e[a].id]=e[a].data; - -return this.serialize(t)},e._processResult=function(e,t,a){if(200==a.status)t=new dtmlXMLLoaderObject(function(){},this,!0),t.loadXMLString(e),t.xmlDoc=a,this.afterUpdate(this,null,null,null,t);else for(var r in this._in_progress){var n=this.getState(r);this.afterUpdateCallback(r,r,n,null)}},this._dp_init_backup(e)},window.dataProcessor&&(dataProcessor.prototype.init=function(e){this.init_original(e),e._dataprocessor=this,this.setTransactionMode("POST",!0),this.serverProcessor.$proxy||(this.serverProcessor+=(-1!=this.serverProcessor.indexOf("?")?"&":"?")+"editing=true"); - +for(var i in e)r.push({id:i,data:e[i],operation:this.getState(i)});return void this.serverProcessor._send(r,a,this)}var n=new dtmlXMLLoaderObject(this.afterUpdate,this,!0),s=this.serverProcessor+(this._user?getUrlSymbol(this.serverProcessor)+["dhx_user="+this._user,"dhx_version="+this.obj.getUserData(0,"version")].join("&"):"");"POST"!=this._tMode?n.loadXML(s+(-1!=s.indexOf("?")?"&":"?")+this.serialize(e,t)):n.loadXML(s,!0,this.serialize(e,t)),this._waitMode++}},e._updatesToParams=function(e){for(var t={},a=0;a<e.length;a++)t[e[a].id]=e[a].data; +return this.serialize(t)},e._processResult=function(e,t,a){if(200==a.status)t=new dtmlXMLLoaderObject(function(){},this,!0),t.loadXMLString(e),t.xmlDoc=a,this.afterUpdate(this,null,null,null,t);else for(var r in this._in_progress){var i=this.getState(r);this.afterUpdateCallback(r,r,i,null)}},this._dp_init_backup(e)},window.dataProcessor&&(dataProcessor.prototype.init=function(e){this.init_original(e),e._dataprocessor=this,this.setTransactionMode("POST",!0),this.serverProcessor.$proxy||(this.serverProcessor+=(-1!=this.serverProcessor.indexOf("?")?"&":"?")+"editing=true"); }); //# sourceMappingURL=../sources/ext/dhtmlxscheduler_offline.js.map
\ No newline at end of file diff --git a/codebase/ext/dhtmlxscheduler_outerdrag.js b/codebase/ext/dhtmlxscheduler_outerdrag.js index b1d16e2..e121f5e 100644 --- a/codebase/ext/dhtmlxscheduler_outerdrag.js +++ b/codebase/ext/dhtmlxscheduler_outerdrag.js @@ -1,13 +1,12 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. (c) Dinamenta, UAB. */ -scheduler.attachEvent("onTemplatesReady",function(){var e,t=new dhtmlDragAndDropObject,a=t.stopDrag;t.stopDrag=function(t){return e=t||event,a.apply(this,arguments)},t.addDragLanding(scheduler._els.dhx_cal_data[0],{_drag:function(t,a,r,n){if(!scheduler.checkEvent("onBeforeExternalDragIn")||scheduler.callEvent("onBeforeExternalDragIn",[t,a,r,n,e])){var i=scheduler.attachEvent("onEventCreated",function(a){scheduler.callEvent("onExternalDragIn",[a,t,e])||(this._drag_mode=this._drag_id=null,this.deleteEvent(a)); - -}),d=scheduler.getActionData(e),l={start_date:new Date(d.date)};if(scheduler.matrix&&scheduler.matrix[scheduler._mode]){var s=scheduler.matrix[scheduler._mode];l[s.y_property]=d.section;var o=scheduler._locate_cell_timeline(e);l.start_date=s._trace_x[o.x],l.end_date=scheduler.date.add(l.start_date,s.x_step,s.x_unit)}scheduler._props&&scheduler._props[scheduler._mode]&&(l[scheduler._props[scheduler._mode].map_to]=d.section),scheduler.addEventNow(l),scheduler.detachEvent(i)}},_dragIn:function(e,t){ -return e},_dragOut:function(e){return this}})}); +scheduler.attachEvent("onTemplatesReady",function(){function e(e,a,r,i){if(!scheduler.checkEvent("onBeforeExternalDragIn")||scheduler.callEvent("onBeforeExternalDragIn",[e,a,r,i,t])){var n=scheduler.attachEvent("onEventCreated",function(a){scheduler.callEvent("onExternalDragIn",[a,e,t])||(this._drag_mode=this._drag_id=null,this.deleteEvent(a))}),s=scheduler.getActionData(t),d={start_date:new Date(s.date)};if(scheduler.matrix&&scheduler.matrix[scheduler._mode]){var l=scheduler.matrix[scheduler._mode]; +d[l.y_property]=s.section;var o=scheduler._locate_cell_timeline(t);d.start_date=l._trace_x[o.x],d.end_date=scheduler.date.add(d.start_date,l.x_step,l.x_unit)}scheduler._props&&scheduler._props[scheduler._mode]&&(d[scheduler._props[scheduler._mode].map_to]=s.section),scheduler.addEventNow(d),scheduler.detachEvent(n)}}var t,a=new dhtmlDragAndDropObject,r=a.stopDrag;a.stopDrag=function(e){return t=e||event,r.apply(this,arguments)},a.addDragLanding(scheduler._els.dhx_cal_data[0],{_drag:function(t,a,r,i){ +e(t,a,r,i)},_dragIn:function(e,t){return e},_dragOut:function(e){return this}}),dhtmlx.DragControl&&dhtmlx.DragControl.addDrop(scheduler._els.dhx_cal_data[0],{onDrop:function(a,r,i,n){var s=dhtmlx.DragControl.getMaster(a);t=n,e(a,s,r,n.target||n.srcElement)},onDragIn:function(e,t,a){return t}},!0)}); //# sourceMappingURL=../sources/ext/dhtmlxscheduler_outerdrag.js.map
\ No newline at end of file diff --git a/codebase/ext/dhtmlxscheduler_pdf.js b/codebase/ext/dhtmlxscheduler_pdf.js index 0ade92f..59067ec 100644 --- a/codebase/ext/dhtmlxscheduler_pdf.js +++ b/codebase/ext/dhtmlxscheduler_pdf.js @@ -1,32 +1,24 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. (c) Dinamenta, UAB. */ -!function(){function e(e){return e.replace(f,"\n").replace(b,"")}function t(e,t){e=parseFloat(e),t=parseFloat(t),isNaN(t)||(e-=t);var a=r(e);return e=e-a.width+a.cols*m,isNaN(e)?"auto":100*e/m}function a(e,t,a){e=parseFloat(e),t=parseFloat(t),!isNaN(t)&&a&&(e-=t);var n=r(e);return e=e-n.width+n.cols*m,isNaN(e)?"auto":100*e/(m-(isNaN(t)?0:t))}function r(e){for(var t=0,a=scheduler._els.dhx_cal_header[0].childNodes,r=a[1]?a[1].childNodes:a[0].childNodes,n=0;n<r.length;n++){var i=r[n].style?r[n]:r[n].parentNode,d=parseFloat(i.style.width); - -if(!(e>d))break;e-=d+1,t+=d+1}return{width:t,cols:n}}function n(e){return e=parseFloat(e),isNaN(e)?"auto":100*e/g}function i(e,t){return(window.getComputedStyle?window.getComputedStyle(e,null)[t]:e.currentStyle?e.currentStyle[t]:null)||""}function d(e,t){for(var a=parseInt(e.style.left,10),r=0;r<scheduler._cols.length;r++)if(a-=scheduler._cols[r],0>a)return r;return t}function l(e,t){for(var a=parseInt(e.style.top,10),r=0;r<scheduler._colsS.heights.length;r++)if(scheduler._colsS.heights[r]>a)return r; - -return t}function s(e){return e?"<"+e+">":""}function o(e){return e?"</"+e+">":""}function _(e,t,a,r){var n="<"+e+" profile='"+t+"'";return a&&(n+=" header='"+a+"'"),r&&(n+=" footer='"+r+"'"),n+=">"}function c(){var t="",a=scheduler._mode;if(scheduler.matrix&&scheduler.matrix[scheduler._mode]&&(a="cell"==scheduler.matrix[scheduler._mode].render?"matrix":"timeline"),t+="<scale mode='"+a+"' today='"+scheduler._els.dhx_cal_date[0].innerHTML+"'>","week_agenda"==scheduler._mode)for(var r=scheduler._els.dhx_cal_data[0].getElementsByTagName("DIV"),n=0;n<r.length;n++)"dhx_wa_scale_bar"==r[n].className&&(t+="<column>"+e(r[n].innerHTML)+"</column>"); -else if("agenda"==scheduler._mode||"map"==scheduler._mode){var r=scheduler._els.dhx_cal_header[0].childNodes[0].childNodes;t+="<column>"+e(r[0].innerHTML)+"</column><column>"+e(r[1].innerHTML)+"</column>"}else if("year"==scheduler._mode)for(var r=scheduler._els.dhx_cal_data[0].childNodes,n=0;n<r.length;n++)t+="<month label='"+e(r[n].childNodes[0].innerHTML)+"'>",t+=h(r[n].childNodes[1].childNodes),t+=u(r[n].childNodes[2]),t+="</month>";else{t+="<x>";var r=scheduler._els.dhx_cal_header[0].childNodes; - -t+=h(r),t+="</x>";var i=scheduler._els.dhx_cal_data[0];if(scheduler.matrix&&scheduler.matrix[scheduler._mode]){t+="<y>";for(var n=0;n<i.firstChild.rows.length;n++){var d=i.firstChild.rows[n];t+="<row><![CDATA["+e(d.cells[0].innerHTML)+"]]></row>"}t+="</y>",g=i.firstChild.rows[0].cells[0].offsetHeight}else if("TABLE"==i.firstChild.tagName)t+=u(i);else{for(i=i.childNodes[i.childNodes.length-1];-1==i.className.indexOf("dhx_scale_holder");)i=i.previousSibling;i=i.childNodes,t+="<y>";for(var n=0;n<i.length;n++)t+="\n<row><![CDATA["+e(i[n].innerHTML)+"]]></row>"; - -t+="</y>",g=i[0].offsetHeight}}return t+="</scale>"}function u(t){for(var a="",r=t.firstChild.rows,n=0;n<r.length;n++){for(var i=[],d=0;d<r[n].cells.length;d++)i.push(r[n].cells[d].firstChild.innerHTML);a+="\n<row height='"+t.firstChild.rows[n].cells[0].offsetHeight+"'><![CDATA["+e(i.join("|"))+"]]></row>",g=t.firstChild.rows[0].cells[0].offsetHeight}return a}function h(t){var a,r="";scheduler.matrix&&scheduler.matrix[scheduler._mode]&&(scheduler.matrix[scheduler._mode].second_scale&&(a=t[1].childNodes), -t=t[0].childNodes);for(var n=0;n<t.length;n++)r+="\n<column><![CDATA["+e(t[n].innerHTML)+"]]></column>";if(m=t[0].offsetWidth,a)for(var i=0,d=t[0].offsetWidth,l=1,n=0;n<a.length;n++)r+="\n<column second_scale='"+l+"'><![CDATA["+e(a[n].innerHTML)+"]]></column>",i+=a[n].offsetWidth,i>=d&&(d+=t[l]?t[l].offsetWidth:0,l++),m=a[0].offsetWidth;return r}function p(r){var s="",o=scheduler._rendered,_=scheduler.matrix&&scheduler.matrix[scheduler._mode];if("agenda"==scheduler._mode||"map"==scheduler._mode)for(var c=0;c<o.length;c++)s+="<event><head><![CDATA["+e(o[c].childNodes[0].innerHTML)+"]]></head><body><![CDATA["+e(o[c].childNodes[2].innerHTML)+"]]></body></event>"; -else if("week_agenda"==scheduler._mode)for(var c=0;c<o.length;c++)s+="<event day='"+o[c].parentNode.getAttribute("day")+"'><body>"+e(o[c].innerHTML)+"</body></event>";else if("year"==scheduler._mode)for(var o=scheduler.get_visible_events(),c=0;c<o.length;c++){var u=o[c].start_date;for(u.valueOf()<scheduler._min_date.valueOf()&&(u=scheduler._min_date);u<o[c].end_date;){var h=u.getMonth()+12*(u.getFullYear()-scheduler._min_date.getFullYear())-scheduler.week_starts._month,p=scheduler.week_starts[h]+u.getDate()-1,v=r?i(scheduler._get_year_cell(u),"color"):"",m=r?i(scheduler._get_year_cell(u),"backgroundColor"):""; - -if(s+="<event day='"+p%7+"' week='"+Math.floor(p/7)+"' month='"+h+"' backgroundColor='"+m+"' color='"+v+"'></event>",u=scheduler.date.add(u,1,"day"),u.valueOf()>=scheduler._max_date.valueOf())break}}else if(_&&"cell"==_.render)for(var o=scheduler._els.dhx_cal_data[0].getElementsByTagName("TD"),c=0;c<o.length;c++){var v=r?i(o[c],"color"):"",m=r?i(o[c],"backgroundColor"):"";s+="\n<event><body backgroundColor='"+m+"' color='"+v+"'><![CDATA["+e(o[c].innerHTML)+"]]></body></event>"}else for(var c=0;c<o.length;c++){ -var b,f;if(scheduler.matrix&&scheduler.matrix[scheduler._mode])b=t(o[c].style.left),f=t(o[c].offsetWidth)-1;else{var y=scheduler.config.use_select_menu_space?0:26;b=a(o[c].style.left,y,!0),f=a(o[c].style.width,y)-1}if(!isNaN(1*f)){var x=n(o[c].style.top),k=n(o[c].style.height),w=o[c].className.split(" ")[0].replace("dhx_cal_","");if("dhx_tooltip_line"!==w){var D=scheduler.getEvent(o[c].getAttribute("event_id"));if(D){var p=D._sday,E=D._sweek,M=D._length||0;if("month"==scheduler._mode)k=parseInt(o[c].offsetHeight,10), -x=parseInt(o[c].style.top,10)-scheduler.xy.month_head_height,p=d(o[c],p),E=l(o[c],E);else if(scheduler.matrix&&scheduler.matrix[scheduler._mode]){p=0;var S=o[c].parentNode.parentNode.parentNode;E=S.rowIndex;var N=g;g=o[c].parentNode.offsetHeight,x=n(o[c].style.top),x-=.2*x,g=N}else{if(o[c].parentNode==scheduler._els.dhx_cal_data[0])continue;var O=scheduler._els.dhx_cal_data[0].childNodes[0],T=parseFloat(-1!=O.className.indexOf("dhx_scale_holder")?O.style.left:0);b+=t(o[c].parentNode.style.left,T); - -}if(s+="\n<event week='"+E+"' day='"+p+"' type='"+w+"' x='"+b+"' y='"+x+"' width='"+f+"' height='"+k+"' len='"+M+"'>","event"==w){s+="<header><![CDATA["+e(o[c].childNodes[1].innerHTML)+"]]></header>";var v=r?i(o[c].childNodes[2],"color"):"",m=r?i(o[c].childNodes[2],"backgroundColor"):"";s+="<body backgroundColor='"+m+"' color='"+v+"'><![CDATA["+e(o[c].childNodes[2].innerHTML)+"]]></body>"}else{var v=r?i(o[c],"color"):"",m=r?i(o[c],"backgroundColor"):"";s+="<body backgroundColor='"+m+"' color='"+v+"'><![CDATA["+e(o[c].innerHTML)+"]]></body>"; - -}s+="</event>"}}}}return s}function v(e,t,a,r,n,i,d){var l=!1;"fullcolor"==n&&(l=!0,n="color"),n=n||"color";var u=scheduler.uid(),h=document.createElement("div");h.style.display="none",document.body.appendChild(h),h.innerHTML='<form id="'+u+'" method="post" target="_blank" action="'+r+'" accept-charset="utf-8" enctype="application/x-www-form-urlencoded"><input type="hidden" name="mycoolxmlbody"/> </form>';var v="";if(e){var m=scheduler._date,g=scheduler._mode;t=scheduler.date[a+"_start"](t),t=scheduler.date["get_"+a+"_end"]?scheduler.date["get_"+a+"_end"](t):scheduler.date.add(t,1,a), -v=_("pages",n,i,d);for(var b=new Date(e);+t>+b;b=scheduler.date.add(b,1,a))scheduler.setCurrentView(b,a),v+=s("page")+c().replace("–","-")+p(l)+o("page");v+=o("pages"),scheduler.setCurrentView(m,g)}else v=_("data",n,i,d)+c().replace("–","-")+p(l)+o("data");document.getElementById(u).firstChild.value=encodeURIComponent(v),document.getElementById(u).submit(),h.parentNode.removeChild(h)}var m,g,b=new RegExp("<[^>]*>","g"),f=new RegExp("<br[^>]*>","g");scheduler.toPDF=function(e,t,a,r){return v.apply(this,[null,null,null,e,t,a,r]); - -},scheduler.toPDFRange=function(e,t,a,r,n,i,d){return"string"==typeof e&&(e=scheduler.templates.api_date(e),t=scheduler.templates.api_date(t)),v.apply(this,arguments)}}(); +!function(){function e(e){return e.replace(y,"\n").replace(p,"")}function t(e,t){e=parseFloat(e),t=parseFloat(t),isNaN(t)||(e-=t);var a=r(e);return e=e-a.width+a.cols*g,isNaN(e)?"auto":100*e/g}function a(e,t,a){e=parseFloat(e),t=parseFloat(t),!isNaN(t)&&a&&(e-=t);var i=r(e);return e=e-i.width+i.cols*g,isNaN(e)?"auto":100*e/(g-(isNaN(t)?0:t))}function r(e){for(var t=0,a=scheduler._els.dhx_cal_header[0].childNodes,r=a[1]?a[1].childNodes:a[0].childNodes,i=0;i<r.length;i++){var n=r[i].style?r[i]:r[i].parentNode,s=parseFloat(n.style.width); +if(!(e>s))break;e-=s+1,t+=s+1}return{width:t,cols:i}}function i(e){return e=parseFloat(e),isNaN(e)?"auto":100*e/m}function n(e,t){return(window.getComputedStyle?window.getComputedStyle(e,null)[t]:e.currentStyle?e.currentStyle[t]:null)||""}function s(e,t){for(var a=parseInt(e.style.left,10),r=0;r<scheduler._cols.length;r++)if(a-=scheduler._cols[r],0>a)return r;return t}function d(e,t){for(var a=parseInt(e.style.top,10),r=0;r<scheduler._colsS.heights.length;r++)if(scheduler._colsS.heights[r]>a)return r; +return t}function l(e){return e?"<"+e+">":""}function o(e){return e?"</"+e+">":""}function c(e,t,a,r){var i="<"+e+" profile='"+t+"'";return a&&(i+=" header='"+a+"'"),r&&(i+=" footer='"+r+"'"),i+=">"}function _(){var t="",a=scheduler._mode;if(scheduler.matrix&&scheduler.matrix[scheduler._mode]&&(a="cell"==scheduler.matrix[scheduler._mode].render?"matrix":"timeline"),t+="<scale mode='"+a+"' today='"+scheduler._els.dhx_cal_date[0].innerHTML+"'>","week_agenda"==scheduler._mode)for(var r=scheduler._els.dhx_cal_data[0].getElementsByTagName("DIV"),i=0;i<r.length;i++)"dhx_wa_scale_bar"==r[i].className&&(t+="<column>"+e(r[i].innerHTML)+"</column>");else if("agenda"==scheduler._mode||"map"==scheduler._mode){ +var r=scheduler._els.dhx_cal_header[0].childNodes[0].childNodes;t+="<column>"+e(r[0].innerHTML)+"</column><column>"+e(r[1].innerHTML)+"</column>"}else if("year"==scheduler._mode)for(var r=scheduler._els.dhx_cal_data[0].childNodes,i=0;i<r.length;i++)t+="<month label='"+e(r[i].childNodes[0].innerHTML)+"'>",t+=u(r[i].childNodes[1].childNodes),t+=h(r[i].childNodes[2]),t+="</month>";else{t+="<x>";var r=scheduler._els.dhx_cal_header[0].childNodes;t+=u(r),t+="</x>";var n=scheduler._els.dhx_cal_data[0];if(scheduler.matrix&&scheduler.matrix[scheduler._mode]){ +t+="<y>";for(var i=0;i<n.firstChild.rows.length;i++){var s=n.firstChild.rows[i];t+="<row><![CDATA["+e(s.cells[0].innerHTML)+"]]></row>"}t+="</y>",m=n.firstChild.rows[0].cells[0].offsetHeight}else if("TABLE"==n.firstChild.tagName)t+=h(n);else{for(n=n.childNodes[n.childNodes.length-1];-1==n.className.indexOf("dhx_scale_holder");)n=n.previousSibling;n=n.childNodes,t+="<y>";for(var i=0;i<n.length;i++)t+="\n<row><![CDATA["+e(n[i].innerHTML)+"]]></row>";t+="</y>",m=n[0].offsetHeight}}return t+="</scale>"; +}function h(t){for(var a="",r=t.firstChild.rows,i=0;i<r.length;i++){for(var n=[],s=0;s<r[i].cells.length;s++)n.push(r[i].cells[s].firstChild.innerHTML);a+="\n<row height='"+t.firstChild.rows[i].cells[0].offsetHeight+"'><![CDATA["+e(n.join("|"))+"]]></row>",m=t.firstChild.rows[0].cells[0].offsetHeight}return a}function u(t){var a,r="";scheduler.matrix&&scheduler.matrix[scheduler._mode]&&(scheduler.matrix[scheduler._mode].second_scale&&(a=t[1].childNodes),t=t[0].childNodes);for(var i=0;i<t.length;i++)r+="\n<column><![CDATA["+e(t[i].innerHTML)+"]]></column>"; +if(g=t[0].offsetWidth,a)for(var n=0,s=t[0].offsetWidth,d=1,i=0;i<a.length;i++)r+="\n<column second_scale='"+d+"'><![CDATA["+e(a[i].innerHTML)+"]]></column>",n+=a[i].offsetWidth,n>=s&&(s+=t[d]?t[d].offsetWidth:0,d++),g=a[0].offsetWidth;return r}function v(r){var l="",o=scheduler._rendered,c=scheduler.matrix&&scheduler.matrix[scheduler._mode];if("agenda"==scheduler._mode||"map"==scheduler._mode)for(var _=0;_<o.length;_++)l+="<event><head><![CDATA["+e(o[_].childNodes[0].innerHTML)+"]]></head><body><![CDATA["+e(o[_].childNodes[2].innerHTML)+"]]></body></event>";else if("week_agenda"==scheduler._mode)for(var _=0;_<o.length;_++)l+="<event day='"+o[_].parentNode.getAttribute("day")+"'><body>"+e(o[_].innerHTML)+"</body></event>";else if("year"==scheduler._mode)for(var o=scheduler.get_visible_events(),_=0;_<o.length;_++){ +var h=o[_].start_date;for(h.valueOf()<scheduler._min_date.valueOf()&&(h=scheduler._min_date);h<o[_].end_date;){var u=h.getMonth()+12*(h.getFullYear()-scheduler._min_date.getFullYear())-scheduler.week_starts._month,v=scheduler.week_starts[u]+h.getDate()-1,f=r?n(scheduler._get_year_cell(h),"color"):"",g=r?n(scheduler._get_year_cell(h),"backgroundColor"):"";if(l+="<event day='"+v%7+"' week='"+Math.floor(v/7)+"' month='"+u+"' backgroundColor='"+g+"' color='"+f+"'></event>",h=scheduler.date.add(h,1,"day"), +h.valueOf()>=scheduler._max_date.valueOf())break}}else if(c&&"cell"==c.render)for(var o=scheduler._els.dhx_cal_data[0].getElementsByTagName("TD"),_=0;_<o.length;_++){var f=r?n(o[_],"color"):"",g=r?n(o[_],"backgroundColor"):"";l+="\n<event><body backgroundColor='"+g+"' color='"+f+"'><![CDATA["+e(o[_].innerHTML)+"]]></body></event>"}else for(var _=0;_<o.length;_++){var p,y;if(scheduler.matrix&&scheduler.matrix[scheduler._mode])p=t(o[_].style.left),y=t(o[_].offsetWidth)-1;else{var b=scheduler.config.use_select_menu_space?0:26; +p=a(o[_].style.left,b,!0),y=a(o[_].style.width,b)-1}if(!isNaN(1*y)){var x=i(o[_].style.top),w=i(o[_].style.height),k=o[_].className.split(" ")[0].replace("dhx_cal_","");if("dhx_tooltip_line"!==k){var E=scheduler.getEvent(o[_].getAttribute("event_id"));if(E){var v=E._sday,D=E._sweek,N=E._length||0;if("month"==scheduler._mode)w=parseInt(o[_].offsetHeight,10),x=parseInt(o[_].style.top,10)-scheduler.xy.month_head_height,v=s(o[_],v),D=d(o[_],D);else if(scheduler.matrix&&scheduler.matrix[scheduler._mode]){ +v=0;var S=o[_].parentNode.parentNode.parentNode;D=S.rowIndex;var A=m;m=o[_].parentNode.offsetHeight,x=i(o[_].style.top),x-=.2*x,m=A}else{if(o[_].parentNode==scheduler._els.dhx_cal_data[0])continue;var C=scheduler._els.dhx_cal_data[0].childNodes[0],M=parseFloat(-1!=C.className.indexOf("dhx_scale_holder")?C.style.left:0);p+=t(o[_].parentNode.style.left,M)}if(l+="\n<event week='"+D+"' day='"+v+"' type='"+k+"' x='"+p+"' y='"+x+"' width='"+y+"' height='"+w+"' len='"+N+"'>","event"==k){l+="<header><![CDATA["+e(o[_].childNodes[1].innerHTML)+"]]></header>"; +var f=r?n(o[_].childNodes[2],"color"):"",g=r?n(o[_].childNodes[2],"backgroundColor"):"";l+="<body backgroundColor='"+g+"' color='"+f+"'><![CDATA["+e(o[_].childNodes[2].innerHTML)+"]]></body>"}else{var f=r?n(o[_],"color"):"",g=r?n(o[_],"backgroundColor"):"";l+="<body backgroundColor='"+g+"' color='"+f+"'><![CDATA["+e(o[_].innerHTML)+"]]></body>"}l+="</event>"}}}}return l}function f(e,t,a,r,i,n,s){var d=!1;"fullcolor"==i&&(d=!0,i="color"),i=i||"color";var h=scheduler.uid(),u=document.createElement("div"); +u.style.display="none",document.body.appendChild(u),u.innerHTML='<form id="'+h+'" method="post" target="_blank" action="'+r+'" accept-charset="utf-8" enctype="application/x-www-form-urlencoded"><input type="hidden" name="mycoolxmlbody"/> </form>';var f="";if(e){var g=scheduler._date,m=scheduler._mode;t=scheduler.date[a+"_start"](t),t=scheduler.date["get_"+a+"_end"]?scheduler.date["get_"+a+"_end"](t):scheduler.date.add(t,1,a),f=c("pages",i,n,s);for(var p=new Date(e);+t>+p;p=scheduler.date.add(p,1,a))scheduler.setCurrentView(p,a), +f+=l("page")+_().replace("–","-")+v(d)+o("page");f+=o("pages"),scheduler.setCurrentView(g,m)}else f=c("data",i,n,s)+_().replace("–","-")+v(d)+o("data");document.getElementById(h).firstChild.value=encodeURIComponent(f),document.getElementById(h).submit(),u.parentNode.removeChild(u)}var g,m,p=new RegExp("<[^>]*>","g"),y=new RegExp("<br[^>]*>","g");scheduler.toPDF=function(e,t,a,r){return f.apply(this,[null,null,null,e,t,a,r])},scheduler.toPDFRange=function(e,t,a,r,i,n,s){return"string"==typeof e&&(e=scheduler.templates.api_date(e), +t=scheduler.templates.api_date(t)),f.apply(this,arguments)}}(); //# sourceMappingURL=../sources/ext/dhtmlxscheduler_pdf.js.map
\ No newline at end of file diff --git a/codebase/ext/dhtmlxscheduler_quick_info.js b/codebase/ext/dhtmlxscheduler_quick_info.js index 015ce84..1e6bbe7 100644 --- a/codebase/ext/dhtmlxscheduler_quick_info.js +++ b/codebase/ext/dhtmlxscheduler_quick_info.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -8,14 +8,12 @@ This software is covered by GPL license. You also can obtain Commercial or Enter */ scheduler.config.icons_select=["icon_details","icon_delete"],scheduler.config.details_on_create=!0,scheduler.config.show_quick_info=!0,scheduler.xy.menu_width=0,scheduler.attachEvent("onClick",function(e){return scheduler.showQuickInfo(e),!0}),function(){for(var e=["onEmptyClick","onViewChange","onLightbox","onBeforeEventDelete","onBeforeDrag"],t=function(){return scheduler._hideQuickInfo(),!0},a=0;a<e.length;a++)scheduler.attachEvent(e[a],t)}(),scheduler.templates.quick_info_title=function(e,t,a){ return a.text.substr(0,50)},scheduler.templates.quick_info_content=function(e,t,a){return a.details||a.text},scheduler.templates.quick_info_date=function(e,t,a){return scheduler.isOneDayEvent(a)?scheduler.templates.day_date(e,t,a)+" "+scheduler.templates.event_header(e,t,a):scheduler.templates.week_date(e,t,a)},scheduler.showQuickInfo=function(e){if(e!=this._quick_info_box_id&&this.config.show_quick_info){this.hideQuickInfo(!0);var t=this._get_event_counter_part(e);t&&(this._quick_info_box=this._init_quick_info(t), -this._fill_quick_data(e),this._show_quick_info(t))}},scheduler._hideQuickInfo=function(){scheduler.hideQuickInfo()},scheduler.hideQuickInfo=function(e){var t=this._quick_info_box;if(this._quick_info_box_id=0,t&&t.parentNode){var a=t._offsetWidth;if(scheduler.config.quick_info_detached)return t.parentNode.removeChild(t);"auto"==t.style.right?t.style.left=-a+"px":t.style.right=-a+"px",e&&t.parentNode.removeChild(t)}},dhtmlxEvent(window,"keydown",function(e){27==e.keyCode&&scheduler.hideQuickInfo()}), -scheduler._show_quick_info=function(e){var t=scheduler._quick_info_box;scheduler._obj.appendChild(t);var a=t.offsetWidth,r=t.offsetHeight;scheduler.config.quick_info_detached?(t.style.left=e.left-e.dx*(a-e.width)+"px",t.style.top=e.top-(e.dy?r:-e.height)+"px"):(t.style.top=this.xy.scale_height+this.xy.nav_height+20+"px",1==e.dx?(t.style.right="auto",t.style.left=-a+"px",setTimeout(function(){t.style.left="-10px"},1)):(t.style.left="auto",t.style.right=-a+"px",setTimeout(function(){t.style.right="-10px"; - -},1)),t.className=t.className.replace("dhx_qi_left","").replace("dhx_qi_right","")+" dhx_qi_"+(1==e?"left":"right"))},scheduler.attachEvent("onTemplatesReady",function(){if(scheduler.hideQuickInfo(),this._quick_info_box){var e=this._quick_info_box;e.parentNode&&e.parentNode.removeChild(e),this._quick_info_box=null}}),scheduler._quick_info_onscroll_handler=function(e){scheduler.hideQuickInfo()},scheduler._init_quick_info=function(){if(!this._quick_info_box){var e=scheduler.xy,t=this._quick_info_box=document.createElement("div"); - -t.className="dhx_cal_quick_info",scheduler.$testmode&&(t.className+=" dhx_no_animate");var a='<div class="dhx_cal_qi_title" style="height:'+e.quick_info_title+'px"><div class="dhx_cal_qi_tcontent"></div><div class="dhx_cal_qi_tdate"></div></div><div class="dhx_cal_qi_content"></div>';a+='<div class="dhx_cal_qi_controls" style="height:'+e.quick_info_buttons+'px">';for(var r=scheduler.config.icons_select,n=0;n<r.length;n++)a+='<div class="dhx_qi_big_icon '+r[n]+'" title="'+scheduler.locale.labels[r[n]]+"\"><div class='dhx_menu_icon "+r[n]+"'></div><div>"+scheduler.locale.labels[r[n]]+"</div></div>"; - -a+="</div>",t.innerHTML=a,dhtmlxEvent(t,"click",function(e){e=e||event,scheduler._qi_button_click(e.target||e.srcElement)}),scheduler.config.quick_info_detached&&(scheduler._detachDomEvent(scheduler._els.dhx_cal_data[0],"scroll",scheduler._quick_info_onscroll_handler),dhtmlxEvent(scheduler._els.dhx_cal_data[0],"scroll",scheduler._quick_info_onscroll_handler))}return this._quick_info_box},scheduler._qi_button_click=function(e){var t=scheduler._quick_info_box;if(e&&e!=t){var a=e.className;if(-1!=a.indexOf("_icon")){ -var r=scheduler._quick_info_box_id;scheduler._click.buttons[a.split(" ")[1].replace("icon_","")](r)}else scheduler._qi_button_click(e.parentNode)}},scheduler._get_event_counter_part=function(e){for(var t=scheduler.getRenderedEvent(e),a=0,r=0,n=t;n&&n!=scheduler._obj;)a+=n.offsetLeft,r+=n.offsetTop-n.scrollTop,n=n.offsetParent;if(n){var i=a+t.offsetWidth/2>scheduler._x/2?1:0,d=r+t.offsetHeight/2>scheduler._y/2?1:0;return{left:a,top:r,dx:i,dy:d,width:t.offsetWidth,height:t.offsetHeight}}return 0},scheduler._fill_quick_data=function(e){ -var t=scheduler.getEvent(e),a=scheduler._quick_info_box;scheduler._quick_info_box_id=e;var r=a.firstChild.firstChild;r.innerHTML=scheduler.templates.quick_info_title(t.start_date,t.end_date,t);var n=r.nextSibling;n.innerHTML=scheduler.templates.quick_info_date(t.start_date,t.end_date,t);var i=a.firstChild.nextSibling;i.innerHTML=scheduler.templates.quick_info_content(t.start_date,t.end_date,t)}; +this._fill_quick_data(e),this._show_quick_info(t),this.callEvent("onQuickInfo",[e]))}},scheduler._hideQuickInfo=function(){scheduler.hideQuickInfo()},scheduler.hideQuickInfo=function(e){var t=this._quick_info_box,a=this._quick_info_box_id;if(this._quick_info_box_id=0,t&&t.parentNode){var r=t.offsetWidth;if(scheduler.config.quick_info_detached)return this.callEvent("onAfterQuickInfo",[a]),t.parentNode.removeChild(t);"auto"==t.style.right?t.style.left=-r+"px":t.style.right=-r+"px",e&&t.parentNode.removeChild(t), +this.callEvent("onAfterQuickInfo",[a])}},dhtmlxEvent(window,"keydown",function(e){27==e.keyCode&&scheduler.hideQuickInfo()}),scheduler._show_quick_info=function(e){var t=scheduler._quick_info_box;scheduler._obj.appendChild(t);var a=t.offsetWidth,r=t.offsetHeight;scheduler.config.quick_info_detached?(t.style.left=e.left-e.dx*(a-e.width)+"px",t.style.top=e.top-(e.dy?r:-e.height)+"px"):(t.style.top=this.xy.scale_height+this.xy.nav_height+20+"px",1==e.dx?(t.style.right="auto",t.style.left=-a+"px",setTimeout(function(){ +t.style.left="-10px"},1)):(t.style.left="auto",t.style.right=-a+"px",setTimeout(function(){t.style.right="-10px"},1)),t.className=t.className.replace(" dhx_qi_left","").replace(" dhx_qi_right","")+" dhx_qi_"+(1==e.dx?"left":"right"))},scheduler.attachEvent("onTemplatesReady",function(){if(scheduler.hideQuickInfo(),this._quick_info_box){var e=this._quick_info_box;e.parentNode&&e.parentNode.removeChild(e),this._quick_info_box=null}}),scheduler._quick_info_onscroll_handler=function(e){scheduler.hideQuickInfo(); +},scheduler._init_quick_info=function(){if(!this._quick_info_box){var e=scheduler.xy,t=this._quick_info_box=document.createElement("div");this._waiAria.quickInfoAttr(t),t.className="dhx_cal_quick_info",scheduler.$testmode&&(t.className+=" dhx_no_animate");var a=this._waiAria.quickInfoHeaderAttrString(),r='<div class="dhx_cal_qi_title" style="height:'+e.quick_info_title+'px" '+a+'><div class="dhx_cal_qi_tcontent"></div><div class="dhx_cal_qi_tdate"></div></div><div class="dhx_cal_qi_content"></div>'; +r+='<div class="dhx_cal_qi_controls" style="height:'+e.quick_info_buttons+'px">';for(var i=scheduler.config.icons_select,n=0;n<i.length;n++){var a=this._waiAria.quickInfoButtonAttrString(this.locale.labels[i[n]]);r+="<div "+a+' class="dhx_qi_big_icon '+i[n]+'" title="'+scheduler.locale.labels[i[n]]+"\"><div class='dhx_menu_icon "+i[n]+"'></div><div>"+scheduler.locale.labels[i[n]]+"</div></div>"}r+="</div>",t.innerHTML=r,dhtmlxEvent(t,"click",function(e){e=e||event,scheduler._qi_button_click(e.target||e.srcElement); +}),scheduler.config.quick_info_detached&&(scheduler._detachDomEvent(scheduler._els.dhx_cal_data[0],"scroll",scheduler._quick_info_onscroll_handler),dhtmlxEvent(scheduler._els.dhx_cal_data[0],"scroll",scheduler._quick_info_onscroll_handler))}return this._quick_info_box},scheduler._qi_button_click=function(e){var t=scheduler._quick_info_box;if(e&&e!=t){var a=scheduler._getClassName(e);if(-1!=a.indexOf("_icon")){var r=scheduler._quick_info_box_id;scheduler._click.buttons[a.split(" ")[1].replace("icon_","")](r); +}else scheduler._qi_button_click(e.parentNode)}},scheduler._get_event_counter_part=function(e){for(var t=scheduler.getRenderedEvent(e),a=0,r=0,i=t;i&&i!=scheduler._obj;)a+=i.offsetLeft,r+=i.offsetTop-i.scrollTop,i=i.offsetParent;if(i){var n=a+t.offsetWidth/2>scheduler._x/2?1:0,s=r+t.offsetHeight/2>scheduler._y/2?1:0;return{left:a,top:r,dx:n,dy:s,width:t.offsetWidth,height:t.offsetHeight}}return 0},scheduler._fill_quick_data=function(e){var t=scheduler.getEvent(e),a=scheduler._quick_info_box;scheduler._quick_info_box_id=e; +var r={content:scheduler.templates.quick_info_title(t.start_date,t.end_date,t),date:scheduler.templates.quick_info_date(t.start_date,t.end_date,t)},i=a.firstChild.firstChild;i.innerHTML=r.content;var n=i.nextSibling;n.innerHTML=r.date,scheduler._waiAria.quickInfoHeader(a,[r.content,r.date].join(" "));var s=a.firstChild.nextSibling;s.innerHTML=scheduler.templates.quick_info_content(t.start_date,t.end_date,t)}; //# sourceMappingURL=../sources/ext/dhtmlxscheduler_quick_info.js.map
\ No newline at end of file diff --git a/codebase/ext/dhtmlxscheduler_readonly.js b/codebase/ext/dhtmlxscheduler_readonly.js index 1f198dd..59542f6 100644 --- a/codebase/ext/dhtmlxscheduler_readonly.js +++ b/codebase/ext/dhtmlxscheduler_readonly.js @@ -1,16 +1,15 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. (c) Dinamenta, UAB. */ -scheduler.attachEvent("onTemplatesReady",function(){function e(e,t,a,r){for(var n=t.getElementsByTagName(e),i=a.getElementsByTagName(e),l=i.length-1;l>=0;l--){var a=i[l];if(r){var d=document.createElement("SPAN");d.className="dhx_text_disabled",d.innerHTML=r(n[l]),a.parentNode.insertBefore(d,a),a.parentNode.removeChild(a)}else a.disabled=!0,t.checked&&(a.checked=!0)}}var t=scheduler.config.lightbox.sections.slice(),a=scheduler.config.buttons_left.slice(),r=scheduler.config.buttons_right.slice();scheduler.attachEvent("onBeforeLightbox",function(e){ -if(this.config.readonly_form||this.getEvent(e).readonly){this.config.readonly_active=!0;for(var n=0;n<this.config.lightbox.sections.length;n++)this.config.lightbox.sections[n].focus=!1}else this.config.readonly_active=!1,scheduler.config.lightbox.sections=t.slice(),scheduler.config.buttons_left=a.slice(),scheduler.config.buttons_right=r.slice();var i=this.config.lightbox.sections;if(this.config.readonly_active){for(var n=0;n<i.length;n++)if("recurring"==i[n].type){this.config.readonly_active&&i.splice(n,1); - -break}for(var l=["dhx_delete_btn","dhx_save_btn"],d=[scheduler.config.buttons_left,scheduler.config.buttons_right],n=0;n<l.length;n++)for(var s=l[n],o=0;o<d.length;o++){for(var _=d[o],c=-1,u=0;u<_.length;u++)if(_[u]==s){c=u;break}-1!=c&&_.splice(c,1)}}return this.resetLightbox(),!0});var n=scheduler._fill_lightbox;scheduler._fill_lightbox=function(){var t=this.getLightbox();this.config.readonly_active&&(t.style.visibility="hidden",t.style.display="block");var a=n.apply(this,arguments);if(this.config.readonly_active&&(t.style.visibility="", -t.style.display="none"),this.config.readonly_active){var r=this.getLightbox(),l=this._lightbox_r=r.cloneNode(!0);l.id=scheduler.uid(),e("textarea",r,l,function(e){return e.value}),e("input",r,l,!1),e("select",r,l,function(e){return e.options.length?e.options[Math.max(e.selectedIndex||0,0)].text:""}),r.parentNode.insertBefore(l,r),i.call(this,l),scheduler._lightbox&&scheduler._lightbox.parentNode.removeChild(scheduler._lightbox),this._lightbox=l,scheduler.config.drag_lightbox&&(l.firstChild.onmousedown=scheduler._ready_to_dnd), -this.setLightboxSize(),l.onclick=function(e){var t=e?e.target:event.srcElement;if(t.className||(t=t.previousSibling),t&&t.className)switch(t.className){case"dhx_cancel_btn":scheduler.callEvent("onEventCancel",[scheduler._lightbox_id]),scheduler._edit_stop_event(scheduler.getEvent(scheduler._lightbox_id),!1),scheduler.hide_lightbox()}}}return a};var i=scheduler.showCover;scheduler.showCover=function(){this.config.readonly_active||i.apply(this,arguments)};var l=scheduler.hide_lightbox;scheduler.hide_lightbox=function(){ -return this._lightbox_r&&(this._lightbox_r.parentNode.removeChild(this._lightbox_r),this._lightbox_r=this._lightbox=null),l.apply(this,arguments)}}); +scheduler.attachEvent("onTemplatesReady",function(){function e(e,t,a,r){for(var i=t.getElementsByTagName(e),n=a.getElementsByTagName(e),s=n.length-1;s>=0;s--){var a=n[s];if(r){var d=document.createElement("SPAN");d.className="dhx_text_disabled",d.innerHTML=r(i[s]),a.parentNode.insertBefore(d,a),a.parentNode.removeChild(a)}else a.disabled=!0,t.checked&&(a.checked=!0)}}var t=scheduler.config.lightbox.sections.slice(),a=scheduler.config.buttons_left.slice(),r=scheduler.config.buttons_right.slice();scheduler.attachEvent("onBeforeLightbox",function(e){ +if(this.config.readonly_form||this.getEvent(e).readonly){this.config.readonly_active=!0;for(var i=0;i<this.config.lightbox.sections.length;i++)this.config.lightbox.sections[i].focus=!1}else this.config.readonly_active=!1,scheduler.config.lightbox.sections=t.slice(),scheduler.config.buttons_left=a.slice(),scheduler.config.buttons_right=r.slice();var n=this.config.lightbox.sections;if(this.config.readonly_active){for(var i=0;i<n.length;i++)if("recurring"==n[i].type){this.config.readonly_active&&n.splice(i,1); +break}for(var s=["dhx_delete_btn","dhx_save_btn"],d=[scheduler.config.buttons_left,scheduler.config.buttons_right],i=0;i<s.length;i++)for(var l=s[i],o=0;o<d.length;o++){for(var c=d[o],_=-1,h=0;h<c.length;h++)if(c[h]==l){_=h;break}-1!=_&&c.splice(_,1)}}return this.resetLightbox(),!0});var i=scheduler._fill_lightbox;scheduler._fill_lightbox=function(){var t=this.getLightbox();this.config.readonly_active&&(t.style.visibility="hidden",t.style.display="block");var a=i.apply(this,arguments);if(this.config.readonly_active&&(t.style.visibility="", +t.style.display="none"),this.config.readonly_active){var r=this.getLightbox(),s=this._lightbox_r=r.cloneNode(!0);s.id=scheduler.uid(),e("textarea",r,s,function(e){return e.value}),e("input",r,s,!1),e("select",r,s,function(e){return e.options.length?e.options[Math.max(e.selectedIndex||0,0)].text:""}),r.parentNode.insertBefore(s,r),n.call(this,s),scheduler._lightbox&&scheduler._lightbox.parentNode.removeChild(scheduler._lightbox),this._lightbox=s,scheduler.config.drag_lightbox&&(s.firstChild.onmousedown=scheduler._ready_to_dnd), +this.setLightboxSize(),s.onclick=function(e){var t=e?e.target:event.srcElement;if(scheduler._getClassName(t)||(t=t.previousSibling),t&&t.className)switch(scheduler._getClassName(t)){case"dhx_cancel_btn":scheduler.callEvent("onEventCancel",[scheduler._lightbox_id]),scheduler._edit_stop_event(scheduler.getEvent(scheduler._lightbox_id),!1),scheduler.hide_lightbox()}},s.onkeydown=function(e){var t=e||window.event,a=e.target||e.srcElement,r=a.querySelector("[dhx_button]");switch(r||(r=a.parentNode.querySelector(".dhx_custom_button, .dhx_readonly")), +(e||t).keyCode){case 32:if((e||t).shiftKey)return;r&&r.click&&r.click();break;case scheduler.keys.edit_cancel:scheduler.cancel_lightbox()}}}return a};var n=scheduler.showCover;scheduler.showCover=function(){this.config.readonly_active||n.apply(this,arguments)};var s=scheduler.hide_lightbox;scheduler.hide_lightbox=function(){return this._lightbox_r&&(this._lightbox_r.parentNode.removeChild(this._lightbox_r),this._lightbox_r=this._lightbox=null),s.apply(this,arguments)}}); //# sourceMappingURL=../sources/ext/dhtmlxscheduler_readonly.js.map
\ No newline at end of file diff --git a/codebase/ext/dhtmlxscheduler_recurring.js b/codebase/ext/dhtmlxscheduler_recurring.js index 432b9d7..8cc2107 100644 --- a/codebase/ext/dhtmlxscheduler_recurring.js +++ b/codebase/ext/dhtmlxscheduler_recurring.js @@ -1,59 +1,44 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. (c) Dinamenta, UAB. */ scheduler.config.occurrence_timestamp_in_utc=!1,scheduler.config.recurring_workdays=[1,2,3,4,5],scheduler.form_blocks.recurring={_get_node:function(e){return"string"==typeof e&&(e=document.getElementById(e)),"none"==e.style.display&&(e.style.display=""),e},_outer_html:function(e){function t(e){var t,a=document.createElement("div");return a.appendChild(e.cloneNode(!0)),t=a.innerHTML,a=null,t}return e.outerHTML||t(e)},render:function(e){if(e.form){var t=scheduler.form_blocks.recurring,a=t._get_node(e.form),r=t._outer_html(a); - -return a.style.display="none",r}return scheduler.__recurring_template},_ds:{},_get_form_node:function(e,t,a){var r=e[t];if(!r)return null;if(r.nodeName)return r;if(r.length)for(var n=0;n<r.length;n++)if(r[n].value==a)return r[n]},_get_node_value:function(e,t,a){var r=e[t];if(!r)return"";if(r.length){if(a){for(var n=[],i=0;i<r.length;i++)r[i].checked&&n.push(r[i].value);return n}for(var i=0;i<r.length;i++)if(r[i].checked)return r[i].value}return r.value?a?[r.value]:r.value:void 0},_set_node_value:function(e,t,a){ -var r=e[t];if(r)if(r.name==t)r.value=a;else if(r.length)for(var n="object"==typeof a,i=0;i<r.length;i++)(n||r[i].value==a)&&(r[i].checked=n?!!a[r[i].value]:!!a)},_init_set_value:function(e,t,a){function r(e){for(var t=0;t<e.length;t++){var a=e[t];if(a.name)if(m[a.name])if(m[a.name].nodeType){var r=m[a.name];m[a.name]=[r,a]}else m[a.name].push(a);else m[a.name]=a}}function n(){f("dhx_repeat_day").style.display="none",f("dhx_repeat_week").style.display="none",f("dhx_repeat_month").style.display="none", -f("dhx_repeat_year").style.display="none",f("dhx_repeat_"+this.value).style.display="block",scheduler.setLightboxSize()}function i(e){var t=[_(m,"repeat")];for(b[t[0]](t,e);t.length<5;)t.push("");var a="",r=l(m);if("no"==r)e.end=new Date(9999,1,1),a="no";else if("date_of_end"==r)e.end=h(_(m,"date_of_end"));else{scheduler.transpose_type(t.join("_")),a=Math.max(1,_(m,"occurences_count"));var n=0;e.end=scheduler.date.add(new Date(e.start),a+n,t.join("_"))}return t.join("_")+"#"+a}function l(e){var t=e.end; - -if(t.length){for(var a=0;a<t.length;a++)if(t[a].checked)return t[a].value&&"on"!=t[a].value?t[a].value:a?2==a?"date_of_end":"occurences_count":"no"}else if(t.value)return t.value;return"no"}function d(e,t){var a=e.end;if(a.length){var r=!!a[0].value&&"on"!=a[0].value;if(r)for(var n=0;n<a.length;n++)a[n].value==t&&(a[n].checked=!0);else{var i=0;switch(t){case"no":i=0;break;case"date_of_end":i=2;break;default:i=1}a[i].checked=!0}}else a.value=t}function s(e,t){var a=scheduler.form_blocks.recurring._set_node_value,r=e.split("#"); - -switch(e=r[0].split("_"),y[e[0]](e,t),r[1]){case"no":d(m,"no");break;case"":d(m,"date_of_end");var n=t.end;scheduler.config.include_end_by&&(n=scheduler.date.add(n,-1,"day")),a(m,"date_of_end",p(n));break;default:d(m,"occurences_count"),a(m,"occurences_count",r[1])}a(m,"repeat",e[0]);var i=scheduler.form_blocks.recurring._get_form_node(m,"repeat",e[0]);"SELECT"==i.nodeName&&i.onchange?i.onchange():i.onclick&&i.onclick()}var o=scheduler.form_blocks.recurring,_=o._get_node_value,c=o._set_node_value; - -scheduler.form_blocks.recurring._ds={start:a.start_date,end:a._end_date};var u=scheduler.date.str_to_date(scheduler.config.repeat_date),h=function(e){var t=u(e);return scheduler.config.include_end_by&&(t=scheduler.date.add(t,1,"day")),t},p=scheduler.date.date_to_str(scheduler.config.repeat_date),v=e.getElementsByTagName("FORM")[0],m={};if(r(v.getElementsByTagName("INPUT")),r(v.getElementsByTagName("SELECT")),!scheduler.config.repeat_date_of_end){var g=scheduler.date.date_to_str(scheduler.config.repeat_date); - -scheduler.config.repeat_date_of_end=g(scheduler.date.add(scheduler._currentDate(),30,"day"))}c(m,"date_of_end",scheduler.config.repeat_date_of_end);var f=function(e){return document.getElementById(e)||{style:{}}};scheduler.form_blocks.recurring._get_repeat_code=i;var b={month:function(e,t){var a=scheduler.form_blocks.recurring._get_node_value;"d"==a(m,"month_type")?(e.push(Math.max(1,a(m,"month_count"))),t.start.setDate(a(m,"month_day"))):(e.push(Math.max(1,a(m,"month_count2"))),e.push(a(m,"month_day2")), -e.push(Math.max(1,a(m,"month_week2"))),scheduler.config.repeat_precise||t.start.setDate(1)),t._start=!0},week:function(e,t){var a=scheduler.form_blocks.recurring._get_node_value;e.push(Math.max(1,a(m,"week_count"))),e.push(""),e.push("");for(var r=[],n=a(m,"week_day",!0),i=t.start.getDay(),l=!1,d=0;d<n.length;d++)r.push(n[d]),l=l||n[d]==i;r.length||(r.push(i),l=!0),r.sort(),scheduler.config.repeat_precise?l||(scheduler.transpose_day_week(t.start,r,1,7),t._start=!0):(t.start=scheduler.date.week_start(t.start), -t._start=!0),e.push(r.join(","))},day:function(e){var t=scheduler.form_blocks.recurring._get_node_value;"d"==t(m,"day_type")?e.push(Math.max(1,t(m,"day_count"))):(e.push("week"),e.push(1),e.push(""),e.push(""),e.push(scheduler.config.recurring_workdays.join(",")),e.splice(0,1))},year:function(e,t){var a=scheduler.form_blocks.recurring._get_node_value;"d"==a(m,"year_type")?(e.push("1"),t.start.setMonth(0),t.start.setDate(a(m,"year_day")),t.start.setMonth(a(m,"year_month"))):(e.push("1"),e.push(a(m,"year_day2")), -e.push(a(m,"year_week2")),t.start.setDate(1),t.start.setMonth(a(m,"year_month2"))),t._start=!0}},y={week:function(e,t){var a=scheduler.form_blocks.recurring._set_node_value;a(m,"week_count",e[1]);for(var r=e[4].split(","),n={},i=0;i<r.length;i++)n[r[i]]=!0;a(m,"week_day",n)},month:function(e,t){var a=scheduler.form_blocks.recurring._set_node_value;""===e[2]?(a(m,"month_type","d"),a(m,"month_count",e[1]),a(m,"month_day",t.start.getDate())):(a(m,"month_type","w"),a(m,"month_count2",e[1]),a(m,"month_week2",e[3]), -a(m,"month_day2",e[2]))},day:function(e,t){var a=scheduler.form_blocks.recurring._set_node_value;a(m,"day_type","d"),a(m,"day_count",e[1])},year:function(e,t){var a=scheduler.form_blocks.recurring._set_node_value;""===e[2]?(a(m,"year_type","d"),a(m,"year_day",t.start.getDate()),a(m,"year_month",t.start.getMonth())):(a(m,"year_type","w"),a(m,"year_week2",e[3]),a(m,"year_day2",e[2]),a(m,"year_month2",t.start.getMonth()))}};scheduler.form_blocks.recurring._set_repeat_code=s;for(var x=0;x<v.elements.length;x++){ -var k=v.elements[x];switch(k.name){case"repeat":"SELECT"==k.nodeName?k.onchange=n:k.onclick=n}}scheduler._lightbox._rec_init_done=!0},set_value:function(e,t,a){var r=scheduler.form_blocks.recurring;scheduler._lightbox._rec_init_done||r._init_set_value(e,t,a),e.open=!a.rec_type,this._is_modified_occurence(a)?e.blocked=!0:e.blocked=!1;var n=r._ds;n.start=a.start_date,n.end=a._end_date,r.button_click(0,e.previousSibling.firstChild.firstChild,e,e),t&&r._set_repeat_code(t,n)},get_value:function(e,t){if(e.open){ -var a=scheduler.form_blocks.recurring._ds,r={};this.formSection("time").getValue(r),a.start=r.start_date,t.rec_type=scheduler.form_blocks.recurring._get_repeat_code(a),a._start?(t.start_date=new Date(a.start),t._start_date=new Date(a.start),a._start=!1):t._start_date=null,t._end_date=a.end,t.rec_pattern=t.rec_type.split("#")[0]}else t.rec_type=t.rec_pattern="",t._end_date=t.end_date;return t.rec_type},_get_button:function(){var e=scheduler.formSection("recurring").header;return e.firstChild.firstChild; - -},_get_form:function(){return scheduler.formSection("recurring").node},open:function(){var e=scheduler.form_blocks.recurring,t=e._get_form();t.open||e._toggle_block()},close:function(){var e=scheduler.form_blocks.recurring,t=e._get_form();t.open&&e._toggle_block()},_toggle_block:function(){var e=scheduler.form_blocks.recurring,t=e._get_form(),a=e._get_button();t.open||t.blocked?(t.style.height="0px",a&&(a.style.backgroundPosition="-5px 20px",a.nextSibling.innerHTML=scheduler.locale.labels.button_recurring)):(t.style.height="auto", -a&&(a.style.backgroundPosition="-5px 0px",a.nextSibling.innerHTML=scheduler.locale.labels.button_recurring_open)),t.open=!t.open,scheduler.setLightboxSize()},focus:function(e){},button_click:function(e,t,a,r){scheduler.form_blocks.recurring._toggle_block()}},scheduler._rec_markers={},scheduler._rec_markers_pull={},scheduler._add_rec_marker=function(e,t){e._pid_time=t,this._rec_markers[e.id]=e,this._rec_markers_pull[e.event_pid]||(this._rec_markers_pull[e.event_pid]={}),this._rec_markers_pull[e.event_pid][t]=e; - -},scheduler._get_rec_marker=function(e,t){var a=this._rec_markers_pull[t];return a?a[e]:null},scheduler._get_rec_markers=function(e){return this._rec_markers_pull[e]||[]},scheduler._rec_temp=[],function(){var e=scheduler.addEvent;scheduler.addEvent=function(t,a,r,n,i){var l=e.apply(this,arguments);if(l){var d=scheduler.getEvent(l);this._is_modified_occurence(d)&&scheduler._add_rec_marker(d,1e3*d.event_length),d.rec_type&&(d.rec_pattern=d.rec_type.split("#")[0])}return l}}(),scheduler.attachEvent("onEventIdChange",function(e,t){ -if(!this._ignore_call){this._ignore_call=!0,scheduler._rec_markers[e]&&(scheduler._rec_markers[t]=scheduler._rec_markers[e],delete scheduler._rec_markers[e]);for(var a=0;a<this._rec_temp.length;a++){var r=this._rec_temp[a];r.event_pid==e&&(r.event_pid=t,this.changeEventId(r.id,t+"#"+r.id.split("#")[1]))}delete this._ignore_call}}),scheduler.attachEvent("onConfirmedBeforeEventDelete",function(e){var t=this.getEvent(e);if(this._is_virtual_event(e)||this._is_modified_occurence(t)&&t.rec_type&&"none"!=t.rec_type){ -e=e.split("#");var a=this.uid(),r=e[1]?e[1]:t._pid_time/1e3,n=this._copy_event(t);n.id=a,n.event_pid=t.event_pid||e[0];var i=r;n.event_length=i,n.rec_type=n.rec_pattern="none",this.addEvent(n),this._add_rec_marker(n,1e3*i)}else{t.rec_type&&this._lightbox_id&&this._roll_back_dates(t);var l=this._get_rec_markers(e);for(var d in l)l.hasOwnProperty(d)&&(e=l[d].id,this.getEvent(e)&&this.deleteEvent(e,!0))}return!0}),scheduler.attachEvent("onEventDeleted",function(e,t){!this._is_virtual_event(e)&&this._is_modified_occurence(t)&&(scheduler._events[e]||(t.rec_type=t.rec_pattern="none", -this.setEvent(e,t)))}),scheduler.attachEvent("onEventChanged",function(e){if(this._loading)return!0;var t=this.getEvent(e);if(this._is_virtual_event(e)){var e=e.split("#"),a=this.uid();this._not_render=!0;var r=this._copy_event(t);r.id=a,r.event_pid=e[0];var n=e[1];r.event_length=n,r.rec_type=r.rec_pattern="",this._add_rec_marker(r,1e3*n),this.addEvent(r),this._not_render=!1}else{t.rec_type&&this._lightbox_id&&this._roll_back_dates(t);var i=this._get_rec_markers(e);for(var l in i)i.hasOwnProperty(l)&&(delete this._rec_markers[i[l].id], -this.deleteEvent(i[l].id,!0));delete this._rec_markers_pull[e];for(var d=!1,s=0;s<this._rendered.length;s++)this._rendered[s].getAttribute("event_id")==e&&(d=!0);d||(this._select_id=null)}return!0}),scheduler.attachEvent("onEventAdded",function(e){if(!this._loading){var t=this.getEvent(e);t.rec_type&&!t.event_length&&this._roll_back_dates(t)}return!0}),scheduler.attachEvent("onEventSave",function(e,t,a){var r=this.getEvent(e);return r.rec_type||!t.rec_type||this._is_virtual_event(e)||(this._select_id=null), +return a.style.display="none",r}return scheduler.__recurring_template},_ds:{},_get_form_node:function(e,t,a){var r=e[t];if(!r)return null;if(r.nodeName)return r;if(r.length)for(var n=0;n<r.length;n++)if(r[n].value==a)return r[n]},_get_node_value:function(e,t,a){var r=e[t];if(!r)return"";if(r.length){if(a){for(var n=[],i=0;i<r.length;i++)r[i].checked&&n.push(r[i].value);return n}for(var i=0;i<r.length;i++)if(r[i].checked)return r[i].value}return r.value?a?[r.value]:r.value:void 0},_get_node_numeric_value:function(e,t){ +var a=scheduler.form_blocks.recurring._get_node_value(e,t);return 1*a||0},_set_node_value:function(e,t,a){var r=e[t];if(r)if(r.name==t)r.value=a;else if(r.length)for(var n="object"==typeof a,i=0;i<r.length;i++)(n||r[i].value==a)&&(r[i].checked=n?!!a[r[i].value]:!!a)},_init_set_value:function(e,t,a){function r(e){for(var t=0;t<e.length;t++){var a=e[t];if(a.name)if(g[a.name])if(g[a.name].nodeType){var r=g[a.name];g[a.name]=[r,a]}else g[a.name].push(a);else g[a.name]=a}}function n(){m("dhx_repeat_day").style.display="none", +m("dhx_repeat_week").style.display="none",m("dhx_repeat_month").style.display="none",m("dhx_repeat_year").style.display="none",m("dhx_repeat_"+this.value).style.display="block",scheduler.setLightboxSize()}function i(e){var t=[c(g,"repeat")];for(y[t[0]](t,e);t.length<5;)t.push("");var a="",r=s(g);if("no"==r)e.end=new Date(9999,1,1),a="no";else if("date_of_end"==r)e.end=u(c(g,"date_of_end"));else{scheduler.transpose_type(t.join("_")),a=Math.max(1,c(g,"occurences_count"));var n=0;e.end=scheduler.date.add(new Date(e.start),a+n,t.join("_")); +}return t.join("_")+"#"+a}function s(e){var t=e.end;if(t.length){for(var a=0;a<t.length;a++)if(t[a].checked)return t[a].value&&"on"!=t[a].value?t[a].value:a?2==a?"date_of_end":"occurences_count":"no"}else if(t.value)return t.value;return"no"}function d(e,t){var a=e.end;if(a.length){var r=!!a[0].value&&"on"!=a[0].value;if(r)for(var n=0;n<a.length;n++)a[n].value==t&&(a[n].checked=!0);else{var i=0;switch(t){case"no":i=0;break;case"date_of_end":i=2;break;default:i=1}a[i].checked=!0}}else a.value=t}function l(e,t){ +var a=scheduler.form_blocks.recurring._set_node_value,r=e.split("#");switch(e=r[0].split("_"),b[e[0]](e,t),r[1]){case"no":d(g,"no");break;case"":d(g,"date_of_end");var n=t.end;scheduler.config.include_end_by&&(n=scheduler.date.add(n,-1,"day")),a(g,"date_of_end",v(n));break;default:d(g,"occurences_count"),a(g,"occurences_count",r[1])}a(g,"repeat",e[0]);var i=scheduler.form_blocks.recurring._get_form_node(g,"repeat",e[0]);"SELECT"==i.nodeName&&i.onchange?i.onchange():i.onclick&&i.onclick()}var o=scheduler.form_blocks.recurring,c=o._get_node_value,_=o._set_node_value; +scheduler.form_blocks.recurring._ds={start:a.start_date,end:a._end_date};var h=scheduler.date.str_to_date(scheduler.config.repeat_date),u=function(e){var t=h(e);return scheduler.config.include_end_by&&(t=scheduler.date.add(t,1,"day")),t},v=scheduler.date.date_to_str(scheduler.config.repeat_date),f=e.getElementsByTagName("FORM")[0],g={};if(r(f.getElementsByTagName("INPUT")),r(f.getElementsByTagName("SELECT")),!scheduler.config.repeat_date_of_end){var p=scheduler.date.date_to_str(scheduler.config.repeat_date); +scheduler.config.repeat_date_of_end=p(scheduler.date.add(scheduler._currentDate(),30,"day"))}_(g,"date_of_end",scheduler.config.repeat_date_of_end);var m=function(e){return document.getElementById(e)||{style:{}}};scheduler.form_blocks.recurring._get_repeat_code=i;var y={month:function(e,t){var a=scheduler.form_blocks.recurring._get_node_value,r=scheduler.form_blocks.recurring._get_node_numeric_value;"d"==a(g,"month_type")?(e.push(Math.max(1,r(g,"month_count"))),t.start.setDate(a(g,"month_day"))):(e.push(Math.max(1,r(g,"month_count2"))), +e.push(a(g,"month_day2")),e.push(Math.max(1,r(g,"month_week2"))),scheduler.config.repeat_precise||t.start.setDate(1)),t._start=!0},week:function(e,t){var a=scheduler.form_blocks.recurring._get_node_value,r=scheduler.form_blocks.recurring._get_node_numeric_value;e.push(Math.max(1,r(g,"week_count"))),e.push(""),e.push("");for(var n=[],i=a(g,"week_day",!0),s=t.start.getDay(),d=!1,l=0;l<i.length;l++)n.push(i[l]),d=d||i[l]==s;n.length||(n.push(s),d=!0),n.sort(),scheduler.config.repeat_precise?d||(scheduler.transpose_day_week(t.start,n,1,7), +t._start=!0):(t.start=scheduler.date.week_start(t.start),t._start=!0),e.push(n.join(","))},day:function(e){var t=scheduler.form_blocks.recurring._get_node_value,a=scheduler.form_blocks.recurring._get_node_numeric_value;"d"==t(g,"day_type")?e.push(Math.max(1,a(g,"day_count"))):(e.push("week"),e.push(1),e.push(""),e.push(""),e.push(scheduler.config.recurring_workdays.join(",")),e.splice(0,1))},year:function(e,t){var a=scheduler.form_blocks.recurring._get_node_value;"d"==a(g,"year_type")?(e.push("1"), +t.start.setMonth(0),t.start.setDate(a(g,"year_day")),t.start.setMonth(a(g,"year_month"))):(e.push("1"),e.push(a(g,"year_day2")),e.push(a(g,"year_week2")),t.start.setDate(1),t.start.setMonth(a(g,"year_month2"))),t._start=!0}},b={week:function(e,t){var a=scheduler.form_blocks.recurring._set_node_value;a(g,"week_count",e[1]);for(var r=e[4].split(","),n={},i=0;i<r.length;i++)n[r[i]]=!0;a(g,"week_day",n)},month:function(e,t){var a=scheduler.form_blocks.recurring._set_node_value;""===e[2]?(a(g,"month_type","d"), +a(g,"month_count",e[1]),a(g,"month_day",t.start.getDate())):(a(g,"month_type","w"),a(g,"month_count2",e[1]),a(g,"month_week2",e[3]),a(g,"month_day2",e[2]))},day:function(e,t){var a=scheduler.form_blocks.recurring._set_node_value;a(g,"day_type","d"),a(g,"day_count",e[1])},year:function(e,t){var a=scheduler.form_blocks.recurring._set_node_value;""===e[2]?(a(g,"year_type","d"),a(g,"year_day",t.start.getDate()),a(g,"year_month",t.start.getMonth())):(a(g,"year_type","w"),a(g,"year_week2",e[3]),a(g,"year_day2",e[2]), +a(g,"year_month2",t.start.getMonth()))}};scheduler.form_blocks.recurring._set_repeat_code=l;for(var x=0;x<f.elements.length;x++){var w=f.elements[x];switch(w.name){case"repeat":"SELECT"==w.nodeName?w.onchange=n:w.onclick=n}}scheduler._lightbox._rec_init_done=!0},set_value:function(e,t,a){var r=scheduler.form_blocks.recurring;scheduler._lightbox._rec_init_done||r._init_set_value(e,t,a),e.open=!a.rec_type,this._is_modified_occurence(a)?e.blocked=!0:e.blocked=!1;var n=r._ds;n.start=a.start_date,n.end=a._end_date, +r.button_click(0,e.previousSibling.firstChild.firstChild,e,e),t&&r._set_repeat_code(t,n)},get_value:function(e,t){if(e.open){var a=scheduler.form_blocks.recurring._ds,r={};this.formSection("time").getValue(r),a.start=r.start_date,t.rec_type=scheduler.form_blocks.recurring._get_repeat_code(a),a._start?(t.start_date=new Date(a.start),t._start_date=new Date(a.start),a._start=!1):t._start_date=null,t._end_date=a.end,t.rec_pattern=t.rec_type.split("#")[0]}else t.rec_type=t.rec_pattern="",t._end_date=t.end_date; +return t.rec_type},_get_button:function(){var e=scheduler.formSection("recurring").header;return e.firstChild.firstChild},_get_form:function(){return scheduler.formSection("recurring").node},open:function(){var e=scheduler.form_blocks.recurring,t=e._get_form();t.open||e._toggle_block()},close:function(){var e=scheduler.form_blocks.recurring,t=e._get_form();t.open&&e._toggle_block()},_toggle_block:function(){var e=scheduler.form_blocks.recurring,t=e._get_form(),a=e._get_button();t.open||t.blocked?(t.style.height="0px", +a&&(a.style.backgroundPosition="-5px 20px",a.nextSibling.innerHTML=scheduler.locale.labels.button_recurring)):(t.style.height="auto",a&&(a.style.backgroundPosition="-5px 0px",a.nextSibling.innerHTML=scheduler.locale.labels.button_recurring_open)),t.open=!t.open,scheduler.setLightboxSize()},focus:function(e){},button_click:function(e,t,a,r){scheduler.form_blocks.recurring._toggle_block()}},scheduler._rec_markers={},scheduler._rec_markers_pull={},scheduler._add_rec_marker=function(e,t){e._pid_time=t, +this._rec_markers[e.id]=e,this._rec_markers_pull[e.event_pid]||(this._rec_markers_pull[e.event_pid]={}),this._rec_markers_pull[e.event_pid][t]=e},scheduler._get_rec_marker=function(e,t){var a=this._rec_markers_pull[t];return a?a[e]:null},scheduler._get_rec_markers=function(e){return this._rec_markers_pull[e]||[]},scheduler._rec_temp=[],function(){var e=scheduler.addEvent;scheduler.addEvent=function(t,a,r,n,i){var s=e.apply(this,arguments);if(s){var d=scheduler.getEvent(s);this._is_modified_occurence(d)&&scheduler._add_rec_marker(d,1e3*d.event_length), +d.rec_type&&(d.rec_pattern=d.rec_type.split("#")[0])}return s}}(),scheduler.attachEvent("onEventIdChange",function(e,t){if(!this._ignore_call){this._ignore_call=!0,scheduler._rec_markers[e]&&(scheduler._rec_markers[t]=scheduler._rec_markers[e],delete scheduler._rec_markers[e]),scheduler._rec_markers_pull[e]&&(scheduler._rec_markers_pull[t]=scheduler._rec_markers_pull[e],delete scheduler._rec_markers_pull[e]);for(var a=0;a<this._rec_temp.length;a++){var r=this._rec_temp[a];r.event_pid==e&&(r.event_pid=t, +this.changeEventId(r.id,t+"#"+r.id.split("#")[1]))}for(var a in this._rec_markers){var r=this._rec_markers[a];r.event_pid==e&&(r.event_pid=t,r._pid_changed=!0)}var n=scheduler._rec_markers[t];n&&n._pid_changed&&(delete n._pid_changed,setTimeout(function(){scheduler.callEvent("onEventChanged",[t,scheduler.getEvent(t)])},1)),delete this._ignore_call}}),scheduler.attachEvent("onConfirmedBeforeEventDelete",function(e){var t=this.getEvent(e);if(this._is_virtual_event(e)||this._is_modified_occurence(t)&&t.rec_type&&"none"!=t.rec_type){ +e=e.split("#");var a=this.uid(),r=e[1]?e[1]:t._pid_time/1e3,n=this._copy_event(t);n.id=a,n.event_pid=t.event_pid||e[0];var i=r;n.event_length=i,n.rec_type=n.rec_pattern="none",this.addEvent(n),this._add_rec_marker(n,1e3*i)}else{t.rec_type&&this._lightbox_id&&this._roll_back_dates(t);var s=this._get_rec_markers(e);for(var d in s)s.hasOwnProperty(d)&&(e=s[d].id,this.getEvent(e)&&this.deleteEvent(e,!0))}return!0}),scheduler.attachEvent("onEventDeleted",function(e,t){!this._is_virtual_event(e)&&this._is_modified_occurence(t)&&(scheduler._events[e]||(t.rec_type=t.rec_pattern="none", +this.setEvent(e,t)))}),scheduler.attachEvent("onEventChanged",function(e){if(this._loading)return!0;var t=this.getEvent(e);if(this._is_virtual_event(e)){var e=e.split("#"),a=this.uid();this._not_render=!0;var r=this._copy_event(t);r.id=a,r.event_pid=e[0];var n=e[1];r.event_length=n,r.rec_type=r.rec_pattern="",this._add_rec_marker(r,1e3*n),this.addEvent(r),this._not_render=!1}else{t.rec_type&&this._lightbox_id&&this._roll_back_dates(t);var i=this._get_rec_markers(e);for(var s in i)i.hasOwnProperty(s)&&(delete this._rec_markers[i[s].id], +this.deleteEvent(i[s].id,!0));delete this._rec_markers_pull[e];for(var d=!1,l=0;l<this._rendered.length;l++)this._rendered[l].getAttribute("event_id")==e&&(d=!0);d||(this._select_id=null)}return!0}),scheduler.attachEvent("onEventAdded",function(e){if(!this._loading){var t=this.getEvent(e);t.rec_type&&!t.event_length&&this._roll_back_dates(t)}return!0}),scheduler.attachEvent("onEventSave",function(e,t,a){var r=this.getEvent(e);return r.rec_type||!t.rec_type||this._is_virtual_event(e)||(this._select_id=null), !0}),scheduler.attachEvent("onEventCreated",function(e){var t=this.getEvent(e);return t.rec_type||(t.rec_type=t.rec_pattern=t.event_length=t.event_pid=""),!0}),scheduler.attachEvent("onEventCancel",function(e){var t=this.getEvent(e);t.rec_type&&(this._roll_back_dates(t),this.render_view_data())}),scheduler._roll_back_dates=function(e){e.event_length=(e.end_date.valueOf()-e.start_date.valueOf())/1e3,e.end_date=e._end_date,e._start_date&&(e.start_date.setMonth(0),e.start_date.setDate(e._start_date.getDate()), e.start_date.setMonth(e._start_date.getMonth()),e.start_date.setFullYear(e._start_date.getFullYear()))},scheduler._is_virtual_event=function(e){return-1!=e.toString().indexOf("#")},scheduler._is_modified_occurence=function(e){return e.event_pid&&"0"!=e.event_pid},scheduler._validId=function(e){return!this._is_virtual_event(e)},scheduler.showLightbox_rec=scheduler.showLightbox,scheduler.showLightbox=function(e){var t=this.locale,a=scheduler.config.lightbox_recurring,r=this.getEvent(e),n=r.event_pid,i=this._is_virtual_event(e); - -i&&(n=e.split("#")[0]);var l=function(e){var t=scheduler.getEvent(e);return t._end_date=t.end_date,t.end_date=new Date(t.start_date.valueOf()+1e3*t.event_length),scheduler.showLightbox_rec(e)};if((n||1*n===0)&&r.rec_type)return l(e);if(!n||"0"===n||!t.labels.confirm_recurring||"instance"==a||"series"==a&&!i)return this.showLightbox_rec(e);if("ask"==a){var d=this;dhtmlx.modalbox({text:t.labels.confirm_recurring,title:t.labels.title_confirm_recurring,width:"500px",position:"middle",buttons:[t.labels.button_edit_series,t.labels.button_edit_occurrence,t.labels.icon_cancel], -callback:function(t){switch(+t){case 0:return l(n);case 1:return d.showLightbox_rec(e);case 2:return}}})}else l(n)},scheduler.get_visible_events_rec=scheduler.get_visible_events,scheduler.get_visible_events=function(e){for(var t=0;t<this._rec_temp.length;t++)delete this._events[this._rec_temp[t].id];this._rec_temp=[];for(var a=this.get_visible_events_rec(e),r=[],t=0;t<a.length;t++)a[t].rec_type?"none"!=a[t].rec_pattern&&this.repeat_date(a[t],r):r.push(a[t]);return r},function(){var e=scheduler.isOneDayEvent; - +i&&(n=e.split("#")[0]);var s=function(e){var t=scheduler.getEvent(e);return t._end_date=t.end_date,t.end_date=new Date(t.start_date.valueOf()+1e3*t.event_length),scheduler.showLightbox_rec(e)};if((n||1*n===0)&&r.rec_type)return s(e);if(!n||"0"===n||!t.labels.confirm_recurring||"instance"==a||"series"==a&&!i)return this.showLightbox_rec(e);if("ask"==a){var d=this;dhtmlx.modalbox({text:t.labels.confirm_recurring,title:t.labels.title_confirm_recurring,width:"500px",position:"middle",buttons:[t.labels.button_edit_series,t.labels.button_edit_occurrence,t.labels.icon_cancel], +callback:function(t){switch(+t){case 0:return s(n);case 1:return d.showLightbox_rec(e);case 2:return}}})}else s(n)},scheduler.get_visible_events_rec=scheduler.get_visible_events,scheduler.get_visible_events=function(e){for(var t=0;t<this._rec_temp.length;t++)delete this._events[this._rec_temp[t].id];this._rec_temp=[];for(var a=this.get_visible_events_rec(e),r=[],t=0;t<a.length;t++)a[t].rec_type?"none"!=a[t].rec_pattern&&this.repeat_date(a[t],r):r.push(a[t]);return r},function(){var e=scheduler.isOneDayEvent; scheduler.isOneDayEvent=function(t){return t.rec_type?!0:e.call(this,t)};var t=scheduler.updateEvent;scheduler.updateEvent=function(e){var a=scheduler.getEvent(e);a&&a.rec_type&&(a.rec_pattern=(a.rec_type||"").split("#")[0]),a&&a.rec_type&&!this._is_virtual_event(e)?scheduler.update_view():t.call(this,e)}}(),scheduler.transponse_size={day:1,week:7,month:1,year:12},scheduler.date.day_week=function(e,t,a){e.setDate(1),a=7*(a-1);var r=e.getDay(),n=1*t+a-r+1;e.setDate(a>=n?n+7:n)},scheduler.transpose_day_week=function(e,t,a,r,n){ -for(var i=(e.getDay()||(scheduler.config.start_on_monday?7:0))-a,l=0;l<t.length;l++)if(t[l]>i)return e.setDate(e.getDate()+1*t[l]-i-(r?a:n));this.transpose_day_week(e,t,a+r,null,a)},scheduler.transpose_type=function(e){var t="transpose_"+e;if(!this.date[t]){var a=e.split("_"),r=864e5,n="add_"+e,i=this.transponse_size[a[0]]*a[1];if("day"==a[0]||"week"==a[0]){var l=null;if(a[4]&&(l=a[4].split(","),scheduler.config.start_on_monday)){for(var d=0;d<l.length;d++)l[d]=1*l[d]||7;l.sort()}this.date[t]=function(e,t){ -var a=Math.floor((t.valueOf()-e.valueOf())/(r*i));a>0&&e.setDate(e.getDate()+a*i),l&&scheduler.transpose_day_week(e,l,1,i)},this.date[n]=function(e,t){var a=new Date(e.valueOf());if(l)for(var r=0;t>r;r++)scheduler.transpose_day_week(a,l,0,i);else a.setDate(a.getDate()+t*i);return a}}else("month"==a[0]||"year"==a[0])&&(this.date[t]=function(e,t){var r=Math.ceil((12*t.getFullYear()+1*t.getMonth()-(12*e.getFullYear()+1*e.getMonth()))/i);r>=0&&e.setMonth(e.getMonth()+r*i),a[3]&&scheduler.date.day_week(e,a[2],a[3]); - -},this.date[n]=function(e,t){var r=new Date(e.valueOf());return r.setMonth(r.getMonth()+t*i),a[3]&&scheduler.date.day_week(r,a[2],a[3]),r})}},scheduler.repeat_date=function(e,t,a,r,n){r=r||this._min_date,n=n||this._max_date;var i=new Date(e.start_date.valueOf());for(!e.rec_pattern&&e.rec_type&&(e.rec_pattern=e.rec_type.split("#")[0]),this.transpose_type(e.rec_pattern),scheduler.date["transpose_"+e.rec_pattern](i,r);i<e.start_date||scheduler._fix_daylight_saving_date(i,r,e,i,new Date(i.valueOf()+1e3*e.event_length)).valueOf()<=r.valueOf()||i.valueOf()+1e3*e.event_length<=r.valueOf();)i=this.date.add(i,1,e.rec_pattern); - -for(;n>i&&i<e.end_date;){var l=scheduler.config.occurrence_timestamp_in_utc?Date.UTC(i.getFullYear(),i.getMonth(),i.getDate(),i.getHours(),i.getMinutes(),i.getSeconds()):i.valueOf(),d=this._get_rec_marker(l,e.id);if(d)a&&t.push(d);else{var s=new Date(i.valueOf()+1e3*e.event_length),o=this._copy_event(e);if(o.text=e.text,o.start_date=i,o.event_pid=e.id,o.id=e.id+"#"+Math.ceil(l/1e3),o.end_date=s,o.end_date=scheduler._fix_daylight_saving_date(o.start_date,o.end_date,e,i,o.end_date),o._timed=this.isOneDayEvent(o), -!o._timed&&!this._table_view&&!this.config.multi_day)return;t.push(o),a||(this._events[o.id]=o,this._rec_temp.push(o))}i=this.date.add(i,1,e.rec_pattern)}},scheduler._fix_daylight_saving_date=function(e,t,a,r,n){var i=e.getTimezoneOffset()-t.getTimezoneOffset();return new Date(i?i>0?r.valueOf()+1e3*a.event_length-60*i*1e3:t.valueOf()-60*i*1e3:n.valueOf())},scheduler.getRecDates=function(e,t){var a="object"==typeof e?e:scheduler.getEvent(e),r=0,n=[];t=t||100;var i=new Date(a.start_date.valueOf()),l=new Date(i.valueOf()); - -if(!a.rec_type)return[{start_date:a.start_date,end_date:a.end_date}];if("none"==a.rec_type)return[];for(this.transpose_type(a.rec_pattern),scheduler.date["transpose_"+a.rec_pattern](i,l);i<a.start_date||i.valueOf()+1e3*a.event_length<=l.valueOf();)i=this.date.add(i,1,a.rec_pattern);for(;i<a.end_date;){var d=this._get_rec_marker(i.valueOf(),a.id),s=!0;if(d)"none"==d.rec_type?s=!1:n.push({start_date:d.start_date,end_date:d.end_date});else{var o=new Date(i),_=new Date(i.valueOf()+1e3*a.event_length); - -_=scheduler._fix_daylight_saving_date(o,_,a,i,_),n.push({start_date:o,end_date:_})}if(i=this.date.add(i,1,a.rec_pattern),s&&(r++,r==t))break}return n},scheduler.getEvents=function(e,t){var a=[];for(var r in this._events){var n=this._events[r];if(n&&n.start_date<t&&n.end_date>e)if(n.rec_pattern){if("none"==n.rec_pattern)continue;var i=[];this.repeat_date(n,i,!0,e,t);for(var l=0;l<i.length;l++)!i[l].rec_pattern&&i[l].start_date<t&&i[l].end_date>e&&!this._rec_markers[i[l].id]&&a.push(i[l])}else this._is_virtual_event(n.id)||a.push(n); - -}return a},scheduler.config.repeat_date="%m.%d.%Y",scheduler.config.lightbox.sections=[{name:"description",height:130,map_to:"text",type:"textarea",focus:!0},{name:"recurring",type:"recurring",map_to:"rec_type",button:"recurring"},{name:"time",height:72,type:"time",map_to:"auto"}],scheduler._copy_dummy=function(e){var t=new Date(this.start_date),a=new Date(this.end_date);this.start_date=t,this.end_date=a,this.event_length=this.event_pid=this.rec_pattern=this.rec_type=null},scheduler.config.include_end_by=!1, -scheduler.config.lightbox_recurring="ask",scheduler.attachEvent("onClearAll",function(){scheduler._rec_markers={},scheduler._rec_markers_pull={},scheduler._rec_temp=[]}),scheduler.__recurring_template='<div class="dhx_form_repeat"> <form> <div class="dhx_repeat_left"> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="day" />Daily</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="week"/>Weekly</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="month" checked />Monthly</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="year" />Yearly</label> </div> <div class="dhx_repeat_divider"></div> <div class="dhx_repeat_center"> <div style="display:none;" id="dhx_repeat_day"> <label><input class="dhx_repeat_radio" type="radio" name="day_type" value="d"/>Every</label><input class="dhx_repeat_text" type="text" name="day_count" value="1" />day<br /> <label><input class="dhx_repeat_radio" type="radio" name="day_type" checked value="w"/>Every workday</label> </div> <div style="display:none;" id="dhx_repeat_week"> Repeat every<input class="dhx_repeat_text" type="text" name="week_count" value="1" />week next days:<br /> <table class="dhx_repeat_days"> <tr> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="1" />Monday</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="4" />Thursday</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="2" />Tuesday</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="5" />Friday</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="3" />Wednesday</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="6" />Saturday</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="0" />Sunday</label><br /><br /> </td> </tr> </table> </div> <div id="dhx_repeat_month"> <label><input class="dhx_repeat_radio" type="radio" name="month_type" value="d"/>Repeat</label><input class="dhx_repeat_text" type="text" name="month_day" value="1" />day every<input class="dhx_repeat_text" type="text" name="month_count" value="1" />month<br /> <label><input class="dhx_repeat_radio" type="radio" name="month_type" checked value="w"/>On</label><input class="dhx_repeat_text" type="text" name="month_week2" value="1" /><select name="month_day2"><option value="1" selected >Monday<option value="2">Tuesday<option value="3">Wednesday<option value="4">Thursday<option value="5">Friday<option value="6">Saturday<option value="0">Sunday</select>every<input class="dhx_repeat_text" type="text" name="month_count2" value="1" />month<br /> </div> <div style="display:none;" id="dhx_repeat_year"> <label><input class="dhx_repeat_radio" type="radio" name="year_type" value="d"/>Every</label><input class="dhx_repeat_text" type="text" name="year_day" value="1" />day<select name="year_month"><option value="0" selected >January<option value="1">February<option value="2">March<option value="3">April<option value="4">May<option value="5">June<option value="6">July<option value="7">August<option value="8">September<option value="9">October<option value="10">November<option value="11">December</select>month<br /> <label><input class="dhx_repeat_radio" type="radio" name="year_type" checked value="w"/>On</label><input class="dhx_repeat_text" type="text" name="year_week2" value="1" /><select name="year_day2"><option value="1" selected >Monday<option value="2">Tuesday<option value="3">Wednesday<option value="4">Thursday<option value="5">Friday<option value="6">Saturday<option value="7">Sunday</select>of<select name="year_month2"><option value="0" selected >January<option value="1">February<option value="2">March<option value="3">April<option value="4">May<option value="5">June<option value="6">July<option value="7">August<option value="8">September<option value="9">October<option value="10">November<option value="11">December</select><br /> </div> </div> <div class="dhx_repeat_divider"></div> <div class="dhx_repeat_right"> <label><input class="dhx_repeat_radio" type="radio" name="end" checked/>No end date</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="end" />After</label><input class="dhx_repeat_text" type="text" name="occurences_count" value="1" />occurrences<br /> <label><input class="dhx_repeat_radio" type="radio" name="end" />End by</label><input class="dhx_repeat_date" type="text" name="date_of_end" value="'+scheduler.config.repeat_date_of_end+'" /><br /> </div> </form> </div> <div style="clear:both"> </div>'; - +for(var i=(e.getDay()||(scheduler.config.start_on_monday?7:0))-a,s=0;s<t.length;s++)if(t[s]>i)return e.setDate(e.getDate()+1*t[s]-i-(r?a:n));this.transpose_day_week(e,t,a+r,null,a)},scheduler.transpose_type=function(e){var t="transpose_"+e;if(!this.date[t]){var a=e.split("_"),r=864e5,n="add_"+e,i=this.transponse_size[a[0]]*a[1];if("day"==a[0]||"week"==a[0]){var s=null;if(a[4]&&(s=a[4].split(","),scheduler.config.start_on_monday)){for(var d=0;d<s.length;d++)s[d]=1*s[d]||7;s.sort()}this.date[t]=function(e,t){ +var a=Math.floor((t.valueOf()-e.valueOf())/(r*i));a>0&&e.setDate(e.getDate()+a*i),s&&scheduler.transpose_day_week(e,s,1,i)},this.date[n]=function(e,t){var a=new Date(e.valueOf());if(s)for(var r=0;t>r;r++)scheduler.transpose_day_week(a,s,0,i);else a.setDate(a.getDate()+t*i);return a}}else("month"==a[0]||"year"==a[0])&&(this.date[t]=function(e,t){var r=Math.ceil((12*t.getFullYear()+1*t.getMonth()-(12*e.getFullYear()+1*e.getMonth()))/i);r>=0&&e.setMonth(e.getMonth()+r*i),a[3]&&scheduler.date.day_week(e,a[2],a[3]); +},this.date[n]=function(e,t){var r=new Date(e.valueOf());return r.setMonth(r.getMonth()+t*i),a[3]&&scheduler.date.day_week(r,a[2],a[3]),r})}},scheduler.repeat_date=function(e,t,a,r,n,i){r=r||this._min_date,n=n||this._max_date;var s=i||-1,d=new Date(e.start_date.valueOf()),l=0;for(!e.rec_pattern&&e.rec_type&&(e.rec_pattern=e.rec_type.split("#")[0]),this.transpose_type(e.rec_pattern),scheduler.date["transpose_"+e.rec_pattern](d,r);d<e.start_date||scheduler._fix_daylight_saving_date(d,r,e,d,new Date(d.valueOf()+1e3*e.event_length)).valueOf()<=r.valueOf()||d.valueOf()+1e3*e.event_length<=r.valueOf();)d=this.date.add(d,1,e.rec_pattern); +for(;n>d&&d<e.end_date&&(0>s||s>l);){var o=scheduler.config.occurrence_timestamp_in_utc?Date.UTC(d.getFullYear(),d.getMonth(),d.getDate(),d.getHours(),d.getMinutes(),d.getSeconds()):d.valueOf(),c=this._get_rec_marker(o,e.id);if(c)a&&("none"!=c.rec_type&&l++,t.push(c));else{var _=new Date(d.valueOf()+1e3*e.event_length),h=this._copy_event(e);if(h.text=e.text,h.start_date=d,h.event_pid=e.id,h.id=e.id+"#"+Math.ceil(o/1e3),h.end_date=_,h.end_date=scheduler._fix_daylight_saving_date(h.start_date,h.end_date,e,d,h.end_date), +h._timed=this.isOneDayEvent(h),!h._timed&&!this._table_view&&!this.config.multi_day)return;t.push(h),a||(this._events[h.id]=h,this._rec_temp.push(h)),l++}d=this.date.add(d,1,e.rec_pattern)}},scheduler._fix_daylight_saving_date=function(e,t,a,r,n){var i=e.getTimezoneOffset()-t.getTimezoneOffset();return i?i>0?new Date(r.valueOf()+1e3*a.event_length-60*i*1e3):new Date(t.valueOf()-60*i*1e3):new Date(n.valueOf())},scheduler.getRecDates=function(e,t){var a="object"==typeof e?e:scheduler.getEvent(e),r=[]; +if(t=t||100,!a.rec_type)return[{start_date:a.start_date,end_date:a.end_date}];if("none"==a.rec_type)return[];scheduler.repeat_date(a,r,!0,a.start_date,a.end_date,t);for(var n=[],i=0;i<r.length;i++)"none"!=r[i].rec_type&&n.push({start_date:r[i].start_date,end_date:r[i].end_date});return n},scheduler.getEvents=function(e,t){var a=[];for(var r in this._events){var n=this._events[r];if(n&&n.start_date<t&&n.end_date>e)if(n.rec_pattern){if("none"==n.rec_pattern)continue;var i=[];this.repeat_date(n,i,!0,e,t); +for(var s=0;s<i.length;s++)!i[s].rec_pattern&&i[s].start_date<t&&i[s].end_date>e&&!this._rec_markers[i[s].id]&&a.push(i[s])}else this._is_virtual_event(n.id)||a.push(n)}return a},scheduler.config.repeat_date="%m.%d.%Y",scheduler.config.lightbox.sections=[{name:"description",height:130,map_to:"text",type:"textarea",focus:!0},{name:"recurring",type:"recurring",map_to:"rec_type",button:"recurring"},{name:"time",height:72,type:"time",map_to:"auto"}],scheduler._copy_dummy=function(e){var t=new Date(this.start_date),a=new Date(this.end_date); +this.start_date=t,this.end_date=a,this.event_length=this.event_pid=this.rec_pattern=this.rec_type=null},scheduler.config.include_end_by=!1,scheduler.config.lightbox_recurring="ask",scheduler.attachEvent("onClearAll",function(){scheduler._rec_markers={},scheduler._rec_markers_pull={},scheduler._rec_temp=[]}),scheduler.__recurring_template='<div class="dhx_form_repeat"> <form> <div class="dhx_repeat_left"> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="day" />Daily</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="week"/>Weekly</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="month" checked />Monthly</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="year" />Yearly</label> </div> <div class="dhx_repeat_divider"></div> <div class="dhx_repeat_center"> <div style="display:none;" id="dhx_repeat_day"> <label><input class="dhx_repeat_radio" type="radio" name="day_type" value="d"/>Every</label><input class="dhx_repeat_text" type="text" name="day_count" value="1" />day<br /> <label><input class="dhx_repeat_radio" type="radio" name="day_type" checked value="w"/>Every workday</label> </div> <div style="display:none;" id="dhx_repeat_week"> Repeat every<input class="dhx_repeat_text" type="text" name="week_count" value="1" />week next days:<br /> <table class="dhx_repeat_days"> <tr> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="1" />Monday</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="4" />Thursday</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="2" />Tuesday</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="5" />Friday</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="3" />Wednesday</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="6" />Saturday</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="0" />Sunday</label><br /><br /> </td> </tr> </table> </div> <div id="dhx_repeat_month"> <label><input class="dhx_repeat_radio" type="radio" name="month_type" value="d"/>Repeat</label><input class="dhx_repeat_text" type="text" name="month_day" value="1" />day every<input class="dhx_repeat_text" type="text" name="month_count" value="1" />month<br /> <label><input class="dhx_repeat_radio" type="radio" name="month_type" checked value="w"/>On</label><input class="dhx_repeat_text" type="text" name="month_week2" value="1" /><select name="month_day2"><option value="1" selected >Monday<option value="2">Tuesday<option value="3">Wednesday<option value="4">Thursday<option value="5">Friday<option value="6">Saturday<option value="0">Sunday</select>every<input class="dhx_repeat_text" type="text" name="month_count2" value="1" />month<br /> </div> <div style="display:none;" id="dhx_repeat_year"> <label><input class="dhx_repeat_radio" type="radio" name="year_type" value="d"/>Every</label><input class="dhx_repeat_text" type="text" name="year_day" value="1" />day<select name="year_month"><option value="0" selected >January<option value="1">February<option value="2">March<option value="3">April<option value="4">May<option value="5">June<option value="6">July<option value="7">August<option value="8">September<option value="9">October<option value="10">November<option value="11">December</select>month<br /> <label><input class="dhx_repeat_radio" type="radio" name="year_type" checked value="w"/>On</label><input class="dhx_repeat_text" type="text" name="year_week2" value="1" /><select name="year_day2"><option value="1" selected >Monday<option value="2">Tuesday<option value="3">Wednesday<option value="4">Thursday<option value="5">Friday<option value="6">Saturday<option value="7">Sunday</select>of<select name="year_month2"><option value="0" selected >January<option value="1">February<option value="2">March<option value="3">April<option value="4">May<option value="5">June<option value="6">July<option value="7">August<option value="8">September<option value="9">October<option value="10">November<option value="11">December</select><br /> </div> </div> <div class="dhx_repeat_divider"></div> <div class="dhx_repeat_right"> <label><input class="dhx_repeat_radio" type="radio" name="end" checked/>No end date</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="end" />After</label><input class="dhx_repeat_text" type="text" name="occurences_count" value="1" />occurrences<br /> <label><input class="dhx_repeat_radio" type="radio" name="end" />End by</label><input class="dhx_repeat_date" type="text" name="date_of_end" value="'+scheduler.config.repeat_date_of_end+'" /><br /> </div> </form> </div> <div style="clear:both"> </div>'; //# sourceMappingURL=../sources/ext/dhtmlxscheduler_recurring.js.map
\ No newline at end of file diff --git a/codebase/ext/dhtmlxscheduler_serialize.js b/codebase/ext/dhtmlxscheduler_serialize.js index b12aa96..37b1385 100644 --- a/codebase/ext/dhtmlxscheduler_serialize.js +++ b/codebase/ext/dhtmlxscheduler_serialize.js @@ -1,15 +1,13 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. (c) Dinamenta, UAB. */ scheduler._get_serializable_data=function(){var e={};for(var t in this._events){var a=this._events[t];-1==a.id.toString().indexOf("#")&&(e[a.id]=a)}return e},scheduler.data_attributes=function(){var e=[],t=scheduler.templates.xml_format,a=this._get_serializable_data();for(var r in a){var n=a[r];for(var i in n)"_"!=i.substr(0,1)&&e.push([i,"start_date"==i||"end_date"==i?t:null]);break}return e},scheduler.toXML=function(e){var t=[],a=this.data_attributes(),r=this._get_serializable_data();for(var n in r){ -var i=r[n];t.push("<event>");for(var l=0;l<a.length;l++)t.push("<"+a[l][0]+"><![CDATA["+(a[l][1]?a[l][1](i[a[l][0]]):i[a[l][0]])+"]]></"+a[l][0]+">");t.push("</event>")}return(e||"")+"<data>"+t.join("\n")+"</data>"},scheduler._serialize_json_value=function(e){return null===e||"boolean"==typeof e?e=""+e:(e||0===e||(e=""),e='"'+e.toString().replace(/\n/g,"").replace(/\\/g,"\\\\").replace(/\"/g,'\\"')+'"'),e},scheduler.toJSON=function(){var e=[],t="",a=this.data_attributes(),r=this._get_serializable_data(); - -for(var n in r){for(var i=r[n],l=[],d=0;d<a.length;d++)t=a[d][1]?a[d][1](i[a[d][0]]):i[a[d][0]],l.push(' "'+a[d][0]+'": '+this._serialize_json_value(t));e.push("{"+l.join(",")+"}")}return"["+e.join(",\n")+"]"},scheduler.toICal=function(e){var t="BEGIN:VCALENDAR\nVERSION:2.0\nPRODID:-//dhtmlXScheduler//NONSGML v2.2//EN\nDESCRIPTION:",a="END:VCALENDAR",r=scheduler.date.date_to_str("%Y%m%dT%H%i%s"),n=scheduler.date.date_to_str("%Y%m%d"),i=[],l=this._get_serializable_data();for(var d in l){var s=l[d]; - -i.push("BEGIN:VEVENT"),i.push(s._timed&&(s.start_date.getHours()||s.start_date.getMinutes())?"DTSTART:"+r(s.start_date):"DTSTART:"+n(s.start_date)),i.push(s._timed&&(s.end_date.getHours()||s.end_date.getMinutes())?"DTEND:"+r(s.end_date):"DTEND:"+n(s.end_date)),i.push("SUMMARY:"+s.text),i.push("END:VEVENT")}return t+(e||"")+"\n"+i.join("\n")+"\n"+a}; +var i=r[n];t.push("<event>");for(var s=0;s<a.length;s++)t.push("<"+a[s][0]+"><![CDATA["+(a[s][1]?a[s][1](i[a[s][0]]):i[a[s][0]])+"]]></"+a[s][0]+">");t.push("</event>")}return(e||"")+"<data>"+t.join("\n")+"</data>"},scheduler._serialize_json_value=function(e){return null===e||"boolean"==typeof e?e=""+e:(e||0===e||(e=""),e='"'+e.toString().replace(/\n/g,"").replace(/\\/g,"\\\\").replace(/\"/g,'\\"')+'"'),e},scheduler.toJSON=function(){var e=[],t="",a=this.data_attributes(),r=this._get_serializable_data(); +for(var n in r){for(var i=r[n],s=[],d=0;d<a.length;d++)t=a[d][1]?a[d][1](i[a[d][0]]):i[a[d][0]],s.push(' "'+a[d][0]+'": '+this._serialize_json_value(t));e.push("{"+s.join(",")+"}")}return"["+e.join(",\n")+"]"},scheduler.toICal=function(e){var t="BEGIN:VCALENDAR\nVERSION:2.0\nPRODID:-//dhtmlXScheduler//NONSGML v2.2//EN\nDESCRIPTION:",a="END:VCALENDAR",r=scheduler.date.date_to_str("%Y%m%dT%H%i%s"),n=scheduler.date.date_to_str("%Y%m%d"),i=[],s=this._get_serializable_data();for(var d in s){var l=s[d]; +i.push("BEGIN:VEVENT"),l._timed&&(l.start_date.getHours()||l.start_date.getMinutes())?i.push("DTSTART:"+r(l.start_date)):i.push("DTSTART:"+n(l.start_date)),l._timed&&(l.end_date.getHours()||l.end_date.getMinutes())?i.push("DTEND:"+r(l.end_date)):i.push("DTEND:"+n(l.end_date)),i.push("SUMMARY:"+l.text),i.push("END:VEVENT")}return t+(e||"")+"\n"+i.join("\n")+"\n"+a}; //# sourceMappingURL=../sources/ext/dhtmlxscheduler_serialize.js.map
\ No newline at end of file diff --git a/codebase/ext/dhtmlxscheduler_tooltip.js b/codebase/ext/dhtmlxscheduler_tooltip.js index 45adc3a..3e77344 100644 --- a/codebase/ext/dhtmlxscheduler_tooltip.js +++ b/codebase/ext/dhtmlxscheduler_tooltip.js @@ -1,21 +1,16 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. (c) Dinamenta, UAB. */ -window.dhtmlXTooltip=scheduler.dhtmlXTooltip=window.dhtmlxTooltip={},dhtmlXTooltip.config={className:"dhtmlXTooltip tooltip",timeout_to_display:50,timeout_to_hide:50,delta_x:15,delta_y:-20},dhtmlXTooltip.tooltip=document.createElement("div"),dhtmlXTooltip.tooltip.className=dhtmlXTooltip.config.className,dhtmlXTooltip.show=function(e,t){if(!scheduler.config.touch||scheduler.config.touch_tooltip){var a=dhtmlXTooltip,r=this.tooltip,n=r.style;a.tooltip.className=a.config.className;var i=this.position(e),l=e.target||e.srcElement; - -if(!this.isTooltip(l)){var d=i.x+(a.config.delta_x||0),s=i.y-(a.config.delta_y||0);n.visibility="hidden",n.removeAttribute?(n.removeAttribute("right"),n.removeAttribute("bottom")):(n.removeProperty("right"),n.removeProperty("bottom")),n.left="0",n.top="0",this.tooltip.innerHTML=t,document.body.appendChild(this.tooltip);var o=this.tooltip.offsetWidth,_=this.tooltip.offsetHeight;document.body.offsetWidth-d-o<0?(n.removeAttribute?n.removeAttribute("left"):n.removeProperty("left"),n.right=document.body.offsetWidth-d+2*(a.config.delta_x||0)+"px"):0>d?n.left=i.x+Math.abs(a.config.delta_x||0)+"px":n.left=d+"px", -document.body.offsetHeight-s-_<0?(n.removeAttribute?n.removeAttribute("top"):n.removeProperty("top"),n.bottom=document.body.offsetHeight-s-2*(a.config.delta_y||0)+"px"):0>s?n.top=i.y+Math.abs(a.config.delta_y||0)+"px":n.top=s+"px",n.visibility="visible",this.tooltip.onmouseleave=function(e){e=e||window.event;for(var t=scheduler.dhtmlXTooltip,a=e.relatedTarget;a!=scheduler._obj&&a;)a=a.parentNode;a!=scheduler._obj&&t.delay(t.hide,t,[],t.config.timeout_to_hide)},scheduler.callEvent("onTooltipDisplayed",[this.tooltip,this.tooltip.event_id]); - -}}},dhtmlXTooltip._clearTimeout=function(){this.tooltip._timeout_id&&window.clearTimeout(this.tooltip._timeout_id)},dhtmlXTooltip.hide=function(){if(this.tooltip.parentNode){var e=this.tooltip.event_id;this.tooltip.event_id=null,this.tooltip.onmouseleave=null,this.tooltip.parentNode.removeChild(this.tooltip),scheduler.callEvent("onAfterTooltip",[e])}this._clearTimeout()},dhtmlXTooltip.delay=function(e,t,a,r){this._clearTimeout(),this.tooltip._timeout_id=setTimeout(function(){var r=e.apply(t,a);return e=t=a=null, -r},r||this.config.timeout_to_display)},dhtmlXTooltip.isTooltip=function(e){var t=!1;for("dhtmlXTooltip"==e.className.split(" ")[0];e&&!t;)t=e.className==this.tooltip.className,e=e.parentNode;return t},dhtmlXTooltip.position=function(e){if(e=e||window.event,e.pageX||e.pageY)return{x:e.pageX,y:e.pageY};var t=window._isIE&&"BackCompat"!=document.compatMode?document.documentElement:document.body;return{x:e.clientX+t.scrollLeft-t.clientLeft,y:e.clientY+t.scrollTop-t.clientTop}},scheduler.attachEvent("onMouseMove",function(e,t){ -var a=window.event||t,r=a.target||a.srcElement,n=dhtmlXTooltip,i=n.isTooltip(r),l=n.isTooltipTarget&&n.isTooltipTarget(r);if(e||i||l){var d;if(e||n.tooltip.event_id){var s=scheduler.getEvent(e)||scheduler.getEvent(n.tooltip.event_id);if(!s)return;if(n.tooltip.event_id=s.id,d=scheduler.templates.tooltip_text(s.start_date,s.end_date,s),!d)return n.hide()}l&&(d="");var o;if(_isIE){o={pageX:void 0,pageY:void 0,clientX:void 0,clientY:void 0,target:void 0,srcElement:void 0};for(var _ in o)o[_]=a[_]}if(!scheduler.callEvent("onBeforeTooltip",[e])||!d)return; - -n.delay(n.show,n,[o||a,d])}else n.delay(n.hide,n,[],n.config.timeout_to_hide)}),scheduler.attachEvent("onBeforeDrag",function(){return dhtmlXTooltip.hide(),!0}),scheduler.attachEvent("onEventDeleted",function(){return dhtmlXTooltip.hide(),!0}),scheduler.templates.tooltip_date_format=scheduler.date.date_to_str("%Y-%m-%d %H:%i"),scheduler.templates.tooltip_text=function(e,t,a){return"<b>Event:</b> "+a.text+"<br/><b>Start date:</b> "+scheduler.templates.tooltip_date_format(e)+"<br/><b>End date:</b> "+scheduler.templates.tooltip_date_format(t); - -}; +window.dhtmlXTooltip=scheduler.dhtmlXTooltip=window.dhtmlxTooltip={},dhtmlXTooltip.config={className:"dhtmlXTooltip tooltip",timeout_to_display:50,timeout_to_hide:50,delta_x:15,delta_y:-20},dhtmlXTooltip.tooltip=document.createElement("div"),dhtmlXTooltip.tooltip.className=dhtmlXTooltip.config.className,scheduler._waiAria.tooltipAttr(dhtmlXTooltip.tooltip),dhtmlXTooltip.show=function(e,t){if(!scheduler.config.touch||scheduler.config.touch_tooltip){var a=dhtmlXTooltip,r=this.tooltip,i=r.style;a.tooltip.className=a.config.className; +var n=this.position(e),s=e.target||e.srcElement;if(!this.isTooltip(s)){var d=n.x+(a.config.delta_x||0),l=n.y-(a.config.delta_y||0);i.visibility="hidden",i.removeAttribute?(i.removeAttribute("right"),i.removeAttribute("bottom")):(i.removeProperty("right"),i.removeProperty("bottom")),i.left="0",i.top="0",this.tooltip.innerHTML=t,document.body.appendChild(this.tooltip);var o=this.tooltip.offsetWidth,_=this.tooltip.offsetHeight;document.documentElement.clientWidth-d-o<0?(i.removeAttribute?i.removeAttribute("left"):i.removeProperty("left"), +i.right=document.documentElement.clientWidth-d+2*(a.config.delta_x||0)+"px"):0>d?i.left=n.x+Math.abs(a.config.delta_x||0)+"px":i.left=d+"px",document.documentElement.clientHeight-l-_<0?(i.removeAttribute?i.removeAttribute("top"):i.removeProperty("top"),i.bottom=document.documentElement.clientHeight-l-2*(a.config.delta_y||0)+"px"):0>l?i.top=n.y+Math.abs(a.config.delta_y||0)+"px":i.top=l+"px",scheduler._waiAria.tooltipVisibleAttr(this.tooltip),i.visibility="visible",this.tooltip.onmouseleave=function(e){ +e=e||window.event;for(var t=scheduler.dhtmlXTooltip,a=e.relatedTarget;a!=scheduler._obj&&a;)a=a.parentNode;a!=scheduler._obj&&t.delay(t.hide,t,[],t.config.timeout_to_hide)},scheduler.callEvent("onTooltipDisplayed",[this.tooltip,this.tooltip.event_id])}}},dhtmlXTooltip._clearTimeout=function(){this.tooltip._timeout_id&&window.clearTimeout(this.tooltip._timeout_id)},dhtmlXTooltip.hide=function(){if(this.tooltip.parentNode){scheduler._waiAria.tooltipHiddenAttr(this.tooltip);var e=this.tooltip.event_id; +this.tooltip.event_id=null,this.tooltip.onmouseleave=null,this.tooltip.parentNode.removeChild(this.tooltip),scheduler.callEvent("onAfterTooltip",[e])}this._clearTimeout()},dhtmlXTooltip.delay=function(e,t,a,r){this._clearTimeout(),this.tooltip._timeout_id=setTimeout(function(){var r=e.apply(t,a);return e=t=a=null,r},r||this.config.timeout_to_display)},dhtmlXTooltip.isTooltip=function(e){for(var t=!1;e&&!t;)t=e.className==this.tooltip.className,e=e.parentNode;return t},dhtmlXTooltip.position=function(e){ +return e=e||window.event,{x:e.clientX,y:e.clientY}},scheduler.attachEvent("onMouseMove",function(e,t){var a=window.event||t,r=a.target||a.srcElement,i=dhtmlXTooltip,n=i.isTooltip(r),s=i.isTooltipTarget&&i.isTooltipTarget(r);if(e||n||s){var d;if(e||i.tooltip.event_id){var l=scheduler.getEvent(e)||scheduler.getEvent(i.tooltip.event_id);if(!l)return;if(i.tooltip.event_id=l.id,d=scheduler.templates.tooltip_text(l.start_date,l.end_date,l),!d)return i.hide()}s&&(d="");var o;if(_isIE){o={pageX:void 0,pageY:void 0, +clientX:void 0,clientY:void 0,target:void 0,srcElement:void 0};for(var _ in o)o[_]=a[_]}if(!scheduler.callEvent("onBeforeTooltip",[e])||!d)return;i.delay(i.show,i,[o||a,d])}else i.delay(i.hide,i,[],i.config.timeout_to_hide)}),scheduler.attachEvent("onBeforeDrag",function(){return dhtmlXTooltip.hide(),!0}),scheduler.attachEvent("onEventDeleted",function(){return dhtmlXTooltip.hide(),!0}); //# sourceMappingURL=../sources/ext/dhtmlxscheduler_tooltip.js.map
\ No newline at end of file diff --git a/codebase/ext/dhtmlxscheduler_url.js b/codebase/ext/dhtmlxscheduler_url.js index 844ef58..c5e298b 100644 --- a/codebase/ext/dhtmlxscheduler_url.js +++ b/codebase/ext/dhtmlxscheduler_url.js @@ -1,12 +1,12 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. (c) Dinamenta, UAB. */ -scheduler._get_url_nav=function(){for(var e={},t=(document.location.hash||"").replace("#","").split(","),a=0;a<t.length;a++){var r=t[a].split("=");2==r.length&&(e[r[0]]=r[1])}return e},scheduler.attachEvent("onTemplatesReady",function(){function e(e){n=e,scheduler.getEvent(e)&&scheduler.showEvent(e)}var t=!0,a=scheduler.date.str_to_date("%Y-%m-%d"),r=scheduler.date.date_to_str("%Y-%m-%d"),n=scheduler._get_url_nav().event||null;scheduler.attachEvent("onAfterEventDisplay",function(e){return n=null, -!0}),scheduler.attachEvent("onBeforeViewChange",function(i,l,d,s){if(t){t=!1;var o=scheduler._get_url_nav();if(o.event)try{if(scheduler.getEvent(o.event))return e(o.event),!1;var _=scheduler.attachEvent("onXLE",function(){e(o.event),scheduler.detachEvent(_)})}catch(c){}if(o.date||o.mode){try{this.setCurrentView(o.date?a(o.date):null,o.mode||null)}catch(c){this.setCurrentView(o.date?a(o.date):null,d)}return!1}}var h=["date="+r(s||l),"mode="+(d||i)];n&&h.push("event="+n);var u="#"+h.join(",");return document.location.hash=u, +scheduler._get_url_nav=function(){for(var e={},t=(document.location.hash||"").replace("#","").split(","),r=0;r<t.length;r++){var a=t[r].split("=");2==a.length&&(e[a[0]]=a[1])}return e},scheduler.attachEvent("onTemplatesReady",function(){function e(e){i=e,scheduler.getEvent(e)&&scheduler.showEvent(e)}var t=!0,r=scheduler.date.str_to_date("%Y-%m-%d"),a=scheduler.date.date_to_str("%Y-%m-%d"),i=scheduler._get_url_nav().event||null;scheduler.attachEvent("onAfterEventDisplay",function(e){return i=null, +!0}),scheduler.attachEvent("onBeforeViewChange",function(n,s,d,l){if(t){t=!1;var o=scheduler._get_url_nav();if(o.event)try{if(scheduler.getEvent(o.event))return e(o.event),!1;var _=scheduler.attachEvent("onXLE",function(){e(o.event),scheduler.detachEvent(_)})}catch(c){}if(o.date||o.mode){try{this.setCurrentView(o.date?r(o.date):null,o.mode||null)}catch(c){this.setCurrentView(o.date?r(o.date):null,d)}return!1}}var h=["date="+a(l||s),"mode="+(d||n)];i&&h.push("event="+i);var u="#"+h.join(",");return document.location.hash=u, !0})}); //# sourceMappingURL=../sources/ext/dhtmlxscheduler_url.js.map
\ No newline at end of file diff --git a/codebase/ext/dhtmlxscheduler_wp.js b/codebase/ext/dhtmlxscheduler_wp.js index ed109a2..58072e8 100644 --- a/codebase/ext/dhtmlxscheduler_wp.js +++ b/codebase/ext/dhtmlxscheduler_wp.js @@ -1,10 +1,10 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. (c) Dinamenta, UAB. */ -scheduler.attachEvent("onLightBox",function(){if(this._cover)try{this._cover.style.height=this.expanded?"100%":(document.body.parentNode||document.body).scrollHeight+"px"}catch(e){}}),scheduler.form_blocks.select.set_value=function(e,t,a){("undefined"==typeof t||""===t)&&(t=(e.firstChild.options[0]||{}).value),e.firstChild.value=t||""}; +scheduler.attachEvent("onLightBox",function(){if(this._cover)try{this._cover.style.height=this.expanded?"100%":(document.body.parentNode||document.body).scrollHeight+"px"}catch(e){}}),scheduler.form_blocks.select.set_value=function(e,t,r){("undefined"==typeof t||""===t)&&(t=(e.firstChild.options[0]||{}).value),e.firstChild.value=t||""}; //# sourceMappingURL=../sources/ext/dhtmlxscheduler_wp.js.map
\ No newline at end of file diff --git a/codebase/ext/dhtmlxscheduler_year_view.js b/codebase/ext/dhtmlxscheduler_year_view.js index e5b1b99..7d711d6 100644 --- a/codebase/ext/dhtmlxscheduler_year_view.js +++ b/codebase/ext/dhtmlxscheduler_year_view.js @@ -1,31 +1,27 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. (c) Dinamenta, UAB. */ -scheduler.config.year_x=4,scheduler.config.year_y=3,scheduler.xy.year_top=0,scheduler.templates.year_date=function(e){return scheduler.date.date_to_str(scheduler.locale.labels.year_tab+" %Y")(e)},scheduler.templates.year_month=scheduler.date.date_to_str("%F"),scheduler.templates.year_scale_date=scheduler.date.date_to_str("%D"),scheduler.templates.year_tooltip=function(e,t,a){return a.text},function(){var e=function(){return"year"==scheduler._mode};scheduler.dblclick_dhx_month_head=function(t){if(e()){ -var a=t.target||t.srcElement;if(-1!=a.parentNode.className.indexOf("dhx_before")||-1!=a.parentNode.className.indexOf("dhx_after"))return!1;var r=this.templates.xml_date(a.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.getAttribute("date"));r.setDate(parseInt(a.innerHTML,10));var n=this.date.add(r,1,"day");!this.config.readonly&&this.config.dblclick_create&&this.addEventNow(r.valueOf(),n.valueOf(),t)}};var t=scheduler.changeEventId;scheduler.changeEventId=function(){t.apply(this,arguments), -e()&&this.year_view(!0)};var a=scheduler.render_data,r=scheduler.date.date_to_str("%Y/%m/%d"),n=scheduler.date.str_to_date("%Y/%m/%d");scheduler.render_data=function(t){if(!e())return a.apply(this,arguments);for(var r=0;r<t.length;r++)this._year_render_event(t[r])};var d=scheduler.clear_view;scheduler.clear_view=function(){if(!e())return d.apply(this,arguments);var t=scheduler._year_marked_cells,a=null;for(var r in t)t.hasOwnProperty(r)&&(a=t[r],a.className="dhx_month_head",a.setAttribute("date","")); - -scheduler._year_marked_cells={}},scheduler._hideToolTip=function(){this._tooltip&&(this._tooltip.style.display="none",this._tooltip.date=new Date(9999,1,1))},scheduler._showToolTip=function(e,t,a,r){if(this._tooltip){if(this._tooltip.date.valueOf()==e.valueOf())return;this._tooltip.innerHTML=""}else{var n=this._tooltip=document.createElement("DIV");n.className="dhx_year_tooltip",document.body.appendChild(n),n.onclick=scheduler._click.dhx_cal_data}for(var d=this.getEvents(e,this.date.add(e,1,"day")),l="",i=0;i<d.length;i++){ -var s=d[i];if(this.filter_event(s.id,s)){var o=s.color?"background:"+s.color+";":"",_=s.textColor?"color:"+s.textColor+";":"";l+="<div class='dhx_tooltip_line' style='"+o+_+"' event_id='"+d[i].id+"'>",l+="<div class='dhx_tooltip_date' style='"+o+_+"'>"+(d[i]._timed?this.templates.event_date(d[i].start_date):"")+"</div>",l+="<div class='dhx_event_icon icon_details'> </div>",l+=this.templates.year_tooltip(d[i].start_date,d[i].end_date,d[i])+"</div>"}}this._tooltip.style.display="",this._tooltip.style.top="0px", -document.body.offsetWidth-t.left-this._tooltip.offsetWidth<0?this._tooltip.style.left=t.left-this._tooltip.offsetWidth+"px":this._tooltip.style.left=t.left+r.offsetWidth+"px",this._tooltip.date=e,this._tooltip.innerHTML=l,document.body.offsetHeight-t.top-this._tooltip.offsetHeight<0?this._tooltip.style.top=t.top-this._tooltip.offsetHeight+r.offsetHeight+"px":this._tooltip.style.top=t.top+"px"},scheduler._year_view_tooltip_handler=function(t){if(e()){var t=t||event,a=t.target||t.srcElement;"a"==a.tagName.toLowerCase()&&(a=a.parentNode), --1!=(a.className||"").indexOf("dhx_year_event")?scheduler._showToolTip(n(a.getAttribute("date")),getOffset(a),t,a):scheduler._hideToolTip()}},scheduler._init_year_tooltip=function(){scheduler._detachDomEvent(scheduler._els.dhx_cal_data[0],"mouseover",scheduler._year_view_tooltip_handler),dhtmlxEvent(scheduler._els.dhx_cal_data[0],"mouseover",scheduler._year_view_tooltip_handler)},scheduler.attachEvent("onSchedulerResize",function(){return e()?(this.year_view(!0),!1):!0}),scheduler._get_year_cell=function(e){ -var t=e.getMonth()+12*(e.getFullYear()-this._min_date.getFullYear())-this.week_starts._month,a=this._els.dhx_cal_data[0].childNodes[t],e=this.week_starts[t]+e.getDate()-1;return a.childNodes[2].firstChild.rows[Math.floor(e/7)].cells[e%7].firstChild},scheduler._year_marked_cells={},scheduler._mark_year_date=function(e,t){var a=r(e),n=this._get_year_cell(e),d=this.templates.event_class(t.start_date,t.end_date,t);scheduler._year_marked_cells[a]||(n.className="dhx_month_head dhx_year_event",n.setAttribute("date",a), -scheduler._year_marked_cells[a]=n),n.className+=d?" "+d:""},scheduler._unmark_year_date=function(e){this._get_year_cell(e).className="dhx_month_head"},scheduler._year_render_event=function(e){var t=e.start_date;for(t=t.valueOf()<this._min_date.valueOf()?this._min_date:this.date.date_part(new Date(t));t<e.end_date;)if(this._mark_year_date(t,e),t=this.date.add(t,1,"day"),t.valueOf()>=this._max_date.valueOf())return},scheduler.year_view=function(e){var t;if(e&&(t=scheduler.xy.scale_height,scheduler.xy.scale_height=-1), -scheduler._els.dhx_cal_header[0].style.display=e?"none":"",scheduler.set_sizes(),e&&(scheduler.xy.scale_height=t),scheduler._table_view=e,!this._load_mode||!this._load())if(e){if(scheduler._init_year_tooltip(),scheduler._reset_year_scale(),scheduler._load_mode&&scheduler._load())return void(scheduler._render_wait=!0);scheduler.render_view_data()}else scheduler._hideToolTip()},scheduler._reset_year_scale=function(){this._cols=[],this._colsS={};var e=[],t=this._els.dhx_cal_data[0],a=this.config;t.scrollTop=0, -t.innerHTML="";var r=Math.floor(parseInt(t.style.width)/a.year_x),n=Math.floor((parseInt(t.style.height)-scheduler.xy.year_top)/a.year_y);190>n&&(n=190,r=Math.floor((parseInt(t.style.width)-scheduler.xy.scroll_width)/a.year_x));for(var d=r-11,l=0,i=document.createElement("div"),s=this.date.week_start(scheduler._currentDate()),o=0;7>o;o++)this._cols[o]=Math.floor(d/(7-o)),this._render_x_header(o,l,s,i),s=this.date.add(s,1,"day"),d-=this._cols[o],l+=this._cols[o];i.lastChild.className+=" dhx_scale_bar_last"; - -for(var _=this.date[this._mode+"_start"](this.date.copy(this._date)),c=_,h=null,o=0;o<a.year_y;o++)for(var u=0;u<a.year_x;u++){h=document.createElement("DIV"),h.style.cssText="position:absolute;",h.setAttribute("date",this.templates.xml_format(_)),h.innerHTML="<div class='dhx_year_month'></div><div class='dhx_year_week'>"+i.innerHTML+"</div><div class='dhx_year_body'></div>",h.childNodes[0].innerHTML=this.templates.year_month(_);for(var p=this.date.week_start(_),v=this._reset_month_scale(h.childNodes[2],_,p),m=h.childNodes[2].firstChild.rows,g=m.length;6>g;g++){ -m[0].parentNode.appendChild(m[0].cloneNode(!0));for(var f=0,y=m[g].childNodes.length;y>f;f++)m[g].childNodes[f].className="dhx_after",m[g].childNodes[f].firstChild.innerHTML=scheduler.templates.month_day(v),v=scheduler.date.add(v,1,"day")}t.appendChild(h),h.childNodes[1].style.height=h.childNodes[1].childNodes[0].offsetHeight+"px";var b=Math.round((n-190)/2);h.style.marginTop=b+"px",this.set_xy(h,r-10,n-b-10,r*u+5,n*o+5+scheduler.xy.year_top),e[o*a.year_x+u]=(_.getDay()-(this.config.start_on_monday?1:0)+7)%7, -_=this.date.add(_,1,"month")}this._els.dhx_cal_date[0].innerHTML=this.templates[this._mode+"_date"](c,_,this._mode),this.week_starts=e,e._month=c.getMonth(),this._min_date=c,this._max_date=_};var l=scheduler.getActionData;scheduler.getActionData=function(t){if(!e())return l.apply(scheduler,arguments);var a=t?t.target:event.srcElement,r=scheduler._get_year_month_date(a),n=scheduler._get_year_month_cell(a),d=scheduler._get_year_day_indexes(n);return d&&r?(r=scheduler.date.add(r,d.week,"week"),r=scheduler.date.add(r,d.day,"day")):r=null, -{date:r,section:null}},scheduler._get_year_day_indexes=function(e){var t=scheduler._get_year_el_node(e,this._locate_year_month_table);if(!t)return null;for(var a=0,r=0,a=0,n=t.rows.length;n>a;a++){for(var d=t.rows[a].getElementsByTagName("td"),r=0,l=d.length;l>r&&d[r]!=e;r++);if(l>r)break}return n>a?{day:r,week:a}:null},scheduler._get_year_month_date=function(e){var e=scheduler._get_year_el_node(e,scheduler._locate_year_month_root);if(!e)return null;var t=e.getAttribute("date");return t?scheduler.date.week_start(scheduler.templates.xml_date(t)):null; - -},scheduler._locate_year_month_day=function(e){return e.className&&-1!=e.className.indexOf("dhx_year_event")&&e.hasAttribute&&e.hasAttribute("date")};var i=scheduler._locate_event;scheduler._locate_event=function(e){var t=i.apply(scheduler,arguments);if(!t){var a=scheduler._get_year_el_node(e,scheduler._locate_year_month_day);if(!a||!a.hasAttribute("date"))return null;var r=scheduler.templates.xml_date(a.getAttribute("date")),n=scheduler.getEvents(r,scheduler.date.add(r,1,"day"));if(!n.length)return null; - -t=n[0].id}return t},scheduler._locate_year_month_cell=function(e){return"td"==e.nodeName.toLowerCase()},scheduler._locate_year_month_table=function(e){return"table"==e.nodeName.toLowerCase()},scheduler._locate_year_month_root=function(e){return e.hasAttribute&&e.hasAttribute("date")},scheduler._get_year_month_cell=function(e){return this._get_year_el_node(e,this._locate_year_month_cell)},scheduler._get_year_month_table=function(e){return this._get_year_el_node(e,this._locate_year_month_table)},scheduler._get_year_month_root=function(e){ -return this._get_year_el_node(this._get_year_month_table(e),this._locate_year_month_root)},scheduler._get_year_el_node=function(e,t){for(;e&&!t(e);)e=e.parentNode;return e}}(); +scheduler.config.year_x=4,scheduler.config.year_y=3,scheduler.xy.year_top=0,scheduler.templates.year_date=function(e){return scheduler.date.date_to_str(scheduler.locale.labels.year_tab+" %Y")(e)},scheduler.templates.year_month=scheduler.date.date_to_str("%F"),scheduler.templates.year_scale_date=scheduler.date.date_to_str("%D"),scheduler.templates.year_tooltip=function(e,t,r){return r.text},function(){var e=function(){return"year"==scheduler._mode};scheduler.dblclick_dhx_month_head=function(t){if(e()){ +var r=t.target||t.srcElement,a=scheduler._getClassName(r.parentNode);if(-1!=a.indexOf("dhx_before")||-1!=a.indexOf("dhx_after"))return!1;var i=this.templates.xml_date(r.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.getAttribute("date"));i.setDate(parseInt(r.innerHTML,10));var n=this.date.add(i,1,"day");!this.config.readonly&&this.config.dblclick_create&&this.addEventNow(i.valueOf(),n.valueOf(),t)}};var t=scheduler.changeEventId;scheduler.changeEventId=function(){t.apply(this,arguments), +e()&&this.year_view(!0)};var r=scheduler.render_data,a=scheduler.date.date_to_str("%Y/%m/%d"),i=scheduler.date.str_to_date("%Y/%m/%d");scheduler.render_data=function(t){if(!e())return r.apply(this,arguments);for(var a=0;a<t.length;a++)this._year_render_event(t[a])};var n=scheduler.clear_view;scheduler.clear_view=function(){if(!e())return n.apply(this,arguments);var t=scheduler._year_marked_cells,r=null;for(var a in t)t.hasOwnProperty(a)&&(r=t[a],r.className="dhx_month_head",r.setAttribute("date","")); +scheduler._year_marked_cells={}},scheduler._hideToolTip=function(){this._tooltip&&(this._tooltip.style.display="none",this._tooltip.date=new Date(9999,1,1))},scheduler._showToolTip=function(e,t,r,a){if(this._tooltip){if(this._tooltip.date.valueOf()==e.valueOf())return;this._tooltip.innerHTML=""}else{var i=this._tooltip=document.createElement("DIV");i.className="dhx_year_tooltip",document.body.appendChild(i),i.onclick=scheduler._click.dhx_cal_data}for(var n=this.getEvents(e,this.date.add(e,1,"day")),s="",d=0;d<n.length;d++){ +var l=n[d];if(this.filter_event(l.id,l)){var o=l.color?"background:"+l.color+";":"",_=l.textColor?"color:"+l.textColor+";":"";s+="<div class='dhx_tooltip_line' style='"+o+_+"' event_id='"+n[d].id+"'>",s+="<div class='dhx_tooltip_date' style='"+o+_+"'>"+(n[d]._timed?this.templates.event_date(n[d].start_date):"")+"</div>",s+="<div class='dhx_event_icon icon_details'> </div>",s+=this.templates.year_tooltip(n[d].start_date,n[d].end_date,n[d])+"</div>"}}this._tooltip.style.display="",this._tooltip.style.top="0px", +document.body.offsetWidth-t.left-this._tooltip.offsetWidth<0?this._tooltip.style.left=t.left-this._tooltip.offsetWidth+"px":this._tooltip.style.left=t.left+a.offsetWidth+"px",this._tooltip.date=e,this._tooltip.innerHTML=s,document.body.offsetHeight-t.top-this._tooltip.offsetHeight<0?this._tooltip.style.top=t.top-this._tooltip.offsetHeight+a.offsetHeight+"px":this._tooltip.style.top=t.top+"px"},scheduler._year_view_tooltip_handler=function(t){if(e()){var t=t||event,r=t.target||t.srcElement;"a"==r.tagName.toLowerCase()&&(r=r.parentNode), +-1!=scheduler._getClassName(r).indexOf("dhx_year_event")?scheduler._showToolTip(i(r.getAttribute("date")),getOffset(r),t,r):scheduler._hideToolTip()}},scheduler._init_year_tooltip=function(){scheduler._detachDomEvent(scheduler._els.dhx_cal_data[0],"mouseover",scheduler._year_view_tooltip_handler),dhtmlxEvent(scheduler._els.dhx_cal_data[0],"mouseover",scheduler._year_view_tooltip_handler)},scheduler.attachEvent("onSchedulerResize",function(){return e()?(this.year_view(!0),!1):!0}),scheduler._get_year_cell=function(e){ +var t=e.getMonth()+12*(e.getFullYear()-this._min_date.getFullYear())-this.week_starts._month,r=this._els.dhx_cal_data[0].childNodes[t],e=this.week_starts[t]+e.getDate()-1;return r.querySelector(".dhx_year_body").firstChild.rows[Math.floor(e/7)].cells[e%7].firstChild},scheduler._year_marked_cells={},scheduler._mark_year_date=function(e,t){var r=a(e),i=this._get_year_cell(e),n=this.templates.event_class(t.start_date,t.end_date,t);scheduler._year_marked_cells[r]||(i.className="dhx_month_head dhx_year_event", +i.setAttribute("date",r),scheduler._year_marked_cells[r]=i),i.className+=n?" "+n:""},scheduler._unmark_year_date=function(e){this._get_year_cell(e).className="dhx_month_head"},scheduler._year_render_event=function(e){var t=e.start_date;for(t=t.valueOf()<this._min_date.valueOf()?this._min_date:this.date.date_part(new Date(t));t<e.end_date;)if(this._mark_year_date(t,e),t=this.date.add(t,1,"day"),t.valueOf()>=this._max_date.valueOf())return},scheduler.year_view=function(e){var t;if(e&&(t=scheduler.xy.scale_height, +scheduler.xy.scale_height=-1),scheduler._els.dhx_cal_header[0].style.display=e?"none":"",scheduler.set_sizes(),e&&(scheduler.xy.scale_height=t),scheduler._table_view=e,!this._load_mode||!this._load())if(e){if(scheduler._init_year_tooltip(),scheduler._reset_year_scale(),scheduler._load_mode&&scheduler._load())return void(scheduler._render_wait=!0);scheduler.render_view_data()}else scheduler._hideToolTip()},scheduler._reset_year_scale=function(){this._cols=[],this._colsS={};var e=[],t=this._els.dhx_cal_data[0],r=this.config; +t.scrollTop=0,t.innerHTML="";var a=Math.floor(parseInt(t.style.width)/r.year_x),i=Math.floor((parseInt(t.style.height)-scheduler.xy.year_top)/r.year_y);190>i&&(i=190,a=Math.floor((parseInt(t.style.width)-scheduler.xy.scroll_width)/r.year_x));var n=a-11,s=0,d=document.createElement("div"),l=this.date.week_start(scheduler._currentDate());this._process_ignores(l,7,"day",1);for(var o=7-(this._ignores_detected||0),_=0,c=0;7>c;c++)this._ignores&&this._ignores[c]||(this._cols[c]=Math.floor(n/(o-_)),this._render_x_header(c,s,l,d), +n-=this._cols[c],s+=this._cols[c],_++),l=this.date.add(l,1,"day");d.lastChild.className+=" dhx_scale_bar_last";for(var c=0;c<d.childNodes.length;c++)this._waiAria.yearHeadCell(d.childNodes[c]);for(var h=this.date[this._mode+"_start"](this.date.copy(this._date)),u=h,v=null,c=0;c<r.year_y;c++)for(var f=0;f<r.year_x;f++){v=document.createElement("DIV"),v.style.cssText="position:absolute;",v.setAttribute("date",this.templates.xml_format(h)),v.innerHTML="<div class='dhx_year_month'></div><div class='dhx_year_grid'><div class='dhx_year_week'>"+d.innerHTML+"</div><div class='dhx_year_body'></div></div>"; +var g=v.querySelector(".dhx_year_month"),p=v.querySelector(".dhx_year_grid"),m=v.querySelector(".dhx_year_week"),y=v.querySelector(".dhx_year_body"),x=scheduler.uid();this._waiAria.yearHeader(g,x),this._waiAria.yearGrid(p,x),g.innerHTML=this.templates.year_month(h);for(var b=this.date.week_start(h),w=(this._reset_month_scale(y,h,b,6),y.querySelectorAll("td")),k=0;k<w.length;k++)this._waiAria.yearDayCell(w[k]);t.appendChild(v),m.style.height=m.childNodes[0].offsetHeight+"px";var E=Math.round((i-190)/2); +v.style.marginTop=E+"px",this.set_xy(v,a-10,i-E-10,a*f+5,i*c+5+scheduler.xy.year_top),e[c*r.year_x+f]=(h.getDay()-(this.config.start_on_monday?1:0)+7)%7,h=this.date.add(h,1,"month")}this._els.dhx_cal_date[0].innerHTML=this.templates[this._mode+"_date"](u,h,this._mode),this.week_starts=e,e._month=u.getMonth(),this._min_date=u,this._max_date=h};var s=scheduler.getActionData;scheduler.getActionData=function(t){if(!e())return s.apply(scheduler,arguments);var r=t?t.target:event.srcElement,a=scheduler._get_year_month_date(r),i=scheduler._get_year_month_cell(r),n=scheduler._get_year_day_indexes(i); +return n&&a?(a=scheduler.date.add(a,n.week,"week"),a=scheduler.date.add(a,n.day,"day")):a=null,{date:a,section:null}},scheduler._get_year_day_indexes=function(e){var t=scheduler._get_year_el_node(e,this._locate_year_month_table);if(!t)return null;for(var r=0,a=0,r=0,i=t.rows.length;i>r;r++){for(var n=t.rows[r].getElementsByTagName("td"),a=0,s=n.length;s>a&&n[a]!=e;a++);if(s>a)break}return i>r?{day:a,week:r}:null},scheduler._get_year_month_date=function(e){var e=scheduler._get_year_el_node(e,scheduler._locate_year_month_root); +if(!e)return null;var t=e.getAttribute("date");return t?scheduler.date.week_start(scheduler.date.month_start(i(t))):null},scheduler._locate_year_month_day=function(e){return-1!=scheduler._getClassName(e).indexOf("dhx_year_event")&&e.hasAttribute&&e.hasAttribute("date")};var d=scheduler._locate_event;scheduler._locate_event=function(e){var t=d.apply(scheduler,arguments);if(!t){var r=scheduler._get_year_el_node(e,scheduler._locate_year_month_day);if(!r||!r.hasAttribute("date"))return null;var a=i(r.getAttribute("date")),n=scheduler.getEvents(a,scheduler.date.add(a,1,"day")); +if(!n.length)return null;t=n[0].id}return t},scheduler._locate_year_month_cell=function(e){return"td"==e.nodeName.toLowerCase()},scheduler._locate_year_month_table=function(e){return"table"==e.nodeName.toLowerCase()},scheduler._locate_year_month_root=function(e){return e.hasAttribute&&e.hasAttribute("date")},scheduler._get_year_month_cell=function(e){return this._get_year_el_node(e,this._locate_year_month_cell)},scheduler._get_year_month_table=function(e){return this._get_year_el_node(e,this._locate_year_month_table); +},scheduler._get_year_month_root=function(e){return this._get_year_el_node(this._get_year_month_table(e),this._locate_year_month_root)},scheduler._get_year_el_node=function(e,t){for(;e&&!t(e);)e=e.parentNode;return e}}(); //# sourceMappingURL=../sources/ext/dhtmlxscheduler_year_view.js.map
\ No newline at end of file diff --git a/codebase/imgs_contrast_black/arrow_left.png b/codebase/imgs_contrast_black/arrow_left.png Binary files differnew file mode 100644 index 0000000..7a1263b --- /dev/null +++ b/codebase/imgs_contrast_black/arrow_left.png diff --git a/codebase/imgs_contrast_black/arrow_right.png b/codebase/imgs_contrast_black/arrow_right.png Binary files differnew file mode 100644 index 0000000..5587655 --- /dev/null +++ b/codebase/imgs_contrast_black/arrow_right.png diff --git a/codebase/imgs_contrast_black/but_repeat.gif b/codebase/imgs_contrast_black/but_repeat.gif Binary files differnew file mode 100644 index 0000000..e045c87 --- /dev/null +++ b/codebase/imgs_contrast_black/but_repeat.gif diff --git a/codebase/imgs_contrast_black/calendar.gif b/codebase/imgs_contrast_black/calendar.gif Binary files differnew file mode 100644 index 0000000..cecde96 --- /dev/null +++ b/codebase/imgs_contrast_black/calendar.gif diff --git a/codebase/imgs_contrast_black/clock_big.gif b/codebase/imgs_contrast_black/clock_big.gif Binary files differnew file mode 100644 index 0000000..26b331c --- /dev/null +++ b/codebase/imgs_contrast_black/clock_big.gif diff --git a/codebase/imgs_contrast_black/clock_small.gif b/codebase/imgs_contrast_black/clock_small.gif Binary files differnew file mode 100644 index 0000000..9646dab --- /dev/null +++ b/codebase/imgs_contrast_black/clock_small.gif diff --git a/codebase/imgs_contrast_black/close_icon.png b/codebase/imgs_contrast_black/close_icon.png Binary files differnew file mode 100644 index 0000000..4aa5d66 --- /dev/null +++ b/codebase/imgs_contrast_black/close_icon.png diff --git a/codebase/imgs_contrast_black/collapse_expand_icon.gif b/codebase/imgs_contrast_black/collapse_expand_icon.gif Binary files differnew file mode 100644 index 0000000..bf64cc8 --- /dev/null +++ b/codebase/imgs_contrast_black/collapse_expand_icon.gif diff --git a/codebase/imgs_contrast_black/controls.png b/codebase/imgs_contrast_black/controls.png Binary files differnew file mode 100644 index 0000000..f9a99e2 --- /dev/null +++ b/codebase/imgs_contrast_black/controls.png diff --git a/codebase/imgs_contrast_black/databg.png b/codebase/imgs_contrast_black/databg.png Binary files differnew file mode 100644 index 0000000..c3c1954 --- /dev/null +++ b/codebase/imgs_contrast_black/databg.png diff --git a/codebase/imgs_contrast_black/export_ical.png b/codebase/imgs_contrast_black/export_ical.png Binary files differnew file mode 100644 index 0000000..ca496f5 --- /dev/null +++ b/codebase/imgs_contrast_black/export_ical.png diff --git a/codebase/imgs_contrast_black/export_pdf.png b/codebase/imgs_contrast_black/export_pdf.png Binary files differnew file mode 100644 index 0000000..ebadc7c --- /dev/null +++ b/codebase/imgs_contrast_black/export_pdf.png diff --git a/codebase/imgs_contrast_black/resize_dots.png b/codebase/imgs_contrast_black/resize_dots.png Binary files differnew file mode 100644 index 0000000..c26e2a3 --- /dev/null +++ b/codebase/imgs_contrast_black/resize_dots.png diff --git a/codebase/imgs_contrast_black/resizing.png b/codebase/imgs_contrast_black/resizing.png Binary files differnew file mode 100644 index 0000000..389ca54 --- /dev/null +++ b/codebase/imgs_contrast_black/resizing.png diff --git a/codebase/imgs_contrast_white/arrow_left.png b/codebase/imgs_contrast_white/arrow_left.png Binary files differnew file mode 100644 index 0000000..133dabc --- /dev/null +++ b/codebase/imgs_contrast_white/arrow_left.png diff --git a/codebase/imgs_contrast_white/arrow_right.png b/codebase/imgs_contrast_white/arrow_right.png Binary files differnew file mode 100644 index 0000000..ced03e5 --- /dev/null +++ b/codebase/imgs_contrast_white/arrow_right.png diff --git a/codebase/imgs_contrast_white/but_repeat.gif b/codebase/imgs_contrast_white/but_repeat.gif Binary files differnew file mode 100644 index 0000000..9306667 --- /dev/null +++ b/codebase/imgs_contrast_white/but_repeat.gif diff --git a/codebase/imgs_contrast_white/calendar.gif b/codebase/imgs_contrast_white/calendar.gif Binary files differnew file mode 100644 index 0000000..8c12c94 --- /dev/null +++ b/codebase/imgs_contrast_white/calendar.gif diff --git a/codebase/imgs_contrast_white/clock_big.gif b/codebase/imgs_contrast_white/clock_big.gif Binary files differnew file mode 100644 index 0000000..26b331c --- /dev/null +++ b/codebase/imgs_contrast_white/clock_big.gif diff --git a/codebase/imgs_contrast_white/clock_small.gif b/codebase/imgs_contrast_white/clock_small.gif Binary files differnew file mode 100644 index 0000000..9646dab --- /dev/null +++ b/codebase/imgs_contrast_white/clock_small.gif diff --git a/codebase/imgs_contrast_white/close_icon.png b/codebase/imgs_contrast_white/close_icon.png Binary files differnew file mode 100644 index 0000000..4aa5d66 --- /dev/null +++ b/codebase/imgs_contrast_white/close_icon.png diff --git a/codebase/imgs_contrast_white/collapse_expand_icon.gif b/codebase/imgs_contrast_white/collapse_expand_icon.gif Binary files differnew file mode 100644 index 0000000..bf64cc8 --- /dev/null +++ b/codebase/imgs_contrast_white/collapse_expand_icon.gif diff --git a/codebase/imgs_contrast_white/controls.png b/codebase/imgs_contrast_white/controls.png Binary files differnew file mode 100644 index 0000000..f9a99e2 --- /dev/null +++ b/codebase/imgs_contrast_white/controls.png diff --git a/codebase/imgs_contrast_white/databg.png b/codebase/imgs_contrast_white/databg.png Binary files differnew file mode 100644 index 0000000..f601a2b --- /dev/null +++ b/codebase/imgs_contrast_white/databg.png diff --git a/codebase/imgs_contrast_white/export_ical.png b/codebase/imgs_contrast_white/export_ical.png Binary files differnew file mode 100644 index 0000000..ca496f5 --- /dev/null +++ b/codebase/imgs_contrast_white/export_ical.png diff --git a/codebase/imgs_contrast_white/export_pdf.png b/codebase/imgs_contrast_white/export_pdf.png Binary files differnew file mode 100644 index 0000000..ebadc7c --- /dev/null +++ b/codebase/imgs_contrast_white/export_pdf.png diff --git a/codebase/imgs_contrast_white/quick_info_edit.png b/codebase/imgs_contrast_white/quick_info_edit.png Binary files differnew file mode 100644 index 0000000..a31da86 --- /dev/null +++ b/codebase/imgs_contrast_white/quick_info_edit.png diff --git a/codebase/imgs_contrast_white/resize_dots.png b/codebase/imgs_contrast_white/resize_dots.png Binary files differnew file mode 100644 index 0000000..c26e2a3 --- /dev/null +++ b/codebase/imgs_contrast_white/resize_dots.png diff --git a/codebase/imgs_contrast_white/resizing.png b/codebase/imgs_contrast_white/resizing.png Binary files differnew file mode 100644 index 0000000..389ca54 --- /dev/null +++ b/codebase/imgs_contrast_white/resizing.png diff --git a/codebase/locale/locale_ar.js b/codebase/locale/locale_ar.js index db0cf0a..9085497 100644 --- a/codebase/locale/locale_ar.js +++ b/codebase/locale/locale_ar.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -8,5 +8,5 @@ This software is covered by GPL license. You also can obtain Commercial or Enter */ scheduler.locale={date:{month_full:["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول"],month_short:["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر"],day_full:["الأحد","الأثنين","ألثلاثاء","الأربعاء","ألحميس","ألجمعة","السبت"],day_short:["احد","اثنين","ثلاثاء","اربعاء","خميس","جمعة","سبت"]},labels:{dhx_cal_today_button:"اليوم",day_tab:"يوم",week_tab:"أسبوع",month_tab:"شهر",new_event:"حدث جديد", icon_save:"اخزن",icon_cancel:"الغاء",icon_details:"تفاصيل",icon_edit:"تحرير",icon_delete:"حذف",confirm_closing:"التغييرات سوف تضيع, هل انت متأكد؟",confirm_deleting:"الحدث سيتم حذفها نهائيا ، هل أنت متأكد؟",section_description:"الوصف",section_time:"الفترة الزمنية",full_day:"طوال اليوم",confirm_recurring:"هل تريد تحرير مجموعة كاملة من الأحداث المتكررة؟",section_recurring:"تكرار الحدث",button_recurring:"تعطيل",button_recurring_open:"تمكين",button_edit_series:"تحرير سلسلة",button_edit_occurrence:"تعديل نسخة", -grid_tab:"جدول",drag_to_create:"Drag to create",drag_to_move:"Drag to move",message_ok:"OK",message_cancel:"Cancel"}}; +grid_tab:"جدول",drag_to_create:"Drag to create",drag_to_move:"Drag to move",message_ok:"OK",message_cancel:"Cancel",next:"Next",prev:"Previous",year:"Year",month:"Month",day:"Day",hour:"Hour",minute:"Minute"}}; //# sourceMappingURL=../sources/locale/locale_ar.js.map
\ No newline at end of file diff --git a/codebase/locale/locale_be.js b/codebase/locale/locale_be.js index f042c8f..99d9b31 100644 --- a/codebase/locale/locale_be.js +++ b/codebase/locale/locale_be.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -8,5 +8,5 @@ This software is covered by GPL license. You also can obtain Commercial or Enter */ scheduler.locale={date:{month_full:["Студзень","Люты","Сакавік","Красавік","Maй","Чэрвень","Ліпень","Жнівень","Верасень","Кастрычнік","Лістапад","Снежань"],month_short:["Студз","Лют","Сак","Крас","Maй","Чэр","Ліп","Жнів","Вер","Каст","Ліст","Снеж"],day_full:["Нядзеля","Панядзелак","Аўторак","Серада","Чацвер","Пятніца","Субота"],day_short:["Нд","Пн","Аўт","Ср","Чцв","Пт","Сб"]},labels:{dhx_cal_today_button:"Сёння",day_tab:"Дзень",week_tab:"Тыдзень",month_tab:"Месяц",new_event:"Новая падзея",icon_save:"Захаваць", icon_cancel:"Адмяніць",icon_details:"Дэталі",icon_edit:"Змяніць",icon_delete:"Выдаліць",confirm_closing:"",confirm_deleting:"Падзея будзе выдалена незваротна, працягнуць?",section_description:"Апісанне",section_time:"Перыяд часу",full_day:"Увесь дзень",confirm_recurring:"Вы хочаце змяніць усю серыю паўтаральных падзей?",section_recurring:"Паўтарэнне",button_recurring:"Адключана",button_recurring_open:"Уключана",button_edit_series:"Рэдагаваць серыю",button_edit_occurrence:"Рэдагаваць асобнік",agenda_tab:"Спіс", -date:"Дата",description:"Апісанне",year_tab:"Год",week_agenda_tab:"Спіс",grid_tab:"Спic",drag_to_create:"Drag to create",drag_to_move:"Drag to move",message_ok:"OK",message_cancel:"Cancel"}}; +date:"Дата",description:"Апісанне",year_tab:"Год",week_agenda_tab:"Спіс",grid_tab:"Спic",drag_to_create:"Drag to create",drag_to_move:"Drag to move",message_ok:"OK",message_cancel:"Cancel",next:"Next",prev:"Previous",year:"Year",month:"Month",day:"Day",hour:"Hour",minute:"Minute"}}; //# sourceMappingURL=../sources/locale/locale_be.js.map
\ No newline at end of file diff --git a/codebase/locale/locale_ca.js b/codebase/locale/locale_ca.js index 148b803..05e7e4f 100644 --- a/codebase/locale/locale_ca.js +++ b/codebase/locale/locale_ca.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -8,5 +8,5 @@ This software is covered by GPL license. You also can obtain Commercial or Enter */ scheduler.locale={date:{month_full:["Gener","Febrer","Març","Abril","Maig","Juny","Juliol","Agost","Setembre","Octubre","Novembre","Desembre"],month_short:["Gen","Feb","Mar","Abr","Mai","Jun","Jul","Ago","Set","Oct","Nov","Des"],day_full:["Diumenge","Dilluns","Dimarts","Dimecres","Dijous","Divendres","Dissabte"],day_short:["Dg","Dl","Dm","Dc","Dj","Dv","Ds"]},labels:{dhx_cal_today_button:"Hui",day_tab:"Dia",week_tab:"Setmana",month_tab:"Mes",new_event:"Nou esdeveniment",icon_save:"Guardar",icon_cancel:"Cancel·lar", icon_details:"Detalls",icon_edit:"Editar",icon_delete:"Esborrar",confirm_closing:"",confirm_deleting:"L'esdeveniment s'esborrarà definitivament, continuar ?",section_description:"Descripció",section_time:"Periode de temps",full_day:"Tot el dia",confirm_recurring:"¿Desitja modificar el conjunt d'esdeveniments repetits?",section_recurring:"Repeteixca l'esdeveniment",button_recurring:"Impedit",button_recurring_open:"Permés",button_edit_series:"Edit sèrie",button_edit_occurrence:"Edita Instància",agenda_tab:"Agenda", -date:"Data",description:"Descripció",year_tab:"Any",week_agenda_tab:"Agenda",grid_tab:"Taula",drag_to_create:"Drag to create",drag_to_move:"Drag to move",message_ok:"OK",message_cancel:"Cancel"}}; +date:"Data",description:"Descripció",year_tab:"Any",week_agenda_tab:"Agenda",grid_tab:"Taula",drag_to_create:"Drag to create",drag_to_move:"Drag to move",message_ok:"OK",message_cancel:"Cancel",next:"Next",prev:"Previous",year:"Year",month:"Month",day:"Day",hour:"Hour",minute:"Minute"}}; //# sourceMappingURL=../sources/locale/locale_ca.js.map
\ No newline at end of file diff --git a/codebase/locale/locale_cn.js b/codebase/locale/locale_cn.js index 5c0b3c0..2af1ffc 100644 --- a/codebase/locale/locale_cn.js +++ b/codebase/locale/locale_cn.js @@ -1,12 +1,12 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. (c) Dinamenta, UAB. */ scheduler.config.day_date="%M %d日 %D",scheduler.config.default_date="%Y年 %M %d日",scheduler.config.month_date="%Y年 %M",scheduler.locale={date:{month_full:["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"],month_short:["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月"],day_full:["星期日","星期一","星期二","星期三","星期四","星期五","星期六"],day_short:["日","一","二","三","四","五","六"]},labels:{dhx_cal_today_button:"今天",day_tab:"日",week_tab:"周",month_tab:"月",new_event:"新建日程",icon_save:"保存",icon_cancel:"关闭", -icon_details:"详细",icon_edit:"编辑",icon_delete:"删除",confirm_closing:"请确认是否撤销修改!",confirm_deleting:"是否删除日程?",section_description:"描述",section_time:"时间范围",full_day:"整天",confirm_recurring:"请确认是否将日程设为重复模式?",section_recurring:"重复周期",button_recurring:"禁用",button_recurring_open:"启用",button_edit_series:"编辑系列",button_edit_occurrence:"编辑实例",agenda_tab:"议程",date:"日期",description:"说明",year_tab:"今年",week_agenda_tab:"议程",grid_tab:"电网",drag_to_create:"Drag to create",drag_to_move:"Drag to move",message_ok:"OK",message_cancel:"Cancel" -}}; +icon_details:"详细",icon_edit:"编辑",icon_delete:"删除",confirm_closing:"请确认是否撤销修改!",confirm_deleting:"是否删除日程?",section_description:"描述",section_time:"时间范围",full_day:"整天",confirm_recurring:"请确认是否将日程设为重复模式?",section_recurring:"重复周期",button_recurring:"禁用",button_recurring_open:"启用",button_edit_series:"编辑系列",button_edit_occurrence:"编辑实例",agenda_tab:"议程",date:"日期",description:"说明",year_tab:"今年",week_agenda_tab:"议程",grid_tab:"电网",drag_to_create:"Drag to create",drag_to_move:"Drag to move",message_ok:"OK",message_cancel:"Cancel", +next:"Next",prev:"Previous",year:"Year",month:"Month",day:"Day",hour:"Hour",minute:"Minute"}}; //# sourceMappingURL=../sources/locale/locale_cn.js.map
\ No newline at end of file diff --git a/codebase/locale/locale_cs.js b/codebase/locale/locale_cs.js index 025ad14..80d040c 100644 --- a/codebase/locale/locale_cs.js +++ b/codebase/locale/locale_cs.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -8,5 +8,5 @@ This software is covered by GPL license. You also can obtain Commercial or Enter */ scheduler.locale={date:{month_full:["Leden","Únor","Březen","Duben","Květen","Červen","Červenec","Srpen","Září","Říjen","Listopad","Prosinec"],month_short:["Led","Ún","Bře","Dub","Kvě","Čer","Čec","Srp","Září","Říj","List","Pro"],day_full:["Neděle","Pondělí","Úterý","Středa","Čtvrtek","Pátek","Sobota"],day_short:["Ne","Po","Út","St","Čt","Pá","So"]},labels:{dhx_cal_today_button:"Dnes",day_tab:"Den",week_tab:"Týden",month_tab:"Měsíc",new_event:"Nová událost",icon_save:"Uložit",icon_cancel:"Zpět",icon_details:"Detail", icon_edit:"Edituj",icon_delete:"Smazat",confirm_closing:"",confirm_deleting:"Událost bude trvale smazána, opravdu?",section_description:"Poznámky",section_time:"Doba platnosti",confirm_recurring:"Přejete si upravit celou řadu opakovaných událostí?",section_recurring:"Opakování události",button_recurring:"Vypnuto",button_recurring_open:"Zapnuto",button_edit_series:"Edit series",button_edit_occurrence:"Upravit instance",agenda_tab:"Program",date:"Datum",description:"Poznámka",year_tab:"Rok",full_day:"Full day", -week_agenda_tab:"Program",grid_tab:"Mřížka",drag_to_create:"Drag to create",drag_to_move:"Drag to move",message_ok:"OK",message_cancel:"Cancel"}}; +week_agenda_tab:"Program",grid_tab:"Mřížka",drag_to_create:"Drag to create",drag_to_move:"Drag to move",message_ok:"OK",message_cancel:"Cancel",next:"Next",prev:"Previous",year:"Year",month:"Month",day:"Day",hour:"Hour",minute:"Minute"}}; //# sourceMappingURL=../sources/locale/locale_cs.js.map
\ No newline at end of file diff --git a/codebase/locale/locale_da.js b/codebase/locale/locale_da.js index 5956925..0d208ae 100644 --- a/codebase/locale/locale_da.js +++ b/codebase/locale/locale_da.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -8,5 +8,5 @@ This software is covered by GPL license. You also can obtain Commercial or Enter */ scheduler.locale={date:{month_full:["Januar","Februar","Marts","April","Maj","Juni","Juli","August","September","Oktober","November","December"],month_short:["Jan","Feb","Mar","Apr","Maj","Jun","Jul","Aug","Sep","Okt","Nov","Dec"],day_full:["Søndag","Mandag","Tirsdag","Onsdag","Torsdag","Fredag","Lørdag"],day_short:["Søn","Man","Tir","Ons","Tor","Fre","Lør"]},labels:{dhx_cal_today_button:"Idag",day_tab:"Dag",week_tab:"Uge",month_tab:"Måned",new_event:"Ny begivenhed",icon_save:"Gem",icon_cancel:"Fortryd", icon_details:"Detaljer",icon_edit:"Tilret",icon_delete:"Slet",confirm_closing:"Dine rettelser vil gå tabt.. Er dy sikker?",confirm_deleting:"Bigivenheden vil blive slettet permanent. Er du sikker?",section_description:"Beskrivelse",section_time:"Tidsperiode",confirm_recurring:"Vil du tilrette hele serien af gentagne begivenheder?",section_recurring:"Gentag begivenhed",button_recurring:"Frakoblet",button_recurring_open:"Tilkoblet",button_edit_series:"Rediger serien",button_edit_occurrence:"Rediger en kopi", -agenda_tab:"Dagsorden",date:"Dato",description:"Beskrivelse",year_tab:"År",week_agenda_tab:"Dagsorden",grid_tab:"Grid",drag_to_create:"Drag to create",drag_to_move:"Drag to move",message_ok:"OK",message_cancel:"Cancel"}}; +agenda_tab:"Dagsorden",date:"Dato",description:"Beskrivelse",year_tab:"År",week_agenda_tab:"Dagsorden",grid_tab:"Grid",drag_to_create:"Drag to create",drag_to_move:"Drag to move",message_ok:"OK",message_cancel:"Cancel",next:"Next",prev:"Previous",year:"Year",month:"Month",day:"Day",hour:"Hour",minute:"Minute"}}; //# sourceMappingURL=../sources/locale/locale_da.js.map
\ No newline at end of file diff --git a/codebase/locale/locale_de.js b/codebase/locale/locale_de.js index 383eac2..bcf3d37 100644 --- a/codebase/locale/locale_de.js +++ b/codebase/locale/locale_de.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -8,5 +8,5 @@ This software is covered by GPL license. You also can obtain Commercial or Enter */ scheduler.locale={date:{month_full:[" Januar"," Februar"," März "," April"," Mai"," Juni"," Juli"," August"," September "," Oktober"," November "," Dezember"],month_short:["Jan","Feb","Mär","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez"],day_full:["Sonntag","Montag","Dienstag"," Mittwoch"," Donnerstag","Freitag","Samstag"],day_short:["So","Mo","Di","Mi","Do","Fr","Sa"]},labels:{dhx_cal_today_button:"Heute",day_tab:"Tag",week_tab:"Woche",month_tab:"Monat",new_event:"neuer Eintrag",icon_save:"Speichern", icon_cancel:"Abbrechen",icon_details:"Details",icon_edit:"Ändern",icon_delete:"Löschen",confirm_closing:"",confirm_deleting:"Der Eintrag wird gelöscht",section_description:"Beschreibung",section_time:"Zeitspanne",full_day:"Ganzer Tag",confirm_recurring:"Wollen Sie alle Einträge bearbeiten oder nur diesen einzelnen Eintrag?",section_recurring:"Wiederholung",button_recurring:"Aus",button_recurring_open:"An",button_edit_series:"Bearbeiten Sie die Serie",button_edit_occurrence:"Bearbeiten Sie eine Kopie", -agenda_tab:"Agenda",date:"Datum",description:"Beschreibung",year_tab:"Jahre",week_agenda_tab:"Agenda",grid_tab:"Grid",drag_to_create:"Drag to create",drag_to_move:"Drag to move",message_ok:"OK",message_cancel:"Cancel"}}; +agenda_tab:"Agenda",date:"Datum",description:"Beschreibung",year_tab:"Jahre",week_agenda_tab:"Agenda",grid_tab:"Grid",drag_to_create:"Drag to create",drag_to_move:"Drag to move",message_ok:"OK",message_cancel:"Cancel",next:"Next",prev:"Previous",year:"Year",month:"Month",day:"Day",hour:"Hour",minute:"Minute"}}; //# sourceMappingURL=../sources/locale/locale_de.js.map
\ No newline at end of file diff --git a/codebase/locale/locale_el.js b/codebase/locale/locale_el.js index f93fdfe..038731b 100644 --- a/codebase/locale/locale_el.js +++ b/codebase/locale/locale_el.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -8,5 +8,5 @@ This software is covered by GPL license. You also can obtain Commercial or Enter */ scheduler.locale={date:{month_full:["Ιανουάριος","Φεβρουάριος","Μάρτιος","Απρίλιος","Μάϊος","Ιούνιος","Ιούλιος","Αύγουστος","Σεπτέμβριος","Οκτώβριος","Νοέμβριος","Δεκέμβριος"],month_short:["ΙΑΝ","ΦΕΒ","ΜΑΡ","ΑΠΡ","ΜΑΙ","ΙΟΥΝ","ΙΟΥΛ","ΑΥΓ","ΣΕΠ","ΟΚΤ","ΝΟΕ","ΔΕΚ"],day_full:["Κυριακή","Δευτέρα","Τρίτη","Τετάρτη","Πέμπτη","Παρασκευή","Κυριακή"],day_short:["ΚΥ","ΔΕ","ΤΡ","ΤΕ","ΠΕ","ΠΑ","ΣΑ"]},labels:{dhx_cal_today_button:"Σήμερα",day_tab:"Ημέρα",week_tab:"Εβδομάδα",month_tab:"Μήνας",new_event:"Νέο έργο", icon_save:"Αποθήκευση",icon_cancel:"Άκυρο",icon_details:"Λεπτομέρειες",icon_edit:"Επεξεργασία",icon_delete:"Διαγραφή",confirm_closing:"",confirm_deleting:"Το έργο θα διαγραφεί οριστικά. Θέλετε να συνεχίσετε;",section_description:"Περιγραφή",section_time:"Χρονική περίοδος",full_day:"Πλήρης Ημέρα",confirm_recurring:"Θέλετε να επεξεργασθείτε ολόκληρη την ομάδα των επαναλαμβανόμενων έργων;",section_recurring:"Επαναλαμβανόμενο έργο",button_recurring:"Ανενεργό",button_recurring_open:"Ενεργό",button_edit_series:"Επεξεργαστείτε τη σειρά", -button_edit_occurrence:"Επεξεργασία ένα αντίγραφο",agenda_tab:"Ημερήσια Διάταξη",date:"Ημερομηνία",description:"Περιγραφή",year_tab:"Έτος",week_agenda_tab:"Ημερήσια Διάταξη",grid_tab:"Πλέγμα",drag_to_create:"Drag to create",drag_to_move:"Drag to move",message_ok:"OK",message_cancel:"Cancel"}}; +button_edit_occurrence:"Επεξεργασία ένα αντίγραφο",agenda_tab:"Ημερήσια Διάταξη",date:"Ημερομηνία",description:"Περιγραφή",year_tab:"Έτος",week_agenda_tab:"Ημερήσια Διάταξη",grid_tab:"Πλέγμα",drag_to_create:"Drag to create",drag_to_move:"Drag to move",message_ok:"OK",message_cancel:"Cancel",next:"Next",prev:"Previous",year:"Year",month:"Month",day:"Day",hour:"Hour",minute:"Minute"}}; //# sourceMappingURL=../sources/locale/locale_el.js.map
\ No newline at end of file diff --git a/codebase/locale/locale_en.js b/codebase/locale/locale_en.js index 0199c3c..8dc360c 100644 --- a/codebase/locale/locale_en.js +++ b/codebase/locale/locale_en.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -8,5 +8,5 @@ This software is covered by GPL license. You also can obtain Commercial or Enter */ scheduler.locale={date:{month_full:["January","February","March","April","May","June","July","August","September","October","November","December"],month_short:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],day_full:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],day_short:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"]},labels:{dhx_cal_today_button:"Today",day_tab:"Day",week_tab:"Week",month_tab:"Month",new_event:"New event",icon_save:"Save",icon_cancel:"Cancel", icon_details:"Details",icon_edit:"Edit",icon_delete:"Delete",confirm_closing:"",confirm_deleting:"Event will be deleted permanently, are you sure?",section_description:"Description",section_time:"Time period",full_day:"Full day",confirm_recurring:"Do you want to edit the whole set of repeated events?",section_recurring:"Repeat event",button_recurring:"Disabled",button_recurring_open:"Enabled",button_edit_series:"Edit series",button_edit_occurrence:"Edit occurrence",agenda_tab:"Agenda",date:"Date", -description:"Description",year_tab:"Year",week_agenda_tab:"Agenda",grid_tab:"Grid",drag_to_create:"Drag to create",drag_to_move:"Drag to move",message_ok:"OK",message_cancel:"Cancel"}}; +description:"Description",year_tab:"Year",week_agenda_tab:"Agenda",grid_tab:"Grid",drag_to_create:"Drag to create",drag_to_move:"Drag to move",message_ok:"OK",message_cancel:"Cancel",next:"Next",prev:"Previous",year:"Year",month:"Month",day:"Day",hour:"Hour",minute:"Minute"}}; //# sourceMappingURL=../sources/locale/locale_en.js.map
\ No newline at end of file diff --git a/codebase/locale/locale_es.js b/codebase/locale/locale_es.js index 25c1dfa..76e108c 100644 --- a/codebase/locale/locale_es.js +++ b/codebase/locale/locale_es.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -8,5 +8,5 @@ This software is covered by GPL license. You also can obtain Commercial or Enter */ scheduler.locale={date:{month_full:["Enero","Febrero","Marzo","Abril","Mayo","Junio","Julio","Agosto","Septiembre","Octubre","Noviembre","Diciembre"],month_short:["Ene","Feb","Mar","Abr","May","Jun","Jul","Ago","Sep","Oct","Nov","Dic"],day_full:["Domingo","Lunes","Martes","Miércoles","Jueves","Viernes","Sábado"],day_short:["Dom","Lun","Mar","Mié","Jue","Vie","Sáb"]},labels:{dhx_cal_today_button:"Hoy",day_tab:"Día",week_tab:"Semana",month_tab:"Mes",new_event:"Nuevo evento",icon_save:"Guardar",icon_cancel:"Cancelar", icon_details:"Detalles",icon_edit:"Editar",icon_delete:"Eliminar",confirm_closing:"",confirm_deleting:"El evento se borrará definitivamente, ¿continuar?",section_description:"Descripción",section_time:"Período",full_day:"Todo el día",confirm_recurring:"¿Desea modificar el conjunto de eventos repetidos?",section_recurring:"Repita el evento",button_recurring:"Impedido",button_recurring_open:"Permitido",button_edit_series:"Editar la serie",button_edit_occurrence:"Editar una copia",agenda_tab:"Día",date:"Fecha", -description:"Descripción",year_tab:"Año",week_agenda_tab:"Día",grid_tab:"Reja",drag_to_create:"Drag to create",drag_to_move:"Drag to move",message_ok:"OK",message_cancel:"Cancel"}}; +description:"Descripción",year_tab:"Año",week_agenda_tab:"Día",grid_tab:"Reja",drag_to_create:"Drag to create",drag_to_move:"Drag to move",message_ok:"OK",message_cancel:"Cancel",next:"Next",prev:"Previous",year:"Year",month:"Month",day:"Day",hour:"Hour",minute:"Minute"}}; //# sourceMappingURL=../sources/locale/locale_es.js.map
\ No newline at end of file diff --git a/codebase/locale/locale_fi.js b/codebase/locale/locale_fi.js index 6bb3630..43ad002 100644 --- a/codebase/locale/locale_fi.js +++ b/codebase/locale/locale_fi.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -8,5 +8,5 @@ This software is covered by GPL license. You also can obtain Commercial or Enter */ scheduler.locale={date:{month_full:["Tammikuu","Helmikuu","Maaliskuu","Huhtikuu","Toukokuu","Kesäkuu","Heinäkuu","Elokuu","Syyskuu","Lokakuu","Marraskuu","Joulukuu"],month_short:["Tam","Hel","Maa","Huh","Tou","Kes","Hei","Elo","Syy","Lok","Mar","Jou"],day_full:["Sunnuntai","Maanantai","Tiistai","Keskiviikko","Torstai","Perjantai","Lauantai"],day_short:["Su","Ma","Ti","Ke","To","Pe","La"]},labels:{dhx_cal_today_button:"Tänään",day_tab:"Päivä",week_tab:"Viikko",month_tab:"Kuukausi",new_event:"Uusi tapahtuma", icon_save:"Tallenna",icon_cancel:"Peru",icon_details:"Tiedot",icon_edit:"Muokkaa",icon_delete:"Poista",confirm_closing:"",confirm_deleting:"Haluatko varmasti poistaa tapahtuman?",section_description:"Kuvaus",section_time:"Aikajakso",full_day:"Koko päivä",confirm_recurring:"Haluatko varmasti muokata toistuvan tapahtuman kaikkia jaksoja?",section_recurring:"Toista tapahtuma",button_recurring:"Ei käytössä",button_recurring_open:"Käytössä",button_edit_series:"Muokkaa sarja", -button_edit_occurrence:"Muokkaa kopio",agenda_tab:"Esityslista",date:"Päivämäärä",description:"Kuvaus",year_tab:"Vuoden",week_agenda_tab:"Esityslista",grid_tab:"Ritilä",drag_to_create:"Drag to create",drag_to_move:"Drag to move",message_ok:"OK",message_cancel:"Cancel"}}; +button_edit_occurrence:"Muokkaa kopio",agenda_tab:"Esityslista",date:"Päivämäärä",description:"Kuvaus",year_tab:"Vuoden",week_agenda_tab:"Esityslista",grid_tab:"Ritilä",drag_to_create:"Luo uusi vetämällä",drag_to_move:"Siirrä vetämällä",message_ok:"OK",message_cancel:"Cancel",next:"Next",prev:"Previous",year:"Year",month:"Month",day:"Day",hour:"Hour",minute:"Minute"}}; //# sourceMappingURL=../sources/locale/locale_fi.js.map
\ No newline at end of file diff --git a/codebase/locale/locale_fr.js b/codebase/locale/locale_fr.js index bd55eeb..136b7ad 100644 --- a/codebase/locale/locale_fr.js +++ b/codebase/locale/locale_fr.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -8,5 +8,5 @@ This software is covered by GPL license. You also can obtain Commercial or Enter */ scheduler.locale={date:{month_full:["Janvier","Février","Mars","Avril","Mai","Juin","Juillet","Août","Septembre","Octobre","Novembre","Décembre"],month_short:["Jan","Fév","Mar","Avr","Mai","Juin","Juil","Aoû","Sep","Oct","Nov","Déc"],day_full:["Dimanche","Lundi","Mardi","Mercredi","Jeudi","Vendredi","Samedi"],day_short:["Dim","Lun","Mar","Mer","Jeu","Ven","Sam"]},labels:{dhx_cal_today_button:"Aujourd'hui",day_tab:"Jour",week_tab:"Semaine",month_tab:"Mois",new_event:"Nouvel événement",icon_save:"Enregistrer", icon_cancel:"Annuler",icon_details:"Détails",icon_edit:"Modifier",icon_delete:"Effacer",confirm_closing:"",confirm_deleting:"L'événement sera effacé sans appel, êtes-vous sûr ?",section_description:"Description",section_time:"Période",full_day:"Journée complète",confirm_recurring:"Voulez-vous éditer toute une série d'évènements répétés?",section_recurring:"Périodicité",button_recurring:"Désactivé",button_recurring_open:"Activé",button_edit_series:"Modifier la série",button_edit_occurrence:"Modifier une copie", -agenda_tab:"Jour",date:"Date",description:"Description",year_tab:"Année",week_agenda_tab:"Jour",grid_tab:"Grille",drag_to_create:"Drag to create",drag_to_move:"Drag to move",message_ok:"OK",message_cancel:"Cancel"}}; +agenda_tab:"Jour",date:"Date",description:"Description",year_tab:"Année",week_agenda_tab:"Jour",grid_tab:"Grille",drag_to_create:"Drag to create",drag_to_move:"Drag to move",message_ok:"OK",message_cancel:"Cancel",next:"Next",prev:"Previous",year:"Year",month:"Month",day:"Day",hour:"Hour",minute:"Minute"}}; //# sourceMappingURL=../sources/locale/locale_fr.js.map
\ No newline at end of file diff --git a/codebase/locale/locale_he.js b/codebase/locale/locale_he.js index 4e92da0..3d5da05 100644 --- a/codebase/locale/locale_he.js +++ b/codebase/locale/locale_he.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -8,5 +8,5 @@ This software is covered by GPL license. You also can obtain Commercial or Enter */ scheduler.locale={date:{month_full:["ינואר","פברואר","מרץ","אפריל","מאי","יוני","יולי","אוגוסט","ספטמבר","אוקטובר","נובמבר","דצמבר"],month_short:["ינו","פבר","מרץ","אפר","מאי","יונ","יול","אוג","ספט","אוק","נוב","דצמ"],day_full:["ראשון","שני","שלישי","רביעי","חמישי","שישי","שבת"],day_short:["א","ב","ג","ד","ה","ו","ש"]},labels:{dhx_cal_today_button:"היום",day_tab:"יום",week_tab:"שבוע",month_tab:"חודש",new_event:"ארוע חדש",icon_save:"שמור",icon_cancel:"בטל",icon_details:"פרטים",icon_edit:"ערוך",icon_delete:"מחק", confirm_closing:"",confirm_deleting:"ארוע ימחק סופית.להמשיך?",section_description:"הסבר",section_time:"תקופה",confirm_recurring:"האם ברצונך לשנות כל סדרת ארועים מתמשכים?",section_recurring:"להעתיק ארוע",button_recurring:"לא פעיל",button_recurring_open:"פעיל",full_day:"יום שלם",button_edit_series:"ערוך את הסדרה",button_edit_occurrence:"עריכת עותק",agenda_tab:"סדר יום",date:"תאריך",description:"תיאור",year_tab:"לשנה",week_agenda_tab:"סדר יום",grid_tab:"סורג",drag_to_create:"Drag to create",drag_to_move:"Drag to move", -message_ok:"OK",message_cancel:"Cancel"}}; +message_ok:"OK",message_cancel:"Cancel",next:"Next",prev:"Previous",year:"Year",month:"Month",day:"Day",hour:"Hour",minute:"Minute"}}; //# sourceMappingURL=../sources/locale/locale_he.js.map
\ No newline at end of file diff --git a/codebase/locale/locale_hu.js b/codebase/locale/locale_hu.js index 674d531..7dc8af2 100644 --- a/codebase/locale/locale_hu.js +++ b/codebase/locale/locale_hu.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -8,5 +8,5 @@ This software is covered by GPL license. You also can obtain Commercial or Enter */ scheduler.locale={date:{month_full:["Január","Február","Március","Április","Május","Június","Július","Augusztus","Szeptember","Október","November","December"],month_short:["Jan","Feb","Már","Ápr","Máj","Jún","Júl","Aug","Sep","Okt","Nov","Dec"],day_full:["Vasárnap","Hétfõ","Kedd","Szerda","Csütörtök","Péntek","szombat"],day_short:["Va","Hé","Ke","Sze","Csü","Pé","Szo"]},labels:{dhx_cal_today_button:"Ma",day_tab:"Nap",week_tab:"Hét",month_tab:"Hónap",new_event:"Új esemény",icon_save:"Mentés",icon_cancel:"Mégse", icon_details:"Részletek",icon_edit:"Szerkesztés",icon_delete:"Törlés",confirm_closing:"",confirm_deleting:"Az esemény törölve lesz, biztosan folytatja?",section_description:"Leírás",section_time:"Idõszak",full_day:"Egesz napos",confirm_recurring:"Biztosan szerkeszteni akarod az összes ismétlõdõ esemény beállítását?",section_recurring:"Esemény ismétlése",button_recurring:"Tiltás",button_recurring_open:"Engedélyezés",button_edit_series:"Edit series",button_edit_occurrence:"Szerkesztés bíróság",agenda_tab:"Napirend", -date:"Dátum",description:"Leírás",year_tab:"Év",drag_to_create:"Drag to create",drag_to_move:"Drag to move",message_ok:"OK",message_cancel:"Cancel"}}; +date:"Dátum",description:"Leírás",year_tab:"Év",drag_to_create:"Drag to create",drag_to_move:"Drag to move",message_ok:"OK",message_cancel:"Cancel",next:"Next",prev:"Previous",year:"Year",month:"Month",day:"Day",hour:"Hour",minute:"Minute"}}; //# sourceMappingURL=../sources/locale/locale_hu.js.map
\ No newline at end of file diff --git a/codebase/locale/locale_id.js b/codebase/locale/locale_id.js index 7d3494b..4b4a1d5 100644 --- a/codebase/locale/locale_id.js +++ b/codebase/locale/locale_id.js @@ -1,6 +1,6 @@ /*
@license
-dhtmlxScheduler v.4.3.1
+dhtmlxScheduler v.4.4.0 Stardard
This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited.
@@ -8,5 +8,5 @@ This software is covered by GPL license. You also can obtain Commercial or Enter */ scheduler.locale={date:{month_full:["Januari","Februari","Maret","April","Mei","Juni","Juli","Agustus","September","Oktober","November","Desember"],month_short:["Jan","Feb","Mar","Apr","Mei","Jun","Jul","Ags","Sep","Okt","Nov","Des"],day_full:["Minggu","Senin","Selasa","Rabu","Kamis","Jumat","Sabtu"],day_short:["Ming","Sen","Sel","Rab","Kam","Jum","Sab"]},labels:{dhx_cal_today_button:"Hari Ini",day_tab:"Hari",week_tab:"Minggu",month_tab:"Bulan",new_event:"Acara Baru",icon_save:"Simpan",icon_cancel:"Batal", icon_details:"Detail",icon_edit:"Edit",icon_delete:"Hapus",confirm_closing:"",confirm_deleting:"Acara akan dihapus",section_description:"Keterangan",section_time:"Periode",full_day:"Hari penuh",confirm_recurring:"Apakah acara ini akan berulang?",section_recurring:"Acara Rutin",button_recurring:"Tidak Difungsikan",button_recurring_open:"Difungsikan",button_edit_series:"Mengedit seri",button_edit_occurrence:"Mengedit salinan",agenda_tab:"Agenda",date:"Tanggal",description:"Keterangan",year_tab:"Tahun", -week_agenda_tab:"Agenda",grid_tab:"Tabel",drag_to_create:"Drag to create",drag_to_move:"Drag to move",message_ok:"OK",message_cancel:"Cancel"}}; +week_agenda_tab:"Agenda",grid_tab:"Tabel",drag_to_create:"Drag to create",drag_to_move:"Drag to move",message_ok:"OK",message_cancel:"Cancel",next:"Next",prev:"Previous",year:"Year",month:"Month",day:"Day",hour:"Hour",minute:"Minute"}}; //# sourceMappingURL=../sources/locale/locale_id.js.map
\ No newline at end of file diff --git a/codebase/locale/locale_it.js b/codebase/locale/locale_it.js index 1b913cd..7ee2699 100644 --- a/codebase/locale/locale_it.js +++ b/codebase/locale/locale_it.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -8,5 +8,5 @@ This software is covered by GPL license. You also can obtain Commercial or Enter */ scheduler.locale={date:{month_full:["Gennaio","Febbraio","Marzo","Aprile","Maggio","Giugno","Luglio","Agosto","Settembre","Ottobre","Novembre","Dicembre"],month_short:["Gen","Feb","Mar","Apr","Mag","Giu","Lug","Ago","Set","Ott","Nov","Dic"],day_full:["Domenica","Lunedì","Martedì","Mercoledì","Giovedì","Venerdì","Sabato"],day_short:["Dom","Lun","Mar","Mer","Gio","Ven","Sab"]},labels:{dhx_cal_today_button:"Oggi",day_tab:"Giorno",week_tab:"Settimana",month_tab:"Mese",new_event:"Nuovo evento",icon_save:"Salva", icon_cancel:"Chiudi",icon_details:"Dettagli",icon_edit:"Modifica",icon_delete:"Elimina",confirm_closing:"",confirm_deleting:"L'evento sarà eliminato, siete sicuri?",section_description:"Descrizione",section_time:"Periodo di tempo",full_day:"Intera giornata",confirm_recurring:"Vuoi modificare l'intera serie di eventi?",section_recurring:"Ripetere l'evento",button_recurring:"Disattivato",button_recurring_open:"Attivato",button_edit_series:"Modificare la serie",button_edit_occurrence:"Modificare una copia", -agenda_tab:"Agenda",date:"Data",description:"Descrizione",year_tab:"Anni",week_agenda_tab:"Agenda",grid_tab:"Griglia",drag_to_create:"Drag to create",drag_to_move:"Drag to move",message_ok:"OK",message_cancel:"Cancel"}}; +agenda_tab:"Agenda",date:"Data",description:"Descrizione",year_tab:"Anni",week_agenda_tab:"Agenda",grid_tab:"Griglia",drag_to_create:"Drag to create",drag_to_move:"Drag to move",message_ok:"OK",message_cancel:"Cancel",next:"Next",prev:"Previous",year:"Year",month:"Month",day:"Day",hour:"Hour",minute:"Minute"}}; //# sourceMappingURL=../sources/locale/locale_it.js.map
\ No newline at end of file diff --git a/codebase/locale/locale_jp.js b/codebase/locale/locale_jp.js index f93e107..68b48a7 100644 --- a/codebase/locale/locale_jp.js +++ b/codebase/locale/locale_jp.js @@ -1,11 +1,12 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. (c) Dinamenta, UAB. */ scheduler.locale={date:{month_full:["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月"],month_short:["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月"],day_full:["日曜日","月曜日","火曜日","水曜日","木曜日","金曜日","土曜日"],day_short:["日","月","火","水","木","金","土"]},labels:{dhx_cal_today_button:"今日",day_tab:"日",week_tab:"週",month_tab:"月",new_event:"新イベント",icon_save:"保存",icon_cancel:"キャンセル",icon_details:"詳細",icon_edit:"編集",icon_delete:"削除",confirm_closing:"",confirm_deleting:"イベント完全に削除されます、宜しいですか?", -section_description:"デスクリプション",section_time:"期間",confirm_recurring:"繰り返されているイベントを全て編集しますか?",section_recurring:"イベントを繰り返す",button_recurring:"無効",button_recurring_open:"有効",full_day:"終日",button_edit_series:"シリーズを編集します",button_edit_occurrence:"コピーを編集",agenda_tab:"議題は",date:"日付",description:"説明",year_tab:"今年",week_agenda_tab:"議題は",grid_tab:"グリッド",drag_to_create:"Drag to create",drag_to_move:"Drag to move",message_ok:"OK",message_cancel:"Cancel"}}; +section_description:"デスクリプション",section_time:"期間",confirm_recurring:"繰り返されているイベントを全て編集しますか?",section_recurring:"イベントを繰り返す",button_recurring:"無効",button_recurring_open:"有効",full_day:"終日",button_edit_series:"シリーズを編集します",button_edit_occurrence:"コピーを編集",agenda_tab:"議題は",date:"日付",description:"説明",year_tab:"今年",week_agenda_tab:"議題は",grid_tab:"グリッド",drag_to_create:"Drag to create",drag_to_move:"Drag to move",message_ok:"OK",message_cancel:"Cancel",next:"Next",prev:"Previous",year:"Year",month:"Month",day:"Day", +hour:"Hour",minute:"Minute"}}; //# sourceMappingURL=../sources/locale/locale_jp.js.map
\ No newline at end of file diff --git a/codebase/locale/locale_nb.js b/codebase/locale/locale_nb.js index 6576256..6debf3c 100644 --- a/codebase/locale/locale_nb.js +++ b/codebase/locale/locale_nb.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -8,5 +8,5 @@ This software is covered by GPL license. You also can obtain Commercial or Enter */ scheduler.locale={date:{month_full:["Januar","Februar","Mars","April","Mai","Juni","Juli","August","September","Oktober","November","Desember"],month_short:["Jan","Feb","Mar","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Des"],day_full:["Søndag","Mandag","Tirsdag","Onsdag","Torsdag","Fredag","Lørdag"],day_short:["Søn","Mon","Tir","Ons","Tor","Fre","Lør"]},labels:{dhx_cal_today_button:"I dag",day_tab:"Dag",week_tab:"Uke",month_tab:"Måned",new_event:"Ny hendelse",icon_save:"Lagre",icon_cancel:"Avbryt", icon_details:"Detaljer",icon_edit:"Rediger",icon_delete:"Slett",confirm_closing:"",confirm_deleting:"Hendelsen vil bli slettet permanent. Er du sikker?",section_description:"Beskrivelse",section_time:"Tidsperiode",confirm_recurring:"Vil du forandre hele dette settet av repeterende hendelser?",section_recurring:"Repeter hendelsen",button_recurring:"Av",button_recurring_open:"På",button_edit_series:"Rediger serien",button_edit_occurrence:"Redigere en kopi",agenda_tab:"Agenda",date:"Dato",description:"Beskrivelse", -year_tab:"År",week_agenda_tab:"Agenda",grid_tab:"Grid",drag_to_create:"Drag to create",drag_to_move:"Drag to move",message_ok:"OK",message_cancel:"Cancel"}}; +year_tab:"År",week_agenda_tab:"Agenda",grid_tab:"Grid",drag_to_create:"Drag to create",drag_to_move:"Drag to move",message_ok:"OK",message_cancel:"Cancel",next:"Next",prev:"Previous",year:"Year",month:"Month",day:"Day",hour:"Hour",minute:"Minute"}}; //# sourceMappingURL=../sources/locale/locale_nb.js.map
\ No newline at end of file diff --git a/codebase/locale/locale_nl.js b/codebase/locale/locale_nl.js index b9066d9..fe0246b 100644 --- a/codebase/locale/locale_nl.js +++ b/codebase/locale/locale_nl.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -8,5 +8,5 @@ This software is covered by GPL license. You also can obtain Commercial or Enter */ scheduler.locale={date:{month_full:["Januari","Februari","Maart","April","Mei","Juni","Juli","Augustus","September","Oktober","November","December"],month_short:["Jan","Feb","mrt","Apr","Mei","Jun","Jul","Aug","Sep","Okt","Nov","Dec"],day_full:["Zondag","Maandag","Dinsdag","Woensdag","Donderdag","Vrijdag","Zaterdag"],day_short:["Zo","Ma","Di","Wo","Do","Vr","Za"]},labels:{dhx_cal_today_button:"Vandaag",day_tab:"Dag",week_tab:"Week",month_tab:"Maand",new_event:"Nieuw item",icon_save:"Opslaan",icon_cancel:"Annuleren", icon_details:"Details",icon_edit:"Edit",icon_delete:"Verwijderen",confirm_closing:"",confirm_deleting:"Item zal permanent worden verwijderd, doorgaan?",section_description:"Beschrijving",section_time:"Tijd periode",full_day:"Hele dag",confirm_recurring:"Wilt u alle terugkerende items bijwerken?",section_recurring:"Item herhalen",button_recurring:"Uit",button_recurring_open:"Aan",button_edit_series:"Bewerk de serie",button_edit_occurrence:"Bewerk een kopie",agenda_tab:"Agenda",date:"Datum",description:"Omschrijving", -year_tab:"Jaar",week_agenda_tab:"Agenda",grid_tab:"Tabel",drag_to_create:"Drag to create",drag_to_move:"Drag to move",message_ok:"OK",message_cancel:"Cancel"}}; +year_tab:"Jaar",week_agenda_tab:"Agenda",grid_tab:"Tabel",drag_to_create:"Drag to create",drag_to_move:"Drag to move",message_ok:"OK",message_cancel:"Cancel",next:"Next",prev:"Previous",year:"Year",month:"Month",day:"Day",hour:"Hour",minute:"Minute"}}; //# sourceMappingURL=../sources/locale/locale_nl.js.map
\ No newline at end of file diff --git a/codebase/locale/locale_no.js b/codebase/locale/locale_no.js index 199979b..4a2425d 100644 --- a/codebase/locale/locale_no.js +++ b/codebase/locale/locale_no.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -8,5 +8,5 @@ This software is covered by GPL license. You also can obtain Commercial or Enter */ scheduler.locale={date:{month_full:["Januar","Februar","Mars","April","Mai","Juni","Juli","August","September","Oktober","November","Desember"],month_short:["Jan","Feb","Mar","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Des"],day_full:["Søndag","Mandag","Tirsdag","Onsdag","Torsdag","Fredag","Lørdag"],day_short:["Søn","Man","Tir","Ons","Tor","Fre","Lør"]},labels:{dhx_cal_today_button:"Idag",day_tab:"Dag",week_tab:"Uke",month_tab:"Måned",new_event:"Ny",icon_save:"Lagre",icon_cancel:"Avbryt",icon_details:"Detaljer", icon_edit:"Endre",icon_delete:"Slett",confirm_closing:"Endringer blir ikke lagret, er du sikker?",confirm_deleting:"Oppføringen vil bli slettet, er du sikker?",section_description:"Beskrivelse",section_time:"Tidsperiode",full_day:"Full dag",confirm_recurring:"Vil du endre hele settet med repeterende oppføringer?",section_recurring:"Repeterende oppføring",button_recurring:"Ikke aktiv",button_recurring_open:"Aktiv",button_edit_series:"Rediger serien",button_edit_occurrence:"Redigere en kopi",agenda_tab:"Agenda", -date:"Dato",description:"Beskrivelse",year_tab:"År",week_agenda_tab:"Agenda",grid_tab:"Grid",drag_to_create:"Drag to create",drag_to_move:"Drag to move",message_ok:"OK",message_cancel:"Cancel"}}; +date:"Dato",description:"Beskrivelse",year_tab:"År",week_agenda_tab:"Agenda",grid_tab:"Grid",drag_to_create:"Drag to create",drag_to_move:"Drag to move",message_ok:"OK",message_cancel:"Cancel",next:"Next",prev:"Previous",year:"Year",month:"Month",day:"Day",hour:"Hour",minute:"Minute"}}; //# sourceMappingURL=../sources/locale/locale_no.js.map
\ No newline at end of file diff --git a/codebase/locale/locale_pl.js b/codebase/locale/locale_pl.js index 367919f..9e5d1d5 100644 --- a/codebase/locale/locale_pl.js +++ b/codebase/locale/locale_pl.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -8,5 +8,5 @@ This software is covered by GPL license. You also can obtain Commercial or Enter */ scheduler.locale={date:{month_full:["Styczeń","Luty","Marzec","Kwiecień","Maj","Czerwiec","Lipiec","Sierpień","Wrzesień","Październik","Listopad","Grudzień"],month_short:["Sty","Lut","Mar","Kwi","Maj","Cze","Lip","Sie","Wrz","Paź","Lis","Gru"],day_full:["Niedziela","Poniedziałek","Wtorek","Środa","Czwartek","Piątek","Sobota"],day_short:["Nie","Pon","Wto","Śro","Czw","Pią","Sob"]},labels:{dhx_cal_today_button:"Dziś",day_tab:"Dzień",week_tab:"Tydzień",month_tab:"Miesiąc",new_event:"Nowe zdarzenie", icon_save:"Zapisz",icon_cancel:"Anuluj",icon_details:"Szczegóły",icon_edit:"Edytuj",icon_delete:"Usuń",confirm_closing:"",confirm_deleting:"Zdarzenie zostanie usunięte na zawsze, kontynuować?",section_description:"Opis",section_time:"Okres czasu",full_day:"Cały dzień",confirm_recurring:"Czy chcesz edytować cały zbiór powtarzających się zdarzeń?",section_recurring:"Powtórz zdarzenie",button_recurring:"Nieaktywne",button_recurring_open:"Aktywne",button_edit_series:"Edytuj serię",button_edit_occurrence:"Edytuj kopię", -agenda_tab:"Agenda",date:"Data",description:"Opis",year_tab:"Rok",week_agenda_tab:"Agenda",grid_tab:"Tabela",drag_to_create:"Drag to create",drag_to_move:"Drag to move",message_ok:"OK",message_cancel:"Cancel"}}; +agenda_tab:"Agenda",date:"Data",description:"Opis",year_tab:"Rok",week_agenda_tab:"Agenda",grid_tab:"Tabela",drag_to_create:"Drag to create",drag_to_move:"Drag to move",message_ok:"OK",message_cancel:"Cancel",next:"Next",prev:"Previous",year:"Year",month:"Month",day:"Day",hour:"Hour",minute:"Minute"}}; //# sourceMappingURL=../sources/locale/locale_pl.js.map
\ No newline at end of file diff --git a/codebase/locale/locale_pt.js b/codebase/locale/locale_pt.js index 3c929f5..b47e9ec 100644 --- a/codebase/locale/locale_pt.js +++ b/codebase/locale/locale_pt.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -8,5 +8,5 @@ This software is covered by GPL license. You also can obtain Commercial or Enter */ scheduler.locale={date:{month_full:["Janeiro","Fevereiro","Março","Abril","Maio","Junho","Julho","Agosto","Setembro","Outubro","Novembro","Dezembro"],month_short:["Jan","Fev","Mar","Abr","Mai","Jun","Jul","Ago","Set","Out","Nov","Dez"],day_full:["Domingo","Segunda","Terça","Quarta","Quinta","Sexta","Sábado"],day_short:["Dom","Seg","Ter","Qua","Qui","Sex","Sab"]},labels:{dhx_cal_today_button:"Hoje",day_tab:"Dia",week_tab:"Semana",month_tab:"Mês",new_event:"Novo evento",icon_save:"Salvar",icon_cancel:"Cancelar", icon_details:"Detalhes",icon_edit:"Editar",icon_delete:"Deletar",confirm_closing:"",confirm_deleting:"Tem certeza que deseja excluir?",section_description:"Descrição",section_time:"Período de tempo",full_day:"Dia inteiro",confirm_recurring:"Deseja editar todos esses eventos repetidos?",section_recurring:"Repetir evento",button_recurring:"Desabilitar",button_recurring_open:"Habilitar",button_edit_series:"Editar a série",button_edit_occurrence:"Editar uma cópia",agenda_tab:"Dia",date:"Data",description:"Descrição", -year_tab:"Ano",week_agenda_tab:"Dia",grid_tab:"Grade",drag_to_create:"Drag to create",drag_to_move:"Drag to move",message_ok:"OK",message_cancel:"Cancel"}}; +year_tab:"Ano",week_agenda_tab:"Dia",grid_tab:"Grade",drag_to_create:"Drag to create",drag_to_move:"Drag to move",message_ok:"OK",message_cancel:"Cancel",next:"Next",prev:"Previous",year:"Year",month:"Month",day:"Day",hour:"Hour",minute:"Minute"}}; //# sourceMappingURL=../sources/locale/locale_pt.js.map
\ No newline at end of file diff --git a/codebase/locale/locale_ro.js b/codebase/locale/locale_ro.js index c8e391d..57dd004 100644 --- a/codebase/locale/locale_ro.js +++ b/codebase/locale/locale_ro.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -8,5 +8,5 @@ This software is covered by GPL license. You also can obtain Commercial or Enter */ scheduler.locale={date:{month_full:["Ianuarie","Februarie","Martie","Aprilie","Mai","Iunie","Iulie","August","Septembrie","Octombrie","November","December"],month_short:["Ian","Feb","Mar","Apr","Mai","Iun","Iul","Aug","Sep","Oct","Nov","Dec"],day_full:["Duminica","Luni","Marti","Miercuri","Joi","Vineri","Sambata"],day_short:["Du","Lu","Ma","Mi","Jo","Vi","Sa"]},labels:{dhx_cal_today_button:"Astazi",day_tab:"Zi",week_tab:"Saptamana",month_tab:"Luna",new_event:"Eveniment nou",icon_save:"Salveaza",icon_cancel:"Anuleaza", icon_details:"Detalii",icon_edit:"Editeaza",icon_delete:"Sterge",confirm_closing:"Schimbarile nu vor fi salvate, esti sigur?",confirm_deleting:"Evenimentul va fi sters permanent, esti sigur?",section_description:"Descriere",section_time:"Interval",full_day:"Toata ziua",confirm_recurring:"Vrei sa editezi toata seria de evenimente repetate?",section_recurring:"Repetare",button_recurring:"Dezactivata",button_recurring_open:"Activata",button_edit_series:"Editeaza serie",button_edit_occurrence:"Editeaza doar intrare", -agenda_tab:"Agenda",date:"Data",description:"Descriere",year_tab:"An",week_agenda_tab:"Agenda",grid_tab:"Lista",drag_to_create:"Drag to create",drag_to_move:"Drag to move",message_ok:"OK",message_cancel:"Cancel"}}; +agenda_tab:"Agenda",date:"Data",description:"Descriere",year_tab:"An",week_agenda_tab:"Agenda",grid_tab:"Lista",drag_to_create:"Drag to create",drag_to_move:"Drag to move",message_ok:"OK",message_cancel:"Cancel",next:"Next",prev:"Previous",year:"Year",month:"Month",day:"Day",hour:"Hour",minute:"Minute"}}; //# sourceMappingURL=../sources/locale/locale_ro.js.map
\ No newline at end of file diff --git a/codebase/locale/locale_ru.js b/codebase/locale/locale_ru.js index 1d6aade..6d3d673 100644 --- a/codebase/locale/locale_ru.js +++ b/codebase/locale/locale_ru.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -8,5 +8,5 @@ This software is covered by GPL license. You also can obtain Commercial or Enter */ scheduler.locale={date:{month_full:["Январь","Февраль","Март","Апрель","Maй","Июнь","Июль","Август","Сентябрь","Oктябрь","Ноябрь","Декабрь"],month_short:["Янв","Фев","Maр","Aпр","Maй","Июн","Июл","Aвг","Сен","Окт","Ноя","Дек"],day_full:["Воскресенье","Понедельник","Вторник","Среда","Четверг","Пятница","Суббота"],day_short:["Вс","Пн","Вт","Ср","Чт","Пт","Сб"]},labels:{dhx_cal_today_button:"Сегодня",day_tab:"День",week_tab:"Неделя",month_tab:"Месяц",new_event:"Новое событие",icon_save:"Сохранить",icon_cancel:"Отменить", icon_details:"Детали",icon_edit:"Изменить",icon_delete:"Удалить",confirm_closing:"",confirm_deleting:"Событие будет удалено безвозвратно, продолжить?",section_description:"Описание",section_time:"Период времени",full_day:"Весь день",confirm_recurring:"Вы хотите изменить всю серию повторяющихся событий?",section_recurring:"Повторение",button_recurring:"Отключено",button_recurring_open:"Включено",button_edit_series:"Редактировать серию",button_edit_occurrence:"Редактировать экземпляр",agenda_tab:"Список", -date:"Дата",description:"Описание",year_tab:"Год",week_agenda_tab:"Список",grid_tab:"Таблица",drag_to_create:"Drag to create",drag_to_move:"Drag to move",message_ok:"OK",message_cancel:"Cancel"}}; +date:"Дата",description:"Описание",year_tab:"Год",week_agenda_tab:"Список",grid_tab:"Таблица",drag_to_create:"Drag to create",drag_to_move:"Drag to move",message_ok:"OK",message_cancel:"Cancel",next:"Next",prev:"Previous",year:"Year",month:"Month",day:"Day",hour:"Hour",minute:"Minute"}}; //# sourceMappingURL=../sources/locale/locale_ru.js.map
\ No newline at end of file diff --git a/codebase/locale/locale_si.js b/codebase/locale/locale_si.js index 5fea669..ed1c503 100644 --- a/codebase/locale/locale_si.js +++ b/codebase/locale/locale_si.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -8,5 +8,5 @@ This software is covered by GPL license. You also can obtain Commercial or Enter */ scheduler.locale={date:{month_full:["Januar","Februar","Marec","April","Maj","Junij","Julij","Avgust","September","Oktober","November","December"],month_short:["Jan","Feb","Mar","Apr","Maj","Jun","Jul","Aug","Sep","Okt","Nov","Dec"],day_full:["Nedelja","Ponedeljek","Torek","Sreda","Četrtek","Petek","Sobota"],day_short:["Ned","Pon","Tor","Sre","Čet","Pet","Sob"]},labels:{dhx_cal_today_button:"Danes",day_tab:"Dan",week_tab:"Teden",month_tab:"Mesec",new_event:"Nov dogodek",icon_save:"Shrani",icon_cancel:"Prekliči", icon_details:"Podrobnosti",icon_edit:"Uredi",icon_delete:"Izbriši",confirm_closing:"",confirm_deleting:"Dogodek bo izbrisan. Želite nadaljevati?",section_description:"Opis",section_time:"Časovni okvir",full_day:"Ves dan",confirm_recurring:"Želite urediti celoten set ponavljajočih dogodkov?",section_recurring:"Ponovi dogodek",button_recurring:"Onemogočeno",button_recurring_open:"Omogočeno",button_edit_series:"Edit series",button_edit_occurrence:"Edit occurrence",agenda_tab:"Zadeva",date:"Datum",description:"Opis", -year_tab:"Leto",week_agenda_tab:"Zadeva",grid_tab:"Miza",drag_to_create:"Drag to create",drag_to_move:"Drag to move",message_ok:"OK",message_cancel:"Cancel"}}; +year_tab:"Leto",week_agenda_tab:"Zadeva",grid_tab:"Miza",drag_to_create:"Drag to create",drag_to_move:"Drag to move",message_ok:"OK",message_cancel:"Cancel",next:"Next",prev:"Previous",year:"Year",month:"Month",day:"Day",hour:"Hour",minute:"Minute"}}; //# sourceMappingURL=../sources/locale/locale_si.js.map
\ No newline at end of file diff --git a/codebase/locale/locale_sk.js b/codebase/locale/locale_sk.js index f71e856..6756f9d 100644 --- a/codebase/locale/locale_sk.js +++ b/codebase/locale/locale_sk.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -8,5 +8,5 @@ This software is covered by GPL license. You also can obtain Commercial or Enter */ scheduler.locale={date:{month_full:["Január","Február","Marec","Apríl","Máj","Jún","Júl","August","September","Október","November","December"],month_short:["Jan","Feb","Mar","Apr","Máj","Jún","Júl","Aug","Sept","Okt","Nov","Dec"],day_full:["Nedeľa","Pondelok","Utorok","Streda","Štvrtok","Piatok","Sobota"],day_short:["Ne","Po","Ut","St","Št","Pi","So"]},labels:{dhx_cal_today_button:"Dnes",day_tab:"Deň",week_tab:"Týždeň",month_tab:"Mesiac",new_event:"Nová udalosť",icon_save:"Uložiť",icon_cancel:"Späť", icon_details:"Detail",icon_edit:"Edituj",icon_delete:"Zmazať",confirm_closing:"Vaše zmeny nebudú uložené. Skutočne?",confirm_deleting:"Udalosť bude natrvalo vymazaná. Skutočne?",section_description:"Poznámky",section_time:"Doba platnosti",confirm_recurring:"Prajete si upraviť celú radu opakovaných udalostí?",section_recurring:"Opakovanie udalosti",button_recurring:"Vypnuté",button_recurring_open:"Zapnuté",button_edit_series:"Upraviť opakovania",button_edit_occurrence:"Upraviť inštancie",agenda_tab:"Program", -date:"Dátum",description:"Poznámka",year_tab:"Rok",full_day:"Celý deň",week_agenda_tab:"Program",grid_tab:"Mriežka",drag_to_create:"Drag to create",drag_to_move:"Drag to move",message_ok:"OK",message_cancel:"Cancel"}}; +date:"Dátum",description:"Poznámka",year_tab:"Rok",full_day:"Celý deň",week_agenda_tab:"Program",grid_tab:"Mriežka",drag_to_create:"Drag to create",drag_to_move:"Drag to move",message_ok:"OK",message_cancel:"Cancel",next:"Next",prev:"Previous",year:"Year",month:"Month",day:"Day",hour:"Hour",minute:"Minute"}}; //# sourceMappingURL=../sources/locale/locale_sk.js.map
\ No newline at end of file diff --git a/codebase/locale/locale_sv.js b/codebase/locale/locale_sv.js index 927d9c9..39f02ad 100644 --- a/codebase/locale/locale_sv.js +++ b/codebase/locale/locale_sv.js @@ -1,12 +1,12 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. (c) Dinamenta, UAB. */ scheduler.locale={date:{month_full:["Januari","Februari","Mars","April","Maj","Juni","Juli","Augusti","September","Oktober","November","December"],month_short:["Jan","Feb","Mar","Apr","Maj","Jun","Jul","Aug","Sep","Okt","Nov","Dec"],day_full:["Söndag","Måndag","Tisdag","Onsdag","Torsdag","Fredag","Lördag"],day_short:["Sön","Mån","Tis","Ons","Tor","Fre","Lör"]},labels:{dhx_cal_today_button:"Idag",day_tab:"Dag",week_tab:"Vecka",month_tab:"Månad",new_event:"Ny händelse",icon_save:"Spara",icon_cancel:"Ångra", -icon_details:"Detajer",icon_edit:"Ändra",icon_delete:"Ta bort",confirm_closing:"",confirm_deleting:"Är du säker på att du vill ta bort händelsen permanent?",section_description:"Beskrivning",section_time:"Tid",full_day:"Hela dagen",confirm_recurring:"Vill du redigera hela serien med repeterande händelser?",section_recurring:"Upprepa händelse",button_recurring:"Inaktiverat",button_recurring_open:"Aktiverat",button_edit_series:"Redigera serien",button_edit_occurrence:"Redigera en kopia",agenda_tab:"Dagordning", -date:"Datum",description:"Beskrivning",year_tab:"År",week_agenda_tab:"Dagordning",grid_tab:"Galler",drag_to_create:"Drag to create",drag_to_move:"Drag to move",message_ok:"OK",message_cancel:"Cancel"}}; +icon_details:"Detaljer",icon_edit:"Ändra",icon_delete:"Ta bort",confirm_closing:"",confirm_deleting:"Är du säker på att du vill ta bort händelsen permanent?",section_description:"Beskrivning",section_time:"Tid",full_day:"Hela dagen",confirm_recurring:"Vill du redigera hela serien med repeterande händelser?",section_recurring:"Upprepa händelse",button_recurring:"Inaktiverat",button_recurring_open:"Aktiverat",button_edit_series:"Redigera serien",button_edit_occurrence:"Redigera en kopia",agenda_tab:"Dagordning", +date:"Datum",description:"Beskrivning",year_tab:"År",week_agenda_tab:"Dagordning",grid_tab:"Galler",drag_to_create:"Dra för att skapa ny",drag_to_move:"Dra för att flytta",message_ok:"OK",message_cancel:"Cancel",next:"Next",prev:"Previous",year:"Year",month:"Month",day:"Day",hour:"Hour",minute:"Minute"}}; //# sourceMappingURL=../sources/locale/locale_sv.js.map
\ No newline at end of file diff --git a/codebase/locale/locale_tr.js b/codebase/locale/locale_tr.js index b8560ae..a4a0c41 100644 --- a/codebase/locale/locale_tr.js +++ b/codebase/locale/locale_tr.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -8,5 +8,5 @@ This software is covered by GPL license. You also can obtain Commercial or Enter */ scheduler.locale={date:{month_full:["Ocak","Þubat","Mart","Nisan","Mayýs","Haziran","Temmuz","Aðustos","Eylül","Ekim","Kasým","Aralýk"],month_short:["Oca","Þub","Mar","Nis","May","Haz","Tem","Aðu","Eyl","Eki","Kas","Ara"],day_full:["Pazar","Pazartes,","Salý","Çarþamba","Perþembe","Cuma","Cumartesi"],day_short:["Paz","Pts","Sal","Çar","Per","Cum","Cts"]},labels:{dhx_cal_today_button:"Bugün",day_tab:"Gün",week_tab:"Hafta",month_tab:"Ay",new_event:"Uygun",icon_save:"Kaydet",icon_cancel:"Ýptal",icon_details:"Detaylar", icon_edit:"Düzenle",icon_delete:"Sil",confirm_closing:"",confirm_deleting:"Etkinlik silinecek, devam?",section_description:"Açýklama",section_time:"Zaman aralýðý",full_day:"Tam gün",confirm_recurring:"Tüm tekrar eden etkinlikler silinecek, devam?",section_recurring:"Etkinliði tekrarla",button_recurring:"Pasif",button_recurring_open:"Aktif",button_edit_series:"Dizi düzenleme",button_edit_occurrence:"Bir kopyasını düzenleyin",agenda_tab:"Ajanda",date:"Tarih",description:"Açýklama",year_tab:"Yýl",week_agenda_tab:"Ajanda", -grid_tab:"Izgara",drag_to_create:"Drag to create",drag_to_move:"Drag to move",message_ok:"OK",message_cancel:"Cancel"}}; +grid_tab:"Izgara",drag_to_create:"Drag to create",drag_to_move:"Drag to move",message_ok:"OK",message_cancel:"Cancel",next:"Next",prev:"Previous",year:"Year",month:"Month",day:"Day",hour:"Hour",minute:"Minute"}}; //# sourceMappingURL=../sources/locale/locale_tr.js.map
\ No newline at end of file diff --git a/codebase/locale/locale_ua.js b/codebase/locale/locale_ua.js index a6d3504..484b697 100644 --- a/codebase/locale/locale_ua.js +++ b/codebase/locale/locale_ua.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -8,5 +8,5 @@ This software is covered by GPL license. You also can obtain Commercial or Enter */ scheduler.locale={date:{month_full:["Січень","Лютий","Березень","Квітень","Травень","Червень","Липень","Серпень","Вересень","Жовтень","Листопад","Грудень"],month_short:["Січ","Лют","Бер","Кві","Тра","Чер","Лип","Сер","Вер","Жов","Лис","Гру"],day_full:["Неділя","Понеділок","Вівторок","Середа","Четвер","П'ятниця","Субота"],day_short:["Нед","Пон","Вів","Сер","Чет","Птн","Суб"]},labels:{dhx_cal_today_button:"Сьогодні",day_tab:"День",week_tab:"Тиждень",month_tab:"Місяць",new_event:"Нова подія",icon_save:"Зберегти", icon_cancel:"Відміна",icon_details:"Деталі",icon_edit:"Редагувати",icon_delete:"Вилучити",confirm_closing:"",confirm_deleting:"Подія вилучиться назавжди. Ви впевнені?",section_description:"Опис",section_time:"Часовий проміжок",full_day:"Весь день",confirm_recurring:"Хочете редагувати весь перелік повторюваних подій?",section_recurring:"Повторювана подія",button_recurring:"Відключено",button_recurring_open:"Включено",button_edit_series:"Редагувати серію",button_edit_occurrence:"Редагувати примірник", -agenda_tab:"Перелік",date:"Дата",description:"Опис",year_tab:"Рік",week_agenda_tab:"Перелік",grid_tab:"Таблиця",drag_to_create:"Drag to create",drag_to_move:"Drag to move",message_ok:"OK",message_cancel:"Cancel"}}; +agenda_tab:"Перелік",date:"Дата",description:"Опис",year_tab:"Рік",week_agenda_tab:"Перелік",grid_tab:"Таблиця",drag_to_create:"Drag to create",drag_to_move:"Drag to move",message_ok:"OK",message_cancel:"Cancel",next:"Next",prev:"Previous",year:"Year",month:"Month",day:"Day",hour:"Hour",minute:"Minute"}}; //# sourceMappingURL=../sources/locale/locale_ua.js.map
\ No newline at end of file diff --git a/codebase/locale/recurring/locale_recurring_be.js b/codebase/locale/recurring/locale_recurring_be.js index e9121d9..54fac20 100644 --- a/codebase/locale/recurring/locale_recurring_be.js +++ b/codebase/locale/recurring/locale_recurring_be.js @@ -1,11 +1,10 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. (c) Dinamenta, UAB. */ scheduler.__recurring_template='<div class="dhx_form_repeat"> <form> <div class="dhx_repeat_left"> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="day" />Дзень</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="week"/>Тыдзень</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="month" checked />Месяц</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="year" />Год</label> </div> <div class="dhx_repeat_divider"></div> <div class="dhx_repeat_center"> <div style="display:none;" id="dhx_repeat_day"> <label><input class="dhx_repeat_radio" type="radio" name="day_type" value="d"/>Кожны</label><input class="dhx_repeat_text" type="text" name="day_count" value="1" />дзень<br /> <label><input class="dhx_repeat_radio" type="radio" name="day_type" checked value="w"/>Кожны працоўны дзень</label> </div> <div style="display:none;" id="dhx_repeat_week"> Паўтараць кожны<input class="dhx_repeat_text" type="text" name="week_count" value="1" />тыдзень<br /> <table class="dhx_repeat_days"> <tr> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="1" />Панядзелак</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="4" />Чацвер</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="2" />Аўторак</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="5" />Пятніцу</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="3" />Сераду </label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="6" />Суботу</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="0" />Нядзелю</label><br /><br /> </td> </tr> </table> </div> <div id="dhx_repeat_month"> <label><input class="dhx_repeat_radio" type="radio" name="month_type" value="d"/>Паўтараць</label><input class="dhx_repeat_text" type="text" name="month_day" value="1" /> чысла кожнага<input class="dhx_repeat_text" type="text" name="month_count" value="1" />месяцу<br /> <label><input class="dhx_repeat_radio" type="radio" name="month_type" checked value="w"/></label><input class="dhx_repeat_text" type="text" name="month_week2" value="1" /><select name="month_day2"><option value="1" selected >Панядзелак<option value="2">Аўторак<option value="3">Серада<option value="4">Чацвер<option value="5">Пятніца<option value="6">Субота<option value="0">Нядзеля</select>кожны <input class="dhx_repeat_text" type="text" name="month_count2" value="1" />месяц<br /> </div> <div style="display:none;" id="dhx_repeat_year"> <label><input class="dhx_repeat_radio" type="radio" name="year_type" value="d"/></label><input class="dhx_repeat_text" type="text" name="year_day" value="1" />день<select name="year_month"><option value="0" selected >Студзеня<option value="1">Лютага<option value="2">Сакавіка<option value="3">Красавіка<option value="4">Мая<option value="5">Чэрвеня<option value="6">Ліпeня<option value="7">Жніўня<option value="8">Верасня<option value="9">Кастрычніка<option value="10">Лістапада<option value="11">Снежня</select><br /> <label><input class="dhx_repeat_radio" type="radio" name="year_type" checked value="w"/></label><input class="dhx_repeat_text" type="text" name="year_week2" value="1" /><select name="year_day2"><option value="1" selected >Панядзелак<option value="2">Аўторак<option value="3">Серада<option value="4">Чацвер<option value="5">Пятніца<option value="6">Субота<option value="0">Нядзеля</select><select name="year_month2"><option value="0" selected >Студзеня<option value="1">Лютага<option value="2">Сакавіка<option value="3">Красавіка<option value="4">Мая<option value="5">Чэрвеня<option value="6">Лiпeня<option value="7">Жніўня<option value="8">Верасня<option value="9">Кастрычніка<option value="10">Лістапада<option value="11">Снежня</select><br /> </div> </div> <div class="dhx_repeat_divider"></div> <div class="dhx_repeat_right"> <label><input class="dhx_repeat_radio" type="radio" name="end" checked/>Без даты заканчэння</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="end" /></label><input class="dhx_repeat_text" type="text" name="occurences_count" value="1" />паўтораў<br /> <label><input class="dhx_repeat_radio" type="radio" name="end" />Да </label><input class="dhx_repeat_date" type="text" name="date_of_end" value="'+scheduler.config.repeat_date_of_end+'" /><br /> </div> </form> </div> <div style="clear:both"> </div>'; - //# sourceMappingURL=../../sources/locale/recurring/locale_recurring_be.js.map
\ No newline at end of file diff --git a/codebase/locale/recurring/locale_recurring_cn.js b/codebase/locale/recurring/locale_recurring_cn.js index 96342ab..989bd1d 100644 --- a/codebase/locale/recurring/locale_recurring_cn.js +++ b/codebase/locale/recurring/locale_recurring_cn.js @@ -1,11 +1,10 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. (c) Dinamenta, UAB. */ scheduler.__recurring_template='<div class="dhx_form_repeat"> <form> <div class="dhx_repeat_left"> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="day" />按天</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="week"/>按周</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="month" checked />按月</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="year" />按年</label> </div> <div class="dhx_repeat_divider"></div> <div class="dhx_repeat_center"> <div style="display:none;" id="dhx_repeat_day"> <label><input class="dhx_repeat_radio" type="radio" name="day_type" value="d"/>每</label><input class="dhx_repeat_text" type="text" name="day_count" value="1" />天<br /> <label><input class="dhx_repeat_radio" type="radio" name="day_type" checked value="w"/>每个工作日</label> </div> <div style="display:none;" id="dhx_repeat_week"> 重复 每<input class="dhx_repeat_text" type="text" name="week_count" value="1" />星期的:<br /> <table class="dhx_repeat_days"> <tr> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="1" />星期一</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="4" />星期四</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="2" />星期二</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="5" />星期五</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="3" />星期三</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="6" />星期六</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="0" />星期日</label><br /><br /> </td> </tr> </table> </div> <div id="dhx_repeat_month"> <label><input class="dhx_repeat_radio" type="radio" name="month_type" value="d"/>重复</label><input class="dhx_repeat_text" type="text" name="month_day" value="1" />日 每<input class="dhx_repeat_text" type="text" name="month_count" value="1" />月<br /> <label><input class="dhx_repeat_radio" type="radio" name="month_type" checked value="w"/>在</label><input class="dhx_repeat_text" type="text" name="month_week2" value="1" /><select name="month_day2"><option value="1" selected >星期一<option value="2">星期二<option value="3">星期三<option value="4">星期四<option value="5">星期五<option value="6">星期六<option value="0">星期日</select>每<input class="dhx_repeat_text" type="text" name="month_count2" value="1" />月<br /> </div> <div style="display:none;" id="dhx_repeat_year"> <label><input class="dhx_repeat_radio" type="radio" name="year_type" value="d"/>每</label><input class="dhx_repeat_text" type="text" name="year_day" value="1" />日<select name="year_month"><option value="0" selected >一月<option value="1">二月<option value="2">三月<option value="3">四月<option value="4">五月<option value="5">六月<option value="6">七月<option value="7">八月<option value="8">九月<option value="9">十月<option value="10">十一月<option value="11">十二月</select>月<br /> <label><input class="dhx_repeat_radio" type="radio" name="year_type" checked value="w"/>在</label><input class="dhx_repeat_text" type="text" name="year_week2" value="1" /><select name="year_day2"><option value="1" selected >星期一<option value="2">星期二<option value="3">星期三<option value="4">星期四<option value="5">星期五<option value="6">星期六<option value="7">星期日</select>的<select name="year_month2"><option value="0" selected >一月<option value="1">二月<option value="2">三月<option value="3">四月<option value="4">五月<option value="5">六月<option value="6">七月<option value="7">八月<option value="8">九月<option value="9">十月<option value="10">十一月<option value="11">十二月</select><br /> </div> </div> <div class="dhx_repeat_divider"></div> <div class="dhx_repeat_right"> <label><input class="dhx_repeat_radio" type="radio" name="end" checked/>无结束日期</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="end" />重复</label><input class="dhx_repeat_text" type="text" name="occurences_count" value="1" />次结束<br /> <label><input class="dhx_repeat_radio" type="radio" name="end" />结束于</label><input class="dhx_repeat_date" type="text" name="date_of_end" value="'+scheduler.config.repeat_date_of_end+'" /><br /> </div> </form> </div> <div style="clear:both"> </div>'; - //# sourceMappingURL=../../sources/locale/recurring/locale_recurring_cn.js.map
\ No newline at end of file diff --git a/codebase/locale/recurring/locale_recurring_cs.js b/codebase/locale/recurring/locale_recurring_cs.js index 47c6d0b..7fd673c 100644 --- a/codebase/locale/recurring/locale_recurring_cs.js +++ b/codebase/locale/recurring/locale_recurring_cs.js @@ -1,11 +1,10 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. (c) Dinamenta, UAB. */ scheduler.__recurring_template='<div class="dhx_form_repeat"><form><div class="dhx_repeat_left"><label><input class="dhx_repeat_radio" type="radio" name="repeat" value="day" />Denně</label><br /><label><input class="dhx_repeat_radio" type="radio" name="repeat" value="week"/>Týdně</label><br /><label><input class="dhx_repeat_radio" type="radio" name="repeat" value="month" checked />Měsíčně</label><br /><label><input class="dhx_repeat_radio" type="radio" name="repeat" value="year" />Ročně</label></div><div class="dhx_repeat_divider"></div><div class="dhx_repeat_center"><div style="display:none;" id="dhx_repeat_day"><label>Opakované:<br/></label><label><input class="dhx_repeat_radio" type="radio" name="day_type" value="d"/>každý</label><input class="dhx_repeat_text" type="text" name="day_count" value="1" />Den<br /><label><input class="dhx_repeat_radio" type="radio" name="day_type" checked value="w"/>pracovní dny</label></div><div style="display:none;" id="dhx_repeat_week"> Opakuje každých<input class="dhx_repeat_text" type="text" name="week_count" value="1" />Týdnů na:<br /><table class="dhx_repeat_days"><tr> <td><label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="1" />Pondělí</label><br /><label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="4" />Čtvrtek</label> </td> <td><label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="2" />Úterý</label><br /><label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="5" />Pátek</label> </td> <td><label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="3" />Středa</label><br /><label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="6" />Sobota</label> </td> <td><label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="0" />Neděle </label><br /><br /> </td></tr></table></div><div id="dhx_repeat_month"><label>Opakované:<br/></label><label><input class="dhx_repeat_radio" type="radio" name="month_type" value="d"/>u každého</label><input class="dhx_repeat_text" type="text" name="month_day" value="1" />Den každého<input class="dhx_repeat_text" type="text" name="month_count" value="1" />Měsíc<br /><label><input class="dhx_repeat_radio" type="radio" name="month_type" checked value="w"/>na</label><input class="dhx_repeat_text" type="text" name="month_week2" value="1" /><select name="month_day2"><option value="1" selected >Pondělí<option value="2">Úterý<option value="3">Středa<option value="4">Čtvrtek<option value="5">Pátek<option value="6">Sobota<option value="0">Neděle</select>každý<input class="dhx_repeat_text" type="text" name="month_count2" value="1" />Měsíc<br /> </div> <div style="display:none;" id="dhx_repeat_year"> <label>Opakované:</label> <label><input class="dhx_repeat_radio" type="radio" name="year_type" value="d"/>u každého</label><input class="dhx_repeat_text" type="text" name="year_day" value="1" />Den v<select name="year_month"><option value="0" selected >Leden<option value="1">Únor<option value="2">Březen<option value="3">Duben<option value="4">Květen<option value="5">Červen<option value="6">Červenec<option value="7">Srpen<option value="8">Září<option value="9">Říjen<option value="10">Listopad<option value="11">Prosinec</select><br /> <label><input class="dhx_repeat_radio" type="radio" name="year_type" checked value="w"/>na</label><input class="dhx_repeat_text" type="text" name="year_week2" value="1" /><select name="year_day2"><option value="1" selected >Pondělí<option value="2">Úterý<option value="3">Středa<option value="4">Čtvrtek<option value="5">Pátek<option value="6">Sobota<option value="0">Neděle</select>v<select name="year_month2"><option value="0" selected >Leden<option value="1">Únor<option value="2">Březen<option value="3">Duben<option value="4">Květen<option value="5">Červen<option value="6">Červenec<option value="7">Srpen<option value="8">Září<option value="9">Říjen<option value="10">Listopad<option value="11">Prosinec</select><br /> </div> </div> <div class="dhx_repeat_divider"></div> <div class="dhx_repeat_right"> <label><input class="dhx_repeat_radio" type="radio" name="end" checked/>bez data ukončení</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="end" />po</label><input class="dhx_repeat_text" type="text" name="occurences_count" value="1" />Události<br /> <label><input class="dhx_repeat_radio" type="radio" name="end" />Konec</label><input class="dhx_repeat_date" type="text" name="date_of_end" value="'+scheduler.config.repeat_date_of_end+'" /><br /></div> </form> </div> <div style="clear:both"> </div>'; - //# sourceMappingURL=../../sources/locale/recurring/locale_recurring_cs.js.map
\ No newline at end of file diff --git a/codebase/locale/recurring/locale_recurring_da.js b/codebase/locale/recurring/locale_recurring_da.js index c8e879a..d971526 100644 --- a/codebase/locale/recurring/locale_recurring_da.js +++ b/codebase/locale/recurring/locale_recurring_da.js @@ -1,11 +1,10 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. (c) Dinamenta, UAB. */ scheduler.__recurring_template='<div class="dhx_form_repeat"> <form> <div class="dhx_repeat_left"> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="day" />Daglig</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="week"/>Ugenlig</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="month" checked />Månedlig</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="year" />Årlig</label> </div> <div class="dhx_repeat_divider"></div> <div class="dhx_repeat_center"> <div style="display:none;" id="dhx_repeat_day"> <label>Gentager sig:<br/></label> <label><input class="dhx_repeat_radio" type="radio" name="day_type" value="d"/>Hver</label><input class="dhx_repeat_text" type="text" name="day_count" value="1" />dag<br /> <label><input class="dhx_repeat_radio" type="radio" name="day_type" checked value="w"/>På hver arbejdsdag</label> </div> <div style="display:none;" id="dhx_repeat_week"> Gentager sig hver<input class="dhx_repeat_text" type="text" name="week_count" value="1" />uge på følgende dage:<br /> <table class="dhx_repeat_days"> <tr> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="1" />Mandag</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="4" />Torsdag</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="2" />Tirsdag</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="5" />Fredag</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="3" />Onsdag</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="6" />Lørdag</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="0" />Søndag</label><br /><br /> </td> </tr> </table> </div> <div id="dhx_repeat_month"> <label>Gentager sig:<br/></label> <label><input class="dhx_repeat_radio" type="radio" name="month_type" value="d"/>Hver den</label><input class="dhx_repeat_text" type="text" name="month_day" value="1" /> i hver<input class="dhx_repeat_text" type="text" name="month_count" value="1" />måned<br /> <label><input class="dhx_repeat_radio" type="radio" name="month_type" checked value="w"/>Den</label><input class="dhx_repeat_text" type="text" name="month_week2" value="1" /><select name="month_day2"><option value="1" selected >Mandag<option value="2">Tirsdag<option value="3">Onsdag<option value="4">Torsdag<option value="5">Fredag<option value="6">Lørdag<option value="0">Søndag</select>hver<input class="dhx_repeat_text" type="text" name="month_count2" value="1" />måned<br /> </div> <div style="display:none;" id="dhx_repeat_year"> <label>Gentager sig:</label> <label><input class="dhx_repeat_radio" type="radio" name="year_type" value="d"/>På hver</label><input class="dhx_repeat_text" type="text" name="year_day" value="1" />dag i<select name="year_month"><option value="0" selected >Januar<option value="1">Februar<option value="2">März<option value="3">April<option value="4">Mai<option value="5">Juni<option value="6">Juli<option value="7">August<option value="8">September<option value="9">Oktober<option value="10">November<option value="11">Dezember</select><br /> <label><input class="dhx_repeat_radio" type="radio" name="year_type" checked value="w"/>Den</label><input class="dhx_repeat_text" type="text" name="year_week2" value="1" /><select name="year_day2"><option value="1" selected >Mandag<option value="2">Tirsdag<option value="3">Onsdag<option value="4">Torsdag<option value="5">Fredag<option value="6">Lørdag<option value="0">Søndag</select>i<select name="year_month2"><option value="0" selected >Januar<option value="1">Februar<option value="2">März<option value="3">April<option value="4">Mai<option value="5">Juni<option value="6">Juli<option value="7">August<option value="8">September<option value="9">Oktober<option value="10">November<option value="11">Dezember</select><br /> </div> </div> <div class="dhx_repeat_divider"></div> <div class="dhx_repeat_right"> <label><input class="dhx_repeat_radio" type="radio" name="end" checked/>Ingen slutdato</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="end" />Efter</label><input class="dhx_repeat_text" type="text" name="occurences_count" value="1" />gentagelse<br /> <label><input class="dhx_repeat_radio" type="radio" name="end" />Slut</label><input class="dhx_repeat_date" type="text" name="date_of_end" value="'+scheduler.config.repeat_date_of_end+'" /><br /> </div> </form> </div> <div style="clear:both"> </div>'; - //# sourceMappingURL=../../sources/locale/recurring/locale_recurring_da.js.map
\ No newline at end of file diff --git a/codebase/locale/recurring/locale_recurring_de.js b/codebase/locale/recurring/locale_recurring_de.js index dea51e1..5ad361e 100644 --- a/codebase/locale/recurring/locale_recurring_de.js +++ b/codebase/locale/recurring/locale_recurring_de.js @@ -1,11 +1,10 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. (c) Dinamenta, UAB. */ scheduler.__recurring_template='<div class="dhx_form_repeat"> <form> <div class="dhx_repeat_left"> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="day" />Täglich</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="week"/>Wöchentlich</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="month" checked />Monatlich</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="year" />Jährlich</label> </div> <div class="dhx_repeat_divider"></div> <div class="dhx_repeat_center"> <div style="display:none;" id="dhx_repeat_day"> <label>Wiederholt sich:<br/></label> <label><input class="dhx_repeat_radio" type="radio" name="day_type" value="d"/>jeden</label><input class="dhx_repeat_text" type="text" name="day_count" value="1" />Tag<br /> <label><input class="dhx_repeat_radio" type="radio" name="day_type" checked value="w"/>an jedem Arbeitstag</label> </div> <div style="display:none;" id="dhx_repeat_week"> Wiederholt sich jede<input class="dhx_repeat_text" type="text" name="week_count" value="1" />Woche am:<br /> <table class="dhx_repeat_days"> <tr> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="1" />Montag</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="4" />Donnerstag</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="2" />Dienstag</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="5" />Freitag</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="3" />Mittwoch</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="6" />Samstag</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="0" />Sonntag</label><br /><br /> </td> </tr> </table> </div> <div id="dhx_repeat_month"> <label>Wiederholt sich:<br/></label> <label><input class="dhx_repeat_radio" type="radio" name="month_type" value="d"/>an jedem</label><input class="dhx_repeat_text" type="text" name="month_day" value="1" />Tag eines jeden<input class="dhx_repeat_text" type="text" name="month_count" value="1" />Monats<br /> <label><input class="dhx_repeat_radio" type="radio" name="month_type" checked value="w"/>am</label><input class="dhx_repeat_text" type="text" name="month_week2" value="1" /><select name="month_day2"><option value="1" selected >Montag<option value="2">Dienstag<option value="3">Mittwoch<option value="4">Donnerstag<option value="5">Freitag<option value="6">Samstag<option value="0">Sonntag</select>jeden<input class="dhx_repeat_text" type="text" name="month_count2" value="1" />Monats<br /> </div> <div style="display:none;" id="dhx_repeat_year"> <label>Wiederholt sich:</label> <label><input class="dhx_repeat_radio" type="radio" name="year_type" value="d"/>an jedem</label><input class="dhx_repeat_text" type="text" name="year_day" value="1" />Tag im<select name="year_month"><option value="0" selected >Januar<option value="1">Februar<option value="2">März<option value="3">April<option value="4">Mai<option value="5">Juni<option value="6">Juli<option value="7">August<option value="8">September<option value="9">Oktober<option value="10">November<option value="11">Dezember</select><br /> <label><input class="dhx_repeat_radio" type="radio" name="year_type" checked value="w"/>am</label><input class="dhx_repeat_text" type="text" name="year_week2" value="1" /><select name="year_day2"><option value="1" selected >Montag<option value="2">Dienstag<option value="3">Mittwoch<option value="4">Donnerstag<option value="5">Freitag<option value="6">Samstag<option value="0">Sonntag</select>im<select name="year_month2"><option value="0" selected >Januar<option value="1">Februar<option value="2">März<option value="3">April<option value="4">Mai<option value="5">Juni<option value="6">Juli<option value="7">August<option value="8">September<option value="9">Oktober<option value="10">November<option value="11">Dezember</select><br /> </div> </div> <div class="dhx_repeat_divider"></div> <div class="dhx_repeat_right"> <label><input class="dhx_repeat_radio" type="radio" name="end" checked/>kein Enddatum</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="end" />nach</label><input class="dhx_repeat_text" type="text" name="occurences_count" value="1" />Ereignissen<br /> <label><input class="dhx_repeat_radio" type="radio" name="end" />Schluß</label><input class="dhx_repeat_date" type="text" name="date_of_end" value="'+scheduler.config.repeat_date_of_end+'" /><br /> </div> </form> </div> <div style="clear:both"> </div>'; - //# sourceMappingURL=../../sources/locale/recurring/locale_recurring_de.js.map
\ No newline at end of file diff --git a/codebase/locale/recurring/locale_recurring_el.js b/codebase/locale/recurring/locale_recurring_el.js index 1a254e2..875de01 100644 --- a/codebase/locale/recurring/locale_recurring_el.js +++ b/codebase/locale/recurring/locale_recurring_el.js @@ -1,11 +1,10 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. (c) Dinamenta, UAB. */ scheduler.__recurring_template='<div class="dhx_form_repeat"> <form> <div class="dhx_repeat_left"> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="day" />Ημερησίως</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="week"/>Εβδομαδιαίως</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="month" checked />Μηνιαίως</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="year" />Ετησίως</label> </div> <div class="dhx_repeat_divider"></div> <div class="dhx_repeat_center"> <div style="display:none;" id="dhx_repeat_day"> <label><input class="dhx_repeat_radio" type="radio" name="day_type" value="d"/>Κάθε</label><input class="dhx_repeat_text" type="text" name="day_count" value="1" />ημέρα<br /> <label><input class="dhx_repeat_radio" type="radio" name="day_type" checked value="w"/>Κάθε εργάσιμη</label> </div> <div style="display:none;" id="dhx_repeat_week"> Επανάληψη κάθε<input class="dhx_repeat_text" type="text" name="week_count" value="1" />εβδομάδα τις επόμενες ημέρες:<br /> <table class="dhx_repeat_days"> <tr> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="1" />Δευτέρα</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="4" />Πέμπτη</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="2" />Τρίτη</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="5" />Παρασκευή</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="3" />Τετάρτη</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="6" />Σάββατο</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="0" />Κυριακή</label><br /><br /> </td> </tr> </table> </div> <div id="dhx_repeat_month"> <label><input class="dhx_repeat_radio" type="radio" name="month_type" value="d"/>Επανάληψη</label><input class="dhx_repeat_text" type="text" name="month_day" value="1" />ημέρα κάθε<input class="dhx_repeat_text" type="text" name="month_count" value="1" />μήνα<br /> <label><input class="dhx_repeat_radio" type="radio" name="month_type" checked value="w"/>Την</label><input class="dhx_repeat_text" type="text" name="month_week2" value="1" /><select name="month_day2"><option value="1" selected >Δευτέρα<option value="2">Τρίτη<option value="3">Τετάρτη<option value="4">Πέμπτη<option value="5">Παρασκευή<option value="6">Σάββατο<option value="0">Κυριακή</select>κάθε<input class="dhx_repeat_text" type="text" name="month_count2" value="1" />μήνα<br /> </div> <div style="display:none;" id="dhx_repeat_year"> <label><input class="dhx_repeat_radio" type="radio" name="year_type" value="d"/>Κάθε</label><input class="dhx_repeat_text" type="text" name="year_day" value="1" />ημέρα<select name="year_month"><option value="0" selected >Ιανουάριος<option value="1">Φεβρουάριος<option value="2">Μάρτιος<option value="3">Απρίλιος<option value="4">Μάϊος<option value="5">Ιούνιος<option value="6">Ιούλιος<option value="7">Αύγουστος<option value="8">Σεπτέμβριος<option value="9">Οκτώβριος<option value="10">Νοέμβριος<option value="11">Δεκέμβριος</select>μήνα<br /> <label><input class="dhx_repeat_radio" type="radio" name="year_type" checked value="w"/>Την</label><input class="dhx_repeat_text" type="text" name="year_week2" value="1" /><select name="year_day2"><option value="1" selected >Δευτέρα<option value="2">Τρίτη<option value="3">Τετάρτη<option value="4">Πέμπτη<option value="5">Παρασκευή<option value="6">Σάββατο<option value="7">Κυριακή</select>του<select name="year_month2"><option value="0" selected >Ιανουάριος<option value="1">Φεβρουάριος<option value="2">Μάρτιος<option value="3">Απρίλιος<option value="4">Μάϊος<option value="5">Ιούνιος<option value="6">Ιούλιος<option value="7">Αύγουστος<option value="8">Σεπτέμβριος<option value="9">Οκτώβριος<option value="10">Νοέμβριος<option value="11">Δεκέμβριος</select><br /> </div> </div> <div class="dhx_repeat_divider"></div> <div class="dhx_repeat_right"> <label><input class="dhx_repeat_radio" type="radio" name="end" checked/>Χωρίς ημερομηνία λήξεως</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="end" />Μετά από</label><input class="dhx_repeat_text" type="text" name="occurences_count" value="1" />επαναλήψεις<br /> <label><input class="dhx_repeat_radio" type="radio" name="end" />Λήγει την</label><input class="dhx_repeat_date" type="text" name="date_of_end" value="'+scheduler.config.repeat_date_of_end+'" /><br /> </div> </form> </div> <div style="clear:both"> </div>'; - //# sourceMappingURL=../../sources/locale/recurring/locale_recurring_el.js.map
\ No newline at end of file diff --git a/codebase/locale/recurring/locale_recurring_en.js b/codebase/locale/recurring/locale_recurring_en.js index 442fd92..b56277a 100644 --- a/codebase/locale/recurring/locale_recurring_en.js +++ b/codebase/locale/recurring/locale_recurring_en.js @@ -1,11 +1,10 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. (c) Dinamenta, UAB. */ scheduler.__recurring_template='<div class="dhx_form_repeat"> <form> <div class="dhx_repeat_left"> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="day" />Daily</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="week"/>Weekly</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="month" checked />Monthly</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="year" />Yearly</label> </div> <div class="dhx_repeat_divider"></div> <div class="dhx_repeat_center"> <div style="display:none;" id="dhx_repeat_day"> <label><input class="dhx_repeat_radio" type="radio" name="day_type" value="d"/>Every</label><input class="dhx_repeat_text" type="text" name="day_count" value="1" />day<br /> <label><input class="dhx_repeat_radio" type="radio" name="day_type" checked value="w"/>Every workday</label> </div> <div style="display:none;" id="dhx_repeat_week"> Repeat every<input class="dhx_repeat_text" type="text" name="week_count" value="1" />week next days:<br /> <table class="dhx_repeat_days"> <tr> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="1" />Monday</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="4" />Thursday</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="2" />Tuesday</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="5" />Friday</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="3" />Wednesday</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="6" />Saturday</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="0" />Sunday</label><br /><br /> </td> </tr> </table> </div> <div id="dhx_repeat_month"> <label><input class="dhx_repeat_radio" type="radio" name="month_type" value="d"/>Repeat</label><input class="dhx_repeat_text" type="text" name="month_day" value="1" />day every<input class="dhx_repeat_text" type="text" name="month_count" value="1" />month<br /> <label><input class="dhx_repeat_radio" type="radio" name="month_type" checked value="w"/>On</label><input class="dhx_repeat_text" type="text" name="month_week2" value="1" /><select name="month_day2"><option value="1" selected >Monday<option value="2">Tuesday<option value="3">Wednesday<option value="4">Thursday<option value="5">Friday<option value="6">Saturday<option value="0">Sunday</select>every<input class="dhx_repeat_text" type="text" name="month_count2" value="1" />month<br /> </div> <div style="display:none;" id="dhx_repeat_year"> <label><input class="dhx_repeat_radio" type="radio" name="year_type" value="d"/>Every</label><input class="dhx_repeat_text" type="text" name="year_day" value="1" />day<select name="year_month"><option value="0" selected >January<option value="1">February<option value="2">March<option value="3">April<option value="4">May<option value="5">June<option value="6">July<option value="7">August<option value="8">September<option value="9">October<option value="10">November<option value="11">December</select>month<br /> <label><input class="dhx_repeat_radio" type="radio" name="year_type" checked value="w"/>On</label><input class="dhx_repeat_text" type="text" name="year_week2" value="1" /><select name="year_day2"><option value="1" selected >Monday<option value="2">Tuesday<option value="3">Wednesday<option value="4">Thursday<option value="5">Friday<option value="6">Saturday<option value="7">Sunday</select>of<select name="year_month2"><option value="0" selected >January<option value="1">February<option value="2">March<option value="3">April<option value="4">May<option value="5">June<option value="6">July<option value="7">August<option value="8">September<option value="9">October<option value="10">November<option value="11">December</select><br /> </div> </div> <div class="dhx_repeat_divider"></div> <div class="dhx_repeat_right"> <label><input class="dhx_repeat_radio" type="radio" name="end" checked/>No end date</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="end" />After</label><input class="dhx_repeat_text" type="text" name="occurences_count" value="1" />occurrences<br /> <label><input class="dhx_repeat_radio" type="radio" name="end" />End by</label><input class="dhx_repeat_date" type="text" name="date_of_end" value="'+scheduler.config.repeat_date_of_end+'" /><br /> </div> </form> </div> <div style="clear:both"> </div>'; - //# sourceMappingURL=../../sources/locale/recurring/locale_recurring_en.js.map
\ No newline at end of file diff --git a/codebase/locale/recurring/locale_recurring_es.js b/codebase/locale/recurring/locale_recurring_es.js index 94163bd..156a9fd 100644 --- a/codebase/locale/recurring/locale_recurring_es.js +++ b/codebase/locale/recurring/locale_recurring_es.js @@ -1,11 +1,10 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. (c) Dinamenta, UAB. */ scheduler.__recurring_template='<div class="dhx_form_repeat"> <form> <div class="dhx_repeat_left"> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="day" />Diariamente</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="week"/>Semanalment</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="month" checked />Mensualmente</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="year" />Anualmente</label> </div> <div class="dhx_repeat_divider"></div> <div class="dhx_repeat_center"> <div style="display:none;" id="dhx_repeat_day"> <label><input class="dhx_repeat_radio" type="radio" name="day_type" value="d"/>Cada</label><input class="dhx_repeat_text" type="text" name="day_count" value="1" />dia<br /> <label><input class="dhx_repeat_radio" type="radio" name="day_type" checked value="w"/>Cada jornada de trabajo</label> </div> <div style="display:none;" id="dhx_repeat_week"> Repetir cada<input class="dhx_repeat_text" type="text" name="week_count" value="1" />semana:<br /> <table class="dhx_repeat_days"> <tr> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="1" />Lunes</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="4" />Jeuves</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="2" />Martes</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="5" />Viernes</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="3" />Miércoles</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="6" />Sabado</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="0" />Domingo</label><br /><br /> </td> </tr> </table> </div> <div id="dhx_repeat_month"> <label><input class="dhx_repeat_radio" type="radio" name="month_type" value="d"/>Repita</label><input class="dhx_repeat_text" type="text" name="month_day" value="1" />dia cada <input class="dhx_repeat_text" type="text" name="month_count" value="1" />mes<br /> <label><input class="dhx_repeat_radio" type="radio" name="month_type" checked value="w"/>El</label><input class="dhx_repeat_text" type="text" name="month_week2" value="1" /><select name="month_day2"><option value="1" selected >Lunes<option value="2">Martes<option value="3">Miércoles<option value="4">Jeuves<option value="5">Viernes<option value="6">Sabado<option value="0">Domingo</select>cada<input class="dhx_repeat_text" type="text" name="month_count2" value="1" />mes<br /> </div> <div style="display:none;" id="dhx_repeat_year"> <label><input class="dhx_repeat_radio" type="radio" name="year_type" value="d"/>Cada</label><input class="dhx_repeat_text" type="text" name="year_day" value="1" />dia<select name="year_month"><option value="0" selected >Enero<option value="1">Febrero<option value="2">Маrzo<option value="3">Аbril<option value="4">Mayo<option value="5">Junio<option value="6">Julio<option value="7">Аgosto<option value="8">Setiembre<option value="9">Octubre<option value="10">Noviembre<option value="11">Diciembre</select>mes<br /> <label><input class="dhx_repeat_radio" type="radio" name="year_type" checked value="w"/>El</label><input class="dhx_repeat_text" type="text" name="year_week2" value="1" /><select name="year_day2"><option value="1" selected >Lunes<option value="2">Martes<option value="3">Miércoles<option value="4">Jeuves<option value="5">Viernes<option value="6">Sabado<option value="0">Domingo</select>del<select name="year_month2"><option value="0" selected >Enero<option value="1">Febrero<option value="2">Маrzo<option value="3">Аbril<option value="4">Mayo<option value="5">Junio<option value="6">Julio<option value="7">Аgosto<option value="8">Setiembre<option value="9">Octubre<option value="10">Noviembre<option value="11">Diciembre</select><br /> </div> </div> <div class="dhx_repeat_divider"></div> <div class="dhx_repeat_right"> <label><input class="dhx_repeat_radio" type="radio" name="end" checked/>Sin fecha de finalización</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="end" />Después de</label><input class="dhx_repeat_text" type="text" name="occurences_count" value="1" />occurencias<br /> <label><input class="dhx_repeat_radio" type="radio" name="end" />Fin</label><input class="dhx_repeat_date" type="text" name="date_of_end" value="'+scheduler.config.repeat_date_of_end+'" /><br /> </div> </form> </div> <div style="clear:both"> </div>'; - //# sourceMappingURL=../../sources/locale/recurring/locale_recurring_es.js.map
\ No newline at end of file diff --git a/codebase/locale/recurring/locale_recurring_fi.js b/codebase/locale/recurring/locale_recurring_fi.js index 688c119..cc1460e 100644 --- a/codebase/locale/recurring/locale_recurring_fi.js +++ b/codebase/locale/recurring/locale_recurring_fi.js @@ -1,11 +1,10 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. (c) Dinamenta, UAB. */ scheduler.__recurring_template='<div class="dhx_form_repeat"> <form> <div class="dhx_repeat_left"> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="day" />Päivittäin</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="week"/>Viikoittain</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="month" checked />Kuukausittain</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="year" />Vuosittain</label> </div> <div class="dhx_repeat_divider"></div> <div class="dhx_repeat_center"> <div style="display:none;" id="dhx_repeat_day"> <label><input class="dhx_repeat_radio" type="radio" name="day_type" value="d"/>Joka</label><input class="dhx_repeat_text" type="text" name="day_count" value="1" />päivä<br /> <label><input class="dhx_repeat_radio" type="radio" name="day_type" checked value="w"/>Joka arkipäivä</label> </div> <div style="display:none;" id="dhx_repeat_week">Toista joka<input class="dhx_repeat_text" type="text" name="week_count" value="1" />viikko näinä päivinä:<br /> <table class="dhx_repeat_days"> <tr> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="1" />Maanantai</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="4" />Torstai</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="2" />Tiistai</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="5" />Perjantai</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="3" />Keskiviikko</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="6" />Lauantai</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="0" />Sunnuntai</label><br /><br /> </td> </tr> </table> </div> <div id="dhx_repeat_month"> <label><input class="dhx_repeat_radio" type="radio" name="month_type" value="d"/>Toista</label><input class="dhx_repeat_text" type="text" name="month_day" value="1" />päivänä joka<input class="dhx_repeat_text" type="text" name="month_count" value="1" />kuukausi<br /> <label><input class="dhx_repeat_radio" type="radio" name="month_type" checked value="w"/></label><input class="dhx_repeat_text" type="text" name="month_week2" value="1" /><select name="month_day2"><option value="1" selected >Maanantai<option value="2">Tiistai<option value="3">Keskiviikko<option value="4">Torstai<option value="5">Perjantai<option value="6">Lauantai<option value="0">Sunnuntai</select>joka<input class="dhx_repeat_text" type="text" name="month_count2" value="1" />kuukausi<br /> </div> <div style="display:none;" id="dhx_repeat_year"> <label><input class="dhx_repeat_radio" type="radio" name="year_type" value="d"/>Joka</label><input class="dhx_repeat_text" type="text" name="year_day" value="1" />päivä<select name="year_month"><option value="0" selected >Tammikuu<option value="1">Helmikuu<option value="2">Maaliskuu<option value="3">Huhtikuu<option value="4">Toukokuu<option value="5">Kesäkuu<option value="6">Heinäkuu<option value="7">Elokuu<option value="8">Syyskuu<option value="9">Lokakuu<option value="10">Marraskuu<option value="11">Joulukuu</select>kuukausi<br /> <label><input class="dhx_repeat_radio" type="radio" name="year_type" checked value="w"/></label><input class="dhx_repeat_text" type="text" name="year_week2" value="1" /><select name="year_day2"><option value="1" selected >Maanantai<option value="2">Tiistai<option value="3">Keskiviikko<option value="4">Torstai<option value="5">Perjantai<option value="6">Lauantai<option value="0">Sunnuntai</select><select name="year_month2"><option value="0" selected >Tammikuu<option value="1">Helmikuu<option value="2">Maaliskuu<option value="3">Huhtikuu<option value="4">Toukokuu<option value="5">Kesäkuu<option value="6">Heinäkuu<option value="7">Elokuu<option value="8">Syyskuu<option value="9">Lokakuu<option value="10">Marraskuu<option value="11">Joulukuu</select><br /> </div> </div> <div class="dhx_repeat_divider"></div> <div class="dhx_repeat_right"> <label><input class="dhx_repeat_radio" type="radio" name="end" checked/>Ei loppumisaikaa</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="end" /></label><input class="dhx_repeat_text" type="text" name="occurences_count" value="1" />Toiston jälkeen<br /> <label><input class="dhx_repeat_radio" type="radio" name="end" />Loppuu</label><input class="dhx_repeat_date" type="text" name="date_of_end" value="'+scheduler.config.repeat_date_of_end+'" /><br /> </div> </form> </div> <div style="clear:both"> </div>'; - //# sourceMappingURL=../../sources/locale/recurring/locale_recurring_fi.js.map
\ No newline at end of file diff --git a/codebase/locale/recurring/locale_recurring_fr.js b/codebase/locale/recurring/locale_recurring_fr.js index 4590ff8..b3befb1 100644 --- a/codebase/locale/recurring/locale_recurring_fr.js +++ b/codebase/locale/recurring/locale_recurring_fr.js @@ -1,11 +1,10 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. (c) Dinamenta, UAB. */ scheduler.__recurring_template='<div class="dhx_form_repeat"> <form> <div class="dhx_repeat_left"> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="day" />Quotidienne</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="week"/>Hebdomadaire</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="month" checked />Mensuelle</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="year" />Annuelle</label> </div> <div class="dhx_repeat_divider"></div> <div class="dhx_repeat_center"> <div style="display:none;" id="dhx_repeat_day"> <label><input class="dhx_repeat_radio" type="radio" name="day_type" value="d"/>Chaque</label><input class="dhx_repeat_text" type="text" name="day_count" value="1" />jour<br /> <label><input class="dhx_repeat_radio" type="radio" name="day_type" checked value="w"/>Chaque journée de travail</label> </div> <div style="display:none;" id="dhx_repeat_week"> Répéter toutes les<input class="dhx_repeat_text" type="text" name="week_count" value="1" />semaine:<br /> <table class="dhx_repeat_days"> <tr> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="1" />Lundi</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="4" />Jeudi</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="2" />Mardi</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="5" />Vendredi</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="3" />Mercredi</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="6" />Samedi</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="0" />Dimanche</label><br /><br /> </td> </tr> </table> </div> <div id="dhx_repeat_month"> <label><input class="dhx_repeat_radio" type="radio" name="month_type" value="d"/>Répéter</label><input class="dhx_repeat_text" type="text" name="month_day" value="1" />jour chaque<input class="dhx_repeat_text" type="text" name="month_count" value="1" />mois<br /> <label><input class="dhx_repeat_radio" type="radio" name="month_type" checked value="w"/>Le</label><input class="dhx_repeat_text" type="text" name="month_week2" value="1" /><select name="month_day2"><option value="1" selected >Lundi<option value="2">Mardi<option value="3">Mercredi<option value="4">Jeudi<option value="5">Vendredi<option value="6">Samedi<option value="0">Dimanche</select>chaque<input class="dhx_repeat_text" type="text" name="month_count2" value="1" />mois<br /> </div> <div style="display:none;" id="dhx_repeat_year"> <label><input class="dhx_repeat_radio" type="radio" name="year_type" value="d"/>Chaque</label><input class="dhx_repeat_text" type="text" name="year_day" value="1" />jour<select name="year_month"><option value="0" selected >Janvier<option value="1">Février<option value="2">Mars<option value="3">Avril<option value="4">Mai<option value="5">Juin<option value="6">Juillet<option value="7">Août<option value="8">Septembre<option value="9">Octobre<option value="10">Novembre<option value="11">Décembre</select>mois<br /> <label><input class="dhx_repeat_radio" type="radio" name="year_type" checked value="w"/>Le</label><input class="dhx_repeat_text" type="text" name="year_week2" value="1" /><select name="year_day2"><option value="1" selected >Lundi<option value="2">Mardi<option value="3">Mercredi<option value="4">Jeudi<option value="5">Vendredi<option value="6">Samedi<option value="0">Dimanche</select>du<select name="year_month2"><option value="0" selected >Janvier<option value="1">Février<option value="2">Mars<option value="3">Avril<option value="4">Mai<option value="5">Juin<option value="6">Juillet<option value="7">Août<option value="8">Septembre<option value="9">Octobre<option value="10">Novembre<option value="11">Décembre</select><br /> </div> </div> <div class="dhx_repeat_divider"></div> <div class="dhx_repeat_right"> <label><input class="dhx_repeat_radio" type="radio" name="end" checked/>Pas de date d"achèvement</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="end" />Après</label><input class="dhx_repeat_text" type="text" name="occurences_count" value="1" />occurrences<br /> <label><input class="dhx_repeat_radio" type="radio" name="end" />Fin</label><input class="dhx_repeat_date" type="text" name="date_of_end" value="'+scheduler.config.repeat_date_of_end+'" /><br /> </div> </form> </div> <div style="clear:both"> </div>'; - //# sourceMappingURL=../../sources/locale/recurring/locale_recurring_fr.js.map
\ No newline at end of file diff --git a/codebase/locale/recurring/locale_recurring_it.js b/codebase/locale/recurring/locale_recurring_it.js index d91381f..9315595 100644 --- a/codebase/locale/recurring/locale_recurring_it.js +++ b/codebase/locale/recurring/locale_recurring_it.js @@ -1,11 +1,10 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. (c) Dinamenta, UAB. */ scheduler.__recurring_template='<div class="dhx_form_repeat"> <form> <div class="dhx_repeat_left"> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="day" />Quotidiano</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="week"/>Settimanale</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="month" checked />Mensile</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="year" />Annuale</label> </div> <div class="dhx_repeat_divider"></div> <div class="dhx_repeat_center"> <div style="display:none;" id="dhx_repeat_day"> <label><input class="dhx_repeat_radio" type="radio" name="day_type" value="d"/>Ogni</label><input class="dhx_repeat_text" type="text" name="day_count" value="1" />giorno<br /> <label><input class="dhx_repeat_radio" type="radio" name="day_type" checked value="w"/>Ogni giornata lavorativa</label> </div> <div style="display:none;" id="dhx_repeat_week"> Ripetere ogni<input class="dhx_repeat_text" type="text" name="week_count" value="1" />settimana:<br /> <table class="dhx_repeat_days"> <tr> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="1" />Lunedì</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="4" />Jovedì</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="2" />Martedì</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="5" />Venerdì</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="3" />Mercoledì</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="6" />Sabato</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="0" />Domenica</label><br /><br /> </td> </tr> </table> </div> <div id="dhx_repeat_month"> <label><input class="dhx_repeat_radio" type="radio" name="month_type" value="d"/>Ripetere</label><input class="dhx_repeat_text" type="text" name="month_day" value="1" />giorno ogni<input class="dhx_repeat_text" type="text" name="month_count" value="1" />mese<br /> <label><input class="dhx_repeat_radio" type="radio" name="month_type" checked value="w"/>Il</label><input class="dhx_repeat_text" type="text" name="month_week2" value="1" /><select name="month_day2"><option value="1" selected >Lunedì<option value="2">Martedì<option value="3">Mercoledì<option value="4">Jovedì<option value="5">Venerdì<option value="6">Sabato<option value="0">Domenica</select>ogni<input class="dhx_repeat_text" type="text" name="month_count2" value="1" />mese<br /> </div> <div style="display:none;" id="dhx_repeat_year"> <label><input class="dhx_repeat_radio" type="radio" name="year_type" value="d"/>Ogni</label><input class="dhx_repeat_text" type="text" name="year_day" value="1" />giorno<select name="year_month"><option value="0" selected >Gennaio<option value="1">Febbraio<option value="2">Marzo<option value="3">Aprile<option value="4">Maggio<option value="5">Jiugno<option value="6">Luglio<option value="7">Agosto<option value="8">Settembre<option value="9">Ottobre<option value="10">Novembre<option value="11">Dicembre</select>mese<br /> <label><input class="dhx_repeat_radio" type="radio" name="year_type" checked value="w"/>Il</label><input class="dhx_repeat_text" type="text" name="year_week2" value="1" /><select name="year_day2"><option value="1" selected >Lunedì<option value="2">Martedì<option value="3">Mercoledì<option value="4">Jovedì<option value="5">Venerdì<option value="6">Sabato<option value="0">Domenica</select>del<select name="year_month2"><option value="0" selected >Gennaio<option value="1">Febbraio<option value="2">Marzo<option value="3">Aprile<option value="4">Maggio<option value="5">Jiugno<option value="6">Luglio<option value="7">Agosto<option value="8">Settembre<option value="9">Ottobre<option value="10">Novembre<option value="11">Dicembre</select><br /> </div> </div> <div class="dhx_repeat_divider"></div> <div class="dhx_repeat_right"> <label><input class="dhx_repeat_radio" type="radio" name="end" checked/>Senza data finale</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="end" />Dopo</label><input class="dhx_repeat_text" type="text" name="occurences_count" value="1" />occorenze<br /> <label><input class="dhx_repeat_radio" type="radio" name="end" />Fine</label><input class="dhx_repeat_date" type="text" name="date_of_end" value="'+scheduler.config.repeat_date_of_end+'" /><br /> </div> </form> </div> <div style="clear:both"> </div>'; - //# sourceMappingURL=../../sources/locale/recurring/locale_recurring_it.js.map
\ No newline at end of file diff --git a/codebase/locale/recurring/locale_recurring_nb.js b/codebase/locale/recurring/locale_recurring_nb.js index ed979e8..4aff5a3 100644 --- a/codebase/locale/recurring/locale_recurring_nb.js +++ b/codebase/locale/recurring/locale_recurring_nb.js @@ -1,11 +1,10 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. (c) Dinamenta, UAB. */ scheduler.__recurring_template='<div class="dhx_form_repeat"> <form> <div class="dhx_repeat_left"> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="day" />Daglig</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="week"/>Ukentlig</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="month" checked />Månedlig</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="year" />Årlig</label> </div> <div class="dhx_repeat_divider"></div> <div class="dhx_repeat_center"> <div style="display:none;" id="dhx_repeat_day"> <label>Gjenta:<br/></label> <label><input class="dhx_repeat_radio" type="radio" name="day_type" value="d"/>Hver</label><input class="dhx_repeat_text" type="text" name="day_count" value="1" />dag<br /> <label><input class="dhx_repeat_radio" type="radio" name="day_type" checked value="w"/>Alle hverdager</label> </div> <div style="display:none;" id="dhx_repeat_week"> Gjentas hver<input class="dhx_repeat_text" type="text" name="week_count" value="1" />uke på:<br /> <table class="dhx_repeat_days"> <tr> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="1" />Mandag</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="4" />Torsdag</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="2" />Tirsdag</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="5" />Fredag</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="3" />Onsdag</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="6" />Lørdag</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="0" />Sondag</label><br /><br /> </td> </tr> </table> </div> <div id="dhx_repeat_month"> <label>Gjenta:<br/></label> <label><input class="dhx_repeat_radio" type="radio" name="month_type" value="d"/>På hver</label><input class="dhx_repeat_text" type="text" name="month_day" value="1" />dag hver<input class="dhx_repeat_text" type="text" name="month_count" value="1" />måned<br /> <label><input class="dhx_repeat_radio" type="radio" name="month_type" checked value="w"/>På</label><input class="dhx_repeat_text" type="text" name="month_week2" value="1" /><select name="month_day2"><option value="1" selected >Mandag<option value="2">Tirsdag<option value="3">Onsdag<option value="4">Torsdag<option value="5">Fredag<option value="6">Lørdag<option value="0">Søndag</select>hver<input class="dhx_repeat_text" type="text" name="month_count2" value="1" />måned<br /> </div> <div style="display:none;" id="dhx_repeat_year"> <label>Gjenta:</label> <label><input class="dhx_repeat_radio" type="radio" name="year_type" value="d"/>på hver</label><input class="dhx_repeat_text" type="text" name="year_day" value="1" />dag i<select name="year_month"><option value="0" selected >Januar<option value="1">Februar<option value="2">Mars<option value="3">April<option value="4">Mai<option value="5">Juni<option value="6">Juli<option value="7">August<option value="8">September<option value="9">Oktober<option value="10">November<option value="11">Desember</select><br /> <label><input class="dhx_repeat_radio" type="radio" name="year_type" checked value="w"/>på</label><input class="dhx_repeat_text" type="text" name="year_week2" value="1" /><select name="year_day2"><option value="1" selected >Mandag<option value="2">Tirsdag<option value="3">Onsdag<option value="4">Torsdag<option value="5">Fredag<option value="6">Lørdag<option value="0">Søndag</select>i<select name="year_month2"><option value="0" selected >Januar<option value="1">Februar<option value="2">Mars<option value="3">April<option value="4">Mai<option value="5">Juni<option value="6">Juli<option value="7">August<option value="8">September<option value="9">Oktober<option value="10">November<option value="11">Desember</select><br /> </div> </div> <div class="dhx_repeat_divider"></div> <div class="dhx_repeat_right"> <label><input class="dhx_repeat_radio" type="radio" name="end" checked/>Ingen sluttdato</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="end" />Etter</label><input class="dhx_repeat_text" type="text" name="occurences_count" value="1" />forekomst<br /> <label><input class="dhx_repeat_radio" type="radio" name="end" />Stop den</label><input class="dhx_repeat_date" type="text" name="date_of_end" value="'+scheduler.config.repeat_date_of_end+'" /><br /> </div> </form> </div> <div style="clear:both"> </div>'; - //# sourceMappingURL=../../sources/locale/recurring/locale_recurring_nb.js.map
\ No newline at end of file diff --git a/codebase/locale/recurring/locale_recurring_nl.js b/codebase/locale/recurring/locale_recurring_nl.js index bc0e735..8cab8f3 100644 --- a/codebase/locale/recurring/locale_recurring_nl.js +++ b/codebase/locale/recurring/locale_recurring_nl.js @@ -1,11 +1,10 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. (c) Dinamenta, UAB. */ scheduler.__recurring_template='<div class="dhx_form_repeat"> <form> <div class="dhx_repeat_left"> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="day" />Dagelijks</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="week"/>Wekelijks</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="month" checked />Maandelijks</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="year" />Jaarlijks</label> </div> <div class="dhx_repeat_divider"></div> <div class="dhx_repeat_center"> <div style="display:none;" id="dhx_repeat_day"> <label><input class="dhx_repeat_radio" type="radio" name="day_type" value="d"/>Elke</label><input class="dhx_repeat_text" type="text" name="day_count" value="1" />dag(en)<br /> <label><input class="dhx_repeat_radio" type="radio" name="day_type" checked value="w"/>Elke werkdag</label> </div> <div style="display:none;" id="dhx_repeat_week"> Herhaal elke<input class="dhx_repeat_text" type="text" name="week_count" value="1" />week op de volgende dagen:<br /> <table class="dhx_repeat_days"> <tr> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="1" />Maandag</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="4" />Donderdag</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="2" />Dinsdag</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="5" />Vrijdag</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="3" />Woensdag</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="6" />Zaterdag</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="0" />Zondag</label><br /><br /> </td> </tr> </table> </div> <div id="dhx_repeat_month"> <label><input class="dhx_repeat_radio" type="radio" name="month_type" value="d"/>Herhaal</label><input class="dhx_repeat_text" type="text" name="month_day" value="1" />dag iedere<input class="dhx_repeat_text" type="text" name="month_count" value="1" />maanden<br /> <label><input class="dhx_repeat_radio" type="radio" name="month_type" checked value="w"/>Op</label><input class="dhx_repeat_text" type="text" name="month_week2" value="1" /><select name="month_day2"> <option value="1">Maandag <option value="2">Dinsdag <option value="3">Woensdag <option value="4">Donderdag <option value="5">Vrijdag <option value="6">Zaterdag <option value="0">Zondag </select>iedere<input class="dhx_repeat_text" type="text" name="month_count2" value="1" />maanden<br /> </div> <div style="display:none;" id="dhx_repeat_year"> <label><input class="dhx_repeat_radio" type="radio" name="year_type" value="d"/>Iedere</label><input class="dhx_repeat_text" type="text" name="year_day" value="1" />dag<select name="year_month"><option value="0" selected >Januari<option value="1">Februari<option value="2">Maart<option value="3">April<option value="4">Mei<option value="5">Juni<option value="6">Juli<option value="7">Augustus<option value="8">September<option value="9">Oktober<option value="10">November<option value="11">December</select>maand<br /> <label><input class="dhx_repeat_radio" type="radio" name="year_type" checked value="w"/>Op</label><input class="dhx_repeat_text" type="text" name="year_week2" value="1" /><select name="year_day2"><option value="1" selected >Maandag<option value="2">Dinsdag<option value="3">Woensdag<option value="4">Donderdag<option value="5">Vrijdag<option value="6">Zaterdag<option value="7">Zondag</select>van<select name="year_month2"><option value="0" selected >Januari<option value="1">Februari<option value="2">Maart<option value="3">April<option value="4">Mei<option value="5">Juni<option value="6">Juli<option value="7">Augustus<option value="8">September<option value="9">Oktober<option value="10">November<option value="11">December</select><br /> </div> </div> <div class="dhx_repeat_divider"></div> <div class="dhx_repeat_right"> <label><input class="dhx_repeat_radio" type="radio" name="end" checked/>Geen eind datum</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="end" />Na</label><input class="dhx_repeat_text" type="text" name="occurences_count" value="1" />keren<br /> <label><input class="dhx_repeat_radio" type="radio" name="end" />Eindigd per</label><input class="dhx_repeat_date" type="text" name="date_of_end" value="'+scheduler.config.repeat_date_of_end+'" /><br /> </div> </form> </div> <div style="clear:both"> </div>'; - //# sourceMappingURL=../../sources/locale/recurring/locale_recurring_nl.js.map
\ No newline at end of file diff --git a/codebase/locale/recurring/locale_recurring_pl.js b/codebase/locale/recurring/locale_recurring_pl.js index cb1ed1a..9777013 100644 --- a/codebase/locale/recurring/locale_recurring_pl.js +++ b/codebase/locale/recurring/locale_recurring_pl.js @@ -1,11 +1,10 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. (c) Dinamenta, UAB. */ scheduler.__recurring_template='<div class="dhx_form_repeat"> <form> <div class="dhx_repeat_left"> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="day" />Codziennie</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="week"/>Co tydzie</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="month" checked />Co miesic</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="year" />Co rok</label> </div> <div class="dhx_repeat_divider"></div> <div class="dhx_repeat_center"> <div style="display:none;" id="dhx_repeat_day"> <label><input class="dhx_repeat_radio" type="radio" name="day_type" value="d"/>Kadego</label><input class="dhx_repeat_text" type="text" name="day_count" value="1" />dnia<br /> <label><input class="dhx_repeat_radio" type="radio" name="day_type" checked value="w"/>Kadego dnia roboczego</label> </div> <div style="display:none;" id="dhx_repeat_week"> Powtarzaj kadego<input class="dhx_repeat_text" type="text" name="week_count" value="1" />tygodnia w dni:<br /> <table class="dhx_repeat_days"> <tr> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="1" />Poniedziaek</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="4" />Czwartek</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="2" />Wtorek</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="5" />Pitek</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="3" />roda</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="6" />Sobota</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="0" />Niedziela</label><br /><br /> </td> </tr> </table> </div> <div id="dhx_repeat_month"> <label><input class="dhx_repeat_radio" type="radio" name="month_type" value="d"/>Powtrz</label><input class="dhx_repeat_text" type="text" name="month_day" value="1" />dnia kadego<input class="dhx_repeat_text" type="text" name="month_count" value="1" />miesica<br /> <label><input class="dhx_repeat_radio" type="radio" name="month_type" checked value="w"/>W</label><input class="dhx_repeat_text" type="text" name="month_week2" value="1" /><select name="month_day2"><option value="1" selected >Poniedziaek<option value="2">Wtorek<option value="3">roda<option value="4">Czwartek<option value="5">Pitek<option value="6">Sobota<option value="0">Niedziela</select>kadego<input class="dhx_repeat_text" type="text" name="month_count2" value="1" />miesica<br /> </div> <div style="display:none;" id="dhx_repeat_year"> <label><input class="dhx_repeat_radio" type="radio" name="year_type" value="d"/>Kadego</label><input class="dhx_repeat_text" type="text" name="year_day" value="1" />dnia miesica<select name="year_month"><option value="0" selected >Stycznia<option value="1">Lutego<option value="2">Marca<option value="3">Kwietnia<option value="4">Maja<option value="5">Czerwca<option value="6">Lipca<option value="7">Sierpnia<option value="8">Wrzenia<option value="9">Padziernka<option value="10">Listopada<option value="11">Grudnia</select><br /> <label><input class="dhx_repeat_radio" type="radio" name="year_type" checked value="w"/>W</label><input class="dhx_repeat_text" type="text" name="year_week2" value="1" /><select name="year_day2"><option value="1" selected >Poniedziaek<option value="2">Wtorek<option value="3">rod<option value="4">Czwartek<option value="5">Pitek<option value="6">Sobot<option value="7">Niedziel</select>miesica<select name="year_month2"><option value="0" selected >Stycznia<option value="1">Lutego<option value="2">Marca<option value="3">Kwietnia<option value="4">Maja<option value="5">Czerwca<option value="6">Lipca<option value="7">Sierpnia<option value="8">Wrzenia<option value="9">Padziernka<option value="10">Listopada<option value="11">Grudnia</select><br /> </div> </div> <div class="dhx_repeat_divider"></div> <div class="dhx_repeat_right"> <label><input class="dhx_repeat_radio" type="radio" name="end" checked/>Bez daty kocowej</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="end" />Po</label><input class="dhx_repeat_text" type="text" name="occurences_count" value="1" />wystpieniu/ach<br /> <label><input class="dhx_repeat_radio" type="radio" name="end" />Zakocz w</label><input class="dhx_repeat_date" type="text" name="date_of_end" value="'+scheduler.config.repeat_date_of_end+'" /><br /> </div> </form> </div> <div style="clear:both"> </div>'; - //# sourceMappingURL=../../sources/locale/recurring/locale_recurring_pl.js.map
\ No newline at end of file diff --git a/codebase/locale/recurring/locale_recurring_pt.js b/codebase/locale/recurring/locale_recurring_pt.js index a2abc7c..28857c6 100644 --- a/codebase/locale/recurring/locale_recurring_pt.js +++ b/codebase/locale/recurring/locale_recurring_pt.js @@ -1,11 +1,10 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. (c) Dinamenta, UAB. */ scheduler.__recurring_template='<div class="dhx_form_repeat"> <form> <div class="dhx_repeat_left"> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="day" />Diário</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="week"/>Semanal</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="month" checked />Mensal</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="year" />Anual</label> </div> <div class="dhx_repeat_divider"></div> <div class="dhx_repeat_center"> <div style="display:none;" id="dhx_repeat_day"> <label><input class="dhx_repeat_radio" type="radio" name="day_type" value="d"/>Cada</label><input class="dhx_repeat_text" type="text" name="day_count" value="1" />dia(s)<br /> <label><input class="dhx_repeat_radio" type="radio" name="day_type" checked value="w"/>Cada trabalho diário</label> </div> <div style="display:none;" id="dhx_repeat_week"> Repita cada<input class="dhx_repeat_text" type="text" name="week_count" value="1" />semana:<br /> <table class="dhx_repeat_days"> <tr> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="1" />Segunda</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="4" />Quinta</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="2" />Terça</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="5" />Sexta</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="3" />Quarta</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="6" />Sábado</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="0" />Domingo</label><br /><br /> </td> </tr> </table> </div> <div id="dhx_repeat_month"> <label><input class="dhx_repeat_radio" type="radio" name="month_type" value="d"/>Repetir</label><input class="dhx_repeat_text" type="text" name="month_day" value="1" />todo dia<input class="dhx_repeat_text" type="text" name="month_count" value="1" />mês<br /> <label><input class="dhx_repeat_radio" type="radio" name="month_type" checked value="w"/>Em</label><input class="dhx_repeat_text" type="text" name="month_week2" value="1" /><select name="month_day2"><option value="1" selected >Segunda<option value="2">Terça<option value="3">Quarta<option value="4">Quinta<option value="5">Sexta<option value="6">Sábado<option value="0">Domingo</select>todo<input class="dhx_repeat_text" type="text" name="month_count2" value="1" />mês<br /> </div> <div style="display:none;" id="dhx_repeat_year"> <label><input class="dhx_repeat_radio" type="radio" name="year_type" value="d"/>Todo</label><input class="dhx_repeat_text" type="text" name="year_day" value="1" />dia<select name="year_month"><option value="0" selected >Janeiro<option value="1">Fevereiro<option value="2">Março<option value="3">Abril<option value="4">Maio<option value="5">Junho<option value="6">Julho<option value="7">Agosto<option value="8">Setembro<option value="9">Outubro<option value="10">Novembro<option value="11">Dezembro</select>mês<br /> <label><input class="dhx_repeat_radio" type="radio" name="year_type" checked value="w"/>Em</label><input class="dhx_repeat_text" type="text" name="year_week2" value="1" /><select name="year_day2"><option value="1" selected >Segunda<option value="2">Terça<option value="3">Quarta<option value="4">Quinta<option value="5">Sexta<option value="6">Sábado<option value="7">Domingo</select>of<select name="year_month2"><option value="0" selected >Janeiro<option value="1">Fevereiro<option value="2">Março<option value="3">Abril<option value="4">Maio<option value="5">Junho<option value="6">Julho<option value="7">Agosto<option value="8">Setembro<option value="9">Outubro<option value="10">Novembro<option value="11">Dezembro</select><br /> </div> </div> <div class="dhx_repeat_divider"></div> <div class="dhx_repeat_right"> <label><input class="dhx_repeat_radio" type="radio" name="end" checked/>Sem data final</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="end" />Depois</label><input class="dhx_repeat_text" type="text" name="occurences_count" value="1" />ocorrências<br /> <label><input class="dhx_repeat_radio" type="radio" name="end" />Fim</label><input class="dhx_repeat_date" type="text" name="date_of_end" value="'+scheduler.config.repeat_date_of_end+'" /><br /> </div> </form> </div> <div style="clear:both"> </div>'; - //# sourceMappingURL=../../sources/locale/recurring/locale_recurring_pt.js.map
\ No newline at end of file diff --git a/codebase/locale/recurring/locale_recurring_ro.js b/codebase/locale/recurring/locale_recurring_ro.js index f9706a5..dd64a27 100644 --- a/codebase/locale/recurring/locale_recurring_ro.js +++ b/codebase/locale/recurring/locale_recurring_ro.js @@ -1,11 +1,10 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. (c) Dinamenta, UAB. */ scheduler.__recurring_template='<div class="dhx_form_repeat"> <form> <div class="dhx_repeat_left"> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="day" />Zilnic</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="week"/>Saptamanal</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="month" checked />Lunar</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="year" />Anual</label> </div> <div class="dhx_repeat_divider"></div> <div class="dhx_repeat_center"> <div style="display:none;" id="dhx_repeat_day"> <label><input class="dhx_repeat_radio" type="radio" name="day_type" value="d"/>La fiecare</label><input class="dhx_repeat_text" type="text" name="day_count" value="1" />zi(le)<br /> <label><input class="dhx_repeat_radio" type="radio" name="day_type" checked value="w"/>Fiecare zi lucratoare</label> </div> <div style="display:none;" id="dhx_repeat_week"> Repeta la fiecare<input class="dhx_repeat_text" type="text" name="week_count" value="1" />saptamana in urmatoarele zile:<br /> <table class="dhx_repeat_days"> <tr> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="1" />Luni</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="4" />Joi</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="2" />Marti</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="5" />Vineri</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="3" />Miercuri</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="6" />Sambata</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="0" />Duminica</label><br /><br /> </td> </tr> </table> </div> <div id="dhx_repeat_month"> <label><input class="dhx_repeat_radio" type="radio" name="month_type" value="d"/>Repeta in</label><input class="dhx_repeat_text" type="text" name="month_day" value="1" />zi la fiecare<input class="dhx_repeat_text" type="text" name="month_count" value="1" />luni<br /> <label><input class="dhx_repeat_radio" type="radio" name="month_type" checked value="w"/>In a</label><input class="dhx_repeat_text" type="text" name="month_week2" value="1" />zi de<select name="month_day2"><option value="1" selected >Luni<option value="2">Marti<option value="3">Miercuri<option value="4">Joi<option value="5">Vineri<option value="6">Sambata<option value="0">Duminica</select>la fiecare<input class="dhx_repeat_text" type="text" name="month_count2" value="1" />luni<br /> </div> <div id="dhx_repeat_year"> <label><input class="dhx_repeat_radio" type="radio" name="year_type" value="d"/>In</label><input class="dhx_repeat_text" type="text" name="year_day" value="1" />zi a lunii<select name="year_month"><option value="0" selected >Ianuarie<option value="1">Februarie<option value="2">Martie<option value="3">Aprilie<option value="4">Mai<option value="5">Iunie<option value="6">Iulie<option value="7">August<option value="8">Septembrie<option value="9">Octombrie<option value="10">Noiembrie<option value="11">Decembrie</select><br /> <label><input class="dhx_repeat_radio" type="radio" name="year_type" checked value="w"/>In</label><input class="dhx_repeat_text" type="text" name="year_week2" value="1" />zi de<select name="year_day2"><option value="1" selected >Luni<option value="2">Marti<option value="3">Miercuri<option value="4">Joi<option value="5">Vineri<option value="6">Sambata<option value="7">Duminica</select>a lunii<select name="year_month2"><option value="0" selected >Ianuarie<option value="1">Februarie<option value="2">Martie<option value="3">Aprilie<option value="4">Mai<option value="5">Iunie<option value="6">Iulie<option value="7">August<option value="8">Septembrie<option value="9">Octombrie<option value="10">Noiembrie<option value="11">Decembrie</select><br /> </div> </div> <div class="dhx_repeat_divider"></div> <div class="dhx_repeat_right"> <label><input class="dhx_repeat_radio" type="radio" name="end" checked/>Fara data de sfarsit</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="end" />Dupa</label><input class="dhx_repeat_text" type="text" name="occurences_count" value="1" />evenimente<br /> <label><input class="dhx_repeat_radio" type="radio" name="end" />La data</label><input class="dhx_repeat_date" type="text" name="date_of_end" value="'+scheduler.config.repeat_date_of_end+'" /><br /> </div> </form> </div> <div style="clear:both"></div>'; - //# sourceMappingURL=../../sources/locale/recurring/locale_recurring_ro.js.map
\ No newline at end of file diff --git a/codebase/locale/recurring/locale_recurring_ru.js b/codebase/locale/recurring/locale_recurring_ru.js index 68fdcfc..cc40692 100644 --- a/codebase/locale/recurring/locale_recurring_ru.js +++ b/codebase/locale/recurring/locale_recurring_ru.js @@ -1,11 +1,10 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. (c) Dinamenta, UAB. */ scheduler.__recurring_template='<div class="dhx_form_repeat"> <form> <div class="dhx_repeat_left"> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="day" />День</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="week"/>Неделя</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="month" checked />Месяц</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="year" />Год</label> </div> <div class="dhx_repeat_divider"></div> <div class="dhx_repeat_center"> <div style="display:none;" id="dhx_repeat_day"> <label><input class="dhx_repeat_radio" type="radio" name="day_type" value="d"/>Каждый</label><input class="dhx_repeat_text" type="text" name="day_count" value="1" />день<br /> <label><input class="dhx_repeat_radio" type="radio" name="day_type" checked value="w"/>Каждый рабочий день</label> </div> <div style="display:none;" id="dhx_repeat_week"> Повторять каждую<input class="dhx_repeat_text" type="text" name="week_count" value="1" />неделю , в:<br /> <table class="dhx_repeat_days"> <tr> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="1" />Понедельник</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="4" />Четверг</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="2" />Вторник</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="5" />Пятницу</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="3" />Среду </label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="6" />Субботу</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="0" />Воскресенье</label><br /><br /> </td> </tr> </table> </div> <div id="dhx_repeat_month"> <label><input class="dhx_repeat_radio" type="radio" name="month_type" value="d"/>Повторять</label><input class="dhx_repeat_text" type="text" name="month_day" value="1" /> числа каждый <input class="dhx_repeat_text" type="text" name="month_count" value="1" />месяц<br /> <label><input class="dhx_repeat_radio" type="radio" name="month_type" checked value="w"/></label><input class="dhx_repeat_text" type="text" name="month_week2" value="1" /><select name="month_day2"><option value="1" selected >Понедельник<option value="2">Вторник<option value="3">Среда<option value="4">Четверг<option value="5">Пятница<option value="6">Суббота<option value="0">Воскресенье</select>каждый <input class="dhx_repeat_text" type="text" name="month_count2" value="1" />месяц<br /> </div> <div style="display:none;" id="dhx_repeat_year"> <label><input class="dhx_repeat_radio" type="radio" name="year_type" value="d"/></label><input class="dhx_repeat_text" type="text" name="year_day" value="1" />день<select name="year_month"><option value="0" selected >Января<option value="1">Февраля<option value="2">Марта<option value="3">Апреля<option value="4">Мая<option value="5">Июня<option value="6">Июля<option value="7">Августа<option value="8">Сентября<option value="9">Октября<option value="10">Ноября<option value="11">Декабря</select><br /> <label><input class="dhx_repeat_radio" type="radio" name="year_type" checked value="w"/></label><input class="dhx_repeat_text" type="text" name="year_week2" value="1" /><select name="year_day2"><option value="1" selected >Понедельник<option value="2">Вторник<option value="3">Среда<option value="4">Четверг<option value="5">Пятница<option value="6">Суббота<option value="0">Воскресенье</select><select name="year_month2"><option value="0" selected >Января<option value="1">Февраля<option value="2">Марта<option value="3">Апреля<option value="4">Мая<option value="5">Июня<option value="6">Июля<option value="7">Августа<option value="8">Сентября<option value="9">Октября<option value="10">Ноября<option value="11">Декабря</select><br /> </div> </div> <div class="dhx_repeat_divider"></div> <div class="dhx_repeat_right"> <label><input class="dhx_repeat_radio" type="radio" name="end" checked/>Без даты окончания</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="end" /></label><input class="dhx_repeat_text" type="text" name="occurences_count" value="1" />повторений<br /> <label><input class="dhx_repeat_radio" type="radio" name="end" />До </label><input class="dhx_repeat_date" type="text" name="date_of_end" value="'+scheduler.config.repeat_date_of_end+'" /><br /> </div> </form> </div> <div style="clear:both"> </div>'; - //# sourceMappingURL=../../sources/locale/recurring/locale_recurring_ru.js.map
\ No newline at end of file diff --git a/codebase/locale/recurring/locale_recurring_sk.js b/codebase/locale/recurring/locale_recurring_sk.js index 030beaa..0c53f9f 100644 --- a/codebase/locale/recurring/locale_recurring_sk.js +++ b/codebase/locale/recurring/locale_recurring_sk.js @@ -1,11 +1,10 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. (c) Dinamenta, UAB. */ scheduler.__recurring_template='<div class="dhx_form_repeat"><form><div class="dhx_repeat_left"><label><input class="dhx_repeat_radio" type="radio" name="repeat" value="day" />Denne</label><br /><label><input class="dhx_repeat_radio" type="radio" name="repeat" value="week"/>Týždenne</label><br /><label><input class="dhx_repeat_radio" type="radio" name="repeat" value="month" checked />Mesaène</label><br /><label><input class="dhx_repeat_radio" type="radio" name="repeat" value="year" />Roène</label></div><div class="dhx_repeat_divider"></div><div class="dhx_repeat_center"><div style="display:none;" id="dhx_repeat_day"><label><input class="dhx_repeat_radio" type="radio" name="day_type" value="d"/>Každý</label><input class="dhx_repeat_text" type="text" name="day_count" value="1" />deò<br /><label><input class="dhx_repeat_radio" type="radio" name="day_type" checked value="w"/>Každý prac. deò</label></div><div style="display:none;" id="dhx_repeat_week">Opakova každý<input class="dhx_repeat_text" type="text" name="week_count" value="1" />týždeò v dòoch:<br /><table class="dhx_repeat_days"><tr><td><label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="1" />Pondelok</label><br /><label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="4" />Štvrtok</label></td><td><label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="2" />Utorok</label><br /><label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="5" />Piatok</label></td><td><label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="3" />Streda</label><br /><label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="6" />Sobota</label></td><td><label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="0" />Nede¾a</label><br /><br /></td></tr></table></div><div id="dhx_repeat_month"><label><input class="dhx_repeat_radio" type="radio" name="month_type" value="d"/>Opakova</label><input class="dhx_repeat_text" type="text" name="month_day" value="1" />deò každý<input class="dhx_repeat_text" type="text" name="month_count" value="1" />mesiac<br /><label><input class="dhx_repeat_radio" type="radio" name="month_type" checked value="w"/>On</label><input class="dhx_repeat_text" type="text" name="month_week2" value="1" /><select name="month_day2"><option value="1" selected >Pondelok<option value="2">Utorok<option value="3">Streda<option value="4">Štvrtok<option value="5">Piatok<option value="6">Sobota<option value="0">Nede¾a</select>každý<input class="dhx_repeat_text" type="text" name="month_count2" value="1" />mesiac<br /></div><div style="display:none;" id="dhx_repeat_year"><label><input class="dhx_repeat_radio" type="radio" name="year_type" value="d"/>Každý</label><input class="dhx_repeat_text" type="text" name="year_day" value="1" />deò<select name="year_month"><option value="0" selected >Január<option value="1">Február<option value="2">Marec<option value="3">Apríl<option value="4">Máj<option value="5">Jún<option value="6">Júl<option value="7">August<option value="8">September<option value="9">Október<option value="10">November<option value="11">December</select>mesiac<br /><label><input class="dhx_repeat_radio" type="radio" name="year_type" checked value="w"/>On</label><input class="dhx_repeat_text" type="text" name="year_week2" value="1" /><select name="year_day2"><option value="1" selected >Pondelok<option value="2">Utorok<option value="3">Streda<option value="4">Štvrtok<option value="5">Piatok<option value="6">Sobota<option value="7">Nede¾a</select>poèas<select name="year_month2"><option value="0" selected >Január<option value="1">Február<option value="2">Marec<option value="3">Apríl<option value="4">Máj<option value="5">Jún<option value="6">Júl<option value="7">August<option value="8">September<option value="9">Október<option value="10">November<option value="11">December</select><br /></div></div><div class="dhx_repeat_divider"></div><div class="dhx_repeat_right"><label><input class="dhx_repeat_radio" type="radio" name="end" checked/>Bez dátumu ukonèenia</label><br /><label><input class="dhx_repeat_radio" type="radio" name="end" />Po</label><input class="dhx_repeat_text" type="text" name="occurences_count" value="1" />udalostiach<br /><label><input class="dhx_repeat_radio" type="radio" name="end" />Ukonèi</label><input class="dhx_repeat_date" type="text" name="date_of_end" value="'+scheduler.config.repeat_date_of_end+'" /><br /></div></form></div><div style="clear:both"></div>'; - //# sourceMappingURL=../../sources/locale/recurring/locale_recurring_sk.js.map
\ No newline at end of file diff --git a/codebase/locale/recurring/locale_recurring_sv.js b/codebase/locale/recurring/locale_recurring_sv.js index 5c2e964..9cc9a24 100644 --- a/codebase/locale/recurring/locale_recurring_sv.js +++ b/codebase/locale/recurring/locale_recurring_sv.js @@ -1,11 +1,10 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. (c) Dinamenta, UAB. */ -scheduler.__recurring_template='<div class="dhx_form_repeat"> <form> <div class="dhx_repeat_left"> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="day" />Dagligen</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="week"/>Veckovis</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="month" checked />Månadsvis</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="year" />Årligen</label> </div> <div class="dhx_repeat_divider"></div> <div class="dhx_repeat_center"> <div style="display:none;" id="dhx_repeat_day"> <label><input class="dhx_repeat_radio" type="radio" name="day_type" value="d"/>Var</label><input class="dhx_repeat_text" type="text" name="day_count" value="1" />dag<br /> <label><input class="dhx_repeat_radio" type="radio" name="day_type" checked value="w"/>Varje arbetsdag</label> </div> <div style="display:none;" id="dhx_repeat_week"> Upprepa var<input class="dhx_repeat_text" type="text" name="week_count" value="1" />vecka dessa dagar:<br /> <table class="dhx_repeat_days"> <tr> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="1" />Måndag</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="4" />Tisdag</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="2" />Torsdag</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="5" />Fredag</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="3" />Onsdag</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="6" />Lördag</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="0" />Söndag</label><br /><br /> </td> </tr> </table> </div> <div id="dhx_repeat_month"> <label><input class="dhx_repeat_radio" type="radio" name="month_type" value="d"/>Upprepa</label><input class="dhx_repeat_text" type="text" name="month_day" value="1" />dagen var<input class="dhx_repeat_text" type="text" name="month_count" value="1" />månad<br /> <label><input class="dhx_repeat_radio" type="radio" name="month_type" checked value="w"/>Den</label><input class="dhx_repeat_text" type="text" name="month_week2" value="1" /><select name="month_day2"><option value="1" selected >måndagen<option value="2">tisdagen<option value="3">onsdagen<option value="4">torsdagen<option value="5">fredagen<option value="6">lördagen<option value="0">söndagen</select>var<input class="dhx_repeat_text" type="text" name="month_count2" value="1" />månad<br /> </div> <div style="display:none;" id="dhx_repeat_year"> <label><input class="dhx_repeat_radio" type="radio" name="year_type" value="d"/>Varje</label><input class="dhx_repeat_text" type="text" name="year_day" value="1" />dag i<select name="year_month"><option value="0" selected >Januari<option value="1">Februari<option value="2">Mars<option value="3">April<option value="4">Maj<option value="5">Juni<option value="6">Juli<option value="7">Augusti<option value="8">September<option value="9">Oktober<option value="10">November<option value="11">December</select>månad<br /> <label><input class="dhx_repeat_radio" type="radio" name="year_type" checked value="w"/>Den</label><input class="dhx_repeat_text" type="text" name="year_week2" value="1" /><select name="year_day2"><option value="1" selected >måndagen<option value="2">tisdagen<option value="3">onsdagen<option value="4">torsdagen<option value="5">fredagen<option value="6">lördagen<option value="7">söndagen</select>i<select name="year_month2"><option value="0" selected >Januari<option value="1">Februari<option value="2">Mars<option value="3">April<option value="4">Maj<option value="5">Juni<option value="6">Juli<option value="7">Augusti<option value="8">September<option value="9">Oktober<option value="10">November<option value="11">December</select><br /> </div> </div> <div class="dhx_repeat_divider"></div> <div class="dhx_repeat_right"> <label><input class="dhx_repeat_radio" type="radio" name="end" checked/>Inget slutdatum</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="end" />Efter</label><input class="dhx_repeat_text" type="text" name="occurences_count" value="1" />upprepningar<br /> <label><input class="dhx_repeat_radio" type="radio" name="end" />Sluta efter</label><input class="dhx_repeat_date" type="text" name="date_of_end" value="'+scheduler.config.repeat_date_of_end+'" /><br /> </div> </form> </div> <div style="clear:both"> </div>'; - +scheduler.__recurring_template='<div class="dhx_form_repeat"> <form> <div class="dhx_repeat_left"> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="day" />Dagligen</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="week"/>Veckovis</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="month" checked />Månadsvis</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="year" />Årligen</label> </div> <div class="dhx_repeat_divider"></div> <div class="dhx_repeat_center"> <div style="display:none;" id="dhx_repeat_day"> <label><input class="dhx_repeat_radio" type="radio" name="day_type" value="d"/>Var</label><input class="dhx_repeat_text" type="text" name="day_count" value="1" />dag<br /> <label><input class="dhx_repeat_radio" type="radio" name="day_type" checked value="w"/>Varje arbetsdag</label> </div> <div style="display:none;" id="dhx_repeat_week"> Upprepa var<input class="dhx_repeat_text" type="text" name="week_count" value="1" />vecka dessa dagar:<br /> <table class="dhx_repeat_days"> <tr> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="1" />Måndag</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="4" />Torsdag</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="2" />Tisdag</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="5" />Fredag</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="3" />Onsdag</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="6" />Lördag</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="0" />Söndag</label><br /><br /> </td> </tr> </table> </div> <div id="dhx_repeat_month"> <label><input class="dhx_repeat_radio" type="radio" name="month_type" value="d"/>Upprepa</label><input class="dhx_repeat_text" type="text" name="month_day" value="1" />dagen var<input class="dhx_repeat_text" type="text" name="month_count" value="1" />månad<br /> <label><input class="dhx_repeat_radio" type="radio" name="month_type" checked value="w"/>Den</label><input class="dhx_repeat_text" type="text" name="month_week2" value="1" /><select name="month_day2"><option value="1" selected >måndagen<option value="2">tisdagen<option value="3">onsdagen<option value="4">torsdagen<option value="5">fredagen<option value="6">lördagen<option value="0">söndagen</select>var<input class="dhx_repeat_text" type="text" name="month_count2" value="1" />månad<br /> </div> <div style="display:none;" id="dhx_repeat_year"> <label><input class="dhx_repeat_radio" type="radio" name="year_type" value="d"/>Varje</label><input class="dhx_repeat_text" type="text" name="year_day" value="1" />dag i<select name="year_month"><option value="0" selected >Januari<option value="1">Februari<option value="2">Mars<option value="3">April<option value="4">Maj<option value="5">Juni<option value="6">Juli<option value="7">Augusti<option value="8">September<option value="9">Oktober<option value="10">November<option value="11">December</select>månad<br /> <label><input class="dhx_repeat_radio" type="radio" name="year_type" checked value="w"/>Den</label><input class="dhx_repeat_text" type="text" name="year_week2" value="1" /><select name="year_day2"><option value="1" selected >måndagen<option value="2">tisdagen<option value="3">onsdagen<option value="4">torsdagen<option value="5">fredagen<option value="6">lördagen<option value="7">söndagen</select>i<select name="year_month2"><option value="0" selected >Januari<option value="1">Februari<option value="2">Mars<option value="3">April<option value="4">Maj<option value="5">Juni<option value="6">Juli<option value="7">Augusti<option value="8">September<option value="9">Oktober<option value="10">November<option value="11">December</select><br /> </div> </div> <div class="dhx_repeat_divider"></div> <div class="dhx_repeat_right"> <label><input class="dhx_repeat_radio" type="radio" name="end" checked/>Inget slutdatum</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="end" />Efter</label><input class="dhx_repeat_text" type="text" name="occurences_count" value="1" />upprepningar<br /> <label><input class="dhx_repeat_radio" type="radio" name="end" />Sluta efter</label><input class="dhx_repeat_date" type="text" name="date_of_end" value="'+scheduler.config.repeat_date_of_end+'" /><br /> </div> </form> </div> <div style="clear:both"> </div>'; //# sourceMappingURL=../../sources/locale/recurring/locale_recurring_sv.js.map
\ No newline at end of file diff --git a/codebase/locale/recurring/locale_recurring_ua.js b/codebase/locale/recurring/locale_recurring_ua.js index 87af4e6..86f1b26 100644 --- a/codebase/locale/recurring/locale_recurring_ua.js +++ b/codebase/locale/recurring/locale_recurring_ua.js @@ -1,11 +1,10 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. (c) Dinamenta, UAB. */ scheduler.__recurring_template='<div class="dhx_form_repeat"> <form> <div class="dhx_repeat_left"> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="day" />День</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="week"/>Тиждень</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="month" checked />Місяць</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="year" />Рік</label> </div> <div class="dhx_repeat_divider"></div> <div class="dhx_repeat_center"> <div style="display:none;" id="dhx_repeat_day"> <label><input class="dhx_repeat_radio" type="radio" name="day_type" value="d"/>Кожний</label><input class="dhx_repeat_text" type="text" name="day_count" value="1" />день<br /> <label><input class="dhx_repeat_radio" type="radio" name="day_type" checked value="w"/>Кожний робочий день</label> </div> <div style="display:none;" id="dhx_repeat_week"> Повторювати кожен<input class="dhx_repeat_text" type="text" name="week_count" value="1" />тиждень , по:<br /> <table class="dhx_repeat_days"> <tr> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="1" />Понеділкам</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="4" />Четвергам</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="2" />Вівторкам</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="5" />П\'ятницям</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="3" />Середам </label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="6" />Суботам</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="0" />Неділям</label><br /><br /> </td> </tr> </table> </div> <div id="dhx_repeat_month"> <label><input class="dhx_repeat_radio" type="radio" name="month_type" value="d"/>Повторювати</label><input class="dhx_repeat_text" type="text" name="month_day" value="1" /> числа кожний <input class="dhx_repeat_text" type="text" name="month_count" value="1" />місяць<br /> <label><input class="dhx_repeat_radio" type="radio" name="month_type" checked value="w"/></label><input class="dhx_repeat_text" type="text" name="month_week2" value="1" /><select name="month_day2"><option value="1" selected >Понеділок<option value="2">Вівторок<option value="3">Середа<option value="4">Четвер<option value="5">П\'ятниця<option value="6">Субота<option value="0">Неділя</select>кожен <input class="dhx_repeat_text" type="text" name="month_count2" value="1" />місяць<br /> </div> <div style="display:none;" id="dhx_repeat_year"> <label><input class="dhx_repeat_radio" type="radio" name="year_type" value="d"/></label><input class="dhx_repeat_text" type="text" name="year_day" value="1" />день<select name="year_month"><option value="0" selected >січня<option value="1">лютого<option value="2">березня<option value="3">квітня<option value="4">травня<option value="5">червня<option value="6">липня<option value="7">серпня<option value="8">вересня<option value="9">жовтня<option value="10">листопада<option value="11">грудня</select><br /> <label><input class="dhx_repeat_radio" type="radio" name="year_type" checked value="w"/></label><input class="dhx_repeat_text" type="text" name="year_week2" value="1" /><select name="year_day2"><option value="1" selected >понеділок<option value="2">вівторок<option value="3">середа<option value="4">четвер<option value="5">п\'ятниця<option value="6">субота<option value="0">неділя</select><select name="year_month2"><option value="0" selected >січня<option value="1">лютого<option value="2">березня<option value="3">квітня<option value="4">березня<option value="5">червня<option value="6">липня<option value="7">серпня<option value="8">вересня<option value="9">жовтня<option value="10">листопада<option value="11">грудня</select><br /> </div> </div> <div class="dhx_repeat_divider"></div> <div class="dhx_repeat_right"> <label><input class="dhx_repeat_radio" type="radio" name="end" checked/>Без дати закінчення</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="end" /></label><input class="dhx_repeat_text" type="text" name="occurences_count" value="1" />повторень<br /> <label><input class="dhx_repeat_radio" type="radio" name="end" />До </label><input class="dhx_repeat_date" type="text" name="date_of_end" value="'+scheduler.config.repeat_date_of_end+'" /><br /> </div> </form> </div> <div style="clear:both"> </div>'; - //# sourceMappingURL=../../sources/locale/recurring/locale_recurring_ua.js.map
\ No newline at end of file diff --git a/codebase/sources/dhtmlxscheduler.js b/codebase/sources/dhtmlxscheduler.js index cfb1c48..2282a28 100644 --- a/codebase/sources/dhtmlxscheduler.js +++ b/codebase/sources/dhtmlxscheduler.js @@ -1,12 +1,12 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. (c) Dinamenta, UAB. */ -window.dhtmlXScheduler = window.scheduler = { version: "4.3.1" }; +window.dhtmlXScheduler = window.scheduler = { version: "4.4.0" }; if (!window.dhtmlx) { dhtmlx = function(obj){ @@ -975,32 +975,144 @@ dhtmlxEventable=function(obj){ }; obj = null; }; +scheduler.event = window.dhtmlxEvent; + +scheduler.eventRemove = function(el, event, handler){ + if (el.removeEventListener) + el.removeEventListener(event, handler, false); + + else if (el.detachEvent) + el.detachEvent("on"+event, handler); +}; + +(function(){ + function isVisible(node){ + var display = false, + visibility = false; + if(window.getComputedStyle){ + var style = window.getComputedStyle(node, null); + display = style["display"]; + visibility = style["visibility"]; + }else if(node.currentStyle){ + display = node.currentStyle["display"]; + visibility = node.currentStyle["visibility"]; + } + + var hiddenSection = false; + var recurringSection = scheduler._locate_css({target:node}, "dhx_form_repeat", false); + if(recurringSection){ + hiddenSection = !!(recurringSection.style.height == "0px"); + } + hiddenSection = hiddenSection || !(node.offsetHeight); + + return (display != "none" && visibility != "hidden" && !hiddenSection); + } + + function hasNonNegativeTabIndex(node){ + return !isNaN(node.getAttribute("tabindex")) && (node.getAttribute("tabindex")*1 >= 0); + } + + function hasHref(node){ + var canHaveHref = {"a": true, "area": true}; + if(canHaveHref[node.nodeName.loLowerCase()]){ + return !!node.getAttribute("href"); + } + return true; + } + + function isEnabled(node){ + var canDisable = {"input":true, "select":true, "textarea":true, "button":true, "object":true}; + if(canDisable[node.nodeName.toLowerCase()]){ + return !node.hasAttribute("disabled"); + } + + return true; + } + + + scheduler._getFocusableNodes = function getFocusableNodes(root){ + var nodes = root.querySelectorAll([ + "a[href]", + "area[href]", + "input", + "select", + "textarea", + "button", + "iframe", + "object", + "embed", + "[tabindex]", + "[contenteditable]" + ].join(", ")); + + var nodesArray = Array.prototype.slice.call(nodes, 0); + for(var i = 0; i < nodesArray.length; i++){ + var node = nodesArray[i]; + var isValid = (hasNonNegativeTabIndex(node) || isEnabled(node) || hasHref(node)) && isVisible(node); + if(!isValid){ + nodesArray.splice(i, 1); + i--; + } + } + return nodesArray; + }; +})(); + +scheduler._trim = function(str){ + var func = String.prototype.trim || function(){ return this.replace(/^\s+|\s+$/g, ""); }; + return func.apply(str); +}; if(!window.dhtmlx) window.dhtmlx = {}; (function(){ var _dhx_msg_cfg = null; function callback(config, result){ + setTimeout(function(){ + if(!config.box) return; + var usercall = config.callback; modality(false); config.box.parentNode.removeChild(config.box); + dhtmlx.callEvent("onAfterMessagePopup", [config.box]); _dhx_msg_cfg = config.box = null; + if (usercall) usercall(result); + },1); } + function modal_key(e){ if (_dhx_msg_cfg){ e = e||event; var code = e.which||event.keyCode; + var preventDefault = false; + if (dhtmlx.message.keyboard){ - if (code == 13 || code == 32) - callback(_dhx_msg_cfg, true); - if (code == 27) + if (code == 13 || code == 32){ + // default behavior is to confirm/submit popup on space/enter + // if browser focus is set on button element - do button click instead of default behavior + var target = e.target || e.srcElement; + if(scheduler._getClassName(target).indexOf("dhtmlx_popup_button") > -1 && target.click){ + target.click(); + }else{ + callback(_dhx_msg_cfg, true); + preventDefault = true; + } + } + + if (code == 27){ callback(_dhx_msg_cfg, false); + preventDefault = true; + } } - if (e.preventDefault) - e.preventDefault(); - return !(e.cancelBubble = true); + + if(preventDefault){ + if (e.preventDefault) + e.preventDefault(); + return !(e.cancelBubble = true); + } + return; } } if (document.attachEvent) @@ -1021,10 +1133,11 @@ if(!window.dhtmlx) } function button(text, result, css){ + var buttonAriaAttrs = scheduler._waiAria.messageButtonAttrString(text); // css - for locale-independent class name var className = css ? css : (text || ""); var button_css = "dhtmlx_"+(className).toLowerCase().replace(/ /g, "_")+"_button"; // dhtmlx_ok_button, dhtmlx_click_me_button - return "<div class='dhtmlx_popup_button "+button_css+"' result='"+result+"' ><div>"+text+"</div></div>"; + return "<div "+buttonAriaAttrs+"class='dhtmlx_popup_button "+button_css+"' result='"+result+"' ><div>"+text+"</div></div>"; } function info(text){ @@ -1044,6 +1157,8 @@ if(!window.dhtmlx) text = null; }; + scheduler._waiAria.messageInfoAttr(message); + if (t.position == "bottom" && t.area.firstChild) t.area.insertBefore(message,t.area.firstChild); else @@ -1063,16 +1178,23 @@ if(!window.dhtmlx) var box = document.createElement("DIV"); box.className = " dhtmlx_modal_box dhtmlx-"+config.type; box.setAttribute("dhxbox", 1); - + + var contentId = scheduler.uid(); + scheduler._waiAria.messageModalAttr(box, contentId); + var inner = ''; + var hasTitle = false; if (config.width) box.style.width = config.width; if (config.height) box.style.height = config.height; - if (config.title) - inner+='<div class="dhtmlx_popup_title">'+config.title+'</div>'; - inner+='<div class="dhtmlx_popup_text"><span>'+(config.content?'':config.text)+'</span></div><div class="dhtmlx_popup_controls">'; + if (config.title) { + inner += '<div class="dhtmlx_popup_title" id="'+contentId+'">' + config.title + '</div>'; + hasTitle = true; + } + + inner+='<div class="dhtmlx_popup_text" '+(!hasTitle ? ' id="'+contentId+'" ' : "")+'><span>'+(config.content?'':config.text)+'</span></div><div class="dhtmlx_popup_controls">'; if (ok){ var ok_text = (config.ok || scheduler.locale.labels.message_ok); //default value for compatibility with custom locales some people have @@ -1103,16 +1225,20 @@ if(!window.dhtmlx) box.onclick = function(e){ e = e ||event; var source = e.target || e.srcElement; - if (!source.className) source = source.parentNode; - if (source.className.split(" ")[0] == "dhtmlx_popup_button"){ + var className = scheduler._getClassName(source); + if (!className) source = source.parentNode; + + className = scheduler._getClassName(source); + + if (className.split(" ")[0] == "dhtmlx_popup_button"){ var result = source.getAttribute("result"); result = (result == "true")||(result == "false"?false:result); callback(config, result); } }; config.box = box; - if (ok||cancel) - _dhx_msg_cfg = config; + //if (ok||cancel) + _dhx_msg_cfg = config; return box; } @@ -1132,10 +1258,12 @@ if(!window.dhtmlx) //necessary for IE only box.onkeydown = modal_key; - box.focus(); + dhtmlx.modalbox.focus(box); + if (config.hidden) dhtmlx.modalbox.hide(box); + dhtmlx.callEvent("onMessagePopup", [box]); return box; } @@ -1188,6 +1316,16 @@ if(!window.dhtmlx) modality(false); } }; + + dhtmlx.modalbox.focus = function(node){ + setTimeout(function(){ + var focusable = scheduler._getFocusableNodes(node); + if(focusable.length){ + if(focusable[0].focus) focusable[0].focus(); + } + }, 1); + }; + var t = dhtmlx.message = function(text, type, expire, id){ text = params.apply(this, arguments); text.type = text.type||"info"; @@ -1232,6 +1370,9 @@ if(!window.dhtmlx) } }; })(); +if(!dhtmlx.attachEvent){ + dhtmlxEventable(dhtmlx); +} /** * @desc: constructor, data processor object * @param: serverProcessorURL - url used for update @@ -1633,7 +1774,7 @@ dataProcessor.prototype={ case "delete": case "deleted": this.obj.setUserData(sid, this.action_param, "true_deleted"); - this.obj[this._methods[3]](sid); + this.obj[this._methods[3]](sid, tid); delete this._in_progress[marker]; return this.callEvent("onAfterUpdate", [sid, action, tid, btag]); } @@ -1832,9 +1973,16 @@ dataProcessor.prototype={ var url = this.serverProcessor+getUrlSymbol(this.serverProcessor)+["dhx_user="+this._user,"dhx_version="+version].join("&"); url = url.replace("editing=true&",""); this.getUpdates(url, function(){ - var vers = self._loader.doXPath("//userdata"); - self.obj.setUserData(0,"version",self._v(vers[0])); - + var vers; + try { + vers = self._loader.doXPath("//userdata"); + } + catch(ex) { + self._update_busy = false; + return; + } + + self.obj.setUserData(0, "version", self._v(vers[0])); var upds = self._loader.doXPath("//update"); if (upds.length){ self._silent_mode = true; @@ -1893,6 +2041,377 @@ dhtmlxError.catchError("LoadXML", function(a, b, c){ } }); +(function(){ + + var htmlTags = new RegExp("<(?:.|\n)*?>", "gm"); + var extraSpaces = new RegExp(" +", "gm"); + + function stripHTMLLite(htmlText){ + return (htmlText + "") + .replace(htmlTags, " "). + replace(extraSpaces, " "); + } + + var singleQuotes = new RegExp("'", "gm"); + function escapeQuotes(text){ + return (text + "").replace(singleQuotes, "'"); + } + + scheduler._waiAria = { + getAttributeString: function(attr){ + var attributes = [" "]; + for(var i in attr){ + if(typeof attr[i] != "function" && typeof attr[i] != "object") { + var text = escapeQuotes(stripHTMLLite(attr[i])); + attributes.push(i + "='" + text + "'"); + } + } + attributes.push(" "); + return attributes.join(" "); + }, + setAttributes: function(div, values){ + for(var i in values){ + div.setAttribute(i, stripHTMLLite(values[i])); + } + return div; + }, + + labelAttr: function(div, content){ + return this.setAttributes(div, {"aria-label": content}); + }, + label: function(label){ + return scheduler._waiAria.getAttributeString({"aria-label": label}); + }, + + // day/week/units + + hourScaleAttr: function(div, content){ + this.labelAttr(div, content); + + }, + monthCellAttr: function(div, date){ + this.labelAttr(div, scheduler.templates.day_date(date)); + }, + + navBarDateAttr: function(div, content){ + this.labelAttr(div, content); + }, + dayHeaderAttr: function(div, content){ + this.labelAttr(div, content); + }, + + dayColumnAttr: function(div, date){ + this.dayHeaderAttr(div, scheduler.templates.day_date(date)); + }, + + headerButtonsAttributes: function(div, label){ + return this.setAttributes(div, {"role":"button", "aria-label":label}); + }, + + headerToggleState: function(div, isActive){ + return this.setAttributes(div, {"aria-pressed": isActive ? "true" : "false"}); + }, + + + getHeaderCellAttr:function(dateString){ + + return scheduler._waiAria.getAttributeString({"aria-label": dateString}); + }, + + + eventAttr: function(event, div){ + if(!scheduler.config.readonly && scheduler.config.drag_move){ + if(event.id != scheduler.getState().drag_id){ + div.setAttribute("aria-grabbed", false); + }else{ + div.setAttribute("aria-grabbed", true); + } + } + + this._eventCommonAttr(event, div); + }, + + + _eventCommonAttr: function(event, div){ + div.setAttribute("aria-label", stripHTMLLite(scheduler.templates.tooltip_text(event.start_date, event.end_date, event))); + + if(scheduler.config.readonly){ + div.setAttribute("aria-readonly", true); + + } + + if(event.$dataprocessor_class){ + div.setAttribute("aria-busy", true); + } + + + div.setAttribute("aria-selected", + (scheduler.getState().select_id == event.id) ? "true" : "false"); + }, + + setEventBarAttr: function(event, div){ + this._eventCommonAttr(event, div); + + if(!scheduler.config.readonly && scheduler.config.drag_move){ + if(event.id != scheduler.getState().drag_id){ + div.setAttribute("aria-grabbed", false); + }else{ + div.setAttribute("aria-grabbed", true); + } + } + }, + + _getAttributes: function(attributeSetter, arg){ + var result = { + setAttribute:function(name, value){ + this[name] = value; + } + }; + + attributeSetter.apply(this, [arg, result]); + return result; + + }, + + eventBarAttrString: function(event){ + return this.getAttributeString(this._getAttributes(this.setEventBarAttr, event)); + }, + + + + agendaHeadAttrString :function(){ + return this.getAttributeString({role: "row"}); + }, + agendaHeadDateString :function(label){ + return this.getAttributeString({role: "columnheader", "aria-label": label}); + }, + agendaHeadDescriptionString :function(label){ + return this.agendaHeadDateString(label); + }, + agendaDataAttrString: function(){ + return this.getAttributeString({role: "grid"}); + }, + agendaEventAttrString: function(event){ + var attrs = this._getAttributes(this._eventCommonAttr, event); + + attrs["role"] = "row"; + + return this.getAttributeString(attrs); + + }, + agendaDetailsBtnString: function(){ + return this.getAttributeString({"role":"button", "aria-label":scheduler.locale.labels.icon_details}); + }, + + + gridAttrString: function(){ + return this.getAttributeString({role: "grid"}); + }, + + gridRowAttrString: function(event){ + return this.agendaEventAttrString(event); + }, + + gridCellAttrString: function(event, column, value){ + return this.getAttributeString({"role":"gridcell", "aria-label": [ + (column.label === undefined ? column.id : column.label), + ": ", + value + ]}); + }, + + mapAttrString: function(){ + return this.gridAttrString(); + }, + mapRowAttrString: function(event){ + return this.gridRowAttrString(event); + }, + mapDetailsBtnString: function(){ + return this.agendaDetailsBtnString(); + }, + + minicalHeader: function(div, headerId){ + this.setAttributes(div, { + "id":headerId+"", + "aria-live":"assertice", + "aria-atomic":"true" + + }); + }, + minicalGrid: function(div, headerId){ + this.setAttributes(div, { + "aria-labelledby":headerId+"", + "role":"grid" + }); + }, + minicalRow: function(div){ + this.setAttributes(div, { + "role":"row" + }); + }, + minicalDayCell: function(div, date){ + var selected = (date.valueOf() < scheduler._max_date.valueOf() && date.valueOf() >= scheduler._min_date.valueOf()); + this.setAttributes(div, { + "role":"gridcell", + "aria-label": scheduler.templates.day_date(date), + "aria-selected": selected ? "true" : "false" + }); + }, + minicalHeadCell: function(div){ + this.setAttributes(div, { + "role":"columnheader" + }); + }, + + + weekAgendaDayCell: function(div, date){ + var header = div.querySelector(".dhx_wa_scale_bar"); + var content = div.querySelector(".dhx_wa_day_data"); + var headerId = scheduler.uid() + ""; + this.setAttributes(header, { "id": headerId}); + this.setAttributes(content, { "aria-labelledby": headerId}); + + }, + weekAgendaEvent: function(div, event){ + this.eventAttr(event, div); + }, + + lightboxHiddenAttr: function(div){ + div.setAttribute("aria-hidden", "true"); + }, + + lightboxVisibleAttr: function(div){ + div.setAttribute("aria-hidden", "false"); + }, + + lightboxSectionButtonAttrString: function(label){ + return this.getAttributeString({"role":"button", "aria-label":label, "tabindex":"0"}); + }, + + yearHeader: function(div, headerId){ + this.setAttributes(div, { + "id":headerId+"" + }); + }, + yearGrid: function(div, headerId){ + this.minicalGrid(div, headerId); + }, + yearHeadCell: function(div){ + return this.minicalHeadCell(div); + }, + yearRow: function(div){ + return this.minicalRow(div); + }, + yearDayCell: function(div){ + this.setAttributes(div, { + "role":"gridcell" + }); + }, + + lightboxAttr: function(div){ + div.setAttribute("role", "dialog"); + div.setAttribute("aria-hidden", "true"); + div.firstChild.setAttribute("role", "heading"); + }, + + lightboxButtonAttrString:function(buttonName){ + return this.getAttributeString({"role":"button", "aria-label":scheduler.locale.labels[buttonName], "tabindex":"0"}); + }, + eventMenuAttrString: function(iconName){ + return this.getAttributeString({"role":"button", "aria-label":scheduler.locale.labels[iconName]}); + }, + lightboxHeader: function(div, headerText){ + div.setAttribute("aria-label", headerText); + }, + + lightboxSelectAttrString: function(time_option){ + var label = ""; + + switch (time_option) { + case "%Y": + label = scheduler.locale.labels.year; + break; + case "%m": + label = scheduler.locale.labels.month; + break; + case "%d": + label = scheduler.locale.labels.day; + break; + case "%H:%i": + label = scheduler.locale.labels.hour + " " + scheduler.locale.labels.minute; + break; + default: + break; + } + + return scheduler._waiAria.getAttributeString({"aria-label": label}); + }, + + + messageButtonAttrString: function(buttonLabel){ + return "tabindex='0' role='button' aria-label='"+buttonLabel+"'"; + }, + + messageInfoAttr: function(div){ + div.setAttribute("role", "alert"); + //div.setAttribute("tabindex", "-1"); + }, + + messageModalAttr: function(div, uid){ + div.setAttribute("role", "dialog"); + if(uid){ + div.setAttribute("aria-labelledby", uid); + } + + // div.setAttribute("tabindex", "-1"); + }, + + quickInfoAttr: function(div){ + div.setAttribute("role", "dialog"); + }, + + quickInfoHeaderAttrString: function(){ + return " role='heading' "; + }, + + quickInfoHeader: function(div, header){ + div.setAttribute("aria-label", header); + }, + + quickInfoButtonAttrString: function(label){ + return scheduler._waiAria.getAttributeString({"role":"button", "aria-label":label, "tabindex":"0"}); + }, + + tooltipAttr: function(div){ + div.setAttribute("role", "tooltip"); + }, + + tooltipVisibleAttr: function(div){ + div.setAttribute("aria-hidden", "false"); + }, + + tooltipHiddenAttr: function(div){ + div.setAttribute("aria-hidden", "true"); + } + }; + + function isDisabled(){ + return !scheduler.config.wai_aria_attributes; + } + + for(var i in scheduler._waiAria){ + scheduler._waiAria[i] = (function(payload){ + return function(){ + if(isDisabled()){ + return ""; + } + return payload.apply(this, arguments); + }; + })(scheduler._waiAria[i]); + } + + +})(); dhtmlxEventable(scheduler); @@ -1908,23 +2427,40 @@ scheduler._detachDomEvent = function(el, event, handler){ scheduler._init_once = function(){ var oldSize = getWindowSize(); - dhtmlxEvent(window,"resize",function(){ - var newSize = getWindowSize(); - - // ie7-8 triggers "resize" when window's elements are resized, it messes container-autoresize extension - // check if it's actually resized - if(!equals(oldSize, newSize)){ - window.clearTimeout(scheduler._resize_timer); - scheduler._resize_timer=window.setTimeout(function(){ - if (scheduler.callEvent("onSchedulerResize",[])) { + dhtmlxEvent(window,"resize",function() { + if (!isAttachedNode(scheduler._obj)) + return; + + window.clearTimeout(scheduler._resize_timer); + scheduler._resize_timer = window.setTimeout(function () { + var newSize = getWindowSize(); + + // ie7-8 triggers "resize" when window's elements are resized, it messes container-autoresize extension + // check if it's actually resized + if (!equals(oldSize, newSize)) { + if (!isAttachedNode(scheduler._obj)) + return; + + if (scheduler.callEvent("onSchedulerResize", [])) { scheduler.update_view(); scheduler.callEvent("onAfterSchedulerResize", []); } - }, 100); - } - oldSize = newSize; + } + oldSize = newSize; + }, 20); }); + + function isAttachedNode(container){ + var root = document.body; + + while(container && container != root){ + container = container.parentNode; + } + + return !!(root == container); + } + function getWindowSize(){ return { w : window.innerWidth || document.documentElement.clientWidth, @@ -1946,6 +2482,7 @@ scheduler.init=function(id,date,mode){ } this._obj=(typeof id == "string")?document.getElementById(id):id; + this.$container = this._obj; //hook for terrace skin if (this._skin_init) @@ -2017,7 +2554,7 @@ scheduler.get_elements=function(){ //get all child elements as named hash var els=this._obj.getElementsByTagName("DIV"); for (var i=0; i < els.length; i++){ - var class_name=els[i].className || ""; + var class_name= scheduler._getClassName(els[i]); var attr_value = els[i].getAttribute("name") || ""; if (class_name) class_name = class_name.split(" ")[0]; if (!this._els[class_name]) this._els[class_name]=[]; @@ -2027,8 +2564,10 @@ scheduler.get_elements=function(){ var label = scheduler.locale.labels[attr_value||class_name]; if (typeof label !== "string" && attr_value && !els[i].innerHTML) label = attr_value.split("_")[0]; - if (label) - els[i].innerHTML= label; + if (label) { + this._waiAria.labelAttr(els[i], label); + els[i].innerHTML = label; + } } }; @@ -2127,7 +2666,7 @@ scheduler._click={ if (id && scheduler.config.select) { scheduler.select(id); - var mask = trg.className; + var mask = scheduler._getClassName(trg); if (mask.indexOf("_icon")!=-1) scheduler._click.buttons[mask.split(" ")[1].replace("icon_","")](id); } else{ @@ -2206,21 +2745,22 @@ scheduler.addEventNow=function(start,end,e){ base.start_date = base.start_date||start_date; base.end_date = base.end_date||end_date; base.text = base.text||this.locale.labels.new_event; - base.id = this._drag_id = this.uid(); + base.id = this._drag_id = base.id || this.uid(); this._drag_mode="new-size"; this._loading=true; - this.addEvent(base); + var eventId = this.addEvent(base); this.callEvent("onEventCreated",[this._drag_id,e]); this._loading=false; this._drag_event={}; //dummy , to trigger correct event updating logic - this._on_mouse_up(e); + this._on_mouse_up(e); + return eventId; }; scheduler._on_dbl_click=function(e,src){ src = src||(e.target||e.srcElement); if (this.config.readonly) return; - var name = (src.className||"").split(" ")[0]; + var name = scheduler._getClassName(src).split(" ")[0]; switch(name){ case "dhx_scale_holder": case "dhx_scale_holder_now": @@ -2263,20 +2803,24 @@ scheduler._get_column_index = function(x_pos){ if (this._cols){ var width = 0; - for(var i=0; i < this._cols.length && !width; i++){ - width = this._cols[i]; - } - if(width){ - column = x_pos / width; - }else{ - column = 0; + var i = 0; + while (width + this._cols[i] < x_pos && i < this._cols.length){ + width += this._cols[i]; + i++; } - if (this._ignores) - for (var i=0; i<=column; i++) - if (this._ignores[i]) - column++; + column = i + (this._cols[column] ? ((x_pos - width)/ this._cols[column]) : 0); + + if (this._ignores){ + + if(column >= this._cols.length){ + while(column >= 1 && this._ignores[Math.floor(column)]){ + column--; + } + } + + } } return column; }; @@ -2311,38 +2855,41 @@ scheduler._mouse_coords=function(ev){ pos.ev = ev; var handler = this["mouse_"+this._mode]; - if (handler) - return handler.call(this,pos); - - - //transform to date - if (!this._table_view) { - pos = this._week_indexes_from_pos(pos); - } else { - var column = this._get_column_index(pos.x); - if (!this._cols || !this._colsS) // agenda/map views - return pos; - var dy=0; - for (dy=1; dy < this._colsS.heights.length; dy++) - if (this._colsS.heights[dy]>pos.y) break; - - pos.y=Math.ceil( (Math.max(0, column)+Math.max(0,dy-1)*7)*24*60/this.config.time_step ); - - if (scheduler._drag_mode || this._mode == "month") - pos.y=(Math.max(0,Math.ceil(column)-1)+Math.max(0,dy-1)*7)*24*60/this.config.time_step; - - //we care about ignored days only during event moving in month view - if (this._drag_mode == "move"){ - if (scheduler._ignores_detected && scheduler.config.preserve_length){ - pos._ignores = true; - //get real lengtn of event - if (!this._drag_event._event_length) - this._drag_event._event_length = this._get_real_event_length(this._drag_event.start_date, this._drag_event.end_date, { x_step:1, x_unit:"day"}); + if (handler){ + pos = handler.call(this,pos); + }else{ + //transform to date + if (!this._table_view) { + pos = this._week_indexes_from_pos(pos); + } else { + var column = this._get_column_index(pos.x); + if (!this._cols || !this._colsS) // agenda/map views + return pos; + var dy=0; + for (dy=1; dy < this._colsS.heights.length; dy++) + if (this._colsS.heights[dy]>pos.y) break; + + pos.y=Math.ceil( (Math.max(0, column)+Math.max(0,dy-1)*7)*24*60/this.config.time_step ); + + if (scheduler._drag_mode || this._mode == "month") + pos.y=(Math.max(0,Math.ceil(column)-1)+Math.max(0,dy-1)*7)*24*60/this.config.time_step; + + //we care about ignored days only during event moving in month view + if (this._drag_mode == "move"){ + if (scheduler._ignores_detected && scheduler.config.preserve_length){ + pos._ignores = true; + //get real lengtn of event + if (!this._drag_event._event_length) + this._drag_event._event_length = this._get_real_event_length(this._drag_event.start_date, this._drag_event.end_date, { x_step:1, x_unit:"day"}); + } } - } - pos.x=0; + pos.x=0; + } } + + pos.timestamp = +new Date(); + return pos; }; scheduler._close_not_saved=function(){ @@ -2371,13 +2918,36 @@ scheduler._is_pos_changed = function(old_pos, new_pos){ d_pos = 5; // start drag only if passed some time since mouse down, or if mouse position changed sufficiently - return !!(!this._drag_pos.start || (+new Date() - this._drag_pos.start > delay) || diff(old_pos.x, new_pos.x, d_pos) || diff(old_pos.y, new_pos.y, d_pos)); + return !!(this._drag_pos.has_moved || !this._drag_pos.timestamp || (new_pos.timestamp - this._drag_pos.timestamp > delay) || diff(old_pos.ev.clientX, new_pos.ev.clientX, d_pos) || diff(old_pos.ev.clientY, new_pos.ev.clientY, d_pos)); +}; + +scheduler._correct_drag_start_date = function(start){ + var obj; + if (scheduler.matrix) + obj = scheduler.matrix[scheduler._mode]; + obj = obj || { x_step:1, x_unit:"day" }; + + start = new Date(start); + var len = 1; + if(obj._start_correction || obj._end_correction) + len = (obj.last_hour||0)*60 - (start.getHours()*60+start.getMinutes()) || 1; + + return start*1 + (scheduler._get_fictional_event_length(start, len, obj) - len); +}; +scheduler._correct_drag_end_date = function(start, duration){ + var obj; + if (scheduler.matrix) + obj = scheduler.matrix[scheduler._mode]; + obj = obj || { x_step:1, x_unit:"day" }; + + var end = start*1 + scheduler._get_fictional_event_length(start, duration, obj); + return new Date(end*1 - (scheduler._get_fictional_event_length(end, -1, obj, -1) + 1)); }; scheduler._on_mouse_move=function(e){ if (this._drag_mode){ var pos=this._mouse_coords(e); - if (pos.force_redraw || this._is_pos_changed(this._drag_pos, pos)){ + if (this._is_pos_changed(this._drag_pos, pos)){ var start, end; if (this._edit_id!=this._drag_id) this._close_not_saved(); @@ -2397,10 +2967,13 @@ scheduler._on_mouse_move=function(e){ if (!this._drag_start) { var res = this.callEvent("onBeforeEventCreated", [e, this._drag_id]); - if (!res) + if (!res){ + this._loading=false; return; + } + this._loading=false; this._drag_start=start; return; } @@ -2425,10 +2998,14 @@ scheduler._on_mouse_move=function(e){ this._loading=false; this._drag_mode="new-size"; - } + } + var ev=this.getEvent(this._drag_id); var obj; + if (scheduler.matrix) + obj = scheduler.matrix[scheduler._mode]; + obj = obj || { x_step:1, x_unit:"day" }; if (this._drag_mode=="move"){ start = this._min_date.valueOf()+(pos.y*this.config.time_step+pos.x*24*60 -(scheduler._move_pos_shift||0) )*60000; @@ -2436,10 +3013,10 @@ scheduler._on_mouse_move=function(e){ start = this._correct_shift(start); if (pos._ignores && this.config.preserve_length && this._table_view){ - if (this.matrix) - obj = this.matrix[this._mode]; - obj = obj || { x_step:1, x_unit:"day" }; - end = start*1 + this._get_fictional_event_length(start, this._drag_event._event_length, obj); + + start = scheduler._correct_drag_start_date(start); + end = scheduler._correct_drag_end_date(start,this._drag_event._event_length); + } else end = ev.end_date.valueOf()-(ev.start_date.valueOf()-start); } else { // resize @@ -2457,13 +3034,18 @@ scheduler._on_mouse_move=function(e){ end = resize_date; } } else { - if (pos.resize_from_start) - start = resize_date; - else - end = resize_date; + if (pos.resize_from_start){ + start = scheduler._correct_drag_start_date(resize_date); + }else{ + end = scheduler._correct_drag_end_date(resize_date, 0); + } } } else { - end = this.date.date_part(new Date(ev.end_date.valueOf() - 1)).valueOf()+pos.y*this.config.time_step*60000; + var end_day_start = this.date.date_part(new Date(ev.end_date.valueOf() - 1)).valueOf(); + var end_day_date = new Date(end_day_start); + + end = end_day_start + pos.y*this.config.time_step*60000; + end = end + ((new Date(end)).getTimezoneOffset() - end_day_date.getTimezoneOffset()) * 60000; this._els["dhx_cal_data"][0].style.cursor="s-resize"; if (this._mode == "week" || this._mode == "day") end = this._correct_shift(end); @@ -2484,17 +3066,49 @@ scheduler._on_mouse_move=function(e){ var new_end = new Date(end-1); var new_start = new Date(start); //deny drag out of visible scheduler scale in timeline view - if(scheduler.config.limit_drag_out && + if(this._drag_mode=="move" && scheduler.config.limit_drag_out && (+new_start < +scheduler._min_date || +end > +scheduler._max_date)){ + + if(+ev.start_date < +scheduler._min_date || +ev.end_date > +scheduler._max_date){ + // not move event if it's already outside time scale + new_start = new Date(ev.start_date); + end = new Date(ev.end_date); + }else{ + var duration = end - new_start; + if(+new_start < +scheduler._min_date){ new_start = new Date(scheduler._min_date); - end = new Date(+new_start + duration); + if (pos._ignores && this.config.preserve_length && this._table_view){ + new_start = new Date(scheduler._correct_drag_start_date(new_start)); + if(obj._start_correction) + new_start = new Date(new_start.valueOf() + obj._start_correction); + end = new Date(new_start*1 + this._get_fictional_event_length(new_start, this._drag_event._event_length, obj)); + }else{ + end = new Date(+new_start + duration); + } }else{ end = new Date(scheduler._max_date); - new_start = new Date(+end - duration); + + if (pos._ignores && this.config.preserve_length && this._table_view){ + if(obj._end_correction) + end = new Date(end.valueOf() - obj._end_correction); + end = new Date(end*1 - this._get_fictional_event_length(end, 0, obj, true)); + new_start = new Date(end*1 - this._get_fictional_event_length(end, this._drag_event._event_length, obj, true)); + if(this._ignores_detected){ + new_start = scheduler.date.add(new_start, obj.x_step, obj.x_unit); + end = new Date(end*1 - this._get_fictional_event_length(end, 0, obj, true)); + end = scheduler.date.add(end, obj.x_step, obj.x_unit); + } + + }else{ + new_start = new Date(+end - duration); + } + } - var new_end = new Date(end-1); + + } + var new_end = new Date(end-1); } @@ -2548,7 +3162,7 @@ scheduler._on_mouse_down=function(e,src) { if (this.config.readonly || this._drag_mode) return; src = src||(e.target||e.srcElement); - var classname = src.className && src.className.split(" ")[0]; + var classname = scheduler._getClassName(src).split(" ")[0]; switch (classname) { case "dhx_cal_event_line": @@ -2562,7 +3176,8 @@ scheduler._on_mouse_down=function(e,src) { break; case "dhx_event_resize": this._drag_mode="resize"; - if((src.className||"").indexOf("dhx_event_resize_end") < 0){ + var fullClass = scheduler._getClassName(src); + if((fullClass).indexOf("dhx_event_resize_end") < 0){ scheduler._drag_from_start = true; }else{ scheduler._drag_from_start = false; @@ -2603,7 +3218,6 @@ scheduler._on_mouse_down=function(e,src) { this._drag_event = scheduler._lame_clone(this.getEvent(this._drag_id) || {}); this._drag_pos = this._mouse_coords(e); - this._drag_pos.start = +new Date(); } } this._drag_start=null; @@ -2660,7 +3274,7 @@ scheduler._on_mouse_up=function(e){ this.unselect(); this._new_event=new Date();//timestamp of creation //if selection disabled - force lightbox usage - if (this._table_view || this.config.details_on_create || !this.config.select) { + if (this._table_view || this.config.details_on_create || !this.config.select || !this.isOneDayEvent(this.getEvent(drag_id))) { scheduler.callEvent("onDragEnd", [drag_id, mode, e]); return this.showLightbox(drag_id); } @@ -2672,7 +3286,10 @@ scheduler._on_mouse_up=function(e){ } } } - if (this._drag_pos && (this._drag_pos.has_moved || this._drag_pos === true)) this.render_view_data(); //redraw even if there is no real changes - necessary for correct positioning item after drag + if (this._drag_pos && (this._drag_pos.has_moved || this._drag_pos === true)) { + this._drag_id = this._drag_mode = null; // set null to prevent _sorder recalculation for drag event + this.render_view_data(); //redraw even if there is no real changes - necessary for correct positioning item after drag + } scheduler.callEvent("onDragEnd", [drag_id, mode, e]); } this._drag_id = null; @@ -2689,6 +3306,8 @@ scheduler._trigger_dyn_loading = function(){ } }; scheduler.update_view=function(){ + this._reset_ignores(); + var view = this[this._mode + "_view"]; if(view){ view(true); @@ -2707,14 +3326,41 @@ scheduler.isViewExists = function(mode){ (scheduler.date[mode+ "_start"] && scheduler.templates[mode+ "_date"] && scheduler.templates[mode+ "_scale_date"])); }; +scheduler._set_aria_buttons_attrs = function(){ + var buttonGroups = ["dhx_cal_next_button", "dhx_cal_prev_button", "dhx_cal_tab", "dhx_cal_today_button"]; + for(var i = 0; i < buttonGroups.length; i++){ + var group = this._els[buttonGroups[i]]; + for(var j = 0; group && j < group.length; j++ ){ + var name = group[j].getAttribute("name"); + var label = this.locale.labels[buttonGroups[i]]; + if(name){ + label = this.locale.labels[name] || label; + + + } + if(buttonGroups[i] == "dhx_cal_next_button"){ + label = this.locale.labels.next; + }else if(buttonGroups[i] == "dhx_cal_prev_button"){ + label = this.locale.labels.prev; + } + this._waiAria.headerButtonsAttributes(group[j], label || ""); + } + } +}; + scheduler.updateView = function(date, mode) { date = date || this._date; mode = mode || this._mode; var dhx_cal_data = 'dhx_cal_data'; - if (!this._mode) - this._obj.className += " dhx_scheduler_" + mode; else { - this._obj.className = this._obj.className.replace("dhx_scheduler_" + this._mode, "dhx_scheduler_" + mode); + var container = this._obj; + var oldClass = "dhx_scheduler_" + this._mode; + var newClass = "dhx_scheduler_" + mode; + + if (!this._mode || (container.className.indexOf(oldClass) == -1)){ + container.className += " " + newClass; + } else { + container.className = container.className.replace(oldClass, newClass); } var prev_scroll = (this._mode == mode && this.config.preserve_scroll) ? this._els[dhx_cal_data][0].scrollTop : false; // saving current scroll @@ -2737,14 +3383,24 @@ scheduler.updateView = function(date, mode) { this._dy_shift = 0;//correction for multiday section in week/day views + + this._set_aria_buttons_attrs(); + var tabs = this._els["dhx_cal_tab"]; if(tabs){//calendar can work without view tabs for (var i = 0; i < tabs.length; i++) { - var name = tabs[i].className; + var tab = tabs[i]; + + var name = tab.className; name = name.replace(/ active/g, ""); - if (tabs[i].getAttribute("name") == this._mode + "_tab") + if (tab.getAttribute("name") == this._mode + "_tab"){ name = name + " active"; - tabs[i].className = name; + this._waiAria.headerToggleState(tab, true); + }else{ + this._waiAria.headerToggleState(tab, false); + } + + tab.className = name; } } //show new view @@ -2776,7 +3432,12 @@ scheduler._render_x_header = function(i,left,d,h, offset_top){ left = left+1; } this.set_xy(head, width, this.xy.scale_height-2, left, offset_top);//-1 for border - head.innerHTML=this.templates[this._mode+"_scale_date"](d,this._mode); //TODO - move in separate method + + var columnHeaderText = this.templates[this._mode+"_scale_date"](d,this._mode); //TODO - move in separate method + head.innerHTML = columnHeaderText; + + this._waiAria.dayHeaderAttr(head, columnHeaderText); + h.appendChild(head); }; @@ -2857,7 +3518,7 @@ scheduler._render_scales = function(header, data_area){ } scales.className = cls+" "+this.templates.week_date_class(d,today); - + this._waiAria.dayColumnAttr(scales, d); this._set_scale_col_size(scales, this._cols[i], left); data_area.appendChild(scales); @@ -2901,7 +3562,11 @@ scheduler._reset_scale=function(){ this._min_date=d; - this._els["dhx_cal_date"][0].innerHTML=this.templates[this._mode+"_date"](dd,ed,this._mode); + + var navBarDateStr = this.templates[this._mode+"_date"](dd,ed,this._mode); + this._els["dhx_cal_date"][0].innerHTML = navBarDateStr; + this._waiAria.navBarDateAttr(this._els["dhx_cal_date"][0] ,navBarDateStr); + this._max_date = ed; scheduler._render_scales(h, data_area); @@ -2946,15 +3611,17 @@ scheduler._reset_hours_scale=function(b,dd,sd){ for (var i=this.config.first_hour*1; i < this.config.last_hour; i++) { var cc=document.createElement("DIV"); cc.className="dhx_scale_hour"; - cc.style.height=this.config.hour_size_px-(this._quirks?0:1)+"px"; + cc.style.height=this.config.hour_size_px+"px"; var width = this.xy.scale_width; if (this.config.left_border) { - width = width - 1; cc.className += " dhx_scale_hour_border"; } cc.style.width = width + "px"; - cc.innerHTML=scheduler.templates.hour_scale(date); - + + var content = scheduler.templates.hour_scale(date); + cc.innerHTML = content; + this._waiAria.hourScaleAttr(cc, content); + c.appendChild(cc); date=this.date.add(date,1,"hour"); } @@ -2970,9 +3637,13 @@ scheduler._currentDate = function(){ return new Date(); }; -scheduler._process_ignores = function(sd, n, mode, step, preserve){ +scheduler._reset_ignores = function(){ this._ignores={}; this._ignores_detected = 0; +}; + +scheduler._process_ignores = function(sd, n, mode, step, preserve){ + this._reset_ignores(); var ignore = scheduler["ignore_"+this._mode]; if (ignore){ @@ -2991,7 +3662,7 @@ scheduler._process_ignores = function(sd, n, mode, step, preserve){ } }; -scheduler._render_month_scale = function(div, dd/*month start*/, sd/*view start*/ ){ +scheduler._render_month_scale = function(div, dd/*month start*/, sd/*view start*/, rows ){ //renders month view layout var ed=scheduler.date.add(dd,1,"month"), @@ -3000,15 +3671,15 @@ scheduler._render_month_scale = function(div, dd/*month start*/, sd/*view start* this.date.date_part(cd); this.date.date_part(sd); - var rows=Math.ceil(Math.round((ed.valueOf()-sd.valueOf()) / (60*60*24*1000) ) / 7); - var tdcss=[]; + rows = rows || Math.ceil(Math.round((ed.valueOf()-sd.valueOf()) / (60*60*24*1000) ) / 7); + var tdwidths=[]; for (var i=0; i<=7; i++) { var cell_width = ((this._cols[i]||0)-1); if (i === 0 && this.config.left_border) { cell_width = cell_width - 1; } - tdcss[i]=" style='width:"+cell_width+"px;"; + tdwidths[i] = cell_width + "px"; } function getCellHeight(row){ @@ -3022,13 +3693,21 @@ scheduler._render_month_scale = function(div, dd/*month start*/, sd/*view start* var cellheight = 0; - var html="<table cellpadding='0' cellspacing='0'>"; + var table = document.createElement("table"); + table.setAttribute("cellpadding", "0"); + table.setAttribute("cellspacing", "0"); + + var tableBody = document.createElement("tbody"); + table.appendChild(tableBody); + var rendered_dates = []; for (var i=0; i<rows; i++){ - html+="<tr>"; + var row = document.createElement("tr"); + tableBody.appendChild(row); var row_height = Math.max(getCellHeight(i) - scheduler.xy.month_head_height, 0); for (var j=0; j<7; j++) { - html+="<td"; + var cell = document.createElement("td"); + row.appendChild(cell); var cls = ""; if (sd<dd) @@ -3042,7 +3721,8 @@ scheduler._render_month_scale = function(div, dd/*month start*/, sd/*view start* cls += " dhx_scale_ignore"; } - html+=" class='"+cls+" "+this.templates.month_date_class(sd,cd)+"' >"; + cell.className = cls + " " + this.templates.month_date_class(sd, cd); + var body_class = "dhx_month_body"; var head_class = "dhx_month_head"; if (j === 0 && this.config.left_border) { @@ -3050,10 +3730,23 @@ scheduler._render_month_scale = function(div, dd/*month start*/, sd/*view start* head_class += " dhx_month_head_border"; } if (!this._ignores_detected || !this._ignores[j]){ - html+="<div class='"+head_class+"'>"+this.templates.month_day(sd)+"</div>"; - html+="<div class='"+body_class+"' "+tdcss[j] + ";height:"+row_height + "px;'></div></td>"; + + this._waiAria.monthCellAttr(cell, sd); + + var cellHead = document.createElement("DIV"); + cellHead.className = head_class; + cellHead.innerHTML = this.templates.month_day(sd); + cell.appendChild(cellHead); + + var cellBody = document.createElement("DIV"); + cellBody.className = body_class; + cellBody.style.height = row_height + "px"; + cellBody.style.width = tdwidths[j]; + cell.appendChild(cellBody); + } else { - html+="<div></div><div></div>"; + cell.appendChild(document.createElement("div")); + cell.appendChild(document.createElement("div")); } rendered_dates.push(sd); var bf1 = sd.getDate(); @@ -3061,17 +3754,16 @@ scheduler._render_month_scale = function(div, dd/*month start*/, sd/*view start* if (sd.getDate() - bf1 > 1) sd = new Date(sd.getFullYear(), sd.getMonth(), bf1 + 1, 12, 0); } - html+="</tr>"; scheduler._colsS.heights[i] = cellheight; cellheight += getCellHeight(i); } - html+="</table>"; this._min_date = view_start; this._max_date = sd; - div.innerHTML=html; + div.innerHTML = ""; + div.appendChild(table); this._scales = {}; var divs = div.getElementsByTagName('div'); @@ -3090,7 +3782,7 @@ scheduler._render_month_scale = function(div, dd/*month start*/, sd/*view start* return this._max_date; }; -scheduler._reset_month_scale=function(b,dd,sd){ +scheduler._reset_month_scale=function(b,dd,sd,rows){ //recalculates rows height and redraws month layout var ed=scheduler.date.add(dd,1,"month"); @@ -3099,14 +3791,14 @@ scheduler._reset_month_scale=function(b,dd,sd){ this.date.date_part(cd); this.date.date_part(sd); - var rows=Math.ceil(Math.round((ed.valueOf()-sd.valueOf()) / (60*60*24*1000) ) / 7); + rows = rows || Math.ceil(Math.round((ed.valueOf()-sd.valueOf()) / (60*60*24*1000) ) / 7); var height = (Math.floor(b.clientHeight/rows) - this.xy.month_head_height); this._colsS.height = height + this.xy.month_head_height; this._colsS.heights = []; - return scheduler._render_month_scale(b, dd, sd); + return scheduler._render_month_scale(b, dd, sd, rows); }; scheduler.getLabel = function(property, key) { @@ -3179,9 +3871,9 @@ scheduler.getActionData = function(n_ev) { scheduler._focus = function(node, select){ if (node && node.focus){ if (this.config.touch){ - window.setTimeout(function(){ + window.setTimeout(function(){ node.focus(); - },100); + },10); } else { if (select && node.select) node.select(); node.focus(); @@ -3204,12 +3896,17 @@ scheduler._get_real_event_length=function(sd, fd, obj){ end_slot = Math.round(ev_length/60/60/1000/24); } + var last_column = true; while (start_slot < end_slot){ var check = scheduler.date.add(fd, -obj.x_step, obj.x_unit); - if (ignore && ignore(fd)) + if (ignore && ignore(fd) && (!last_column || (last_column && ignore(check) ))){ ev_length -= (fd-check); - else + + }else{ + last_column = false; ev_length -= hours; + } + fd = check; end_slot--; @@ -3229,6 +3926,7 @@ scheduler._get_fictional_event_length=function(end_date, ev_length, obj, back){ today = (obj.last_hour||0)*60 - (sd.getHours()*60+sd.getMinutes()); var per_day = (obj.last_hour - obj.first_hour)*60; var days = Math.ceil( (ev_length / (60*1000) - today ) / per_day); + if(days < 0) days = 0; ev_length += days * (24*60 - per_day) * 60 * 1000; } @@ -3284,6 +3982,19 @@ scheduler._is_lightbox_open = function(){ var state = this.getState(); return state.lightbox_id !== null && state.lightbox_id !== undefined; }; + +scheduler._getClassName = function(node){ + if(!node) return ""; + + var className = node.className || ""; + if(className.baseVal)//'className' exist but not a string - IE svg element in DOM + className = className.baseVal; + + if(!className.indexOf) + className = ''; + + return className || ""; +}; scheduler.date={ init:function(){ var s = scheduler.locale.date.month_short; @@ -3333,10 +4044,21 @@ scheduler.date={ var ndate = new Date(date.valueOf()); ndate.setDate(ndate.getDate() + inc); + + // Workaround for Safari/iOS timezone bug, ref:OKZ-149693 + if(inc == Math.round(inc) && inc > 0){ + var datesDiff = +ndate - +date, + rest = datesDiff % (24*60*60*1000); + if(rest && date.getTimezoneOffset() == ndate.getTimezoneOffset()){ + var hours = rest / (60* 60 * 1000); + ndate.setTime(ndate.getTime() + (24 - hours) * 60 * 60 * 1000); + } + } + if (inc >= 0 && (!date.getHours() && ndate.getHours()) &&//shift to yesterday on dst (ndate.getDate() < date.getDate() || ndate.getMonth() < date.getMonth() || ndate.getFullYear() < date.getFullYear()) ) ndate.setTime(ndate.getTime() + 60 * 60 * 1000 * (24 - ndate.getHours())); - return ndate; + return ndate; }, add:function(date,inc,mode){ var ndate=new Date(date.valueOf()); @@ -3442,6 +4164,7 @@ scheduler.date={ }, getISOWeek: function(ndate) { if(!ndate) return false; + ndate = this.date_part(new Date(ndate)); var nday = ndate.getDay(); if (nday === 0) { nday = 7; @@ -3512,7 +4235,16 @@ scheduler.locale = { /* dhtmlx message default buttons */ message_ok:"OK", - message_cancel:"Cancel" + message_cancel:"Cancel", + + /* wai aria labels for non-text controls */ + next: "Next", + prev: "Previous", + year: "Year", + month: "Month", + day: "Day", + hour:"Hour", + minute: "Minute" } }; @@ -3594,7 +4326,9 @@ scheduler.config={ left_border: false, ajax_error: "alert",//"ignore"|"console" - delay_render: 0 + delay_render: 0, + timeline_swap_resize: true, + wai_aria_attributes: true }; scheduler.templates={}; scheduler.init_templates=function(){ @@ -3661,6 +4395,13 @@ scheduler.init_templates=function(){ this.callEvent("onTemplatesReady",[]); }; +/* Could be redifined */ +scheduler.templates.tooltip_date_format = scheduler.date.date_to_str("%Y-%m-%d %H:%i"); + +scheduler.templates.tooltip_text = function(start, end, event) { + return "<b>Event:</b> " + event.text + "<br/><b>Start date:</b> " + scheduler.templates.tooltip_date_format(start) + "<br/><b>End date:</b> " + scheduler.templates.tooltip_date_format(end); +}; + scheduler.uid = function() { @@ -3782,13 +4523,17 @@ scheduler.event_updated = function(ev, force) { }; scheduler.is_visible_events = function(ev) { //if in displayed dates - var in_visible_range = (ev.start_date < this._max_date && this._min_date < ev.end_date); + var in_visible_range = (ev.start_date.valueOf() < this._max_date.valueOf() && this._min_date.valueOf() < ev.end_date.valueOf()); if(in_visible_range){ //end dates are not between last/first hours - var end_dates_visible = (this._table_view || ((ev.end_date.getHours() >= this.config.first_hour && ev.end_date.getHours() < this.config.last_hour) || - (ev.start_date.getHours() >= this.config.first_hour && ev.start_date.getHours() < this.config.last_hour))) ; + var evFirstHour = ev.start_date.getHours(), + evLastHour = ev.end_date.getHours() + (ev.end_date.getMinutes()/60), + lastHour = this.config.last_hour, + firstHour = this.config.first_hour; + + var end_dates_visible = (this._table_view || !((evLastHour > lastHour || evLastHour < firstHour) && (evFirstHour >= lastHour || evFirstHour < firstHour))); if(end_dates_visible){ return true; @@ -3798,7 +4543,7 @@ scheduler.is_visible_events = function(ev) { var event_duration = (ev.end_date.valueOf() - ev.start_date.valueOf()) / (1000*60*60),//hours hidden_duration = 24 - (this.config.last_hour - this.config.first_hour); - return (event_duration > hidden_duration); + return !!((event_duration > hidden_duration) || (evFirstHour < lastHour && evLastHour >= firstHour)); } }else{ @@ -3836,7 +4581,9 @@ scheduler._is_main_area_event = function(ev){ return !!ev._timed; }; scheduler.render_view_data = function(evs, hold) { + var full = false; if (!evs) { + full = true; if (this._not_render) { this._render_wait = true; return; @@ -3876,6 +4623,10 @@ scheduler.render_view_data = function(evs, hold) { this._rendered_location = this._els['dhx_cal_data'][0]; this.render_data(evs, hold); } + + if(full){ + this.callEvent("onDataRender", []); + } }; @@ -4077,7 +4828,10 @@ scheduler._pre_render_events = function(evs, hold) { return evs; }; scheduler._get_event_sday = function(ev) { - return Math.floor((ev.start_date.valueOf() - this._min_date.valueOf()) / (24 * 60 * 60 * 1000)); + // get day in current view + // use rounding for 23 or 25 hour days on DST + var datePart = this.date.day_start(new Date(ev.start_date)); + return Math.round((datePart.valueOf() - this._min_date.valueOf()) / (24 * 60 * 60 * 1000)); }; scheduler._get_event_mapped_end_date = function(ev) { var end_date = ev.end_date; @@ -4420,7 +5174,7 @@ scheduler.render_event = function(ev) { } var d = this._render_v_bar(ev, menu_offset + left, top, width, height, ev._text_style, scheduler.templates.event_header(ev.start_date, ev.end_date, ev), scheduler.templates.event_text(ev.start_date, ev.end_date, ev)); - + this._waiAria.eventAttr(ev, d); this._rendered.push(d); parent.appendChild(d); @@ -4432,6 +5186,10 @@ scheduler.render_event = function(ev) { width = Math.max(width - 4, scheduler.xy.editor_width); d = document.createElement("DIV"); d.setAttribute("event_id", ev.id); + + + this._waiAria.eventAttr(ev, d); + this.set_xy(d, width, height - 20, left, top + 14); d.className = "dhx_cal_event dhx_cal_editor"; @@ -4472,8 +5230,12 @@ scheduler.render_event = function(ev) { var icons_str = ""; var bg_color = (ev.color ? ("background-color: " + ev.color + ";") : ""); var color = (ev.textColor ? ("color: " + ev.textColor + ";") : ""); - for (var i = 0; i < icons.length; i++) - icons_str += "<div class='dhx_menu_icon " + icons[i] + "' style='" + bg_color + "" + color + "' title='" + this.locale.labels[icons[i]] + "'></div>"; + + var ariaAttr; + for (var i = 0; i < icons.length; i++) { + ariaAttr = this._waiAria.eventMenuAttrString(icons[i]); + icons_str += "<div class='dhx_menu_icon " + icons[i] + "' style='" + bg_color + "" + color + "' title='" + this.locale.labels[icons[i]] + "'"+ariaAttr+"></div>"; + } var obj = this._render_v_bar(ev, left - menu + 1, top, menu, icons.length * 20 + 26 - 2, "", "<div style='" + bg_color + "" + color + "' class='dhx_menu_head'></div>", icons_str, true); obj.style.left = left - menu + 1; this._els["dhx_cal_data"][0].appendChild(obj); @@ -4628,7 +5390,7 @@ scheduler.render_event_bar = function (ev) { (ev._text_style || "") ].join(";"); - var html = '<div event_id="' + ev.id + '" class="' + cs + '" style="'+style_text+'">'; + var html = "<div event_id='" + ev.id + "' class='"+ cs + "' style='"+style_text+"'"+this._waiAria.eventBarAttrString(ev)+">"; if (resizable) { html += resize_handle; } @@ -4656,6 +5418,36 @@ scheduler._locate_event = function(node) { return id; }; +scheduler._locate_css = function(e, classname, strict){ + if(strict === undefined) + strict = true; + + var trg = e.target || e.srcElement; + var css = ''; + + while (trg){ + css = scheduler._getClassName(trg); + + if(css){ + var ind = css.indexOf(classname); + if (ind >= 0){ + if (!strict) + return trg; + + //check that we have exact match + var left = (ind === 0) || (!scheduler._trim(css.charAt(ind - 1))); + var right = ((ind + classname.length >= css.length)) || (!scheduler._trim(css.charAt(ind + classname.length))); + + if (left && right) + return trg; + } + } + + trg=trg.parentNode; + } + return null; +}; + scheduler.edit = function(id) { if (this._edit_id == id) return; this.editStop(false, id); @@ -4737,7 +5529,9 @@ scheduler.showEvent = function(id, mode) { scheduler.config.preserve_scroll = preserve_scroll; if (scheduler.matrix && scheduler.matrix[mode]) { - scheduler._els.dhx_cal_data[0].scrollTop = getAbsoluteTop(scheduler.getRenderedEvent(ev.id)) - getAbsoluteTop(scheduler._els.dhx_cal_data[0]) - 20; + var rendered_event = scheduler.getRenderedEvent(ev.id); + if(rendered_event) + scheduler._els.dhx_cal_data[0].scrollTop = getAbsoluteTop(rendered_event) - getAbsoluteTop(scheduler._els.dhx_cal_data[0]) - 20; } scheduler.callEvent("onAfterEventDisplay", [ev, mode]); @@ -4748,10 +5542,13 @@ scheduler._append_drag_marker = function(m){ var zone = scheduler._els["dhx_cal_data"][0]; var scale = zone.lastChild; - if(scale.className && scale.className.indexOf("dhx_scale_holder") < 0 && scale.previousSibling){ + var className = scheduler._getClassName(scale); + if(className.indexOf("dhx_scale_holder") < 0 && scale.previousSibling){ scale = scale.previousSibling; } - if (scale && scale.className.indexOf("dhx_scale_holder") === 0) { + + className = scheduler._getClassName(scale); + if (scale && className.indexOf("dhx_scale_holder") === 0) { scale.appendChild(m); } }; @@ -4880,7 +5677,12 @@ scheduler._init_date = function(date){ scheduler.json = {}; scheduler.json.parse = function(data) { if (typeof data == "string") { - scheduler._temp = eval("(" + data + ")"); + if(window.JSON){ + scheduler._temp = JSON.parse(data); + }else{ + scheduler._temp = eval("(" + data + ")"); + } + data = (scheduler._temp) ? scheduler._temp.data || scheduler._temp.d || scheduler._temp : []; } @@ -5162,13 +5964,17 @@ scheduler.form_blocks={ return "<div class='dhx_cal_ltext' style='height:"+height+";'><textarea></textarea></div>"; }, set_value:function(node,value,ev){ - node.firstChild.value=value||""; + scheduler.form_blocks.textarea._get_input(node).value=value||""; }, get_value:function(node,ev){ - return node.firstChild.value; + return scheduler.form_blocks.textarea._get_input(node).value; }, focus:function(node){ - var a=node.firstChild; scheduler._focus(a, true); + var a = scheduler.form_blocks.textarea._get_input(node); + scheduler._focus(a, true); + }, + _get_input: function(node){ + return node.getElementsByTagName("textarea")[0]; } }, select:{ @@ -5224,52 +6030,51 @@ scheduler.form_blocks={ if (p > 0) { html += " "; } - + var options = ""; switch (time_option) { case "%Y": sns._time_format_order[3] = p; //year - html+="<select>"; var year = dt.getFullYear()-5; //maybe take from config? for (var i=0; i < 10; i++) - html+="<option value='"+(year+i)+"'>"+(year+i)+"</option>"; - html+="</select> "; + options+="<option value='"+(year+i)+"'>"+(year+i)+"</option>"; break; case "%m": sns._time_format_order[2] = p; //month - html+="<select>"; for (var i=0; i < 12; i++) - html+="<option value='"+i+"'>"+this.locale.date.month_full[i]+"</option>"; - html += "</select>"; + options+="<option value='"+i+"'>"+this.locale.date.month_full[i]+"</option>"; break; case "%d": sns._time_format_order[1] = p; //days - html+="<select>"; for (var i=1; i < 32; i++) - html+="<option value='"+i+"'>"+i+"</option>"; - html += "</select>"; + options+="<option value='"+i+"'>"+i+"</option>"; break; case "%H:%i": sns._time_format_order[0] = p; //hours - html += "<select>"; var i = first; var tdate = dt.getDate(); sns._time_values = []; while(i<last){ var time=this.templates.time_picker(dt); - html+="<option value='"+i+"'>"+time+"</option>"; + options+="<option value='"+i+"'>"+time+"</option>"; sns._time_values.push(i); dt.setTime(dt.valueOf()+this.config.time_step*60*1000); var diff = (dt.getDate()!=tdate)?1:0; // moved or not to the next day i=diff*24*60+dt.getHours()*60+dt.getMinutes(); } - html += "</select>"; break; } + + if(options){ + + var ariaAttrs = scheduler._waiAria.lightboxSelectAttrString(time_option); + var readonly = sns.readonly ? "disabled='disabled'" : ""; + html += "<select "+readonly + ariaAttrs+">"+options+"</select> "; + } } return "<div style='height:30px;padding-top:0px;font-size:inherit;' class='dhx_section_time'>"+html+"<span style='font-weight:normal; font-size:10pt;'> – </span>"+html+"</div>"; @@ -5415,19 +6220,32 @@ scheduler.showLightbox=function(id){ var box = this.getLightbox(); this.showCover(box); this._fill_lightbox(id,box); + this._waiAria.lightboxVisibleAttr(box); this.callEvent("onLightbox",[id]); }; scheduler._fill_lightbox = function(id, box) { var ev = this.getEvent(id); var s = box.getElementsByTagName("span"); + var lightboxHeader = []; + if (scheduler.templates.lightbox_header) { + lightboxHeader.push(""); + var headerContent = scheduler.templates.lightbox_header(ev.start_date, ev.end_date, ev); + lightboxHeader.push(headerContent); s[1].innerHTML = ""; - s[2].innerHTML = scheduler.templates.lightbox_header(ev.start_date, ev.end_date, ev); + s[2].innerHTML = headerContent; } else { - s[1].innerHTML = this.templates.event_header(ev.start_date, ev.end_date, ev); - s[2].innerHTML = (this.templates.event_bar_text(ev.start_date, ev.end_date, ev) || "").substr(0, 70); //IE6 fix + var headerDate = this.templates.event_header(ev.start_date, ev.end_date, ev); + var headerTitle = (this.templates.event_bar_text(ev.start_date, ev.end_date, ev) || "").substr(0, 70); //IE6 fix; + + lightboxHeader.push(headerDate); + lightboxHeader.push(headerTitle); + s[1].innerHTML = headerDate; + s[2].innerHTML = headerTitle; } + this._waiAria.lightboxHeader(box, lightboxHeader.join(" ")); + var sns = this.config.lightbox.sections; for (var i = 0; i < sns.length; i++) { var current_sns = sns[i]; @@ -5465,7 +6283,9 @@ scheduler._empty_lightbox=function(data){ this.render_view_data(); }; scheduler.hide_lightbox=function(id){ - this.hideCover(this.getLightbox()); + var box = this.getLightbox(); + this.hideCover(box); + this._waiAria.lightboxHiddenAttr(box); this._lightbox_id = null; this.callEvent("onAfterLightbox",[]); }; @@ -5530,8 +6350,11 @@ scheduler._init_lightbox_events=function(){ this.getLightbox().onclick=function(e){ var src=e?e.target:event.srcElement; if (!src.className) src=src.previousSibling; - if (src && src.className) - switch(src.className){ + + var className = scheduler._getClassName(src); + + if (src && className) + switch(className){ case "dhx_save_btn": scheduler.save_lightbox(); break; @@ -5551,11 +6374,11 @@ scheduler._init_lightbox_events=function(){ default: if (src.getAttribute("dhx_button")) { - scheduler.callEvent("onLightboxButton", [src.className, src, e]); + scheduler.callEvent("onLightboxButton", [className, src, e]); } else { var index, block, sec; - if (src.className.indexOf("dhx_custom_button") != -1) { - if (src.className.indexOf("dhx_custom_button_") != -1) { + if (className.indexOf("dhx_custom_button") != -1) { + if (className.indexOf("dhx_custom_button_") != -1) { index = src.parentNode.getAttribute("index"); sec = src.parentNode.parentNode; } else { @@ -5573,10 +6396,29 @@ scheduler._init_lightbox_events=function(){ } }; this.getLightbox().onkeydown=function(e){ + var event = e || window.event; + var target = e.target || e.srcElement; + var buttonTarget = target.querySelector("[dhx_button]"); + + if(!buttonTarget){ + buttonTarget = target.parentNode.querySelector(".dhx_custom_button, .dhx_readonly"); + } + switch((e||event).keyCode){ + case 32:{//space + if ((e||event).shiftKey) return; + if(buttonTarget && buttonTarget.click){ + buttonTarget.click(); + } + break; + } case scheduler.keys.edit_save: if ((e||event).shiftKey) return; - scheduler.save_lightbox(); + if(buttonTarget && buttonTarget.click){ + buttonTarget.click(); + }else{ + scheduler.save_lightbox(); + } break; case scheduler.keys.edit_cancel: scheduler.cancel_lightbox(); @@ -5584,6 +6426,7 @@ scheduler._init_lightbox_events=function(){ default: break; } + }; }; scheduler.setLightboxSize=function(){ @@ -5641,12 +6484,18 @@ scheduler.getLightbox=function(){ //scheduler.config.wide_form=true; var html = this._lightbox_template; var buttons = this.config.buttons_left; - for (var i = 0; i < buttons.length; i++) - html+="<div class='dhx_btn_set dhx_left_btn_set "+buttons[i]+"_set'><div dhx_button='1' class='"+buttons[i]+"'></div><div>"+scheduler.locale.labels[buttons[i]]+"</div></div>"; + + var ariaAttr = ""; + for (var i = 0; i < buttons.length; i++) { + ariaAttr = this._waiAria.lightboxButtonAttrString(buttons[i]); + html += "<div "+ariaAttr+" class='dhx_btn_set dhx_left_btn_set " + buttons[i] + "_set'><div dhx_button='1' class='" + buttons[i] + "'></div><div>" + scheduler.locale.labels[buttons[i]] + "</div></div>"; + } buttons = this.config.buttons_right; - for (var i = 0; i < buttons.length; i++) - html+="<div class='dhx_btn_set dhx_right_btn_set "+buttons[i]+"_set' style='float:right;'><div dhx_button='1' class='"+buttons[i]+"'></div><div>"+scheduler.locale.labels[buttons[i]]+"</div></div>"; + for (var i = 0; i < buttons.length; i++) { + ariaAttr = this._waiAria.lightboxButtonAttrString(buttons[i]); + html += "<div "+ariaAttr+" class='dhx_btn_set dhx_right_btn_set " + buttons[i] + "_set' style='float:right;'><div dhx_button='1' class='" + buttons[i] + "'></div><div>" + scheduler.locale.labels[buttons[i]] + "</div></div>"; + } html+="</div>"; d.innerHTML=html; @@ -5657,6 +6506,9 @@ scheduler.getLightbox=function(){ //scheduler.config.wide_form=true; scheduler._init_dnd_events(); } + + this._waiAria.lightboxAttr(d); + document.body.insertBefore(d,document.body.firstChild); this._lightbox=d; @@ -5668,7 +6520,8 @@ scheduler.getLightbox=function(){ //scheduler.config.wide_form=true; sns[i].id="area_"+this.uid(); var button = ""; if (sns[i].button){ - button = "<div class='dhx_custom_button' index='"+i+"'><div class='dhx_custom_button_"+sns[i].button+"'></div><div>"+this.locale.labels["button_"+sns[i].button]+"</div></div>"; + var ariaAttr = scheduler._waiAria.lightboxSectionButtonAttrString(this.locale.labels["button_"+sns[i].button]); + button = "<div "+ariaAttr+" class='dhx_custom_button' index='"+i+"'><div class='dhx_custom_button_"+sns[i].button+"'></div><div>"+this.locale.labels["button_"+sns[i].button]+"</div></div>"; } if (this.config.wide_form){ @@ -5679,19 +6532,42 @@ scheduler.getLightbox=function(){ //scheduler.config.wide_form=true; if(typeof label_name !== "string"){ label_name = sns[i].name; } - html+="<div id='"+sns[i].id+"' class='dhx_cal_lsection'>"+button+label_name+"</div>"+block.render.call(this,sns[i]); + html+="<div id='"+sns[i].id+"' class='dhx_cal_lsection'>"+button+ "<label>"+label_name+"</label></div>"+block.render.call(this,sns[i]); html+="</div>"; } var ds=d.getElementsByTagName("div"); for (var i=0; i<ds.length; i++) { var t_ds = ds[i]; - if (t_ds.className == "dhx_cal_larea") { + var className = scheduler._getClassName(t_ds); + if (className == "dhx_cal_larea") { t_ds.innerHTML = html; break; } } + // bind labels to lightbox inputs + for(var i = 0; i < sns.length; i++){ + var section = sns[i]; + if(!section.id || !document.getElementById(section.id)) + continue; + + var labelBlock = document.getElementById(section.id); + var label = labelBlock.querySelector("label"); + var inputBlock = labelBlock.nextSibling; + if(!inputBlock) + continue; + + var input = inputBlock.querySelector("input, select, textarea"); + if(input){ + section.inputId = input.id || "input_" + scheduler.uid(); + if(!input.id) + input.id = section.inputId; + + label.setAttribute("for", section.inputId); + } + } + //sizes this.setLightboxSize(); @@ -5724,17 +6600,17 @@ scheduler._init_touch_events = function(){ if (ev.pointerType == ev.MSPOINTER_TYPE_MOUSE ) return null; return ev; }, function(ev){ - return (!ev || ev.pointerType == ev.MSPOINTER_TYPE_MOUSE); + return (!ev || ev.pointerType == ev.MSPOINTER_TYPE_MOUSE || (scheduler._pointerDragId && scheduler._pointerDragId != ev.pointerId)); }); this._obj.ondblclick = function(){}; } else this._touch_events(["touchmove", "touchstart", "touchend"], function(ev){ if (ev.touches && ev.touches.length > 1) return null; - if (ev.touches[0]) + if (ev.touches && ev.touches[0]) return { target:ev.target, pageX:ev.touches[0].pageX, pageY:ev.touches[0].pageY }; else return ev; - }, function(){ return false; }); + }, function(ev){ return !!(ev.touches && ev.touches.length > 1); }); } }; @@ -5810,11 +6686,15 @@ scheduler._touch_events = function(names, accessor, ignore){ scheduler.render_view_data = original_render; } } + + // touchmove attachTouchEvent(document.body, names[0], function(e){ if (ignore(e)) return; + var acc = accessor(e); + if(!acc) return; if (drag_mode){ - doMouseMove(accessor(e)); + doMouseMove(acc); scheduler._update_global_tip(); if (e.preventDefault) e.preventDefault(); @@ -5855,9 +6735,12 @@ scheduler._touch_events = function(names, accessor, ignore){ return false; } }); - attachTouchEvent(this._els["dhx_cal_data"][0], names[1], function(e){ + + // touchstart + attachTouchEvent(this._obj, names[1], function(e){ if (ignore(e)) return; - + scheduler._pointerDragId = e.pointerId; + var fake_event; drag_mode = scroll_mode = false; action_mode = true; @@ -5875,6 +6758,7 @@ scheduler._touch_events = function(names, accessor, ignore){ if (!scroll_mode && !drag_mode && now - dblclicktime < 250){ scheduler._click.dhx_cal_data(fake_event); window.setTimeout(function(){ + fake_event.type = "dblclick"; scheduler._on_dbl_click(fake_event); }, 50); @@ -5912,7 +6796,8 @@ scheduler._touch_events = function(names, accessor, ignore){ drag_mode = true; var target = source.target; - if (target && target.className && target.className.indexOf("dhx_body") != -1) + var className = scheduler._getClassName(target); + if (target && className.indexOf("dhx_body") != -1) target = target.previousSibling; scheduler._on_mouse_down(source, target); @@ -5931,7 +6816,7 @@ scheduler._touch_events = function(names, accessor, ignore){ if (scheduler.config.touch_tip) scheduler._show_global_tip(); - scheduler._on_mouse_move(source); + scheduler.updateEvent(scheduler._drag_id); },scheduler.config.touch_drag); source = fake_event; @@ -5945,11 +6830,13 @@ scheduler._touch_events = function(names, accessor, ignore){ scheduler._drag_id = null; scheduler._drag_mode=null; scheduler._drag_pos=null; - + scheduler._pointerDragId = null; clearTimeout(timer); drag_mode = action_mode = false; scroll_mode = true; } + + // touch end attachTouchEvent(this._els["dhx_cal_data"][0], names[2], function(e){ if (ignore(e)) return; @@ -5993,9 +6880,9 @@ scheduler._update_global_tip = function(init){ } if (scheduler._drag_mode == "create" || scheduler._drag_mode == "new-size") - toptip.innerHTML = (scheduler.locale.drag_to_create || "Drag to create")+time; + toptip.innerHTML = (scheduler.locale.labels.drag_to_create || "Drag to create")+time; else - toptip.innerHTML = (scheduler.locale.drag_to_move || "Drag to move")+time; + toptip.innerHTML = (scheduler.locale.labels.drag_to_move || "Drag to move")+time; } }; scheduler._hide_global_tip = function(){ @@ -6007,10 +6894,26 @@ scheduler._hide_global_tip = function(){ }; scheduler._dp_init=function(dp){ - dp._methods=["_set_event_text_style","","changeEventId","_dp_hook_delete"]; - - this._dp_hook_delete = function(id){ - return this.deleteEvent(id, true); + dp._methods=["_set_event_text_style","","_dp_change_event_id","_dp_hook_delete"]; + + this._dp_change_event_id = function(id, new_id){ + if(!scheduler.getEvent(id)) + return; + + scheduler.changeEventId(id, new_id); + }; + + this._dp_hook_delete = function(id, new_id){ + if(!scheduler.getEvent(id)) + return; + + if(id != new_id){ + if(this.getUserData(id, dp.action_param) == "true_deleted") + this.setUserData(id, dp.action_param, "updated"); + + this.changeEventId(id, new_id); + } + return this.deleteEvent(new_id, true); }; this.attachEvent("onEventAdded",function(id){ if (!this._loading && this._validId(id)) @@ -6031,28 +6934,47 @@ scheduler._dp_init=function(dp){ if (!this._loading && this._validId(id)) dp.setUpdated(id,true,"updated"); }); - - dp._getRowData=function(id,pref){ - var ev=this.obj.getEvent(id); - var data = {}; + + scheduler.attachEvent("onClearAll", function(){ + // clear dataprocessor state when scheduler is reset + dp._in_progress={}; + dp._invalid={}; + dp.updatedRows = []; + dp._waitMode = 0; + }); + + dp._objToJson = function(obj, data, prefix){ + prefix = prefix || ""; + data = data || {}; - for (var a in ev){ + for (var a in obj){ if (a.indexOf("_") === 0) continue; - if (ev[a] && ev[a].getUTCFullYear) //not very good, but will work - data[a] = this.obj.templates.xml_format(ev[a]); - else - data[a] = ev[a]; + if (obj[a] && obj[a].getUTCFullYear) //not very good, but will work + data[prefix+a] = this.obj.templates.xml_format(obj[a]); + else { + if (obj[a] && typeof obj[a] == "object") + dp._objToJson(obj[a], data, prefix+a+"."); + else + data[prefix+a] = obj[a]; + } } return data; }; + dp._getRowData=function(id,pref){ + var ev=this.obj.getEvent(id); + return this._objToJson(ev); + }; dp._clearUpdateFlag=function(){}; dp.attachEvent("insertCallback", scheduler._update_callback); dp.attachEvent("updateCallback", scheduler._update_callback); dp.attachEvent("deleteCallback", function(upd, id) { - this.obj.setUserData(id, this.action_param, "true_deleted"); - this.obj.deleteEvent(id); + if (this.obj.getEvent(id)){ + this.obj.setUserData(id, this.action_param, "true_deleted"); + this.obj.deleteEvent(id); + } else if (this.obj._add_rec_marker) + this.obj._update_callback(upd, id); }); }; @@ -6062,15 +6984,28 @@ scheduler._validId=function(id){ }; scheduler.setUserData=function(id,name,value){ - if (id) - this.getEvent(id)[name]=value; - else + if (id){ + var ev = this.getEvent(id); + if(ev) ev[name]=value; + }else{ this._userdata[name]=value; + } }; scheduler.getUserData=function(id,name){ - return id?this.getEvent(id)[name]:this._userdata[name]; + if (id){ + var ev = this.getEvent(id); + if(ev) + return ev[name]; + else + return null; + }else{ + return this._userdata[name]; + } }; scheduler._set_event_text_style=function(id,style){ + if(!scheduler.getEvent(id)) + return; + this.for_rendered(id,function(r){ r.style.cssText+=";"+style; }); @@ -6081,11 +7016,16 @@ scheduler._set_event_text_style=function(id,style){ scheduler._update_callback = function(upd,id){ var data = scheduler._xmlNodeToJSON(upd.firstChild); + + //fix for updates of recurring events + if (data.rec_type == "none") data.rec_pattern = "none"; data.text = data.text||data._tagvalue; data.start_date = scheduler.templates.xml_date(data.start_date); data.end_date = scheduler.templates.xml_date(data.end_date); scheduler.addEvent(data); + if (scheduler._add_rec_marker) + scheduler.setCurrentView(); }; scheduler._skin_settings = { fix_tab_position: [1,0], @@ -6165,7 +7105,7 @@ scheduler._skin_init = function(){ if (date.getDate() == 1) { label = scheduler.locale.date.month_full[date.getMonth()] + " " + label; } - if (+date == +scheduler.date.date_part(new Date())) { + if (+date == +scheduler.date.date_part(this._currentDate())) { label = scheduler.locale.labels.dhx_cal_today_button + " " + label; } return label; diff --git a/codebase/sources/dhtmlxscheduler.js.map b/codebase/sources/dhtmlxscheduler.js.map index eeefa6d..535cba3 100644 --- a/codebase/sources/dhtmlxscheduler.js.map +++ b/codebase/sources/dhtmlxscheduler.js.map @@ -1 +1 @@ -{"version":3,"file":"dhtmlxscheduler.js","sources":["dhtmlxscheduler.js"],"names":["dtmlXMLLoaderObject","funcObject","dhtmlObject","async","rSeed","this","xmlDoc","onloadAction","mainObject","waitCall","callerFunction","handler","e","window","event","getAbsoluteLeft","htmlObject","getOffset","left","getAbsoluteTop","top","getOffsetSum","elem","parseInt","offsetTop","offsetLeft","offsetParent","getOffsetRect","box","getBoundingClientRect","body","document","docElem","documentElement","scrollTop","pageYOffset","scrollLeft","pageXOffset","clientTop","clientLeft","Math","round","convertStringToBoolean","inputString","toLowerCase","getUrlSymbol","str","indexOf","dhtmlDragAndDropObject","dhtmlDragAndDrop","lastLanding","dragNode","dragStartNode","dragStartObject","tempDOMU","tempDOMM","waitDrag","_dhtmlxError","type","name","params","catches","dhtmlXHeir","a","b","c","dataProcessor","serverProcessorURL","serverProcessor","action_param","object","updatedRows","autoUpdate","updateMode","_tMode","post_delim","_waitMode","_in_progress","_invalid","mandatoryFields","messages","styles","updated","inserted","deleted","invalid","invalid_cell","error","clear","enableUTFencoding","dhtmlxEventable","dhtmlXScheduler","scheduler","version","dhtmlx","obj","extend_api","map","ext","t","that","tagName","apply","_init","arguments","attachEvent","_patch","prototype","dhtmlxAjax","get","url","callback","length","loadXML","post","getSync","postSync","count","waitLoadFunction","once","check","readyState","call","getXMLTopNode","oldObj","z","responseXML","temp","getElementsByTagName","split","_retry","_isIE","loadXMLString","responseText","replace","dhtmlxError","throwError","createElement","xmlString","silent","ActiveXObject","onreadystatechange","parser","DOMParser","parseFromString","filePath","postMode","postVars","rpc","Date","valueOf","XMLHttpRequest","open","setRequestHeader","navigator","userAgent","send","destructor","_filterXPath","_getAllNamedChilds","doXPath","doXPathOpera","doXSLTransToObject","doXSLTransToString","doSerialization","xmlNodeToJSON","setXSLParamValue","node","i","attributes","value","firstChild","nodeValue","childNodes","push","removeDraggableItem","htmlNode","onmousedown","dragStarter","dragLanding","addDraggableItem","preCreateDragCopy","addDragLanding","button","onmouseup","onmousemove","stopDrag","callDrag","downtime","preventDefault","dragger","_createDragNode","onselectstart","gldragNode","appendChild","pWindow","initFrameRoute","parentNode","grd","old","removeChild","oldBody","_dragOut","div","innerHTML","outerHTML","cloneNode","style","clientX","fx","clientY","fy","srcElement","target","checkLanding","calculateFramePosition","n","el","parent","frames","frameElement","ls","_dragIn","lastLanding_scr","_onNotFound","mode","stopFrameRoute","_drag","win","_isFF","_FFrv","_isOpera","_isKHTML","_isMacOS","_isChrome","_KHTMLrv","_OperaRv","parseFloat","substr","appName","appVersion","compatMode","xpathExp","docObj","namespace","result_type","XPathResult","nodeName","setProperty","selectSingleNode","selectNodes","Array","nodeObj","ownerDocument","retType","ANY_TYPE","FIRST_ORDERED_NODE_TYPE","rowsCol","col","evaluate","pref","singleNodeValue","thisColMemb","iterateNext","catchError","func_name","alert","getAttribute","toUpperCase","j","dhtmlxEvent","addEventListener","xslDoc","paramName","paramValue","item","result","transformNodeToObject","transformNode","XSLProcessor","XSLTProcessor","importStylesheet","transformToDocument","res","xml","xmlSerializer","XMLSerializer","serializeToString","catcher","callObj","eventCatcher","addEvent","callEvent","arg0","checkEvent","dhx_catch","zr","ev","eval","removeEvent","id","detachEvent","list","detachAllEvents","config","usercall","modality","_dhx_msg_cfg","modal_key","code","which","keyCode","message","keyboard","cancelBubble","cover","onkeydown","className","scrollHeight","display","text","css","button_css","info","area","position","hide","onclick","insertBefore","expire","timers","setTimeout","pull","_boxStructure","ok","cancel","setAttribute","inner","width","height","title","content","ok_text","locale","labels","message_ok","undefined","cancel_text","message_cancel","buttons","getElementById","source","_createBox","hidden","x","abs","floor","innerWidth","offsetWidth","y","innerHeight","offsetHeight","focus","modalbox","alertPopup","confirmPopup","boxPopup","box_params","uid","confirm","subtype","seed","hideAll","key","clearTimeout","setTransactionMode","total","_tSend","_endnm","escape","data","_utf","encodeURIComponent","setDataColumns","val","_columns","getSyncState","enableDataNames","enablePartialDataSend","_changed","setUpdateMode","dnd","ignore","master","_silent_mode","setUpdated","rowId","state","ind","findRow","existing","getUserData","set_invalid","setUserData","is_invalid","splice","_clearUpdateFlag","markRow","sendData","_methods","details","getState","toString","checkBeforeUpdate","mytype","_h2","editStop","sendAllData","_beforeSendData","_getRowData","_sendData","serialize","serialize_one","stack","keys","hasOwnProperty","join","security_key","a1","a2","d","ids","afterUpdate","a3","_user","valid","_getAllData","out","has_one","setVerificator","verifFunction","clearVerificator","pattern","defineAction","_uActions","afterUpdateCallback","sid","tid","action","btag","marker","correct","soid","JSON","tag","parse","finalizeUpdate","cleanUpdate","atag","init","anObj","_dp_init","setOnAfterUpdate","enableDebug","setOnBeforeUpdateHandler","func","setAutoUpdate","interval","user","_need_update","_loader","_update_busy","xml_node","afterAutoUpdate","fullSync","self","setInterval","loadUpdate","getUpdates","_v","_a","arr","vers","upds","status","init_original","_dataprocessor","ajax_error","console","log","_detachDomEvent","removeEventListener","_init_once","getWindowSize","w","clientWidth","h","clientHeight","equals","oldSize","newSize","_resize_timer","update_view","date","_currentDate","_obj","unset_actions","_skin_init","_els","_scroll","_quirks","_quirks7","get_elements","init_templates","set_actions","_init_touch_events","set_sizes","setCurrentView","xy","min_event_height","scale_width","scroll_width","scale_height","month_scale_height","menu_width","margin_top","margin_left","editor_width","month_head_height","edit_save","edit_cancel","_x","_y","scale_x","_table_view","scale_s","set_xy","nav_height","actual_height","data_y","max","els","class_name","attr_value","label","_click","ondblclick","oncontextmenu","_temp_touch_block","_on_mouse_move","_ignore_next_click","_on_mouse_down","_on_mouse_up","_on_dbl_click","src","returnValue","_locate_event","select","_select_id","_close_not_saved","unselect","updateEvent","getEvent","_mode","_date","min_date","_min_date","max_date","_max_date","editor_id","_edit_id","lightbox_id","_lightbox_id","new_event","_new_event","select_id","expanded","drag_id","_drag_id","drag_mode","_drag_mode","dhx_cal_data","trg","readonly","getActionData","mask","dhx_cal_prev_button","dhx_cal_next_button","dummy","step","add","dhx_cal_today_button","dhx_cal_tab","substring","search","delete","confirm_deleting","_dhtmlx_confirm","title_confirm_deleting","deleteEvent","edit","save","showLightbox","opts","addEventNow","start","end","base","constructor","match","event_duration","time_step","start_date","start_hour","first_hour","getHours","setHours","end_date","setTime","_loading","_drag_event","dblclick_create","details_on_dblclick","_timed","_get_column_index","x_pos","column","_cols","_ignores","_week_indexes_from_pos","pos","min","ceil","hour_size_px","_mouse_coords","pageX","pageY","_dy_shift","_colsS","dy","heights","_ignores_detected","preserve_length","_event_length","_get_real_event_length","x_step","x_unit","confirm_closing","title_confirm_closing","positive_closing","_drag_pos","_correct_shift","back","getTimezoneOffset","_is_pos_changed","old_pos","new_pos","diff","old_val","new_val","acc","delay","d_pos","force_redraw","has_moved","_get_date_from_pos","_drag_start","getMinutes","fields","_move_pos_shift","custom","time_part","matrix","_get_fictional_event_length","resize_date","_drag_from_start","day","date_part","resize_from_start","cursor","shift","new_end","new_start","limit_drag_out","duration","all_timed","_get_section_view","_get_event_sday","last_hour","getDate","_allow_dnd","update_render","sx","for_rendered","r","classname","_lame_clone","_get_private_properties","_clear_temporary_properties","clean","flagged_event","initial","current_state","touch","moved","_dhx_changed","is_new","edit_on_create","details_on_create","_lame_copy","render_view_data","_trigger_dyn_loading","_load_mode","_load","_render_wait","view","_reset_scale","isViewExists","templates","updateView","prev_scroll","preserve_scroll","dhx_multi_day","tabs","_render_x_header","offset_top","head","left_border","_get_columns_num","from","to","count_n","_get_timeunit_start","_get_view_end","dd","ed","_calc_scale_sizes","summ","_process_ignores","realcount","_set_scale_col_size","_render_scales","header","data_area","sd","today","scales","cls","week_date_class","day_start","drag_resize","drag_move","_scales","week_start","_reset_month_scale","_reset_hours_scale","multi_day","navline","c1","visibility","col_length","c2","cc","hour_scale","scroll_hour","now_date","preserve","ign_date","_render_month_scale","getCellHeight","row","view_start","cd","rows","tdcss","cell_width","cellheight","html","rendered_dates","row_height","month_date_class","body_class","head_class","month_day","bf1","getFullYear","getMonth","divs","getLabel","property","sections","lightbox","map_to","options","updateCollection","list_name","collection","serverList","resetLightbox","cache","Number","String","Boolean","Object","n_ev","section","_focus","fd","end_slot","ev_length","hours","_start_correction","_end_correction","start_slot","render","_get_date_index","dir","per_day","days","_props","_get_section_property","y_property","_is_initialized","_is_lightbox_open","s","month_short","month_short_hash","month_full","month_full_hash","setMinutes","setSeconds","setMilliseconds","getTime","getDay","start_on_monday","month_start","setDate","year_start","setMonth","_add_days","inc","ndate","setYear","to_fixed","num","copy","date_to_str","format","utc","Function","str_to_date","splt","getISOWeek","nday","first_thursday","year_number","ordinal_date","week_number","getUTCISOWeek","convert_to_utc","getUTCFullYear","getUTCMonth","getUTCDate","getUTCHours","getUTCMinutes","getUTCSeconds","day_full","day_short","day_tab","week_tab","month_tab","icon_save","icon_cancel","icon_details","icon_edit","icon_delete","section_description","section_time","full_day","confirm_recurring","section_recurring","button_recurring","button_recurring_open","button_edit_series","button_edit_occurrence","agenda_tab","description","year_tab","week_agenda_tab","grid_tab","drag_to_create","drag_to_move","default_date","month_date","load_date","week_date","day_date","hour_date","xml_date","api_date","drag_create","resize_month_events","resize_month_timed","cascade_event_display","cascade_event_count","cascade_event_margin","multi_day_height_limit","drag_lightbox","server_utc","touch_tip","touch_drag","quick_info_detached","drag_highlight","icons_edit","icons_select","buttons_left","buttons_right","highlight_displayed_event","delay_render","dhx_save_btn","dhx_cancel_btn","dhx_delete_btn","f","d1","d2","day_scale_date","month_scale_date","week_scale_date","time_picker","event_date","load_format","xml_format","event_header","event_text","event_class","event_bar_date","event_bar_text","month_events_link","drag_marker_class","drag_marker_content","_seed","_events","clearAll","_loaded","clear_view","extra_data","isOneDayEvent","event_updated","setEvent","hash","method","_rendered","changeEventId","new_id","attrs","create_getter","create_setter","force","is_visible_events","clear_event","in_visible_range","end_dates_visible","hidden_duration","delta","get_visible_events","only_timed","filter_event","filter","_is_main_area_event","evs","hold","_not_render","len","_recalculate_timed","tvs","tvd","_rendered_location","render_data","_view_month_day","_render_month_link","toRender","_sday","_eday","curr","_sweek","getEvents","_get_event_bar_pos","widt","x2","_pre_render_events","render_event_bar","max_evs","max_month_events","_sorder","render_event","_get_first_visible_cell","cells","hb","bar_height","h_old","_pre_render_events_table","_pre_render_events_line","evl","cellHeight","cHeight","unshift","scroll_fix","scale_settings","sum_width","row_heights","slice","full_multi_day_height","used_multi_day_height","used_multi_day_height_css","multi_day_section","multi_day_icon","overflowY","_get_event_mapped_end_date","separate_short_events","ev_duration","_min_mapped_duration","sort","evs_originals","sh","eh","_inner","t_ev","t_end_date","slot_index","sorderSet","_is_sorder","k","_max_sorder","max_count","_count","_copy_event","_time_order","weeks","cols","chunks_info","first_chunk","last_chunk","chunk_info","locate_s","locate_holder_day","locate_e","_length","stack_line","_first_chunk","_last_chunk","_copy_dummy","_y_from_date","sm","_calc_event_y","min_height","em","menu","menu_offset","locate_holder","pos_y","ev_count","ev_sorder","limit","margin","right","_render_v_bar","_text_style","zIndex","tplClass","cssText","_editor","shiftKey","icons","icons_str","bg_color","color","textColor","highlightEventPosition","contentA","contentB","bottom","cs","cse","container","renderEvent","inner_html","footer_class","past","_get_dnd_order","order","ev_height","max_height","_orig_sorder","evTop","y_event_offset","resize_handle","resizable","left_chunk","right_chunk","resize_left","resize_right","style_text","_edit_stop_event","getRenderedEvent","rendered_events","rendered_event","showEvent","original_color","original_text_color","displayed_event_color","displayed_event_text_color","_append_drag_marker","m","zone","scale","lastChild","previousSibling","_update_marker_position","size","_load_url","prevent_cache","lf","cache_line","temp_to","l","on_load","loader","_process","_magic_parser","_process_loading","_after_call","_init_event","_tagvalue","_init_date","json","_temp","dhx_security","collections","collections_loaded","option","option_key","load","setLoadMode","array","_userdata","xml_string","skey","bind","itms","itm","attr","ud","udx","_xmlNodeToJSON","child","nodeType","show_loading","ical","RegExp","c_start","c_end","incoming","event_r","e_start","e_end","exec","param","param_r","parse_param","parse_date","dh","dm","dn","UTC","_lightbox_controls","formSection","_lightbox","getLightbox","nextSibling","getValue","form_blocks","get_value","setValue","set_value","get_template_control","control","get_select_control","get_textarea_control","get_time_control","template","sns","textarea","_dhx_onchange","onchange","time","time_format","_time_format_order","cfg","dt","last","first","limit_time_select","p","time_option","year","tdate","_time_values","_fill_lightbox_select","time_values","direct_value","fixed_value","value_found","t_v","selectedIndex","_full_day","wide_form","input","checked","disabled","auto_end_date","_update_lightbox_select","original","showCover","scroll_top","scroll_left","view_height","scrollWidth","show_cover","_fill_lightbox","lightbox_header","current_sns","block","default_value","_lightbox_out","_empty_lightbox","hide_lightbox","hideCover","hide_cover","_cover","_document_height","_scroll_height","save_lightbox","startLightbox","_custom_lightbox","_temp_lightbox","endLightbox","cancel_lightbox","_init_lightbox_events","index","sec","button_click","setLightboxSize","con","lightbox_additional_height","_init_dnd_events","_move_while_dnd","_finish_dnd","_dnd_start_lb","dhx_unselectable","lb","now","_lb_start","_ready_to_dnd","recurring","test","_lightbox_template","label_name","ds","t_ds","old_id","msPointerEnabled","_touch_events","pointerType","MSPOINTER_TYPE_MOUSE","touches","names","accessor","attachTouchEvent","element","check_direction_swipe","s_ev","e_ev","max_dy","dx","doMouseMove","timeline","original_render","drag_cancel","_hide_global_tip","timer","action_mode","scroll_mode","tracker","dblclicktime","_update_global_tip","fake_event","_block_next_stop","actTask","activeElement","fakeTask","sourceTask","_show_global_tip","toptip","_global_tip","dp","_dp_hook_delete","_validId","_update_callback","upd","_set_event_text_style","_skin_settings","fix_tab_position","use_select_menu_space","_skin_xy","_configure","skin","links","href","set","minic","minicalendar","padding","_old_month_day","old_month_day","navline_divs","minical","jQuery","$","methods","fn","dhx_scheduler","views","each","updateFlags","update_view_timer","curr_view_timer","lazy_setCurrentView","lazy_updateView","ars"],"mappings":"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"}
\ No newline at end of file +{"version":3,"file":"dhtmlxscheduler.js","sources":["dhtmlxscheduler.js"],"names":["dtmlXMLLoaderObject","funcObject","dhtmlObject","async","rSeed","this","xmlDoc","onloadAction","mainObject","waitCall","callerFunction","handler","e","window","event","getAbsoluteLeft","htmlObject","getOffset","left","getAbsoluteTop","top","getOffsetSum","elem","parseInt","offsetTop","offsetLeft","offsetParent","getOffsetRect","box","getBoundingClientRect","body","document","docElem","documentElement","scrollTop","pageYOffset","scrollLeft","pageXOffset","clientTop","clientLeft","Math","round","convertStringToBoolean","inputString","toLowerCase","getUrlSymbol","str","indexOf","dhtmlDragAndDropObject","dhtmlDragAndDrop","lastLanding","dragNode","dragStartNode","dragStartObject","tempDOMU","tempDOMM","waitDrag","_dhtmlxError","type","name","params","catches","dhtmlXHeir","a","b","c","dataProcessor","serverProcessorURL","serverProcessor","action_param","object","updatedRows","autoUpdate","updateMode","_tMode","post_delim","_waitMode","_in_progress","_invalid","mandatoryFields","messages","styles","updated","inserted","deleted","invalid","invalid_cell","error","clear","enableUTFencoding","dhtmlxEventable","dhtmlXScheduler","scheduler","version","dhtmlx","obj","extend_api","map","ext","t","that","tagName","apply","_init","arguments","attachEvent","_patch","prototype","dhtmlxAjax","get","url","callback","length","loadXML","post","getSync","postSync","count","waitLoadFunction","once","check","readyState","call","getXMLTopNode","oldObj","z","responseXML","temp","getElementsByTagName","split","_retry","_isIE","loadXMLString","responseText","replace","dhtmlxError","throwError","createElement","xmlString","silent","ActiveXObject","onreadystatechange","parser","DOMParser","parseFromString","filePath","postMode","postVars","rpc","Date","valueOf","XMLHttpRequest","open","setRequestHeader","navigator","userAgent","send","destructor","_filterXPath","_getAllNamedChilds","doXPath","doXPathOpera","doXSLTransToObject","doXSLTransToString","doSerialization","xmlNodeToJSON","setXSLParamValue","node","i","attributes","value","firstChild","nodeValue","childNodes","push","removeDraggableItem","htmlNode","onmousedown","dragStarter","dragLanding","addDraggableItem","preCreateDragCopy","addDragLanding","button","onmouseup","onmousemove","stopDrag","callDrag","downtime","preventDefault","dragger","_createDragNode","onselectstart","gldragNode","appendChild","pWindow","initFrameRoute","parentNode","grd","old","removeChild","oldBody","_dragOut","div","innerHTML","outerHTML","cloneNode","style","clientX","fx","clientY","fy","srcElement","target","checkLanding","calculateFramePosition","n","el","parent","frames","frameElement","ls","_dragIn","lastLanding_scr","_onNotFound","mode","stopFrameRoute","_drag","win","_isFF","_FFrv","_isOpera","_isKHTML","_isMacOS","_isChrome","_KHTMLrv","_OperaRv","parseFloat","substr","appName","appVersion","compatMode","xpathExp","docObj","namespace","result_type","XPathResult","nodeName","setProperty","selectSingleNode","selectNodes","Array","nodeObj","ownerDocument","retType","ANY_TYPE","FIRST_ORDERED_NODE_TYPE","rowsCol","col","evaluate","pref","singleNodeValue","thisColMemb","iterateNext","catchError","func_name","alert","getAttribute","toUpperCase","j","dhtmlxEvent","addEventListener","xslDoc","paramName","paramValue","item","result","transformNodeToObject","transformNode","XSLProcessor","XSLTProcessor","importStylesheet","transformToDocument","res","xml","xmlSerializer","XMLSerializer","serializeToString","catcher","callObj","eventCatcher","addEvent","callEvent","arg0","checkEvent","dhx_catch","zr","ev","eval","removeEvent","id","detachEvent","list","detachAllEvents","eventRemove","removeEventListener","isVisible","display","visibility","getComputedStyle","currentStyle","hiddenSection","recurringSection","_locate_css","height","hasNonNegativeTabIndex","isNaN","hasHref","canHaveHref","area","loLowerCase","isEnabled","canDisable","input","select","textarea","hasAttribute","_getFocusableNodes","root","nodes","querySelectorAll","join","nodesArray","slice","isValid","splice","_trim","func","String","trim","config","setTimeout","usercall","modality","_dhx_msg_cfg","modal_key","code","which","keyCode","message","keyboard","_getClassName","click","cancelBubble","cover","onkeydown","className","scrollHeight","text","css","buttonAriaAttrs","_waiAria","messageButtonAttrString","button_css","info","position","hide","onclick","messageInfoAttr","insertBefore","expire","timers","pull","_boxStructure","ok","cancel","setAttribute","contentId","uid","messageModalAttr","inner","hasTitle","width","title","content","ok_text","locale","labels","message_ok","undefined","cancel_text","message_cancel","buttons","getElementById","source","_createBox","hidden","x","abs","floor","innerWidth","offsetWidth","y","innerHeight","offsetHeight","modalbox","focus","alertPopup","confirmPopup","boxPopup","box_params","confirm","focusable","subtype","seed","hideAll","key","clearTimeout","setTransactionMode","total","_tSend","_endnm","escape","data","_utf","encodeURIComponent","setDataColumns","val","_columns","getSyncState","enableDataNames","enablePartialDataSend","_changed","setUpdateMode","dnd","ignore","master","_silent_mode","setUpdated","rowId","state","ind","findRow","existing","getUserData","set_invalid","setUserData","is_invalid","_clearUpdateFlag","markRow","sendData","_methods","details","getState","toString","checkBeforeUpdate","mytype","_h2","editStop","sendAllData","_beforeSendData","_getRowData","_sendData","serialize","serialize_one","stack","keys","hasOwnProperty","security_key","a1","a2","d","ids","afterUpdate","a3","_user","valid","_getAllData","out","has_one","setVerificator","verifFunction","clearVerificator","pattern","defineAction","_uActions","afterUpdateCallback","sid","tid","action","btag","marker","correct","soid","JSON","tag","parse","finalizeUpdate","cleanUpdate","atag","init","anObj","_dp_init","setOnAfterUpdate","enableDebug","setOnBeforeUpdateHandler","setAutoUpdate","interval","user","_need_update","_loader","_update_busy","xml_node","afterAutoUpdate","fullSync","self","setInterval","loadUpdate","getUpdates","_v","_a","arr","vers","ex","upds","status","init_original","_dataprocessor","ajax_error","console","log","stripHTMLLite","htmlText","htmlTags","extraSpaces","escapeQuotes","singleQuotes","isDisabled","wai_aria_attributes","RegExp","getAttributeString","attr","setAttributes","values","labelAttr","aria-label","label","hourScaleAttr","monthCellAttr","date","templates","day_date","navBarDateAttr","dayHeaderAttr","dayColumnAttr","headerButtonsAttributes","role","headerToggleState","isActive","aria-pressed","getHeaderCellAttr","dateString","eventAttr","readonly","drag_move","drag_id","_eventCommonAttr","tooltip_text","start_date","end_date","$dataprocessor_class","select_id","setEventBarAttr","_getAttributes","attributeSetter","arg","eventBarAttrString","agendaHeadAttrString","agendaHeadDateString","agendaHeadDescriptionString","agendaDataAttrString","agendaEventAttrString","attrs","agendaDetailsBtnString","icon_details","gridAttrString","gridRowAttrString","gridCellAttrString","column","mapAttrString","mapRowAttrString","mapDetailsBtnString","minicalHeader","headerId","aria-live","aria-atomic","minicalGrid","aria-labelledby","minicalRow","minicalDayCell","selected","_max_date","_min_date","aria-selected","minicalHeadCell","weekAgendaDayCell","header","querySelector","weekAgendaEvent","lightboxHiddenAttr","lightboxVisibleAttr","lightboxSectionButtonAttrString","tabindex","yearHeader","yearGrid","yearHeadCell","yearRow","yearDayCell","lightboxAttr","lightboxButtonAttrString","buttonName","eventMenuAttrString","iconName","lightboxHeader","headerText","lightboxSelectAttrString","time_option","year","month","day","hour","minute","buttonLabel","quickInfoAttr","quickInfoHeaderAttrString","quickInfoHeader","quickInfoButtonAttrString","tooltipAttr","tooltipVisibleAttr","tooltipHiddenAttr","payload","_detachDomEvent","_init_once","isAttachedNode","container","getWindowSize","w","clientWidth","h","clientHeight","equals","oldSize","_obj","_resize_timer","newSize","update_view","_currentDate","unset_actions","$container","_skin_init","_els","_scroll","_quirks","_quirks7","get_elements","init_templates","set_actions","_init_touch_events","set_sizes","setCurrentView","xy","min_event_height","scale_width","scroll_width","scale_height","month_scale_height","menu_width","margin_top","margin_left","editor_width","month_head_height","edit_save","edit_cancel","_x","_y","scale_x","_table_view","scale_s","set_xy","nav_height","actual_height","data_y","max","els","class_name","attr_value","_click","ondblclick","oncontextmenu","_temp_touch_block","_on_mouse_move","_ignore_next_click","_on_mouse_down","_on_mouse_up","_on_dbl_click","src","returnValue","_locate_event","_select_id","_close_not_saved","unselect","updateEvent","getEvent","_mode","_date","min_date","max_date","editor_id","_edit_id","lightbox_id","_lightbox_id","new_event","_new_event","expanded","_drag_id","drag_mode","_drag_mode","dhx_cal_data","trg","getActionData","mask","dhx_cal_prev_button","dhx_cal_next_button","dummy","step","add","dhx_cal_today_button","dhx_cal_tab","substring","search","delete","confirm_deleting","_dhtmlx_confirm","title_confirm_deleting","deleteEvent","edit","save","showLightbox","opts","addEventNow","start","end","base","constructor","match","event_duration","time_step","start_hour","first_hour","getHours","setHours","setTime","_loading","eventId","_drag_event","dblclick_create","details_on_dblclick","_timed","_get_column_index","x_pos","_cols","_ignores","_week_indexes_from_pos","pos","min","ceil","hour_size_px","_mouse_coords","pageX","pageY","_dy_shift","_colsS","dy","heights","_ignores_detected","preserve_length","_event_length","_get_real_event_length","x_step","x_unit","timestamp","confirm_closing","title_confirm_closing","positive_closing","_drag_pos","_correct_shift","back","getTimezoneOffset","_is_pos_changed","old_pos","new_pos","diff","old_val","new_val","acc","delay","d_pos","has_moved","_correct_drag_start_date","matrix","len","_start_correction","_end_correction","last_hour","getMinutes","_get_fictional_event_length","_correct_drag_end_date","duration","_get_date_from_pos","_drag_start","fields","_move_pos_shift","custom","time_part","resize_date","_drag_from_start","date_part","resize_from_start","end_day_start","end_day_date","cursor","shift","new_end","new_start","limit_drag_out","all_timed","_get_section_view","_get_event_sday","getDate","_allow_dnd","update_render","sx","for_rendered","r","classname","fullClass","_lame_clone","_get_private_properties","_clear_temporary_properties","clean","flagged_event","initial","current_state","touch","moved","_dhx_changed","is_new","edit_on_create","details_on_create","isOneDayEvent","_lame_copy","render_view_data","_trigger_dyn_loading","_load_mode","_load","_render_wait","_reset_ignores","view","_reset_scale","isViewExists","_set_aria_buttons_attrs","buttonGroups","group","next","prev","updateView","oldClass","newClass","prev_scroll","preserve_scroll","dhx_multi_day","tabs","tab","_render_x_header","offset_top","head","left_border","columnHeaderText","_get_columns_num","from","to","count_n","_get_timeunit_start","_get_view_end","dd","ed","_calc_scale_sizes","summ","_process_ignores","realcount","_set_scale_col_size","_render_scales","data_area","sd","today","scales","cls","week_date_class","day_start","drag_resize","_scales","week_start","navBarDateStr","_reset_month_scale","_reset_hours_scale","multi_day","navline","c1","col_length","c2","cc","hour_scale","scroll_hour","now_date","preserve","ign_date","_render_month_scale","rows","getCellHeight","row","view_start","cd","tdwidths","cell_width","cellheight","table","tableBody","rendered_dates","row_height","cell","month_date_class","body_class","head_class","cellHead","month_day","cellBody","bf1","getFullYear","getMonth","divs","getLabel","property","sections","lightbox","map_to","options","updateCollection","list_name","collection","serverList","resetLightbox","cache","Number","Boolean","Object","n_ev","section","_focus","fd","end_slot","ev_length","hours","start_slot","render","_get_date_index","last_column","dir","per_day","days","_props","_get_section_property","y_property","_is_initialized","_is_lightbox_open","baseVal","s","month_short","month_short_hash","month_full","month_full_hash","setMinutes","setSeconds","setMilliseconds","getTime","getDay","start_on_monday","month_start","setDate","year_start","setMonth","_add_days","inc","ndate","datesDiff","rest","setYear","to_fixed","num","copy","date_to_str","format","utc","Function","str_to_date","splt","getISOWeek","nday","first_thursday","year_number","ordinal_date","week_number","getUTCISOWeek","convert_to_utc","getUTCFullYear","getUTCMonth","getUTCDate","getUTCHours","getUTCMinutes","getUTCSeconds","day_full","day_short","day_tab","week_tab","month_tab","icon_save","icon_cancel","icon_edit","icon_delete","section_description","section_time","full_day","confirm_recurring","section_recurring","button_recurring","button_recurring_open","button_edit_series","button_edit_occurrence","agenda_tab","description","year_tab","week_agenda_tab","grid_tab","drag_to_create","drag_to_move","default_date","month_date","load_date","week_date","hour_date","xml_date","api_date","drag_create","resize_month_events","resize_month_timed","cascade_event_display","cascade_event_count","cascade_event_margin","multi_day_height_limit","drag_lightbox","server_utc","touch_tip","touch_drag","quick_info_detached","drag_highlight","icons_edit","icons_select","buttons_left","buttons_right","highlight_displayed_event","delay_render","timeline_swap_resize","dhx_save_btn","dhx_cancel_btn","dhx_delete_btn","f","d1","d2","day_scale_date","month_scale_date","week_scale_date","time_picker","event_date","load_format","xml_format","event_header","event_text","event_class","event_bar_date","event_bar_text","month_events_link","drag_marker_class","drag_marker_content","tooltip_date_format","_seed","_events","clearAll","_loaded","clear_view","extra_data","event_updated","setEvent","hash","method","_rendered","changeEventId","new_id","create_getter","create_setter","force","is_visible_events","clear_event","in_visible_range","evFirstHour","evLastHour","lastHour","firstHour","end_dates_visible","hidden_duration","delta","get_visible_events","only_timed","filter_event","filter","_is_main_area_event","evs","hold","full","_not_render","_recalculate_timed","tvs","tvd","_rendered_location","render_data","_view_month_day","_render_month_link","toRender","_sday","_eday","curr","_sweek","getEvents","_get_event_bar_pos","widt","x2","_pre_render_events","render_event_bar","max_evs","max_month_events","_sorder","render_event","_get_first_visible_cell","cells","hb","bar_height","h_old","_pre_render_events_table","_pre_render_events_line","evl","cellHeight","cHeight","unshift","scroll_fix","scale_settings","sum_width","row_heights","full_multi_day_height","used_multi_day_height","used_multi_day_height_css","multi_day_section","multi_day_icon","overflowY","datePart","_get_event_mapped_end_date","separate_short_events","ev_duration","_min_mapped_duration","sort","evs_originals","sh","eh","_inner","t_ev","t_end_date","slot_index","sorderSet","_is_sorder","k","_max_sorder","max_count","_count","_copy_event","_time_order","weeks","cols","chunks_info","first_chunk","last_chunk","chunk_info","locate_s","locate_holder_day","locate_e","_length","stack_line","_first_chunk","_last_chunk","_copy_dummy","_y_from_date","sm","_calc_event_y","min_height","em","menu","menu_offset","locate_holder","pos_y","ev_count","ev_sorder","limit","margin","right","_render_v_bar","_text_style","zIndex","tplClass","cssText","_editor","shiftKey","ariaAttr","icons","icons_str","bg_color","color","textColor","highlightEventPosition","contentA","contentB","bottom","cs","cse","html","renderEvent","inner_html","footer_class","past","_get_dnd_order","order","ev_height","max_height","_orig_sorder","evTop","y_event_offset","resize_handle","resizable","left_chunk","right_chunk","resize_left","resize_right","style_text","strict","charAt","_edit_stop_event","getRenderedEvent","rendered_events","rendered_event","showEvent","original_color","original_text_color","displayed_event_color","displayed_event_text_color","_append_drag_marker","m","zone","scale","lastChild","previousSibling","_update_marker_position","size","_load_url","prevent_cache","lf","cache_line","temp_to","l","on_load","loader","_process","_magic_parser","_process_loading","_after_call","_init_event","_tagvalue","_init_date","json","_temp","dhx_security","collections","collections_loaded","option","option_key","load","setLoadMode","array","_userdata","xml_string","skey","bind","itms","itm","ud","udx","_xmlNodeToJSON","child","nodeType","show_loading","ical","c_start","c_end","incoming","event_r","e_start","e_end","exec","param","param_r","parse_param","parse_date","dh","dm","dn","UTC","_lightbox_controls","formSection","_lightbox","getLightbox","nextSibling","getValue","form_blocks","get_value","setValue","set_value","get_template_control","control","get_select_control","get_textarea_control","get_time_control","template","sns","_get_input","_dhx_onchange","onchange","time","time_format","_time_format_order","cfg","dt","last","first","limit_time_select","p","tdate","_time_values","ariaAttrs","_fill_lightbox_select","time_values","direct_value","fixed_value","value_found","t_v","selectedIndex","_full_day","wide_form","checked","disabled","auto_end_date","_update_lightbox_select","original","showCover","scroll_top","scroll_left","view_height","scrollWidth","show_cover","_fill_lightbox","lightbox_header","headerContent","headerDate","headerTitle","current_sns","block","default_value","_lightbox_out","_empty_lightbox","hide_lightbox","hideCover","hide_cover","_cover","_document_height","_scroll_height","save_lightbox","startLightbox","_custom_lightbox","_temp_lightbox","endLightbox","cancel_lightbox","_init_lightbox_events","index","sec","button_click","buttonTarget","setLightboxSize","con","lightbox_additional_height","_init_dnd_events","_move_while_dnd","_finish_dnd","_dnd_start_lb","dhx_unselectable","lb","now","_lb_start","_ready_to_dnd","recurring","test","_lightbox_template","label_name","ds","t_ds","labelBlock","inputBlock","inputId","old_id","msPointerEnabled","_touch_events","pointerType","MSPOINTER_TYPE_MOUSE","_pointerDragId","pointerId","touches","names","accessor","attachTouchEvent","element","check_direction_swipe","s_ev","e_ev","max_dy","dx","doMouseMove","timeline","original_render","drag_cancel","_hide_global_tip","timer","action_mode","scroll_mode","tracker","dblclicktime","_update_global_tip","fake_event","_block_next_stop","actTask","activeElement","fakeTask","sourceTask","_show_global_tip","toptip","_global_tip","dp","_dp_change_event_id","_dp_hook_delete","_validId","_objToJson","prefix","_update_callback","upd","_add_rec_marker","_set_event_text_style","rec_type","rec_pattern","_skin_settings","fix_tab_position","use_select_menu_space","_skin_xy","_configure","skin","links","href","set","minic","minicalendar","padding","_old_month_day","old_month_day","navline_divs","minical","jQuery","$","methods","fn","dhx_scheduler","views","each","updateFlags","update_view_timer","curr_view_timer","lazy_setCurrentView","lazy_updateView","ars"],"mappings":"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"}
\ No newline at end of file diff --git a/codebase/sources/ext/dhtmlxscheduler_active_links.js b/codebase/sources/ext/dhtmlxscheduler_active_links.js index e7cf050..10e2e60 100644 --- a/codebase/sources/ext/dhtmlxscheduler_active_links.js +++ b/codebase/sources/ext/dhtmlxscheduler_active_links.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. diff --git a/codebase/sources/ext/dhtmlxscheduler_active_links.js.map b/codebase/sources/ext/dhtmlxscheduler_active_links.js.map index f2fae3a..ef19fe3 100644 --- a/codebase/sources/ext/dhtmlxscheduler_active_links.js.map +++ b/codebase/sources/ext/dhtmlxscheduler_active_links.js.map @@ -1 +1 @@ -{"version":3,"file":"dhtmlxscheduler_active_links.js","sources":["dhtmlxscheduler_active_links.js"],"names":["scheduler","config","active_link_view","_active_link_click","e","start","target","event","srcElement","to","getAttribute","s_d","date","str_to_date","api_date","setCurrentView","preventDefault","attachEvent","do_wrapper","key","fullname","templates","week_x","d_s","date_to_str","this","matrix","_detachDomEvent","_obj","dhtmlxEvent"],"mappings":";;;;;;;;AAQAA,UAAUC,OAAOC,iBAAmB,MACpCF,UAAUG,mBAAqB,SAASC,GACvC,GAAIC,GAAQD,EAAEE,QAAUC,MAAMC,WAC1BC,EAAKJ,EAAMK,aAAa,WACxBC,EAAMX,UAAUY,KAAKC,YAAYb,UAAUC,OAAOa,SACtD,OAAIL,IACHT,UAAUe,eAAeJ,EAAIF,GAAKT,UAAUC,OAAOC,kBAC/CE,GAAKA,EAAEY,gBACVZ,EAAEY,kBACI,GAJR,QAODhB,UAAUiB,YAAY,mBAAoB,WACzC,GAAIC,GAAa,SAASC,EAAKC,GAC9BA,EAAWA,GAAaD,EAAI,cAExBnB,UAAUqB,UAAU,qBAAsBD,KAC7CpB,UAAUqB,UAAU,qBAAsBD,GAAYpB,UAAUqB,UAAUD;;AAE3E,GAAIE,GAAStB,UAAUqB,UAAU,qBAAsBD,GACnDG,EAAMvB,UAAUY,KAAKY,YAAYxB,UAAUC,OAAOa,SACtDd,WAAUqB,UAAUD,GAAY,SAASR,GACxC,MAAO,eAAiBW,EAAIX,GAAQ,cAAgBU,EAAOV,GAAQ,QAMrE,IAFAM,EAAW,QACXA,EAAW,GAAI,aACXO,KAAKC,OACR,IAAK,GAAIP,KAAOM,MAAKC,OACpBR,EAAWC,EAGbM,MAAKE,gBAAgBF,KAAKG,KAAM,QAAS5B,UAAUG,oBACnD0B,YAAYJ,KAAKG,KAAM,QAAS5B,UAAUG"}
\ No newline at end of file +{"version":3,"file":"dhtmlxscheduler_active_links.js","sources":["dhtmlxscheduler_active_links.js"],"names":["scheduler","config","active_link_view","_active_link_click","e","start","target","event","srcElement","to","getAttribute","s_d","date","str_to_date","api_date","setCurrentView","preventDefault","attachEvent","do_wrapper","key","fullname","templates","week_x","d_s","date_to_str","this","matrix","_detachDomEvent","_obj","dhtmlxEvent"],"mappings":";;;;;;;;AAQAA,UAAUC,OAAOC,iBAAmB,MACpCF,UAAUG,mBAAqB,SAASC,GACvC,GAAIC,GAAQD,EAAEE,QAAUC,MAAMC,WAC1BC,EAAKJ,EAAMK,aAAa,WACxBC,EAAMX,UAAUY,KAAKC,YAAYb,UAAUC,OAAOa,SACtD,OAAIL,IACHT,UAAUe,eAAeJ,EAAIF,GAAKT,UAAUC,OAAOC,kBAC/CE,GAAKA,EAAEY,gBACVZ,EAAEY,kBACI,GAJR,QAODhB,UAAUiB,YAAY,mBAAoB,WACzC,GAAIC,GAAa,SAASC,EAAKC,GAC9BA,EAAWA,GAAaD,EAAI,cAExBnB,UAAUqB,UAAU,qBAAsBD,KAC7CpB,UAAUqB,UAAU,qBAAsBD,GAAYpB,UAAUqB,UAAUD;AAE3E,GAAIE,GAAStB,UAAUqB,UAAU,qBAAsBD,GACnDG,EAAMvB,UAAUY,KAAKY,YAAYxB,UAAUC,OAAOa,SACtDd,WAAUqB,UAAUD,GAAY,SAASR,GACxC,MAAO,eAAiBW,EAAIX,GAAQ,cAAgBU,EAAOV,GAAQ,QAMrE,IAFAM,EAAW,QACXA,EAAW,GAAI,aACXO,KAAKC,OACR,IAAK,GAAIP,KAAOM,MAAKC,OACpBR,EAAWC,EAGbM,MAAKE,gBAAgBF,KAAKG,KAAM,QAAS5B,UAAUG,oBACnD0B,YAAYJ,KAAKG,KAAM,QAAS5B,UAAUG"}
\ No newline at end of file diff --git a/codebase/sources/ext/dhtmlxscheduler_agenda_view.js b/codebase/sources/ext/dhtmlxscheduler_agenda_view.js index 18aceb2..992c336 100644 --- a/codebase/sources/ext/dhtmlxscheduler_agenda_view.js +++ b/codebase/sources/ext/dhtmlxscheduler_agenda_view.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -64,7 +64,15 @@ scheduler.attachEvent("onTemplatesReady",function() { function set_full_view(mode){ if (mode){ var l = scheduler.locale.labels; - scheduler._els["dhx_cal_header"][0].innerHTML="<div class='dhx_agenda_line'><div>"+l.date+"</div><span style='padding-left:25px'>"+l.description+"</span></div>"; + + var rowAttr = scheduler._waiAria.agendaHeadAttrString(); + var dateHeader = scheduler._waiAria.agendaHeadDateString(l.date); + var descriptionHeader = scheduler._waiAria.agendaHeadDescriptionString(l.description); + + scheduler._els["dhx_cal_header"][0].innerHTML="<div "+rowAttr+" class='dhx_agenda_line'>" + + "<div "+dateHeader+">"+l.date+"</div>" + + "<span style='padding-left:25px' "+descriptionHeader+">"+l.description+"</span>" + + "</div>"; scheduler._table_view=true; scheduler.set_sizes(); } @@ -77,16 +85,22 @@ scheduler.attachEvent("onTemplatesReady",function() { var events = scheduler.get_visible_events(); events.sort(function(a,b){ return a.start_date>b.start_date?1:-1;}); - + + var tableAttr = scheduler._waiAria.agendaDataAttrString(); + var agendaEventAttrString; //generate html for the view - var html="<div class='dhx_agenda_area'>"; + var html="<div class='dhx_agenda_area' "+tableAttr+">"; for (var i=0; i<events.length; i++){ var ev = events[i]; var bg_color = (ev.color?("background:"+ev.color+";"):""); var color = (ev.textColor?("color:"+ev.textColor+";"):""); var ev_class = scheduler.templates.event_class(ev.start_date, ev.end_date, ev); - html+="<div class='dhx_agenda_line"+(ev_class?' '+ev_class:'')+"' event_id='"+ev.id+"' style='"+color+""+bg_color+""+(ev._text_style||"")+"'><div class='dhx_agenda_event_time'>"+scheduler.templates.agenda_time(ev.start_date, ev.end_date,ev)+"</div>"; - html+="<div class='dhx_event_icon icon_details'> </div>"; + + agendaEventAttrString = scheduler._waiAria.agendaEventAttrString(ev); + var agendaDetailsButtonAttr = scheduler._waiAria.agendaDetailsBtnString(); + + html+="<div "+agendaEventAttrString+" class='dhx_agenda_line"+(ev_class?' '+ev_class:'')+"' event_id='"+ev.id+"' style='"+color+""+bg_color+""+(ev._text_style||"")+"'><div class='dhx_agenda_event_time'>"+scheduler.templates.agenda_time(ev.start_date, ev.end_date,ev)+"</div>"; + html+="<div "+agendaDetailsButtonAttr+" class='dhx_event_icon icon_details'> </div>"; html+="<span>"+scheduler.templates.agenda_text(ev.start_date, ev.end_date, ev)+"</span></div>"; } html+="<div class='dhx_v_border'></div></div>"; @@ -112,12 +126,16 @@ scheduler.attachEvent("onTemplatesReady",function() { scheduler.agenda_view=function(mode){ scheduler._min_date = scheduler.config.agenda_start||scheduler.date.agenda_start(scheduler._date); scheduler._max_date = scheduler.config.agenda_end||scheduler.date.add_agenda(scheduler._min_date, 1); - scheduler._table_view = true; + set_full_view(mode); if (mode){ + scheduler._cols = null; + scheduler._colsS = null; + scheduler._table_view = true; //agenda tab activated fill_agenda_tab(); } else { + scheduler._table_view = false; //agenda tab de-activated } }; diff --git a/codebase/sources/ext/dhtmlxscheduler_agenda_view.js.map b/codebase/sources/ext/dhtmlxscheduler_agenda_view.js.map index a40c59e..b06e0c5 100644 --- a/codebase/sources/ext/dhtmlxscheduler_agenda_view.js.map +++ b/codebase/sources/ext/dhtmlxscheduler_agenda_view.js.map @@ -1 +1 @@ -{"version":3,"file":"dhtmlxscheduler_agenda_view.js","sources":["dhtmlxscheduler_agenda_view.js"],"names":["scheduler","date","add_agenda","add","templates","agenda_time","start","end","ev","_timed","this","day_date","start_date","end_date","event_date","agenda_text","event","text","agenda_date","agenda_start","date_part","_currentDate","attachEvent","set_full_view","mode","l","locale","labels","_els","innerHTML","description","_table_view","set_sizes","fill_agenda_tab","events","_date","get_visible_events","sort","a","b","html","i","length","bg_color","color","textColor","ev_class","event_class","id","_text_style","childNodes","scrollTop","_agendaScrollTop","agenda_area","v_border","style","height","offsetHeight","t","firstChild","_min_date","_max_date","_mode","_rendered","old_dblclick_dhx_cal_data","dblclick_dhx_cal_data","config","readonly","dblclick_create","addEventNow","apply","arguments","agenda_view","old","render_data","evs","old_render_view_data","render_view_data","agenda_end"],"mappings":"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"}
\ No newline at end of file +{"version":3,"file":"dhtmlxscheduler_agenda_view.js","sources":["dhtmlxscheduler_agenda_view.js"],"names":["scheduler","date","add_agenda","add","templates","agenda_time","start","end","ev","_timed","this","day_date","start_date","end_date","event_date","agenda_text","event","text","agenda_date","agenda_start","date_part","_currentDate","attachEvent","set_full_view","mode","l","locale","labels","rowAttr","_waiAria","agendaHeadAttrString","dateHeader","agendaHeadDateString","descriptionHeader","agendaHeadDescriptionString","description","_els","innerHTML","_table_view","set_sizes","fill_agenda_tab","events","_date","get_visible_events","sort","a","b","agendaEventAttrString","tableAttr","agendaDataAttrString","html","i","length","bg_color","color","textColor","ev_class","event_class","agendaDetailsButtonAttr","agendaDetailsBtnString","id","_text_style","childNodes","scrollTop","_agendaScrollTop","agenda_area","v_border","style","height","offsetHeight","t","firstChild","_min_date","_max_date","_mode","_rendered","old_dblclick_dhx_cal_data","dblclick_dhx_cal_data","config","readonly","dblclick_create","addEventNow","apply","arguments","agenda_view","old","render_data","evs","old_render_view_data","render_view_data","agenda_end","_cols","_colsS"],"mappings":"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"}
\ No newline at end of file diff --git a/codebase/sources/ext/dhtmlxscheduler_all_timed.js b/codebase/sources/ext/dhtmlxscheduler_all_timed.js index d3563c0..3429732 100644 --- a/codebase/sources/ext/dhtmlxscheduler_all_timed.js +++ b/codebase/sources/ext/dhtmlxscheduler_all_timed.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -18,20 +18,18 @@ This software is covered by GPL license. You also can obtain Commercial or Enter // regular copy causes problems with recurrings which have series event as a prototype scheduler._safe_copy = function(event){ var proto = null, - copy = null; + copy = scheduler._copy_event(event); if(event.event_pid){ proto = scheduler.getEvent(event.event_pid); } if (proto && proto.isPrototypeOf(event)) { - copy = scheduler._copy_event(event); delete copy.event_length; delete copy.event_pid; delete copy.rec_pattern; delete copy.rec_type; - } else { - copy = scheduler._lame_clone(event); } + return copy; }; diff --git a/codebase/sources/ext/dhtmlxscheduler_all_timed.js.map b/codebase/sources/ext/dhtmlxscheduler_all_timed.js.map index a23dc28..db5c233 100644 --- a/codebase/sources/ext/dhtmlxscheduler_all_timed.js.map +++ b/codebase/sources/ext/dhtmlxscheduler_all_timed.js.map @@ -1 +1 @@ -{"version":3,"file":"dhtmlxscheduler_all_timed.js","sources":["dhtmlxscheduler_all_timed.js"],"names":["scheduler","config","all_timed","is_event_short","ev","end_date","start_date","_safe_copy","event","proto","copy","event_pid","getEvent","isPrototypeOf","_copy_event","event_length","rec_pattern","rec_type","_lame_clone","old_prerender_events_line","_pre_render_events_line","evs","hold","isOvernightEvent","next_day","getNextDay","date","add","date_part","setDateTime","hours","val","Date","setHours","this","call","i","length","_timed","ce","last_hour","event_changed","_max_date","_min_date","re","first_hour","splice","redraw","_drag_mode","old_get_visible_events","get_visible_events","only_timed","multi_day","attachEvent","old_mode","old_date","mode","_allow_dnd","_is_main_area_event","oldUpdate","updateEvent","id","initial","fullRedrawNeeded","isOneDayEvent","_events","getState","drag_id","update_render","apply","arguments"],"mappings":"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"}
\ No newline at end of file +{"version":3,"file":"dhtmlxscheduler_all_timed.js","sources":["dhtmlxscheduler_all_timed.js"],"names":["scheduler","config","all_timed","is_event_short","ev","end_date","start_date","_safe_copy","event","proto","copy","_copy_event","event_pid","getEvent","isPrototypeOf","event_length","rec_pattern","rec_type","old_prerender_events_line","_pre_render_events_line","evs","hold","isOvernightEvent","next_day","getNextDay","date","add","date_part","setDateTime","hours","val","Date","setHours","this","call","i","length","_timed","ce","last_hour","event_changed","_max_date","_min_date","re","first_hour","splice","redraw","_drag_mode","old_get_visible_events","get_visible_events","only_timed","multi_day","attachEvent","old_mode","old_date","mode","_allow_dnd","_is_main_area_event","oldUpdate","updateEvent","id","initial","fullRedrawNeeded","isOneDayEvent","_events","getState","drag_id","update_render","apply","arguments"],"mappings":"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"}
\ No newline at end of file diff --git a/codebase/sources/ext/dhtmlxscheduler_collision.js b/codebase/sources/ext/dhtmlxscheduler_collision.js index bdb2062..10711cb 100644 --- a/codebase/sources/ext/dhtmlxscheduler_collision.js +++ b/codebase/sources/ext/dhtmlxscheduler_collision.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. diff --git a/codebase/sources/ext/dhtmlxscheduler_collision.js.map b/codebase/sources/ext/dhtmlxscheduler_collision.js.map index 5edc5c2..7fbf35a 100644 --- a/codebase/sources/ext/dhtmlxscheduler_collision.js.map +++ b/codebase/sources/ext/dhtmlxscheduler_collision.js.map @@ -1 +1 @@ -{"version":3,"file":"dhtmlxscheduler_collision.js","sources":["dhtmlxscheduler_collision.js"],"names":["_setTempSection","event_id","checked_mode","scheduler","_get_section_view","temp_section","getEvent","_get_section_property","before","config","collision_limit","attachEvent","id","ev","start_date","end_date","checkCollision","_timed","this","isOneDayEvent","e","is_new","result","deleteEvent","edited_ev","_lame_clone","Date","rec_type","_roll_back_dates","_check_sections_collision","first","second","map_to","evs","evs_dates","getRecDates","k","length","tevs","getEvents","j","event_pid","push","i","splice","single","count","res","callEvent"],"mappings":"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"}
\ No newline at end of file +{"version":3,"file":"dhtmlxscheduler_collision.js","sources":["dhtmlxscheduler_collision.js"],"names":["_setTempSection","event_id","checked_mode","scheduler","_get_section_view","temp_section","getEvent","_get_section_property","before","config","collision_limit","attachEvent","id","ev","start_date","end_date","checkCollision","_timed","this","isOneDayEvent","e","is_new","result","deleteEvent","edited_ev","_lame_clone","Date","rec_type","_roll_back_dates","_check_sections_collision","first","second","map_to","evs","evs_dates","getRecDates","k","length","tevs","getEvents","j","event_pid","push","i","splice","single","count","res","callEvent"],"mappings":"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"}
\ No newline at end of file diff --git a/codebase/sources/ext/dhtmlxscheduler_container_autoresize.js b/codebase/sources/ext/dhtmlxscheduler_container_autoresize.js index 1120bea..330089c 100644 --- a/codebase/sources/ext/dhtmlxscheduler_container_autoresize.js +++ b/codebase/sources/ext/dhtmlxscheduler_container_autoresize.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -10,11 +10,15 @@ This software is covered by GPL license. You also can obtain Commercial or Enter scheduler.config.container_autoresize = true; scheduler.config.month_day_min_height = 90; + scheduler.config.min_grid_size = 25; + scheduler.config.min_map_size = 400; var old_pre_render_event = scheduler._pre_render_events; //need for temporary disabling without modifying public config var active = true; + var total_height = 0; + var multiday_height = 0; scheduler._pre_render_events = function(evs, hold) { if (!(scheduler.config.container_autoresize && active)) { @@ -69,7 +73,11 @@ This software is covered by GPL license. You also can obtain Commercial or Enter if (evs.length || h[0] == -1) { //shift days to have space for multiday events var childs = evl.parentNode.childNodes; - var dh = ((h[0] + 1) * hb + 1) + "px"; // +1 so multiday events would have 2px from top and 2px from bottom by default + var dh = ((h[0] + 1) * hb + 1); // +1 so multiday events would have 2px from top and 2px from bottom by default + if(multiday_height != dh + 1) { + this._obj.style.height = (total_height - multiday_height + dh - 1) + "px"; + } + dh += "px"; data.style.top = (this._els["dhx_cal_navline"][0].offsetHeight + this._els["dhx_cal_header"][0].offsetHeight + parseInt(dh, 10)) + 'px'; data.style.height = (this._obj.offsetHeight - parseInt(data.style.top, 10) - (this.xy.margin_top || 0)) + 'px'; var last = this._els["dhx_multi_day"][0]; @@ -91,7 +99,7 @@ This software is covered by GPL license. You also can obtain Commercial or Enter var checked_divs = ["dhx_cal_navline", "dhx_cal_header", "dhx_multi_day", "dhx_cal_data"]; var updateContainterHeight = function(is_repaint) { - var total_height = 0; + total_height = 0; for (var i = 0; i < checked_divs.length; i++) { var className = checked_divs[i]; @@ -103,9 +111,8 @@ This software is covered by GPL license. You also can obtain Commercial or Enter height = parseInt(checked_div.style.height, 10); break; case "dhx_multi_day": - height = (checked_div) ? checked_div.offsetHeight : 0; - if (height == 1) - height = 0; + height = (checked_div) ? checked_div.offsetHeight - 1 : 0; + multiday_height = height; break; case "dhx_cal_data": var mode = scheduler.getState().mode; @@ -125,6 +132,86 @@ This software is covered by GPL license. You also can obtain Commercial or Enter checked_div.style.height = height + "px"; } } + else if (mode == "year"){ + height = 190 * scheduler.config.year_y; + } + else if(mode == "agenda"){ + height = 0; + if(checked_div.childNodes && checked_div.childNodes.length){ + for(var j = 0; j < checked_div.childNodes.length; j++){ + height += checked_div.childNodes[j].offsetHeight; + } + } + + if(height + 2 < scheduler.config.min_grid_size){ + height = scheduler.config.min_grid_size; + } + else{ + height += 2; + } + } + else if (mode == "week_agenda"){ + var min_height = scheduler.xy.week_agenda_scale_height + scheduler.config.min_grid_size, + cur_height; + + var column; + for(var k = 0; k < checked_div.childNodes.length; k++){ + column = checked_div.childNodes[k]; + for(var j = 0; j < column.childNodes.length; j++) { + var innerHeight = 0, + eventsContainer = column.childNodes[j].childNodes[1]; + + for(var g =0; g < eventsContainer.childNodes.length; g++){ + innerHeight += eventsContainer.childNodes[g].offsetHeight; + } + + cur_height = innerHeight + scheduler.xy.week_agenda_scale_height; + cur_height = (k == 1 && (j == 2 || j == 3)) ? cur_height * 2 : cur_height; // for last two cells; + + if (cur_height > min_height) { + min_height = cur_height; + } + } + } + + height = min_height * 3; + } + else if(mode == "map") { + height = 0; + var evs = checked_div.querySelectorAll(".dhx_map_line"); + + for (var j = 0; j < evs.length; j++) { + height += evs[j].offsetHeight; + } + + if (height + 2 < scheduler.config.min_map_size) { + height = scheduler.config.min_map_size; + } + else { + height += 2; + } + } + else if(scheduler._gridView) { + height = 0; + + if (checked_div.childNodes[1].childNodes[0].childNodes && checked_div.childNodes[1].childNodes[0].childNodes.length) { + var evs = checked_div.childNodes[1].childNodes[0].childNodes[0].childNodes; + + for (var j = 0; j < evs.length; j++) { + height += evs[j].offsetHeight; + } + + height += 2; + + if(height < scheduler.config.min_grid_size){ + height = scheduler.config.min_grid_size; + } + } + else{ + height = scheduler.config.min_grid_size; + } + } + if (scheduler.matrix && scheduler.matrix[mode]) { if (is_repaint) { height += 2; @@ -138,7 +225,7 @@ This software is covered by GPL license. You also can obtain Commercial or Enter } } } - if (mode == "day" || mode == "week") { + if (mode == "day" || mode == "week" || (scheduler._props && scheduler._props[mode])) { height += 2; } break; @@ -158,7 +245,7 @@ This software is covered by GPL license. You also can obtain Commercial or Enter var mode = scheduler.getState().mode; updateContainterHeight(); - if ( (scheduler.matrix && scheduler.matrix[mode]) || mode == "month" ) { + if ( (scheduler.matrix && scheduler.matrix[mode]) || mode == "month") { window.setTimeout(function() { updateContainterHeight(true); }, 1); diff --git a/codebase/sources/ext/dhtmlxscheduler_container_autoresize.js.map b/codebase/sources/ext/dhtmlxscheduler_container_autoresize.js.map index 99b0926..9bcc5f4 100644 --- a/codebase/sources/ext/dhtmlxscheduler_container_autoresize.js.map +++ b/codebase/sources/ext/dhtmlxscheduler_container_autoresize.js.map @@ -1 +1 @@ -{"version":3,"file":"dhtmlxscheduler_container_autoresize.js","sources":["dhtmlxscheduler_container_autoresize.js"],"names":["scheduler","config","container_autoresize","month_day_min_height","old_pre_render_event","_pre_render_events","active","evs","hold","apply","this","arguments","hb","xy","bar_height","h_old","_colsS","heights","h","data","_els","_table_view","_pre_render_events_table","_pre_render_events_line","evl","firstChild","rows","i","length","height","month_head_height","cells","cHeight","max_month_events","j","childNodes","style","offsetHeight","unshift","parentNode","scrollHeight","_h_fix","visibility","dh","top","parseInt","_obj","margin_top","last","className","_dy_shift","checked_divs","updateContainterHeight","is_repaint","total_height","checked_div","mode","getState","Math","max","rows_length","getElementsByTagName","matrix","cfg","y_unit","r","children","folder_dy","dy","updateView","conditionalUpdateContainerHeight","window","setTimeout","attachEvent"],"mappings":"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"}
\ No newline at end of file +{"version":3,"file":"dhtmlxscheduler_container_autoresize.js","sources":["dhtmlxscheduler_container_autoresize.js"],"names":["scheduler","config","container_autoresize","month_day_min_height","min_grid_size","min_map_size","old_pre_render_event","_pre_render_events","active","total_height","multiday_height","evs","hold","apply","this","arguments","hb","xy","bar_height","h_old","_colsS","heights","h","data","_els","_table_view","_pre_render_events_table","_pre_render_events_line","evl","firstChild","rows","i","length","height","month_head_height","cells","cHeight","max_month_events","j","childNodes","style","offsetHeight","unshift","parentNode","scrollHeight","_h_fix","visibility","dh","_obj","top","parseInt","margin_top","last","className","_dy_shift","checked_divs","updateContainterHeight","is_repaint","checked_div","mode","getState","Math","max","rows_length","getElementsByTagName","year_y","cur_height","column","min_height","week_agenda_scale_height","k","innerHeight","eventsContainer","g","querySelectorAll","_gridView","matrix","cfg","y_unit","r","children","folder_dy","dy","_props","updateView","conditionalUpdateContainerHeight","window","setTimeout","attachEvent"],"mappings":"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"}
\ No newline at end of file diff --git a/codebase/sources/ext/dhtmlxscheduler_cookie.js b/codebase/sources/ext/dhtmlxscheduler_cookie.js index 164068a..0bf0eb0 100644 --- a/codebase/sources/ext/dhtmlxscheduler_cookie.js +++ b/codebase/sources/ext/dhtmlxscheduler_cookie.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. diff --git a/codebase/sources/ext/dhtmlxscheduler_cookie.js.map b/codebase/sources/ext/dhtmlxscheduler_cookie.js.map index f2bf70e..9f9aebe 100644 --- a/codebase/sources/ext/dhtmlxscheduler_cookie.js.map +++ b/codebase/sources/ext/dhtmlxscheduler_cookie.js.map @@ -1 +1 @@ -{"version":3,"file":"dhtmlxscheduler_cookie.js","sources":["dhtmlxscheduler_cookie.js"],"names":["setCookie","name","cookie_param","value","str","document","cookie","getCookie","search","length","offset","indexOf","end","substring","first","scheduler","attachEvent","om","od","m","d","_get_url_nav","url_nav","date","mode","event","data","_min_date","unescape","split","this","templates","xml_date","view","isViewExists","isNaN","window","setTimeout","setCurrentView","text","escape","xml_format","old_load","_load","args","arguments","_date","_load_mode","that","apply"],"mappings":";;;;;;;;CAQA,WACC,QAASA,GAAUC,EAAKC,EAAaC,GACpC,GAAIC,GAAMH,EAAO,IAAME,GAAUD,EAAc,KAAKA,EAAc,GAClEG,UAASC,OAASF,EAEnB,QAASG,GAAUN,GAClB,GAAIO,GAASP,EAAO,GACpB,IAAII,SAASC,OAAOG,OAAS,EAAG,CAC/B,GAAIC,GAASL,SAASC,OAAOK,QAAQH,EACrC,IAAc,IAAVE,EAAc,CACjBA,GAAUF,EAAOC,MACjB,IAAIG,GAAMP,SAASC,OAAOK,QAAQ,IAAKD,EAGvC,OAFW,IAAPE,IACHA,EAAMP,SAASC,OAAOG,QAChBJ,SAASC,OAAOO,UAAUH,EAAQE,IAG3C,MAAO,GAER,GAAIE,IAAQ,CACZC,WAAUC,YAAY,qBAAqB,SAASC,EAAGC,EAAGC,EAAEC,GAE3D,GAAIN,GAASC,UAAUM,aAAa,CACnC,GAAIC,GAAUP,UAAUM,gBACrBC,EAAQC,MAAQD,EAAQE,MAAQF,EAAQG,SAC1CX,GAAQ,GAIV,GAAIA,EAAM,CACTA,GAAQ,CAER,IAAIY,GAAKnB,EAAU;;AACnB,GAAImB,EAAK,CAEJX,UAAUY,YAGbZ,UAAUY,UAAYP,GAGvBM,EAAOE,SAASF,GAAMG,MAAM,KAC5BH,EAAK,GAAKI,KAAKC,UAAUC,SAASN,EAAK,GACvC,IAAIO,GAAOH,KAAKI,aAAaR,EAAK,IAAMA,EAAK,GAAKP,EACjDI,EAAQY,OAAOT,EAAK,IAAgBN,EAAVM,EAAK,EAKhC,OAHAU,QAAOC,WAAW,WACjBtB,UAAUuB,eAAef,EAAKU,IAC7B,IACK,GAGT,GAAIM,GAAOC,OAAOV,KAAKC,UAAUU,WAAWrB,GAAGF,GAAI,KAAKC,GAAGF,GAE3D,OADAjB,GAAU,qBAAqB,wCAAwCuC,IAChE,GAKR,IAAIG,GAAW3B,UAAU4B,KACzB5B,WAAU4B,MAAQ,WACjB,GAAIC,GAAOC,SACX,KAAK9B,UAAU+B,OAAS/B,UAAUgC,WAAY,CAC7C,GAAIC,GAAOlB,IACXM,QAAOC,WAAW;AACjBK,EAASO,MAAMD,EAAMJ,IACpB,OAEFF,GAASO,MAAMnB,KAAMc"}
\ No newline at end of file +{"version":3,"file":"dhtmlxscheduler_cookie.js","sources":["dhtmlxscheduler_cookie.js"],"names":["setCookie","name","cookie_param","value","str","document","cookie","getCookie","search","length","offset","indexOf","end","substring","first","scheduler","attachEvent","om","od","m","d","_get_url_nav","url_nav","date","mode","event","data","_min_date","unescape","split","this","templates","xml_date","view","isViewExists","isNaN","window","setTimeout","setCurrentView","text","escape","xml_format","old_load","_load","args","arguments","_date","_load_mode","that","apply"],"mappings":";;;;;;;;CAQA,WACC,QAASA,GAAUC,EAAKC,EAAaC,GACpC,GAAIC,GAAMH,EAAO,IAAME,GAAUD,EAAc,KAAKA,EAAc,GAClEG,UAASC,OAASF,EAEnB,QAASG,GAAUN,GAClB,GAAIO,GAASP,EAAO,GACpB,IAAII,SAASC,OAAOG,OAAS,EAAG,CAC/B,GAAIC,GAASL,SAASC,OAAOK,QAAQH,EACrC,IAAc,IAAVE,EAAc,CACjBA,GAAUF,EAAOC,MACjB,IAAIG,GAAMP,SAASC,OAAOK,QAAQ,IAAKD,EAGvC,OAFW,IAAPE,IACHA,EAAMP,SAASC,OAAOG,QAChBJ,SAASC,OAAOO,UAAUH,EAAQE,IAG3C,MAAO,GAER,GAAIE,IAAQ,CACZC,WAAUC,YAAY,qBAAqB,SAASC,EAAGC,EAAGC,EAAEC,GAE3D,GAAIN,GAASC,UAAUM,aAAa,CACnC,GAAIC,GAAUP,UAAUM,gBACrBC,EAAQC,MAAQD,EAAQE,MAAQF,EAAQG,SAC1CX,GAAQ,GAIV,GAAIA,EAAM,CACTA,GAAQ,CAER,IAAIY,GAAKnB,EAAU;AACnB,GAAImB,EAAK,CAEJX,UAAUY,YAGbZ,UAAUY,UAAYP,GAGvBM,EAAOE,SAASF,GAAMG,MAAM,KAC5BH,EAAK,GAAKI,KAAKC,UAAUC,SAASN,EAAK,GACvC,IAAIO,GAAOH,KAAKI,aAAaR,EAAK,IAAMA,EAAK,GAAKP,EACjDI,EAAQY,OAAOT,EAAK,IAAgBN,EAAVM,EAAK,EAKhC,OAHAU,QAAOC,WAAW,WACjBtB,UAAUuB,eAAef,EAAKU,IAC7B,IACK,GAGT,GAAIM,GAAOC,OAAOV,KAAKC,UAAUU,WAAWrB,GAAGF,GAAI,KAAKC,GAAGF,GAE3D,OADAjB,GAAU,qBAAqB,wCAAwCuC,IAChE,GAKR,IAAIG,GAAW3B,UAAU4B,KACzB5B,WAAU4B,MAAQ,WACjB,GAAIC,GAAOC,SACX,KAAK9B,UAAU+B,OAAS/B,UAAUgC,WAAY,CAC7C,GAAIC,GAAOlB,IACXM,QAAOC,WAAW;AACjBK,EAASO,MAAMD,EAAMJ,IACpB,OAEFF,GAASO,MAAMnB,KAAMc"}
\ No newline at end of file diff --git a/codebase/sources/ext/dhtmlxscheduler_csp.js b/codebase/sources/ext/dhtmlxscheduler_csp.js new file mode 100644 index 0000000..bcbf6a5 --- /dev/null +++ b/codebase/sources/ext/dhtmlxscheduler_csp.js @@ -0,0 +1,101 @@ +/* +@license +dhtmlxScheduler v.4.4.0 Stardard + +This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. + +(c) Dinamenta, UAB. +*/ +/* + Compatibility with Content Security Policy + https://github.com/denys86/scheduler/commit/f64f62f14086a8ec33d5667cfc5dc3a7e775fd2a + + Removes evil JS. Inline styles are still used for rendering, may need to allow them or redefine unsafe methods + style-src 'unsafe-inline' + +*/ + +scheduler.date.date_to_str = function(format,utc){ + return function(date) { + return format.replace(/%[a-zA-Z]/g, function (a) { + switch (a) { + case "%d": return utc ? scheduler.date.to_fixed(date.getUTCDate()) : scheduler.date.to_fixed(date.getDate()); + case "%m": return utc ? scheduler.date.to_fixed((date.getUTCMonth() + 1)) : scheduler.date.to_fixed((date.getMonth() + 1)); + case "%j": return utc ? date.getUTCDate() : date.getDate(); + case "%n": return utc ? (date.getUTCMonth() + 1) : (date.getMonth() + 1); + case "%y": return utc ? scheduler.date.to_fixed(date.getUTCFullYear() % 100) : scheduler.date.to_fixed(date.getFullYear() % 100); + case "%Y": return utc ? date.getUTCFullYear() : date.getFullYear(); + case "%D": return utc ? scheduler.locale.date.day_short[date.getUTCDay()] : scheduler.locale.date.day_short[date.getDay()]; + case "%l": return utc ? scheduler.locale.date.day_full[date.getUTCDay()] : scheduler.locale.date.day_full[date.getDay()]; + case "%M": return utc ? scheduler.locale.date.month_short[date.getUTCMonth()] : scheduler.locale.date.month_short[date.getMonth()]; + case "%F": return utc ? scheduler.locale.date.month_full[date.getUTCMonth()] : scheduler.locale.date.month_full[date.getMonth()]; + case "%h": return utc ? scheduler.date.to_fixed((date.getUTCHours() + 11) % 12 + 1) : scheduler.date.to_fixed((date.getHours() + 11) % 12 + 1); + case "%g": return utc ? ((date.getUTCHours() + 11) % 12 + 1) : ((date.getHours() + 11) % 12 + 1); + case "%G": return utc ? date.getUTCHours() : date.getHours(); + case "%H": return utc ? scheduler.date.to_fixed(date.getUTCHours()) : scheduler.date.to_fixed(date.getHours()); + case "%i": return utc ? scheduler.date.to_fixed(date.getUTCMinutes()) : scheduler.date.to_fixed(date.getMinutes()); + case "%a": return utc ? (date.getUTCHours() > 11 ? "pm" : "am") : (date.getHours() > 11 ? "pm" : "am"); + case "%A": return utc ? (date.getUTCHours() > 11 ? "PM" : "AM") : (date.getHours() > 11 ? "PM" : "AM"); + case "%s": return utc ? scheduler.date.to_fixed(date.getUTCSeconds()) : scheduler.date.to_fixed(date.getSeconds()); + case "%W": return utc ? scheduler.date.to_fixed(scheduler.date.getUTCISOWeek(date)) : scheduler.date.to_fixed(scheduler.date.getISOWeek(date)); + default: return a; + } + }); + }; +}; +scheduler.date.str_to_date = function(format,utc){ + return function(date) { + var set = [0, 0, 1, 0, 0, 0]; + var temp = date.match(/[a-zA-Z]+|[0-9]+/g); + var mask = format.match(/%[a-zA-Z]/g); + + for (var i = 0; i < mask.length; i++) { + switch (mask[i]) { + case "%j": + case "%d": + set[2] = temp[i] || 1; + break; + case "%n": + case "%m": + set[1] = (temp[i] || 1) - 1; + break; + case "%y": + set[0] = temp[i] * 1 + (temp[i] > 50 ? 1900 : 2000); + break; + case "%g": + case "%G": + case "%h": + case "%H": + set[3] = temp[i] || 0; + break; + case "%i": + set[4] = temp[i] || 0; + break; + case "%Y": + set[0] = temp[i] || 0; + break; + case "%a": + case "%A": + set[3] = set[3] % 12 + ((temp[i] || '').toLowerCase() == 'am' ? 0 : 12); + break; + case "%s": + set[5] = temp[i] || 0; + break; + case "%M": + set[1] = scheduler.locale.date.month_short_hash[temp[i]] || 0; + break; + case "%F": + set[1] = scheduler.locale.date.month_full_hash[temp[i]] || 0; + break; + default: + break; + } + } + + if (utc) { + return new Date(Date.UTC(set[0], set[1], set[2], set[3], set[4], set[5])); + } + + return new Date(set[0], set[1], set[2], set[3], set[4], set[5]); + }; +}; diff --git a/codebase/sources/ext/dhtmlxscheduler_csp.js.map b/codebase/sources/ext/dhtmlxscheduler_csp.js.map new file mode 100644 index 0000000..dcb32f9 --- /dev/null +++ b/codebase/sources/ext/dhtmlxscheduler_csp.js.map @@ -0,0 +1 @@ +{"version":3,"file":"dhtmlxscheduler_csp.js","sources":["dhtmlxscheduler_csp.js"],"names":["scheduler","date","date_to_str","format","utc","replace","a","to_fixed","getUTCDate","getDate","getUTCMonth","getMonth","getUTCFullYear","getFullYear","locale","day_short","getUTCDay","getDay","day_full","month_short","month_full","getUTCHours","getHours","getUTCMinutes","getMinutes","getUTCSeconds","getSeconds","getUTCISOWeek","getISOWeek","str_to_date","set","temp","match","mask","i","length","toLowerCase","month_short_hash","month_full_hash","Date","UTC"],"mappings":"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"}
\ No newline at end of file diff --git a/codebase/sources/ext/dhtmlxscheduler_editors.js b/codebase/sources/ext/dhtmlxscheduler_editors.js index 0a4f7e9..65593a3 100644 --- a/codebase/sources/ext/dhtmlxscheduler_editors.js +++ b/codebase/sources/ext/dhtmlxscheduler_editors.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. diff --git a/codebase/sources/ext/dhtmlxscheduler_editors.js.map b/codebase/sources/ext/dhtmlxscheduler_editors.js.map index b441b68..c902b1d 100644 --- a/codebase/sources/ext/dhtmlxscheduler_editors.js.map +++ b/codebase/sources/ext/dhtmlxscheduler_editors.js.map @@ -1 +1 @@ -{"version":3,"file":"dhtmlxscheduler_editors.js","sources":["dhtmlxscheduler_editors.js"],"names":["scheduler","form_blocks","render","sns","cached_options","res","type","height","set_value","node","value","ev","config","resetCombo","_combo","DOMParent","combo","unload","destructor","DOMelem","id","attachEvent","detachEvent","window","dhx_globalImgPath","image_path","dhtmlXCombo","name","offsetWidth","onchange","options_height","setOptionHeight","enableFilteringMode","filtering","script_path","cache","selected_id","map_to","addOption","disable","selectOption","dhtmlxAjax","get","uid","result","option","doXPath","label","childNodes","nodeValue","setComboValue","all_options","i","options","length","single_option","key","css","push","index","getIndexByValue","get_value","getSelectedValue","getSelectedText","focus","vertical","radiobuttons","getElementsByTagName","checked","checked_value","wide_form","document","getElementById","isChecked","className","check_html","label_html","locale","labels","innerHTML","nextSibling","handler","checkbox","onclick","unchecked_value"],"mappings":"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"}
\ No newline at end of file +{"version":3,"file":"dhtmlxscheduler_editors.js","sources":["dhtmlxscheduler_editors.js"],"names":["scheduler","form_blocks","render","sns","cached_options","res","type","height","set_value","node","value","ev","config","resetCombo","_combo","DOMParent","combo","unload","destructor","DOMelem","id","attachEvent","detachEvent","window","dhx_globalImgPath","image_path","dhtmlXCombo","name","offsetWidth","onchange","options_height","setOptionHeight","enableFilteringMode","filtering","script_path","cache","selected_id","map_to","addOption","disable","selectOption","dhtmlxAjax","get","uid","result","option","doXPath","label","childNodes","nodeValue","setComboValue","all_options","i","options","length","single_option","key","css","push","index","getIndexByValue","get_value","getSelectedValue","getSelectedText","focus","vertical","radiobuttons","getElementsByTagName","checked","checked_value","wide_form","document","getElementById","isChecked","className","check_html","label_html","locale","labels","innerHTML","nextSibling","handler","checkbox","onclick","unchecked_value"],"mappings":"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"}
\ No newline at end of file diff --git a/codebase/sources/ext/dhtmlxscheduler_expand.js b/codebase/sources/ext/dhtmlxscheduler_expand.js index ee8faeb..55d855d 100644 --- a/codebase/sources/ext/dhtmlxscheduler_expand.js +++ b/codebase/sources/ext/dhtmlxscheduler_expand.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. diff --git a/codebase/sources/ext/dhtmlxscheduler_html_templates.js b/codebase/sources/ext/dhtmlxscheduler_html_templates.js index 08082b3..9d86a62 100644 --- a/codebase/sources/ext/dhtmlxscheduler_html_templates.js +++ b/codebase/sources/ext/dhtmlxscheduler_html_templates.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. diff --git a/codebase/sources/ext/dhtmlxscheduler_key_nav.js b/codebase/sources/ext/dhtmlxscheduler_key_nav.js index a7bf989..6f16ff8 100644 --- a/codebase/sources/ext/dhtmlxscheduler_key_nav.js +++ b/codebase/sources/ext/dhtmlxscheduler_key_nav.js @@ -1,113 +1,2857 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. (c) Dinamenta, UAB. */ -//Initial idea and implementation by Steve MC -scheduler._temp_key_scope = function (){ +(function(){ + function setupKeyNav(scheduler){ + scheduler.config.key_nav = true; + scheduler.config.key_nav_step = 30; -scheduler.config.key_nav = true; + scheduler.addShortcut = function(shortcut, handler, scope){ + var scopeObject = getScope(scope); + if(scopeObject){ + scopeObject.prototype.bind(shortcut, handler); + } + }; + scheduler.removeShortcut = function(shortcut, scope){ + var scopeObject = getScope(scope); + if(scopeObject){ + scopeObject.prototype.unbind(shortcut); + } + }; -var date; // used for copy and paste operations -var section; // used for copy and paste operations -var isCopy = null; + scheduler.focus = function(){ + if(!scheduler.config.key_nav){ + return; + } + var disp = scheduler.$keyboardNavigation.dispatcher; + disp.enable(); + var activeNode = disp.getActiveNode(); + if(!activeNode || activeNode instanceof scheduler.$keyboardNavigation.MinicalButton || activeNode instanceof scheduler.$keyboardNavigation.MinicalCell){ + disp.setDefaultNode(); + }else{ + disp.focusNode(disp.getActiveNode()); + } + }; + function getScope(mode){ + var scopes = { + "minicalButton":scheduler.$keyboardNavigation.MinicalButton, + "minicalDate":scheduler.$keyboardNavigation.MinicalCell, + "scheduler":scheduler.$keyboardNavigation.SchedulerNode, + "dataArea": scheduler.$keyboardNavigation.DataArea, + "timeSlot": scheduler.$keyboardNavigation.TimeSlot, + "event": scheduler.$keyboardNavigation.Event + }; -scheduler.attachEvent("onMouseMove", function(id,e){ - date = scheduler.getActionData(e).date; - section = scheduler.getActionData(e).section; -}); + return scopes[mode] || scopes.scheduler; + } -function clear_event_after(ev){ - delete ev.rec_type; delete ev.rec_pattern; - delete ev.event_pid; delete ev.event_length; -} -scheduler._make_pasted_event = function(ev){ - var event_duration = ev.end_date-ev.start_date; + scheduler.$keyboardNavigation = {}; - var copy = scheduler._lame_copy({}, ev); - clear_event_after(copy); - copy.start_date = new Date(date); - copy.end_date = new Date(copy.start_date.valueOf() + event_duration); + scheduler._compose = function(){ + var parts = Array.prototype.slice.call(arguments, 0); + var res = {}; + for(var i = 0; i < parts.length; i++){ + var obj = parts[i]; + if(typeof obj == "function"){ + obj = new obj(); + } - if(section){ - var property = scheduler._get_section_property(); - - if(scheduler.config.multisection) - copy[property] = ev[property]; // save initial set of resources for multisection view - else - copy[property] = section; + for(var p in obj){ + res[p] = obj[p]; + } + } + return res; + }; + +scheduler.$keyboardNavigation.shortcuts = { + createCommand: function(){ + return { + modifiers:{ + "shift": false, + "alt": false, + "ctrl": false, + "meta": false + }, + keyCode: null + }; + }, + parse: function(shortcut){ + var commands = []; + + var expr = this.getExpressions(this.trim(shortcut)); + for(var i = 0; i < expr.length; i++){ + var words = this.getWords(expr[i]); + + var command = this.createCommand(); + + for(var j = 0; j < words.length; j++){ + if(this.commandKeys[words[j]]){ + command.modifiers[words[j]] = true; + }else if(this.specialKeys[words[j]]){ + command.keyCode = this.specialKeys[words[j]]; + }else{ + command.keyCode = words[j].charCodeAt(0); + } + } + + commands.push(command); + } + return commands; + }, + + getCommandFromEvent: function(domEvent){ + var command = this.createCommand(); + command.modifiers.shift = !!domEvent.shiftKey; + command.modifiers.alt = !!domEvent.altKey; + command.modifiers.ctrl = !!domEvent.ctrlKey; + command.modifiers.meta = !!domEvent.metaKey; + command.keyCode = domEvent.which || domEvent.keyCode; + var printableKey = String.fromCharCode(command.keyCode ); + if(printableKey){ + command.keyCode = printableKey.toLowerCase().charCodeAt(0); + } + return command; + }, + + getHashFromEvent: function(domEvent){ + return this.getHash(this.getCommandFromEvent(domEvent)); + }, + + getHash: function(command){ + var parts = []; + for(var i in command.modifiers){ + if(command.modifiers[i]){ + parts.push(i); + } + } + parts.push(command.keyCode); + + return parts.join(this.junctionChar); + }, + + getExpressions: function(shortcut){ + return shortcut.split(this.junctionChar); + }, + getWords: function(term){ + return term.split(this.combinationChar); + }, + trim: function(shortcut){ + return shortcut.replace(/\s/g, ""); + }, + junctionChar:",", + combinationChar:"+", + commandKeys:{ + "shift": 16, + "alt": 18, + "ctrl": 17, + "meta": true + }, + specialKeys:{ + "backspace": 8, + "tab": 9, + "enter": 13, + "esc": 27, + "space": 32, + "up": 38, + "down": 40, + "left": 37, + "right": 39, + "home": 36, + "end": 35, + "pageup": 33, + "pagedown": 34, + "delete": 46, + "insert": 45, + "plus":107, + "f1": 112, + "f2": 113, + "f3": 114, + "f4": 115, + "f5": 116, + "f6": 117, + "f7": 118, + "f8": 119, + "f9": 120, + "f10": 121, + "f11": 122, + "f12": 123 + } +}; +scheduler.$keyboardNavigation.EventHandler = { + _handlers: null, + findHandler: function(command){ + if(!this._handlers) this._handlers = {}; + var shortcuts = scheduler.$keyboardNavigation.shortcuts; + var hash = shortcuts.getHash(command); + + return this._handlers[hash]; + }, + + doAction: function(command, e){ + var handler = this.findHandler(command); + if(handler){ + handler.call(this, e); + + if (e.preventDefault) e.preventDefault(); + else e.returnValue = false; + + } + }, + bind: function(shortcut, handler){ + if(!this._handlers) this._handlers = {}; + + var shortcuts = scheduler.$keyboardNavigation.shortcuts; + + var commands = shortcuts.parse(shortcut); + for(var i = 0; i < commands.length; i++){ + this._handlers[shortcuts.getHash(commands[i])] = handler; + } + }, + unbind: function(shortcut){ + var shortcuts = scheduler.$keyboardNavigation.shortcuts; + + var commands = shortcuts.parse(shortcut); + for(var i = 0; i < commands.length; i++){ + if(this._handlers[shortcuts.getHash(commands[i])]){ + delete this._handlers[shortcuts.getHash(commands[i])]; + } + } + }, + + bindAll: function(map){ + for(var i in map){ + this.bind(i, map[i]); + } + }, + initKeys: function(){ + if(!this._handlers) + this._handlers = {}; + if(this.keys){ + this.bindAll(this.keys); + } } - return copy; }; -scheduler._do_paste = function(is_copy, modified_ev, original_ev){ - scheduler.addEvent(modified_ev); - scheduler.callEvent("onEventPasted", [is_copy, modified_ev, original_ev]); +(function(){ + scheduler.$keyboardNavigation.getFocusableNodes = scheduler._getFocusableNodes; + + scheduler.$keyboardNavigation.trapFocus = function trapFocus(root, e){ + if(e.keyCode != 9) return false; + + var focusable = scheduler.$keyboardNavigation.getFocusableNodes(root); + var currentFocus = document.activeElement; + var currentIndex = -1; + for(var i = 0; i < focusable.length; i++){ + if(focusable[i] == currentFocus){ + currentIndex = i; + break; + } + } + + var nextIndex, nextItem; + if(e.shiftKey){ + + // back tab + // go to the last element if we focused on the first + nextIndex = (currentIndex <= 0) ? (focusable[focusable.length - 1]) : (currentIndex - 1); + + nextItem = focusable[nextIndex]; + if(nextItem){ + nextItem.focus(); + e.preventDefault(); + return true; + } + + }else{ + // forward tab + // forward tab from last element should go back to the first element + nextIndex = (currentIndex >= focusable.length - 1) ? 0 : (currentIndex + 1); + nextItem = focusable[nextIndex]; + if(nextItem){ + nextItem.focus(); + e.preventDefault(); + return true; + } + + } + + return false; + }; +})(); +scheduler.$keyboardNavigation.marker = { + clear: function(){ + var divs = scheduler.$container.querySelectorAll(".dhx_focus_slot"); + for(var i = 0; i < divs.length; i++){ + divs[i].parentNode.removeChild(divs[i]); + } + }, + createElement: function(){ + var element = document.createElement("DIV"); + element.setAttribute("tabindex", -1); + element.className = "dhx_focus_slot"; + return element; + }, + + renderMultiple: function(start, end, method){ + var divs = []; + var currentStart = new Date(start); + var currentEnd = new Date(Math.min(end.valueOf(), scheduler.date.add(scheduler.date.day_start(new Date(start)), 1, "day").valueOf())); + while(currentStart.valueOf() < end.valueOf()){ + + divs = divs.concat(method.call(this, currentStart, new Date(Math.min(currentEnd.valueOf(), end.valueOf())))); + currentStart = scheduler.date.day_start(scheduler.date.add(currentStart, 1, "day")); + + currentEnd = scheduler.date.day_start(scheduler.date.add(currentStart, 1, "day")); + currentEnd = new Date(Math.min(currentEnd.valueOf(), end.valueOf())); + } + + return divs; + }, + + + render: function(start, end, section){ + this.clear(); + var divs = []; + + var modes = scheduler.$keyboardNavigation.TimeSlot.prototype._modes; + var view = scheduler.$keyboardNavigation.TimeSlot.prototype._getMode(); + switch (view){ + case modes.units: + divs = this.renderVerticalMarker(start, end, section); + break; + case modes.timeline: + divs = this.renderTimelineMarker(start, end, section); + break; + case modes.year: + divs = divs.concat(this.renderMultiple(start, end, this.renderYearMarker)); + break; + case modes.month: + divs = this.renderMonthMarker(start, end); + break; + case modes.weekAgenda: + divs = divs.concat(this.renderMultiple(start, end, this.renderWeekAgendaMarker)); + break; + case modes.list: + divs = this.renderAgendaMarker(start, end); + break; + case modes.dayColumns: + divs = divs.concat(this.renderMultiple(start, end, this.renderVerticalMarker)); + break; + } + + this.addWaiAriaLabel(divs, start, end, section); + this.addDataAttributes(divs, start, end, section); + + for(var i = divs.length - 1; i >= 0; i--){ + if(divs[i].offsetWidth){ + return divs[i]; + } + } + + return null; + }, + + addDataAttributes: function(divs, start, end, section){ + var dateToStr = scheduler.date.date_to_str(scheduler.config.api_date); + + var from = dateToStr(start), + to = dateToStr(end); + + for(var i = 0; i < divs.length; i++){ + divs[i].setAttribute("data-start-date", from); + divs[i].setAttribute("data-end-date", to); + if(section){ + divs[i].setAttribute("data-section", section); + } + } + }, + + addWaiAriaLabel: function(divs, start, end, section){ + var label = ""; + var state = scheduler.getState(); + var mode = state.mode; + + var dateTimeLabel = false; + + label += scheduler.templates.day_date(start); + + if((scheduler.date.day_start(new Date(start)).valueOf() != start.valueOf())){ + label += " " + scheduler.templates.hour_scale(start); + dateTimeLabel = true; + } + + if((scheduler.date.day_start(new Date(start)).valueOf() != scheduler.date.day_start(new Date(end)).valueOf())){ + + label += " - " + scheduler.templates.day_date(end); + if(dateTimeLabel || (scheduler.date.day_start(new Date(end)).valueOf() != end.valueOf())){ + label += " " + scheduler.templates.hour_scale(end); + } + } + + if(section){ + if(scheduler.matrix && scheduler.matrix[mode]){ + label += ", " + scheduler.templates[mode + "_scale_label"](section.key, section.label, section); + }else if(scheduler._props && scheduler._props[mode]){ + label += ", " + scheduler.templates[mode + "_scale_text"](section.key, section.label, section); + } + } + + + for(var i = 0; i < divs.length; i++){ + scheduler._waiAria.setAttributes(divs[i], { + "aria-label": label, + "aria-live": "polite" + }); + } + }, + + renderWeekAgendaMarker: function(start_date, end_date){ + var divs = scheduler.$container.querySelectorAll(".dhx_wa_day_cont .dhx_wa_scale_bar"); + + var currDate = scheduler.date.week_start(new Date(scheduler.getState().min_date)); + + var index = -1; + var markerDate = scheduler.date.day_start(new Date(start_date)); + for(var i = 0; i < divs.length; i++){ + index++; + if(scheduler.date.day_start(new Date(currDate)).valueOf() == markerDate.valueOf()){ + break; + }else{ + currDate = scheduler.date.add(currDate, 1, "day"); + } + } + if(index != -1) return this._wrapDiv(divs[index]); + return []; + }, + + _wrapDiv: function(cell){ + var marker = this.createElement(); + marker.style.top = cell.offsetTop + "px"; + marker.style.left = cell.offsetLeft + "px"; + marker.style.width = cell.offsetWidth + "px"; + marker.style.height = cell.offsetHeight + "px"; + cell.appendChild(marker); + return [marker]; + }, + renderYearMarker: function(start_date, end_date){ + var cell = scheduler._get_year_cell(start_date); + cell.style.position = "relative"; + var marker = this.createElement(); + marker.style.top = "0px"; + marker.style.left = "0px"; + marker.style.width = "100%"; + marker.style.height = "100%"; + cell.appendChild(marker); + return [marker]; + }, + + renderAgendaMarker: function(start_date, end_date){ + var block = this.createElement(); + block.style.height = "1px"; + block.style.width = "100%"; + block.style.opacity = 1; + block.style.top = "0px"; + block.style.left = "0px"; + scheduler.$container.querySelector(".dhx_cal_data").appendChild(block); + return [block]; + }, + + renderTimelineMarker: function(start_date, end_date, section){ + var view_opts = scheduler._lame_copy({}, scheduler.matrix[scheduler._mode]); + var areas = view_opts._scales; + //timespans must always use actual position, not rounded + view_opts.round_position = false; + var blocks = []; + + var min_date = start_date ? new Date(start_date) : scheduler._min_date; + var max_date = end_date ? new Date(end_date) : scheduler._max_date; + + if(min_date.valueOf() < scheduler._min_date.valueOf()) + min_date = new Date(scheduler._min_date); + if(max_date.valueOf() > scheduler._max_date.valueOf()) + max_date = new Date(scheduler._max_date); + + if(!view_opts._trace_x) return blocks; + + for(var i = 0; i < view_opts._trace_x.length; i++){ + if(scheduler._is_column_visible(view_opts._trace_x[i])) + break; + } + if(i == view_opts._trace_x.length) + return blocks; + + var area = areas[section]; + + if (!(min_date < end_date && max_date > start_date)) + return blocks; + + var block = this.createElement(); + + var start_pos = scheduler._timeline_getX({start_date: start_date}, false, view_opts)-1; + var end_pos = scheduler._timeline_getX({start_date: end_date}, false, view_opts)-1; + var height = ((view_opts._section_height[section]-1) || (view_opts.dy - 1)); + + var top = 0; + if (scheduler._isRender('cell')){ + top = area.offsetTop; + start_pos += view_opts.dx; + end_pos += view_opts.dx; + area = scheduler.$container.querySelector(".dhx_cal_data"); + }else{ + + } + var width = Math.max(1, end_pos - start_pos - 1); + block.style.cssText = "height: "+height+"px; left: "+start_pos+"px; width: "+width+"px; top: "+top+"px;"; + + area.insertBefore(block, area.firstChild); + blocks.push(block); + + return blocks; + }, + + + + renderMonthCell: function(date){ + var cells = scheduler.$container.querySelectorAll(".dhx_month_head"); + + var divs = []; + for(var i = 0; i < cells.length; i++){ + divs.push(cells[i].parentNode); + } + + var firstDate = scheduler.date.week_start(new Date(scheduler.getState().min_date)); + + var index = -1; + var weekNumber = 0; + var dayIndex = -1; + var currDate = firstDate; + var markerDate = scheduler.date.day_start(new Date(date)); + for(var i = 0; i < divs.length; i++){ + index++; + + if(dayIndex == 6){ + weekNumber++; + dayIndex = 0; + }else{ + dayIndex++; + } + + if(scheduler.date.day_start(new Date(currDate)).valueOf() == markerDate.valueOf()){ + break; + }else{ + currDate = scheduler.date.add(currDate, 1, "day"); + } + } + + if(index == -1){ + return []; + } + + var left = scheduler._colsS[dayIndex]; + var top = scheduler._colsS.heights[weekNumber]; + + var div = this.createElement(); + div.style.top = top + "px"; + div.style.left = left + "px"; + div.style.width = scheduler._cols[dayIndex] + "px"; + div.style.height = ((scheduler._colsS.heights[weekNumber + 1] - top) || scheduler._colsS.height) + "px" ; + + + var container = scheduler.$container.querySelector(".dhx_cal_data"); + + var datatable = container.querySelector("table"); + if(datatable.nextSibling){ + container.insertBefore(div, datatable.nextSibling); + }else{ + container.appendChild(div); + } + return div; + }, + renderMonthMarker: function(start_date, end_date){ + var res = []; + var currentDate = start_date; + while(currentDate.valueOf() < end_date.valueOf()){ + res.push(this.renderMonthCell(currentDate)); + currentDate = scheduler.date.add(currentDate, 1, "day"); + } + return res; + }, + + renderVerticalMarker: function(start_date, end_date, section){ + var index = scheduler.locate_holder_day(start_date); + + var divs = []; + var area = null; + + var c = scheduler.config; + if(scheduler._ignores[index]) return divs; + + if (scheduler._props && scheduler._props[scheduler._mode] && section) { + var view = scheduler._props[scheduler._mode]; + index = view.order[section]; + + var inner_index = view.order[section]; + if(!(view.days > 1)){ + index = inner_index; + if (view.size && (index > view.position+view.size)) { + index = 0; + } + }else{ + //var units_l = view.size || view.options.length; + + index = scheduler.locate_holder_day(start_date) + inner_index; + //index = index*units_l + inner_index; + } + } + area = scheduler.locate_holder(index); + if(!area || area.querySelector(".dhx_scale_hour")){ + // hour scale instead of date column + return document.createElement("div"); + } + + var start = Math.max((start_date.getHours()*60 + start_date.getMinutes()), c.first_hour*60); + + + var end = Math.min((end_date.getHours()*60 + end_date.getMinutes()), c.last_hour*60); + if(!end && (scheduler.date.day_start(new Date(end_date)).valueOf() > scheduler.date.day_start(new Date(start_date)).valueOf())){ + end = c.last_hour*60; + } + + if (end <= start) { + return []; + } + + var block = this.createElement(); + + // +1 for working with section which really takes up whole height (as % would be == 0) + var all_hours_height = scheduler.config.hour_size_px*c.last_hour + 1; + var hour_ms = 60*60*1000; + block.style.top = (Math.round((start*60*1000-scheduler.config.first_hour*hour_ms)*scheduler.config.hour_size_px/hour_ms) % all_hours_height) + "px"; + block.style.lineHeight = block.style.height = Math.max((Math.round(((end-start)*60*1000)*scheduler.config.hour_size_px/hour_ms)) % all_hours_height, 1)+"px"; + block.style.width = "100%"; + area.appendChild(block); + divs.push(block); + return divs[0]; + + } +}; +scheduler.$keyboardNavigation.SchedulerNode = function(){}; + +scheduler.$keyboardNavigation.SchedulerNode.prototype = scheduler._compose( + scheduler.$keyboardNavigation.EventHandler, + { + getDefaultNode: function(){ + var node = new scheduler.$keyboardNavigation.TimeSlot(); + + if(!node.isValid()){ + node = node.fallback(); + } + return node; + }, + + _modes:{ + month: "month", + year: "year", + dayColumns: "dayColumns", + timeline:"timeline", + units:"units", + weekAgenda: "weekAgenda", + list: "list" + }, + getMode: function(){ + var state = scheduler.getState(); + + var mode = state.mode; + if((scheduler.matrix && scheduler.matrix[mode])){ + return this._modes.timeline; + } else if((scheduler._props && scheduler._props[mode])){ + return this._modes.units; + }else if(mode == "month"){ + return this._modes.month; + }else if(mode == "year"){ + return this._modes.year; + }else if(mode == "week_agenda"){ + return this._modes.weekAgenda; + }else if(mode == "map" || mode == "agenda" || (scheduler._grid && scheduler["grid_" + mode])){ + return this._modes.list; + }else{ + return this._modes.dayColumns; + } + }, + + focus: function(){ + scheduler.focus(); + }, + + blur: function(){ + + }, + + disable: function(){ + scheduler.$container.setAttribute("tabindex", "0"); + }, + enable: function(){ + if(scheduler.$container) + scheduler.$container.removeAttribute("tabindex"); + }, + isEnabled: function(){ + return scheduler.$container.hasAttribute("tabindex"); + }, + + + _compareEvents: function(a, b){ + if (a.start_date.valueOf() == b.start_date.valueOf()) + return a.id > b.id ? 1 : -1; + return a.start_date.valueOf() > b.start_date.valueOf() ? 1 : -1; + }, + + _pickEvent: function(from, to, startId, reverse){ + var range = scheduler.getState(); + from = new Date(Math.max(range.min_date.valueOf(), from.valueOf())); + to = new Date(Math.min(range.max_date.valueOf(), to.valueOf())); + + var evs = scheduler.getEvents(from, to); + evs.sort(this._compareEvents); + if(reverse){ + evs = evs.reverse(); + } + + var trim = !!startId; + for(var i =0; i < evs.length && trim; i++){ + if(evs[i].id == startId){ + trim = false; + } + evs.splice(i, 1); + i--; + } + + return evs[0]; + }, + + nextEventHandler: function(id){ + var activeNode = scheduler.$keyboardNavigation.dispatcher.activeNode; + + var startId = id || (activeNode && activeNode.eventId); + + var nextEvent = null; + if(startId && scheduler.getEvent(startId)){ + var currEvent = scheduler.getEvent(startId); + + nextEvent = scheduler.$keyboardNavigation.SchedulerNode.prototype._pickEvent( + currEvent.start_date, + scheduler.date.add(currEvent.start_date, 1, "year"), + currEvent.id, + false + ); + + } + if(!nextEvent && !id){ + var visibleDates = scheduler.getState(); + + nextEvent = scheduler.$keyboardNavigation.SchedulerNode.prototype._pickEvent( + visibleDates.min_date, + scheduler.date.add(visibleDates.min_date, 1, "year"), + null, + false + ); + } + + if(nextEvent){ + + var nextEv = new scheduler.$keyboardNavigation.Event(nextEvent.id); + if(!nextEv.isValid()){// not visible event + this.nextEventHandler(nextEvent.id); + }else{ + if(activeNode){activeNode.blur();} + scheduler.$keyboardNavigation.dispatcher.setActiveNode(nextEv); + } + } + }, + + prevEventHandler: function(id){ + var activeNode = scheduler.$keyboardNavigation.dispatcher.activeNode; + + var startId = id || (activeNode && activeNode.eventId); + + var nextEvent = null; + if(startId && scheduler.getEvent(startId)){ + var currEvent = scheduler.getEvent(startId); + + nextEvent = scheduler.$keyboardNavigation.SchedulerNode.prototype._pickEvent( + scheduler.date.add(currEvent.end_date, -1, "year"), + currEvent.end_date, + currEvent.id, + true + ); + } + if(!nextEvent && !id){ + var visibleDates = scheduler.getState(); + + nextEvent = scheduler.$keyboardNavigation.SchedulerNode.prototype._pickEvent( + scheduler.date.add(visibleDates.max_date, -1, "year"), + visibleDates.max_date, + null, + true + ); + } + + if(nextEvent){ + var nextEv = new scheduler.$keyboardNavigation.Event(nextEvent.id); + if(!nextEv.isValid()){// not visible event + this.prevEventHandler(nextEvent.id); + }else{ + if(activeNode){activeNode.blur();} + scheduler.$keyboardNavigation.dispatcher.setActiveNode(nextEv); + } + } + }, + + keys: { + + "alt+1, alt+2, alt+3, alt+4, alt+5, alt+6, alt+7, alt+8, alt+9": function(e){ + var tabs = scheduler.$keyboardNavigation.HeaderCell.prototype.getNodes(".dhx_cal_navline .dhx_cal_tab"); + var key = e.key; + if(key === undefined){ + key = e.keyCode - 48; + } + if(tabs[key*1 - 1]){ + tabs[key*1 - 1].click(); + } + }, + + "ctrl+left,meta+left": function(e){ + scheduler._click.dhx_cal_prev_button(); + }, + "ctrl+right,meta+right": function(e){ + scheduler._click.dhx_cal_next_button(); + }, + "ctrl+up,meta+up":function(e){ + var dataArea = scheduler.$container.querySelector(".dhx_cal_data"); + dataArea.scrollTop -= 20; + }, + "ctrl+down,meta+down": function(e){ + var dataArea = scheduler.$container.querySelector(".dhx_cal_data"); + dataArea.scrollTop += 20; + }, + + + "e": function(){ + this.nextEventHandler(); + }, + + "home": function(){ + scheduler.setCurrentView(new Date()); + }, + + "shift+e": function(){ + this.prevEventHandler(); + }, + + "ctrl+enter,meta+enter": function(){ + scheduler.addEventNow({start_date: new Date(scheduler.getState().date)}); + }, + + "ctrl+c,meta+c": function(e){ + scheduler._key_nav_copy_paste(e); + }, + "ctrl+v,meta+v": function(e){ + scheduler._key_nav_copy_paste(e); + }, + "ctrl+x,meta+x": function(e){ + scheduler._key_nav_copy_paste(e); + } + + } + } +); + +scheduler.$keyboardNavigation.SchedulerNode.prototype.bindAll(scheduler.$keyboardNavigation.SchedulerNode.prototype.keys); +scheduler.$keyboardNavigation.KeyNavNode = function(){}; + +scheduler.$keyboardNavigation.KeyNavNode.prototype = scheduler._compose( + scheduler.$keyboardNavigation.EventHandler, + { + isValid: function(){ + return true; + }, + fallback: function(){ + return null; + }, + + moveTo: function (element) { + scheduler.$keyboardNavigation.dispatcher.setActiveNode(element); + }, + + compareTo: function(b){ + // good enough comparison of two random objects + if(!b) return false; + for(var i in this){ + if(!!this[i] != !!b[i]) return false; + + var canStringifyThis = !!(this[i] && this[i].toString); + var canStringifyThat = !!(b[i] && b[i].toString); + if(canStringifyThat != canStringifyThis) return false; + if(!(canStringifyThat && canStringifyThis)) { + if(b[i] != this[i]) return false; + }else{ + if(b[i].toString() != this[i].toString()) + return false; + } + } + return true; + }, + + getNode: function(){}, + focus: function(){ + var node = this.getNode(); + if(node){ + node.setAttribute("tabindex", "-1"); + //node.className += " scheduler_focused"; + if(node.focus) node.focus(); + } + + }, + blur: function(){ + var node = this.getNode(); + if(node){ + node.setAttribute("tabindex", "-1"); + //node.className = (node.className || "").replace(/ ?scheduler_focused/g, ""); + } + } + } + +); + +scheduler.$keyboardNavigation.HeaderCell = function(index){ + this.index = index || 0; }; -scheduler._is_key_nav_active = function(){ - if(this._is_initialized() && !this._is_lightbox_open() && this.config.key_nav){ - return true; +scheduler.$keyboardNavigation.HeaderCell.prototype = scheduler._compose( + scheduler.$keyboardNavigation.KeyNavNode, + { + getNode: function(index){ + index = index || this.index || 0; + var nodes = this.getNodes(); + if(nodes[index]) return nodes[index]; + }, + + getNodes: function(selector){ + selector = selector || [ + ".dhx_cal_navline .dhx_cal_prev_button", + ".dhx_cal_navline .dhx_cal_next_button", + ".dhx_cal_navline .dhx_cal_today_button", + ".dhx_cal_navline .dhx_cal_tab" + ].join(", "); + + var nodes = Array.prototype.slice.call(scheduler.$container.querySelectorAll(selector)); + nodes.sort(function(a, b){ + return a.offsetLeft - b.offsetLeft; + }); + return nodes; + }, + + _handlers:null, + + isValid: function(){ + return !!this.getNode(this.index); + }, + fallback:function(){ + var defaultCell = this.getNode(0); + if(!defaultCell){ + defaultCell = new scheduler.$keyboardNavigation.TimeSlot(); + } + return defaultCell; + }, + + keys: { + "left": function(){ + var newIndex = this.index - 1; + if(newIndex < 0){ + newIndex = this.getNodes().length - 1; + } + + this.moveTo(new scheduler.$keyboardNavigation.HeaderCell(newIndex)); + + }, + "right": function () { + var newIndex = this.index + 1; + if(newIndex >= this.getNodes().length){ + newIndex = 0; + } + + this.moveTo(new scheduler.$keyboardNavigation.HeaderCell(newIndex)); + }, + "down": function () { + this.moveTo(new scheduler.$keyboardNavigation.TimeSlot()); + }, + + "enter": function(){ + var node = this.getNode(); + if(node){ + node.click(); + } + } + } + } +); + +scheduler.$keyboardNavigation.HeaderCell.prototype.bindAll(scheduler.$keyboardNavigation.HeaderCell.prototype.keys); +scheduler.$keyboardNavigation.Event = function(id){ + this.eventId = null; + if(scheduler.getEvent(id)){ + var ev = scheduler.getEvent(id); + this.start = new Date(ev.start_date); + this.end = new Date(ev.end_date); + + this.section = this._getSection(ev); + + this.eventId = id; } - return false; }; -dhtmlxEvent(document,(_isOpera?"keypress":"keydown"),function(e){ - if(!scheduler._is_key_nav_active()) return true; +scheduler.$keyboardNavigation.Event.prototype = scheduler._compose( + scheduler.$keyboardNavigation.KeyNavNode, + { + _getNodes: function(){ + return Array.prototype.slice.call(scheduler.$container.querySelectorAll("[event_id]")); + }, + + _modes: scheduler.$keyboardNavigation.SchedulerNode.prototype._modes, + + getMode: scheduler.$keyboardNavigation.SchedulerNode.prototype.getMode, + + _handlers: null, + isValid: function(){ + return !!(scheduler.getEvent(this.eventId) && this.getNode()); + }, + fallback: function(){ + var eventNode = this._getNodes()[0]; + var defaultElement = null; + if(!eventNode || !(scheduler._locate_event(eventNode))){ + defaultElement = new scheduler.$keyboardNavigation.TimeSlot(); + }else{ + var id = scheduler._locate_event(eventNode); + defaultElement = new scheduler.$keyboardNavigation.Event(id); + } + + return defaultElement; + }, + + getNode: function(){ + return scheduler.$container.querySelector("[event_id='"+this.eventId+"']"); + }, + + focus: function(){ + var event = scheduler.getEvent(this.eventId); + + var calendar = scheduler.getState(); + if(event.start_date.valueOf() > calendar.max_date.valueOf() || event.end_date.valueOf() <= calendar.min_date.valueOf()){ + scheduler.setCurrentView(event.start_date); + } + + scheduler.$keyboardNavigation.KeyNavNode.prototype.focus.apply(this); + }, + blur: function(){ + scheduler.$keyboardNavigation.KeyNavNode.prototype.blur.apply(this); + }, + + + _getSection: function(ev){ + var section = null; + var mode = scheduler.getState().mode; + if(scheduler.matrix && scheduler.matrix[mode]){ + var timeline = scheduler.matrix[scheduler.getState().mode]; + section = ev[timeline.y_property]; + }else if(scheduler._props && scheduler._props[mode]){ + var unit = scheduler._props[mode]; + section = ev[unit.map_to]; + } + return section; + }, + _moveToSlot: function(dir){ + var ev = scheduler.getEvent(this.eventId); + if(ev){ + var section =this._getSection(ev); + var slot = new scheduler.$keyboardNavigation.TimeSlot(ev.start_date, null, section); + this.moveTo(slot.nextSlot(slot, dir)); + }else{ + this.moveTo(new scheduler.$keyboardNavigation.TimeSlot()); + } + }, - e=e||event; + keys: { + "left": function(){ + this._moveToSlot("left"); + }, - if (e.keyCode == 37 || e.keyCode == 39) { // Left, Right arrows - e.cancelBubble = true; + "right": function () { + this._moveToSlot("right"); + }, + "down": function () { + if(this.getMode() == this._modes.list){ + scheduler.$keyboardNavigation.SchedulerNode.prototype.nextEventHandler(); + }else { + this._moveToSlot("down"); + } + }, + + "space": function(){ + var node = this.getNode(); + if(node && node.click){ + node.click(); + }else{ + this.moveTo(new scheduler.$keyboardNavigation.TimeSlot()); + } + + }, + + "up": function () { + if(this.getMode() == this._modes.list){ + scheduler.$keyboardNavigation.SchedulerNode.prototype.prevEventHandler(); + }else { + this._moveToSlot("up"); + } + }, - var next = scheduler.date.add(scheduler._date,(e.keyCode == 37 ? -1 : 1 ),scheduler._mode); - scheduler.setCurrentView(next); - return true; + "delete": function(){ + if(scheduler.getEvent(this.eventId)) { + scheduler._click.buttons["delete"](this.eventId); + }else{ + this.moveTo(new scheduler.$keyboardNavigation.TimeSlot()); + } + }, + + // open lightbox + "enter": function () { + if(scheduler.getEvent(this.eventId)) { + scheduler.showLightbox(this.eventId); + }else{ + this.moveTo(new scheduler.$keyboardNavigation.TimeSlot()); + } + } + } } +); +scheduler.$keyboardNavigation.Event.prototype.bindAll(scheduler.$keyboardNavigation.Event.prototype.keys); +scheduler.$keyboardNavigation.TimeSlot = function(from, to, section, movingDate){ + var state = scheduler.getState(); + var timeline = scheduler.matrix && scheduler.matrix[state.mode]; + + if(!from){ - var select_id = scheduler._select_id; - if (e.ctrlKey && e.keyCode == 67) { // CTRL+C - if (select_id) { - scheduler._buffer_id = select_id; - isCopy = true; - scheduler.callEvent("onEventCopied", [scheduler.getEvent(select_id)]); + if(timeline){ + from = scheduler.date[timeline.name + "_start"](new Date(state.date)); + from = this.findVisibleColumn(from); + }else{ + from = new Date(scheduler.getState().min_date); + from = this.findVisibleColumn(from); + from.setHours(scheduler.config.first_hour); } - return true; } - if (e.ctrlKey && e.keyCode == 88) { // CTRL+X - if (select_id) { - isCopy = false; - scheduler._buffer_id = select_id; - var ev = scheduler.getEvent(select_id); - scheduler.updateEvent(ev.id); - scheduler.callEvent("onEventCut", [ev]); + + if(!to){ + + if(timeline){ + to = scheduler.date.add(from, timeline.x_step, timeline.x_unit); + }else{ + to = scheduler.date.add(from, scheduler.config.key_nav_step, "minute"); } + } - if (e.ctrlKey && e.keyCode == 86) { // CTRL+V - var ev = scheduler.getEvent(scheduler._buffer_id); - if (ev) { - var new_ev = scheduler._make_pasted_event(ev); - if (isCopy) { - new_ev.id = scheduler.uid(); - scheduler._do_paste(isCopy, new_ev, ev); + this.section = section || this._getDefaultSection(); + this.start_date = new Date(from); + this.end_date = new Date(to); + this.movingDate = movingDate || null; +}; + +scheduler.$keyboardNavigation.TimeSlot.prototype = scheduler._compose( + scheduler.$keyboardNavigation.KeyNavNode, + { + _handlers:null, + clone: function(timeslot){ + return new scheduler.$keyboardNavigation.TimeSlot(timeslot.start_date, timeslot.end_date, timeslot.section, timeslot.movingDate); + }, + _getMultisectionView: function(){ + var state = scheduler.getState(); + var view; + if(scheduler._props && scheduler._props[state.mode]) { + view = scheduler._props[state.mode]; + }else if(scheduler.matrix && scheduler.matrix[state.mode]){ + view = scheduler.matrix[state.mode]; } - else { // cut operation - var res = scheduler.callEvent("onBeforeEventChanged",[new_ev, e, false, ev]); - if (res) { - scheduler._do_paste(isCopy, new_ev, ev); - isCopy = true; // switch to copy after first paste operation + return view; + }, + + _getDefaultSection: function(){ + var section = null; + var view = this._getMultisectionView(); + if(view && !section){ + section = this._getNextSection(); + } + return section; + }, + + _getNextSection: function(sectionId, dir){ + var view = this._getMultisectionView(); + var currentIndex = view.order[sectionId]; + var nextIndex = currentIndex; + if(currentIndex !== undefined){ + nextIndex = currentIndex + dir; + }else{ + nextIndex = (view.size && view.position) ? view.position : 0; + } + + nextIndex = nextIndex < 0 ? nextIndex = (view.options || view.y_unit).length -1 : nextIndex; + + + var options = view.options || view.y_unit; + if(options[nextIndex]){ + return options[nextIndex].key; + }else{ + return null; + } + }, + + + isValid: function(){ + var state = scheduler.getState(); + var isInRange = !(this.start_date.valueOf() < state.min_date.valueOf() || this.start_date.valueOf() >= state.max_date.valueOf()); + + if(!isInRange) return false; + + + if(!this.isVisible(this.start_date, this.end_date)) return false; + + var view = this._getMultisectionView(); + + if(view){ + return (view.order[this.section] !== undefined); + }else{ + return true; + } + + }, + + fallback:function(){ + + var defaultSlot = new scheduler.$keyboardNavigation.TimeSlot(); + if(!defaultSlot.isValid()){ + return new scheduler.$keyboardNavigation.DataArea(); + }else{ + return defaultSlot; + } + }, + + getNodes: function(){ + return Array.prototype.slice.call(scheduler.$container.querySelectorAll(".dhx_focus_slot")); + }, + getNode: function(){ + return this.getNodes()[0]; + }, + + focus: function(){ + scheduler.$keyboardNavigation.marker.render(this.start_date, this.end_date, this.section); + scheduler.$keyboardNavigation.KeyNavNode.prototype.focus.apply(this); + scheduler.$keyboardNavigation._pasteDate = this.start_date; + scheduler.$keyboardNavigation._pasteSection = this.section; + + }, + blur: function(){ + scheduler.$keyboardNavigation.KeyNavNode.prototype.blur.apply(this); + scheduler.$keyboardNavigation.marker.clear(); + }, + + _modes: scheduler.$keyboardNavigation.SchedulerNode.prototype._modes, + + _getMode: scheduler.$keyboardNavigation.SchedulerNode.prototype.getMode, + + addMonthDate: function(date, dir, extend){ + var res; + switch (dir){ + case "up": + res = scheduler.date.add(date, -1, "week"); + break; + case "down": + res = scheduler.date.add(date, 1, "week"); + break; + case "left": + res = scheduler.date.day_start(scheduler.date.add(date, -1, "day")); + res = this.findVisibleColumn(res, -1); + break; + case "right": + res = scheduler.date.day_start(scheduler.date.add(date, 1, "day")); + res = this.findVisibleColumn(res, 1); + break; + default: + res = scheduler.date.day_start(new Date(date)); + break; + } + + var state = scheduler.getState(); + if(date.valueOf() < state.min_date.valueOf() || (!extend && date.valueOf() >= state.max_date.valueOf())){ + res = new Date(state.min_date); + } + + return res; + }, + + nextMonthSlot: function(slot, dir, extend){ + + var start, end; + start = this.addMonthDate(slot.start_date, dir, extend); + + start.setHours(scheduler.config.first_hour); + end = new Date(start); + end.setHours(scheduler.config.last_hour); + return {start_date: start, end_date: end}; + }, + + _alignTimeSlot: function(date, minDate, unit, step){ + var currentDate = new Date(minDate); + while(currentDate.valueOf() < date.valueOf()){ + currentDate = scheduler.date.add(currentDate, step, unit); + } + + if(currentDate.valueOf() > date.valueOf()){ + currentDate = scheduler.date.add(currentDate, -step, unit); + } + + return currentDate; + }, + + nextTimelineSlot: function(slot, dir, extend){ + var state = scheduler.getState(); + var view = scheduler.matrix[state.mode]; + + var startDate = this._alignTimeSlot(slot.start_date, scheduler.date[view.name + "_start"](new Date(slot.start_date)), view.x_unit, view.x_step); + var endDate = this._alignTimeSlot(slot.end_date, scheduler.date[view.name + "_start"](new Date(slot.end_date)), view.x_unit, view.x_step); + + if(endDate.valueOf() <= startDate.valueOf()){ + endDate = scheduler.date.add(startDate, view.x_step, view.x_unit); + } + var newPos = this.clone(slot); + newPos.start_date = startDate; + newPos.end_date = endDate; + newPos.section = slot.section || this._getNextSection(); + + + switch (dir){ + case "up": + newPos.section = this._getNextSection(slot.section, -1); + break; + case "down": + newPos.section = this._getNextSection(slot.section, +1); + break; + case "left": + newPos.start_date = this.findVisibleColumn(scheduler.date.add(newPos.start_date, -view.x_step, view.x_unit), -1); + newPos.end_date = scheduler.date.add(newPos.start_date, view.x_step, view.x_unit); + break; + case "right": + newPos.start_date = this.findVisibleColumn(scheduler.date.add(newPos.start_date, view.x_step, view.x_unit), 1); + newPos.end_date = scheduler.date.add(newPos.start_date, view.x_step, view.x_unit); + + break; + default: + + break; + } + + if(newPos.start_date.valueOf() < state.min_date.valueOf() || newPos.start_date.valueOf() >= state.max_date.valueOf()){ + if(extend && newPos.start_date.valueOf() >= state.max_date.valueOf()){ + newPos.start_date = new Date(state.max_date); + }else{ + newPos.start_date = scheduler.date[state.mode + "_start"](scheduler.date.add(state.date, dir == "left" ? -1 : 1, state.mode)); + newPos.end_date = scheduler.date.add(newPos.start_date, view.x_step, view.x_unit); + } + } + + return newPos; + }, + + nextUnitsSlot: function(slot, dir, extend){ + var newPos = this.clone(slot); + newPos.section = slot.section || this._getNextSection(); + + var section = slot.section || this._getNextSection(); + var state = scheduler.getState(); + var view = scheduler._props[state.mode]; + switch (dir){ + case "left": + section = this._getNextSection(slot.section, -1); + var optionsCount = view.size ? (view.size - 1) : view.options.length; + + if(view.days > 1 && (view.order[section] == optionsCount - 1)){ + if(scheduler.date.add(slot.start_date, -1, "day").valueOf() >= state.min_date.valueOf()){ + newPos = this.nextDaySlot(slot, dir, extend); + } + } + break; + case "right": + section = this._getNextSection(slot.section, 1); + if(view.days > 1 && !view.order[section]){ + if(scheduler.date.add(slot.start_date, 1, "day").valueOf() < state.max_date.valueOf()){ + newPos = this.nextDaySlot(slot, dir, extend); + } + } + + break; + default: + newPos = this.nextDaySlot(slot, dir, extend); + section = slot.section; + break; + } + newPos.section = section; + return newPos; + }, + + _moveDate: function(oldDate, dir){ + var newDate = this.findVisibleColumn(scheduler.date.add(oldDate, dir, "day"), dir); + newDate.setHours(oldDate.getHours()); + newDate.setMinutes(oldDate.getMinutes()); + return newDate; + }, + + isBeforeLastHour: function(date, isStartDate){ + var minutes = date.getMinutes(), + hours = date.getHours(), + last_hour = scheduler.config.last_hour; + return (hours < last_hour || (!isStartDate && ((last_hour == 24 || hours == last_hour) && !minutes))); + }, + isAfterFirstHour: function(date, isStartDate){ + var minutes = date.getMinutes(), + hours = date.getHours(), + first_hour = scheduler.config.first_hour, + last_hour = scheduler.config.last_hour; + return (hours >= first_hour || (!isStartDate && (!minutes && ((!hours && last_hour == 24) || (hours == last_hour))))); + }, + isInVisibleDayTime: function(date, isStartDate){ + return (this.isBeforeLastHour(date, isStartDate) && this.isAfterFirstHour(date, isStartDate)); + }, + + nextDaySlot: function(slot, dir, extend){ + var start, end; + + var key_nav_step = scheduler.config.key_nav_step; + + var date = this._alignTimeSlot(slot.start_date, scheduler.date.day_start(new Date(slot.start_date)), "minute", key_nav_step); + + + var oldStart = slot.start_date; + + switch (dir){ + case "up": + start = scheduler.date.add(date, -key_nav_step, "minute"); + + if(!this.isInVisibleDayTime(start, true)){ + if (!extend || this.isInVisibleDayTime(oldStart, true)) { + + var toNextDay = true; + if(extend && scheduler.date.date_part(new Date(start)).valueOf() != scheduler.date.date_part(new Date(oldStart)).valueOf()) + toNextDay = false; + if(toNextDay) + start = this.findVisibleColumn(scheduler.date.add(slot.start_date, -1, "day"), -1); + + start.setHours(scheduler.config.last_hour); + start.setMinutes(0); + start = scheduler.date.add(start, -key_nav_step, "minute"); + } + } + end = scheduler.date.add(start, key_nav_step, "minute"); + break; + case "down": + start = scheduler.date.add(date, key_nav_step, "minute"); + + var testEnd = extend ? start : scheduler.date.add(start, key_nav_step, "minute"); + if(!this.isInVisibleDayTime(testEnd, false)){ + if(!extend || this.isInVisibleDayTime(oldStart, false)) { + if (!extend) { + start = this.findVisibleColumn(scheduler.date.add(slot.start_date, 1, "day"), 1); + start.setHours(scheduler.config.first_hour); + start.setMinutes(0); + } else { + var toNextDay = true; + if (scheduler.date.date_part(new Date(oldStart)).valueOf() == oldStart.valueOf()) { + toNextDay = false; + } + if (toNextDay) { + start = this.findVisibleColumn(scheduler.date.add(slot.start_date, 1, "day"), 1); + } + start.setHours(scheduler.config.first_hour); + start.setMinutes(0); + start = scheduler.date.add(start, key_nav_step, "minute"); + } + + } + } + end = scheduler.date.add(start, key_nav_step, "minute"); + break; + case "left": + start = this._moveDate(slot.start_date, -1); + end = this._moveDate(slot.end_date, -1); + break; + case "right": + start = this._moveDate(slot.start_date, 1); + end = this._moveDate(slot.end_date, 1); + break; + default: + start = date; + end = scheduler.date.add(start, key_nav_step, "minute"); + break; + } + + return {start_date: start, end_date: end}; + }, + nextWeekAgendaSlot: function(slot, dir){ + var start, end; + var state = scheduler.getState(); + + switch (dir){ + case "down": + case "left": + start = scheduler.date.day_start(scheduler.date.add(slot.start_date, -1, "day")); + start = this.findVisibleColumn(start, -1); + break; + case "up": + case "right": + start = scheduler.date.day_start(scheduler.date.add(slot.start_date, 1, "day")); + start = this.findVisibleColumn(start, 1); + break; + default: + start = scheduler.date.day_start(slot.start_date); + break; + } + if(slot.start_date.valueOf() < state.min_date.valueOf() || slot.start_date.valueOf() >= state.max_date.valueOf()){ + start = new Date(state.min_date); + + } + end = new Date(start); + end.setHours(scheduler.config.last_hour); + return {start_date: start, end_date: end}; + }, + nextAgendaSlot: function(slot, dir){ + return {start_date: slot.start_date, end_date: slot.end_date}; + }, + + + isDateVisible: function(date){ + if(!scheduler._ignores_detected) + return true; + + var timeline = scheduler.matrix && scheduler.matrix[scheduler.getState().mode]; + + var index; + if(timeline){ + index = scheduler._get_date_index(timeline, date); + }else{ + index = scheduler.locate_holder_day(date); + } + + return !scheduler._ignores[index]; + }, + + findVisibleColumn: function(start, dir){ + var date = start; + dir = dir || 1; + var range = scheduler.getState(); + + while(!this.isDateVisible(date) && ((dir > 0 && date.valueOf() <= range.max_date.valueOf()) || (dir < 0 && date.valueOf() >= range.min_date.valueOf()))){ + date = this.nextDateColumn(date, dir); + } + + return date; + }, + + nextDateColumn: function(start, dir){ + dir = dir || 1; + var timeline = scheduler.matrix && scheduler.matrix[scheduler.getState().mode]; + + var date; + if(timeline){ + date = scheduler.date.add(start, dir * timeline.x_step, timeline.x_unit); + }else{ + date = scheduler.date.day_start(scheduler.date.add(start, dir, "day")); + } + + return date; + }, + + isVisible:function(from, to){ + if(!scheduler._ignores_detected) + return true; + + var current = new Date(from); + + while(current.valueOf() < to.valueOf()){ + if(this.isDateVisible(current)) return true; + current = this.nextDateColumn(current); + } + return false; + }, + + nextSlot: function(slot, dir, view, extend){ + var next; + view = view || this._getMode(); + + var tempSlot = scheduler.$keyboardNavigation.TimeSlot.prototype.clone(slot); + + switch (view){ + case this._modes.units: + next = this.nextUnitsSlot(tempSlot, dir, extend); + break; + case this._modes.timeline: + next = this.nextTimelineSlot(tempSlot, dir, extend); + break; + case this._modes.year: + next = this.nextMonthSlot(tempSlot, dir, extend); + break; + case this._modes.month: + next = this.nextMonthSlot(tempSlot, dir, extend); + break; + case this._modes.weekAgenda: + next = this.nextWeekAgendaSlot(tempSlot, dir, extend); + break; + case this._modes.list: + next = this.nextAgendaSlot(tempSlot, dir, extend); + break; + case this._modes.dayColumns: + next = this.nextDaySlot(tempSlot, dir, extend); + break; + } + + if(next.start_date.valueOf() >= next.end_date.valueOf()){ + next = this.nextSlot(next, dir, view); + } + + return scheduler.$keyboardNavigation.TimeSlot.prototype.clone(next); + + }, + + extendSlot: function(slot, dir){ + var view = this._getMode(); + var next; + switch (view){ + case this._modes.units: + if(dir == "left" || dir == "right"){ + next = this.nextUnitsSlot(slot, dir); + }else{ + next = this.extendUnitsSlot(slot, dir); + } + break; + case this._modes.timeline: + if(dir == "down" || dir == "up"){ + next = this.nextTimelineSlot(slot, dir); + }else{ + next = this.extendTimelineSlot(slot, dir); + } + break; + case this._modes.year: + next = this.extendMonthSlot(slot, dir); + break; + case this._modes.month: + next = this.extendMonthSlot(slot, dir); + break; + case this._modes.dayColumns: + next = this.extendDaySlot(slot, dir); + break; + case this._modes.weekAgenda: + next = this.extendWeekAgendaSlot(slot, dir); + break; + default: + next = slot; + break; + } + + var range = scheduler.getState(); + if(next.start_date.valueOf() < range.min_date.valueOf()){ + next.start_date = this.findVisibleColumn(range.min_date); + next.start_date.setHours(scheduler.config.first_hour); + } + + if(next.end_date.valueOf() > range.max_date.valueOf()){ + // next.end_date = new Date(slot.end_date); + next.end_date = this.findVisibleColumn(range.max_date, -1); + } + + + return scheduler.$keyboardNavigation.TimeSlot.prototype.clone(next); + }, + + extendTimelineSlot: function(slot, direction){ + return this.extendGenericSlot({ + "left":"start_date", + "right":"end_date" + }, + slot, + direction, + "timeline" + ); + }, + + extendWeekAgendaSlot: function(slot, direction){ + return this.extendGenericSlot({ + "left":"start_date", + "right":"end_date" + }, + slot, + direction, + "weekAgenda" + ); + }, + + extendGenericSlot: function(allowedDirections, slot, direction, type){ + var next; + var moveDate = slot.movingDate; + + if(!moveDate){ + moveDate = allowedDirections[direction]; + } + + if(!moveDate || !allowedDirections[direction]){ + return slot; + } + + if(direction){ + next = this.nextSlot({start_date: slot[moveDate], section: slot.section}, direction, type, true); + + if(next.start_date.valueOf() == slot.start_date.valueOf()){ + next = this.nextSlot({start_date: next.start_date, section:next.section}, direction, type, true); + } + + next.movingDate = moveDate; + }else{ + return scheduler.$keyboardNavigation.TimeSlot.prototype.clone(slot); + } + + var newDates = this.extendSlotDates(slot, next, next.movingDate); + + if(newDates.end_date.valueOf() <= newDates.start_date.valueOf()){ + next.movingDate = next.movingDate == "end_date" ? "start_date" : "end_date"; + } + newDates = this.extendSlotDates(slot, next, next.movingDate); + + next.start_date = newDates.start_date; + next.end_date = newDates.end_date; + return next; + }, + + extendSlotDates: function(oldSlot, newSlot, dateDirection){ + var res = {start_date:null, end_date:null}; + + if(dateDirection == "start_date"){ + res.start_date = newSlot.start_date; + res.end_date = oldSlot.end_date; + }else{ + res.start_date = oldSlot.start_date; + res.end_date = newSlot.start_date; + } + return res; + + }, + + extendMonthSlot: function(slot, direction){ + var slot = this.extendGenericSlot({ + "up":"start_date", + "down":"end_date", + "left":"start_date", + "right":"end_date" + }, + slot, + direction, + "month" + ); + + slot.start_date.setHours(scheduler.config.first_hour); + slot.end_date = scheduler.date.add(slot.end_date, -1, "day"); + slot.end_date.setHours(scheduler.config.last_hour); + return slot; + }, + + extendUnitsSlot: function(slot, direction){ + var next; + + switch (direction){ + case "down": + case "up": + next = this.extendDaySlot(slot, direction); + break; + default: + next = slot; + break; + } + next.section = slot.section; + return next; + }, + extendDaySlot: function(slot, direction){ + return this.extendGenericSlot({ + "up":"start_date", + "down":"end_date", + "left":"start_date", + "right":"end_date" + }, + slot, + direction, + "dayColumns" + ); + }, + + scrollSlot: function(dir){ + var state = scheduler.getState(); + + var slot = this.nextSlot(this, dir); + if(slot.start_date.valueOf() < state.min_date.valueOf() || slot.start_date.valueOf() >= state.max_date.valueOf()){ + scheduler.setCurrentView(new Date(slot.start_date)); + } + + this.moveTo(slot); + }, + + keys: { + "left": function(){ + this.scrollSlot("left"); + }, + "right": function () { + this.scrollSlot("right"); + }, + "down": function () { + + var mode = this._getMode(); + if(mode == this._modes.list){ + scheduler.$keyboardNavigation.SchedulerNode.prototype.nextEventHandler(); + }else{ + this.scrollSlot("down"); + } + + }, + + "up": function () { + var mode = this._getMode(); + if(mode == this._modes.list){ + scheduler.$keyboardNavigation.SchedulerNode.prototype.prevEventHandler(); + }else{ + this.scrollSlot("up"); + } + + }, + + "shift+down":function(){ + this.moveTo(this.extendSlot(this, "down")); + }, + "shift+up":function(){ + this.moveTo(this.extendSlot(this, "up")); + }, + "shift+right":function(){ + this.moveTo(this.extendSlot(this, "right")); + }, + "shift+left":function(){ + this.moveTo(this.extendSlot(this, "left")); + }, + + + "enter": function(){ + var obj = {start_date: new Date(this.start_date), end_date: new Date(this.end_date)}; + + var mode = scheduler.getState().mode; + if(scheduler.matrix && scheduler.matrix[mode]){ + + var timeline = scheduler.matrix[scheduler.getState().mode]; + obj[timeline.y_property] = this.section; + }else if(scheduler._props && scheduler._props[mode]){ + var unit = scheduler._props[mode]; + obj[unit.map_to] = this.section; + } + + scheduler.addEventNow(obj); + } + } + } +); + +scheduler.$keyboardNavigation.TimeSlot.prototype.bindAll(scheduler.$keyboardNavigation.TimeSlot.prototype.keys); +scheduler.$keyboardNavigation.MinicalButton = function(div, index){ + this.container = div; + this.index = index || 0; +}; + +scheduler.$keyboardNavigation.MinicalButton.prototype = scheduler._compose( + scheduler.$keyboardNavigation.KeyNavNode, + { + + isValid: function(){ + return true; + }, + focus: function(){ + scheduler.$keyboardNavigation.dispatcher.globalNode.disable(); + this.container.removeAttribute("tabindex"); + scheduler.$keyboardNavigation.KeyNavNode.prototype.focus.apply(this); + + }, + blur: function(){ + this.container.setAttribute("tabindex", "0"); + scheduler.$keyboardNavigation.KeyNavNode.prototype.blur.apply(this); + }, + getNode: function(){ + if(!this.index){ + return this.container.querySelector(".dhx_cal_prev_button"); + }else{ + return this.container.querySelector(".dhx_cal_next_button"); + } + }, + + keys: { + "right": function(e){ + this.moveTo(new scheduler.$keyboardNavigation.MinicalButton(this.container, this.index ? 0 : 1)); + }, + "left": function(e){ + this.moveTo(new scheduler.$keyboardNavigation.MinicalButton(this.container, this.index ? 0 : 1)); + }, + "down": function(){ + var next = new scheduler.$keyboardNavigation.MinicalCell(this.container, 0, 0); + if(next && !next.isValid()){ + next = next.fallback(); + } + + this.moveTo(next); + }, + "enter": function(e){ + this.getNode().click(); + } + } + } +); + +scheduler.$keyboardNavigation.MinicalButton.prototype.bindAll(scheduler.$keyboardNavigation.MinicalButton.prototype.keys); +scheduler.$keyboardNavigation.MinicalCell = function(div, row, col){ + this.container = div; + this.row = row || 0; + this.col = col || 0; +}; + +scheduler.$keyboardNavigation.MinicalCell.prototype = scheduler._compose( + scheduler.$keyboardNavigation.KeyNavNode, + { + + isValid: function(){ + var grid = this._getGrid(); + return !!(grid[this.row] && grid[this.row][this.col]); + }, + fallback: function(){ + var row = this.row; + var col = this.col; + var grid = this._getGrid(); + if(!grid[row]){ + row = 0; + } + var dir = true; + if(row > grid.length / 2){ + dir = false; + } + if(dir){ + for(var c = col; c < grid[row].length; c++){ + if(!grid[row][c] && c == grid[row].length - 1){ + row++; + col = 0; + } + if(grid[row][c]){ + return new scheduler.$keyboardNavigation.MinicalCell(this.container, row, c); + } + } + }else{ + for(var c = col; c < grid[row].length; c--){ + if(!grid[row][c] && !c){ + row--; + col = grid[row].length - 1; + } + if(grid[row][c]){ + return new scheduler.$keyboardNavigation.MinicalCell(this.container, row, c); + } + } + } + + return new scheduler.$keyboardNavigation.MinicalButton(this.container, 0); + }, + focus: function(){ + scheduler.$keyboardNavigation.dispatcher.globalNode.disable(); + + this.container.removeAttribute("tabindex"); + scheduler.$keyboardNavigation.KeyNavNode.prototype.focus.apply(this); + }, + blur: function(){ + this.container.setAttribute("tabindex", "0"); + scheduler.$keyboardNavigation.KeyNavNode.prototype.blur.apply(this); + }, + _getNode: function(row, col){ + return this.container.querySelector(".dhx_year_body tr:nth-child("+(row + 1) + ") td:nth-child("+(col + 1)+")"); + }, + getNode: function(){ + return this._getNode(this.row, this.col); + }, + + _getGrid: function(){ + var rows = this.container.querySelectorAll(".dhx_year_body tr"); + var grid = []; + for(var i = 0; i < rows.length; i++){ + grid[i] = []; + var row = rows[i]; + var cells = row.querySelectorAll("td"); + for(var c = 0; c < cells.length; c++){ + var cell = cells[c]; + var enabled = true; + var css = scheduler._getClassName(cell); + if(css.indexOf("dhx_after") > -1 || css.indexOf("dhx_before") > -1 || css.indexOf("dhx_scale_ignore") > -1){ + enabled = false; + } + grid[i][c] = enabled; + } + } + return grid; + }, + + + keys: { + "right": function(e){ + var grid = this._getGrid(); + var newRow = this.row; + var newCol = this.col + 1; + if(!grid[newRow] || !grid[newRow][newCol]){ + if(grid[newRow + 1]){ + newRow = newRow + 1; + newCol = 0; + }else{ + newCol = this.col; + } + } + + var next = new scheduler.$keyboardNavigation.MinicalCell(this.container, newRow, newCol); + if(!next.isValid()){ + next = next.fallback(); + } + + this.moveTo(next); + }, + "left": function(e){ + var grid = this._getGrid(); + var newRow = this.row; + var newCol = this.col - 1; + if(!grid[newRow] || !grid[newRow][newCol]){ + if(grid[newRow - 1]){ + newRow = newRow - 1; + newCol = grid[newRow].length - 1; + }else{ + newCol = this.col; + } + } + + var next = new scheduler.$keyboardNavigation.MinicalCell(this.container, newRow, newCol); + if(!next.isValid()){ + next = next.fallback(); + } + + this.moveTo(next); + }, + "down": function(){ + var grid = this._getGrid(); + var newRow = this.row + 1; + var newCol = this.col; + + if(!grid[newRow] || !grid[newRow][newCol]){ + newRow = this.row; + } + + var next = new scheduler.$keyboardNavigation.MinicalCell(this.container, newRow, newCol); + if(!next.isValid()){ + next = next.fallback(); + } + + this.moveTo(next); + }, + "up": function(){ + var grid = this._getGrid(); + var newRow = this.row - 1; + var newCol = this.col; + + if(!grid[newRow] || !grid[newRow][newCol]){ + var index = 0; + if(this.col > grid[this.row].length / 2){ + index = 1; + } + this.moveTo(new scheduler.$keyboardNavigation.MinicalButton(this.container, index)); + }else{ + var next = new scheduler.$keyboardNavigation.MinicalCell(this.container, newRow, newCol); + if(!next.isValid()){ + next = next.fallback(); + } + + this.moveTo(next); + } + + }, + "enter": function(e){ + this.getNode().querySelector(".dhx_month_head").click(); + } + } + } +); + +scheduler.$keyboardNavigation.MinicalCell.prototype.bindAll(scheduler.$keyboardNavigation.MinicalCell.prototype.keys); +scheduler.$keyboardNavigation.DataArea = function(index){ + this.index = index || 0; +}; + +scheduler.$keyboardNavigation.DataArea.prototype = scheduler._compose( + scheduler.$keyboardNavigation.KeyNavNode, + { + getNode: function(index){ + return scheduler.$container.querySelector(".dhx_cal_data"); + }, + + _handlers:null, + + isValid: function(){ + return true; + }, + fallback:function(){ + return this; + }, + + keys: { + "up,down,right,left":function(){ + this.moveTo(new scheduler.$keyboardNavigation.TimeSlot()); + } + } + } +); + +scheduler.$keyboardNavigation.DataArea.prototype.bindAll(scheduler.$keyboardNavigation.DataArea.prototype.keys); +if(!dhtmlx._modalsStack){ + dhtmlx._modalsStack = []; +} + +(function(){ + var modalsStack = []; + + function isModal(){ + return !!(modalsStack.length || dhtmlx._modalsStack.length); + } + + function isChildOf(child, parent){ + while(child && child != parent){ + child = child.parentNode; + } + + return !!(child == parent); + } + + function afterPopup(box){ + setTimeout(function(){ + if(!isModal() && !(isChildOf(document.activeElement, scheduler.$container))) { + scheduler.focus(); + } + }, 1); + } + function startModal(box){ + scheduler.eventRemove(box, "keydown", trapFocus); + scheduler.event(box, "keydown", trapFocus); + modalsStack.push(box); + //scheduler.$keyboardNavigation.dispatcher.disable(); + } + + function endModal(){ + var box = modalsStack.pop(); + if(box) { + scheduler.eventRemove(box, "keydown", trapFocus); + } + afterPopup(box); + + } + + function isTopModal(box){ + if(dhtmlx._modalsStack.length){ + return box == dhtmlx._modalsStack[dhtmlx._modalsStack.length - 1]; + }else{ + return box == modalsStack[modalsStack.length - 1]; + } + + } + + function trapFocus(event){ + var event = event || window.event; + var target = event.currentTarget; + if(!isTopModal(target)) return; + + scheduler.$keyboardNavigation.trapFocus(target, event); + } + + function traceLightbox(){ + startModal(scheduler.getLightbox()); + } + + scheduler.attachEvent("onLightbox", traceLightbox); + scheduler.attachEvent("onAfterLightbox", endModal); + + scheduler.attachEvent("onAfterQuickInfo", function(){afterPopup();}); + + if(!dhtmlx._keyNavMessagePopup) { + dhtmlx._keyNavMessagePopup = true; + + var focusElement = null; + var backupFocus = null; + dhtmlx.attachEvent("onMessagePopup", function(box){ + focusElement = document.activeElement; + backupFocus = focusElement; + + while(backupFocus && scheduler._getClassName(backupFocus).indexOf("dhx_cal_data") < 0){ + backupFocus = backupFocus.parentNode; + } + if(backupFocus){ + backupFocus = backupFocus.parentNode; + } + + scheduler.eventRemove(box, "keydown", trapFocus); + scheduler.event(box, "keydown", trapFocus); + dhtmlx._modalsStack.push(box); + }); + + + dhtmlx.attachEvent("onAfterMessagePopup", function () { + var box = dhtmlx._modalsStack.pop(); + if(box) { + scheduler.eventRemove(box, "keydown", trapFocus); + } + setTimeout(function(){ + + var currentTarget = document.activeElement; + while(currentTarget && scheduler._getClassName(currentTarget).indexOf("dhx_cal_light") < 0){ + currentTarget = currentTarget.parentNode; + } + if(currentTarget) + return; + + + if(focusElement && focusElement.parentNode){ + focusElement.focus(); + + }else if(backupFocus && backupFocus.parentNode){ + backupFocus.focus(); } + focusElement = null; + backupFocus = null; + + }, 1); + }); + } + + scheduler.$keyboardNavigation.isModal = isModal; + + +})(); +scheduler.$keyboardNavigation.dispatcher = { + isActive: false, + activeNode: null, + globalNode: new scheduler.$keyboardNavigation.SchedulerNode(), + + enable: function(){ + this.isActive = true; + this.globalNode.enable(); + this.setActiveNode(this.getActiveNode()); + }, + + disable: function(){ + this.isActive = false; + this.globalNode.disable(); + }, + + isEnabled: function(){ + return !!this.isActive; + }, + + getDefaultNode: function(){ + return this.globalNode.getDefaultNode(); + }, + + setDefaultNode: function() { + this.setActiveNode(this.getDefaultNode()); + }, + + getActiveNode: function(){ + var node = this.activeNode; + if(node && !node.isValid()){ + node = node.fallback(); + } + return node; + }, + + focusGlobalNode: function(){ + this.blurNode(this.globalNode); + this.focusNode(this.globalNode); + }, + + setActiveNode: function(el){ + if(!el || !el.isValid()) + return; + + if(this.activeNode){ + if(this.activeNode.compareTo(el)){ + return; } + } + if(this.isEnabled()){ + this.blurNode(this.activeNode); + this.activeNode = el; + this.focusNode(this.activeNode); + } + }, + focusNode: function(el){ + if(el && el.focus){ + el.focus(); + if(el.getNode && document.activeElement != el.getNode()){ + this.setActiveNode(new scheduler.$keyboardNavigation.DataArea()); + } + } + }, + blurNode: function(el){ + if(el && el.blur){ + el.blur(); } - return true; + }, + + keyDownHandler: function (e) { + + var activeElement = this.getActiveNode(); + + if(scheduler.$keyboardNavigation.isModal() && + !(activeElement && activeElement.container && scheduler._locate_css({target:activeElement.container}, "dhx_minical_popup", false))) + return; + + if (!this.isEnabled()) + return; + + e = e || window.event; + + var schedulerNode = this.globalNode; + + var command = scheduler.$keyboardNavigation.shortcuts.getCommandFromEvent(e); + + if(!activeElement){ + this.setDefaultNode(); + }else if(activeElement.findHandler(command)){ + activeElement.doAction(command, e); + }else if(schedulerNode.findHandler(command)){ + schedulerNode.doAction(command, e); + } + + } +}; +//Initial idea and implementation by Steve MC +scheduler._temp_key_scope = function (){ + + scheduler.config.key_nav = true; + + scheduler.$keyboardNavigation._pasteDate = null; // used for copy and paste operations + scheduler.$keyboardNavigation._pasteSection = null; // used for copy and paste operations + var isCopy = null; + + var pos = {}; + + if(!document.body){ + dhtmlxEvent(window, "load", function(){ + dhtmlxEvent(document.body, "mousemove", trackMousePosition); + }); + }else{ + dhtmlxEvent(document.body, "mousemove", trackMousePosition); + } + + function trackMousePosition(event){ + event = event || window.event; + pos.x = event.clientX; + pos.y = event.clientY; } + function currentTarget(){ -}); + var mousePointer = false; + var keyNavPointer = false; + + var target = document.elementFromPoint(pos.x, pos.y); + while(target && target != scheduler._obj){ + target = target.parentNode; + } + mousePointer = !!(target == scheduler._obj); + + keyNavPointer = scheduler.$keyboardNavigation.dispatcher.isEnabled(); + + return mousePointer || keyNavPointer; + } + scheduler.attachEvent("onMouseMove", function(id,e){ + var state = scheduler.getState(); + + // make sure scheduler is fully initialized before calling scheduler.getActionData + if(!(state.mode && state.min_date)){ + return; + } + var position = scheduler.getActionData(e); + scheduler.$keyboardNavigation._pasteDate = position.date; + scheduler.$keyboardNavigation._pasteSection = position.section; + }); + + function clear_event_after(ev){ + delete ev.rec_type; delete ev.rec_pattern; + delete ev.event_pid; delete ev.event_length; + } + scheduler._make_pasted_event = function(ev){ + var date = scheduler.$keyboardNavigation._pasteDate; + var section = scheduler.$keyboardNavigation._pasteSection; + + var event_duration = ev.end_date-ev.start_date; + + var copy = scheduler._lame_copy({}, ev); + clear_event_after(copy); + copy.start_date = new Date(date); + copy.end_date = new Date(copy.start_date.valueOf() + event_duration); + + if(section){ + var property = scheduler._get_section_property(); + + if(scheduler.config.multisection) + copy[property] = ev[property]; // save initial set of resources for multisection view + else + copy[property] = section; + } + return copy; + }; + scheduler._do_paste = function(is_copy, modified_ev, original_ev){ + scheduler.addEvent(modified_ev); + scheduler.callEvent("onEventPasted", [is_copy, modified_ev, original_ev]); + }; + + scheduler._is_key_nav_active = function(){ + if(this._is_initialized() && !this._is_lightbox_open() && this.config.key_nav){ + return true; + } + return false; + }; + + function getSelectedEvent(){ + var node = scheduler.$keyboardNavigation.dispatcher.getActiveNode(); + if(node && node.eventId) return node.eventId; + return scheduler._select_id; + } + + scheduler._key_nav_copy_paste = function(e){ + if(!scheduler._is_key_nav_active()) return true; + + e=e||event; + + if (e.keyCode == 37 || e.keyCode == 39) { // Left, Right arrows + e.cancelBubble = true; + + var next = scheduler.date.add(scheduler._date,(e.keyCode == 37 ? -1 : 1 ),scheduler._mode); + scheduler.setCurrentView(next); + return true; + } + + var select_id = getSelectedEvent(); + if ((e.ctrlKey || e.metaKey) && e.keyCode == 67) { // CTRL+C + if (select_id) { + scheduler._buffer_id = select_id; + isCopy = true; + scheduler.callEvent("onEventCopied", [scheduler.getEvent(select_id)]); + } + return true; + } + if ((e.ctrlKey || e.metaKey) && e.keyCode == 88) { // CTRL+X + if (select_id) { + isCopy = false; + scheduler._buffer_id = select_id; + var ev = scheduler.getEvent(select_id); + scheduler.updateEvent(ev.id); + scheduler.callEvent("onEventCut", [ev]); + } + } + + if ((e.ctrlKey || e.metaKey) && e.keyCode == 86 && currentTarget(e)) { // CTRL+V + var ev = scheduler.getEvent(scheduler._buffer_id); + if (ev) { + var new_ev = scheduler._make_pasted_event(ev); + if (isCopy) { + new_ev.id = scheduler.uid(); + scheduler._do_paste(isCopy, new_ev, ev); + } + else { // cut operation + var res = scheduler.callEvent("onBeforeEventChanged",[new_ev, e, false, ev]); + if (res) { + scheduler._do_paste(isCopy, new_ev, ev); + isCopy = true; // switch to copy after first paste operation + } + } + + } + return true; + } + }; }; scheduler._temp_key_scope(); + + + (function(){ + var dispatcher = scheduler.$keyboardNavigation.dispatcher; + + var keyDownHandler = function(e){ + if(!scheduler.config.key_nav || scheduler._edit_id) return; + + return dispatcher.keyDownHandler(e); + }; + + var focusHandler = function(){ + dispatcher.focusGlobalNode(); + }; + + scheduler.attachEvent("onDataRender", function(){ + + if(!scheduler.config.key_nav) return; + if(dispatcher.isEnabled() && !scheduler.getState().editor_id){ + var activeNode = dispatcher.getActiveNode(); + if(activeNode instanceof scheduler.$keyboardNavigation.MinicalButton || activeNode instanceof scheduler.$keyboardNavigation.MinicalCell) + return; + + if(!activeNode.isValid()){ + dispatcher.setActiveNode(activeNode.fallback()); + }else{ + dispatcher.focusNode(activeNode); + } + + dispatcher.focusNode(dispatcher.getActiveNode()); + } + }); + + scheduler.attachEvent("onSchedulerReady", function(){ + var container = scheduler.$container; + scheduler.eventRemove(document, "keydown", keyDownHandler); + scheduler.eventRemove(container, "focus", focusHandler); + + + if(scheduler.config.key_nav){ + + scheduler.event(document, "keydown", keyDownHandler); + scheduler.event(container, "focus", focusHandler); + + container.setAttribute("tabindex", "0"); + + }else{ + container.removeAttribute("tabindex"); + } + }); + + + var timeout = null; + function delay(callback){ + clearTimeout(timeout); + timeout = setTimeout(callback, 1); + } + + function focusEvent(evNode){ + if(!scheduler.config.key_nav) return; + if(!dispatcher.isEnabled()) return; + + + var prevState = evNode; + var focusNode = new scheduler.$keyboardNavigation.Event(prevState.eventId); + if(!focusNode.isValid()){ + var lastStart = focusNode.start || prevState.start; + var lastEnd = focusNode.end || prevState.end; + var lastSection = focusNode.section || prevState.section; + + focusNode = new scheduler.$keyboardNavigation.TimeSlot(lastStart, lastEnd, lastSection); + if(!focusNode.isValid()){ + focusNode = new scheduler.$keyboardNavigation.TimeSlot(); + } + } + + dispatcher.setActiveNode(focusNode); + var node = dispatcher.getActiveNode(); + if(node && node.getNode && document.activeElement != node.getNode()){ + dispatcher.focusNode(dispatcher.getActiveNode()); + } + } + + scheduler.attachEvent("onEventAdded", function(id,item){ + if(!scheduler.config.key_nav) return true; + if(dispatcher.isEnabled()){ + var element = new scheduler.$keyboardNavigation.Event(id); + delay(function(){ focusEvent(element);}); + } + }); + + var updateEvent = scheduler.updateEvent; + scheduler.updateEvent = function(id){ + var isInlineEdit = false; + var activeElement = document.activeElement; + if(activeElement && scheduler._getClassName(activeElement).indexOf("dhx_cal_editor") > -1){ + isInlineEdit = true; + } + var res = updateEvent.apply(this, arguments); + if(scheduler.config.key_nav && dispatcher.isEnabled()){ + var activeNode = dispatcher.getActiveNode(); + + if(activeNode.eventId == id || isInlineEdit){ + var element = new scheduler.$keyboardNavigation.Event(id); + if(isInlineEdit){ + dispatcher.disable(); + delay(function(){ + dispatcher.enable(); + focusEvent(element); + }); + }else{ + focusEvent(element); + } + + } + } + return res; + }; + + scheduler.attachEvent("onEventDeleted", function(id) { + if(!scheduler.config.key_nav) return true; + if(dispatcher.isEnabled()){ + var activeNode = dispatcher.getActiveNode(); + if(activeNode.eventId == id){ + dispatcher.setActiveNode(new scheduler.$keyboardNavigation.TimeSlot()); + } + } + return true; + }); + + scheduler.attachEvent("onClearAll", function(){ + if(!scheduler.config.key_nav) return true; + if(dispatcher.isEnabled()){ + if(dispatcher.getActiveNode() instanceof scheduler.$keyboardNavigation.Event){ + dispatcher.setActiveNode(new scheduler.$keyboardNavigation.TimeSlot()); + } + } + }); + + scheduler.attachEvent("onClick", function(id){ + if(!scheduler.config.key_nav) return true; + var element = new scheduler.$keyboardNavigation.Event(id); + delay(function(){ + if(scheduler.getEvent(id)){ + dispatcher.enable(); + focusEvent(element); + } + }); + return true; + }); + + scheduler.attachEvent("onEmptyClick", function(date, e){ + if(!scheduler.config.key_nav) return true; + if(!dispatcher.isEnabled()) { + dispatcher.enable(); + } + + if(dispatcher.isEnabled()) { + var pos = scheduler.getActionData(e); + if(pos.date){ + var slot = scheduler.$keyboardNavigation.TimeSlot; + dispatcher.setActiveNode(slot.prototype.nextSlot(new slot(pos.date, null, pos.section))); + } + } + }); + + + function isChildOf(child, parent){ + while(child && child != parent){ + child = child.parentNode; + } + + return !!(child == parent); + } + + function isMinical(focusElement){ + for(var i = 0; i < minicalendars.length; i++){ + if(isChildOf(focusElement, minicalendars[i])) + return true; + } + return false; + } + + + + function focusMinical(e){ + var target = e.target; + + dispatcher.enable(); + dispatcher.setActiveNode(new scheduler.$keyboardNavigation.MinicalButton(target, 0)); + + } + var minicalendars = []; + var renderMinical = scheduler.renderCalendar; + + function minicalClick(e){ + var target = e.target || e.srcElement; + + var prev = scheduler._locate_css(e, "dhx_cal_prev_button", false); + var next = scheduler._locate_css(e, "dhx_cal_next_button", false); + var cell = scheduler._locate_css(e, "dhx_year_body", false); + + var rowIndex = 0; + var cellIndex = 0; + if(cell){ + var tr; + var td; + var current = target; + while(current && current.tagName.toLowerCase() != "td"){ + current = current.parentNode; + } + if(current){ + td = current; + tr = td.parentNode; + } + + if(tr && td){ + var rows = tr.parentNode.querySelectorAll("tr"); + for(var i = 0; i < rows.length; i++){ + if(rows[i] == tr){ + rowIndex = i; + break; + } + } + var cells = tr.querySelectorAll("td"); + for(var i = 0; i < cells.length; i++){ + if(cells[i] == td){ + cellIndex = i; + break; + } + } + } + } + var root = e.currentTarget; + delay(function(){ + if(prev || next || cell){ + dispatcher.enable(); + dispatcher.activeNode = null; + } + + + if(prev){ + dispatcher.setActiveNode(new scheduler.$keyboardNavigation.MinicalButton(root, 0)); + }else if(next){ + dispatcher.setActiveNode(new scheduler.$keyboardNavigation.MinicalButton(root, 1)); + }else if(cell){ + dispatcher.setActiveNode(new scheduler.$keyboardNavigation.MinicalCell(root, rowIndex, cellIndex)); + } + }); + } + + scheduler.renderCalendar = function(){ + var cal = renderMinical.apply(this, arguments); + + if(!cal._key_nav_click) { + cal._key_nav_click = true; + scheduler.event(cal, "click", minicalClick); + } + + if(!cal._key_nav_focus) { + cal._key_nav_focus = true; + scheduler.event(cal, "focus", focusMinical); + } + var added = false; + for(var i = 0; i < minicalendars.length; i++){ + if(minicalendars[i] == cal){ + added = true; + break; + } + } + if(!added) + minicalendars.push(cal); + + if(dispatcher.isEnabled()){ + var node = dispatcher.getActiveNode(); + if(node.container == cal){ + dispatcher.focusNode(node); + }else{ + cal.setAttribute("tabindex", "0"); + } + }else{ + cal.setAttribute("tabindex", "0"); + } + + return cal; + }; + + + var destroyMinical = scheduler.destroyCalendar; + scheduler.destroyCalendar = function(cal){ + + + for(var i = 0; i < minicalendars.length; i++){ + if(minicalendars[i] == cal){ + scheduler.eventRemove(minicalendars[i], "focus", focusMinical); + minicalendars[i].splice(i, 1); + i--; + } + } + return destroyMinical.apply(this, arguments); + }; + + + + function isSchedulerSelected(){ + if(!scheduler.config.key_nav) return; + + var enable; + var focusElement = document.activeElement; + // halt key nav when focus is outside scheduler or in quick info popup + if(!focusElement || scheduler._locate_css(focusElement, "dhx_cal_quick_info", false)){ + enable = false; + }else{ + enable = isChildOf(focusElement, scheduler.$container) || isMinical(focusElement); + } + + return enable; + } + + function changeState(enable){ + if(enable && !dispatcher.isEnabled()){ + dispatcher.enable(); + }else if(!enable && dispatcher.isEnabled()){ + dispatcher.disable(); + } + } + + setInterval(function(){ + var enable = isSchedulerSelected(); + + if(enable){ + changeState(enable); + }else if(!enable && dispatcher.isEnabled()){ + setTimeout(function(){ + // doublecheck in case checking is done in handler before focus element is repainted + if(scheduler.config.key_nav){ + changeState(isSchedulerSelected()); + }else{ + scheduler.$container.removeAttribute("tabindex"); + } + + }, 20); + } + + + }, 500); + + })(); + + } + + + if(window.Scheduler){ + window.Scheduler.plugin(setupKeyNav); + }else{ + setupKeyNav(window.scheduler); + } +})();
\ No newline at end of file diff --git a/codebase/sources/ext/dhtmlxscheduler_key_nav.js.map b/codebase/sources/ext/dhtmlxscheduler_key_nav.js.map index bce5739..3998d42 100644 --- a/codebase/sources/ext/dhtmlxscheduler_key_nav.js.map +++ b/codebase/sources/ext/dhtmlxscheduler_key_nav.js.map @@ -1 +1 @@ -{"version":3,"file":"dhtmlxscheduler_key_nav.js","sources":["dhtmlxscheduler_key_nav.js"],"names":["scheduler","_temp_key_scope","clear_event_after","ev","rec_type","rec_pattern","event_pid","event_length","config","key_nav","date","section","isCopy","attachEvent","id","e","getActionData","_make_pasted_event","event_duration","end_date","start_date","copy","_lame_copy","Date","valueOf","property","_get_section_property","multisection","_do_paste","is_copy","modified_ev","original_ev","addEvent","callEvent","_is_key_nav_active","this","_is_initialized","_is_lightbox_open","dhtmlxEvent","document","_isOpera","event","keyCode","cancelBubble","next","add","_date","_mode","setCurrentView","select_id","_select_id","ctrlKey","_buffer_id","getEvent","updateEvent","new_ev","uid","res"],"mappings":";;;;;;;;AASAA,UAAUC,gBAAkB,WAc5B,QAASC,GAAkBC,SACnBA,GAAGC,eAAiBD,GAAGE,kBACvBF,GAAGG,gBAAkBH,GAAGI,aAdhCP,UAAUQ,OAAOC,SAAU,CAE3B,IAAIC,GACAC,EACAC,EAAS,IAGbZ,WAAUa,YAAY,cAAe,SAASC,EAAGC,GAChDL,EAAOV,UAAUgB,cAAcD,GAAGL,KAClCC,EAAUX,UAAUgB,cAAcD,GAAGJ,UAOtCX,UAAUiB,mBAAqB,SAASd,GACvC,GAAIe,GAAiBf,EAAGgB,SAAShB,EAAGiB,WAEhCC,EAAOrB,UAAUsB,cAAenB,EAKpC,IAJAD,EAAkBmB,GAClBA,EAAKD,WAAa,GAAIG,MAAKb,GAC3BW,EAAKF,SAAW,GAAII,MAAKF,EAAKD,WAAWI,UAAYN,GAElDP,EAAQ,CACV,GAAIc,GAAWzB,UAAU0B;;AAEtB1B,UAAUQ,OAAOmB,aACnBN,EAAKI,GAAYtB,EAAGsB,GAEpBJ,EAAKI,GAAYd,EAEnB,MAAOU,IAERrB,UAAU4B,UAAY,SAASC,EAASC,EAAaC,GACpD/B,UAAUgC,SAASF,GACnB9B,UAAUiC,UAAU,iBAAkBJ,EAASC,EAAaC,KAG7D/B,UAAUkC,mBAAqB,WAC9B,MAAGC,MAAKC,oBAAsBD,KAAKE,qBAAuBF,KAAK3B,OAAOC,SAC9D,GAED,GAGR6B,YAAYC,SAAUC,SAAS,WAAW,UAAW,SAASzB,GAC7D,IAAIf,UAAUkC,qBAAsB,OAAO,CAI3C,IAFAnB,EAAEA,GAAG0B,MAEY,IAAb1B,EAAE2B,SAA8B,IAAb3B,EAAE2B,QAAe,CACvC3B,EAAE4B,cAAe,CAEjB,IAAIC,GAAO5C,UAAUU,KAAKmC,IAAI7C,UAAU8C,MAAoB,IAAb/B,EAAE2B,QAAgB,GAAK,EAAI1C,UAAU+C;;AAEpF,MADA/C,WAAUgD,eAAeJ,IAClB,EAGR,GAAIK,GAAYjD,UAAUkD,UAC1B,IAAInC,EAAEoC,SAAwB,IAAbpC,EAAE2B,QAMlB,MALIO,KACHjD,UAAUoD,WAAaH,EACvBrC,GAAS,EACTZ,UAAUiC,UAAU,iBAAkBjC,UAAUqD,SAASJ,OAEnD,CAER,IAAIlC,EAAEoC,SAAwB,IAAbpC,EAAE2B,SACdO,EAAW,CACdrC,GAAS,EACTZ,UAAUoD,WAAaH,CACvB,IAAI9C,GAAKH,UAAUqD,SAASJ,EAC5BjD,WAAUsD,YAAYnD,EAAGW,IACzBd,UAAUiC,UAAU,cAAe9B,IAIrC,GAAIY,EAAEoC,SAAwB,IAAbpC,EAAE2B,QAAe,CACjC,GAAIvC,GAAKH,UAAUqD,SAASrD,UAAUoD,WACtC,IAAIjD,EAAI,CACP,GAAIoD,GAASvD,UAAUiB,mBAAmBd,EAC1C,IAAIS,EACH2C,EAAOzC,GAAKd,UAAUwD,MACtBxD,UAAU4B,UAAUhB,EAAQ2C,EAAQpD;IAEhC,CACJ,GAAIsD,GAAMzD,UAAUiC,UAAU,wBAAwBsB,EAAQxC,GAAG,EAAOZ,GACpEsD,KACHzD,UAAU4B,UAAUhB,EAAQ2C,EAAQpD,GACpCS,GAAS,IAKZ,OAAO,MAMTZ,UAAUC"}
\ No newline at end of file +{"version":3,"file":"dhtmlxscheduler_key_nav.js","sources":["dhtmlxscheduler_key_nav.js"],"names":["setupKeyNav","scheduler","getScope","mode","scopes","minicalButton","$keyboardNavigation","MinicalButton","minicalDate","MinicalCell","SchedulerNode","dataArea","DataArea","timeSlot","TimeSlot","event","Event","config","key_nav","key_nav_step","addShortcut","shortcut","handler","scope","scopeObject","prototype","bind","removeShortcut","unbind","focus","disp","dispatcher","enable","activeNode","getActiveNode","setDefaultNode","focusNode","_compose","parts","Array","slice","call","arguments","res","i","length","obj","p","shortcuts","createCommand","modifiers","shift","alt","ctrl","meta","keyCode","parse","commands","expr","this","getExpressions","trim","words","getWords","command","j","commandKeys","specialKeys","charCodeAt","push","getCommandFromEvent","domEvent","shiftKey","altKey","ctrlKey","metaKey","which","printableKey","String","fromCharCode","toLowerCase","getHashFromEvent","getHash","join","junctionChar","split","term","combinationChar","replace","backspace","tab","enter","esc","space","up","down","left","right","home","end","pageup","pagedown","delete","insert","plus","f1","f2","f3","f4","f5","f6","f7","f8","f9","f10","f11","f12","EventHandler","_handlers","findHandler","hash","doAction","e","preventDefault","returnValue","bindAll","map","initKeys","keys","getFocusableNodes","_getFocusableNodes","trapFocus","root","focusable","currentFocus","document","activeElement","currentIndex","nextIndex","nextItem","marker","clear","divs","$container","querySelectorAll","parentNode","removeChild","createElement","element","setAttribute","className","renderMultiple","start","method","currentStart","Date","currentEnd","Math","min","valueOf","date","add","day_start","concat","render","section","modes","_modes","view","_getMode","units","renderVerticalMarker","timeline","renderTimelineMarker","year","renderYearMarker","month","renderMonthMarker","weekAgenda","renderWeekAgendaMarker","list","renderAgendaMarker","dayColumns","addWaiAriaLabel","addDataAttributes","offsetWidth","dateToStr","date_to_str","api_date","from","to","label","state","getState","dateTimeLabel","templates","day_date","hour_scale","matrix","key","_props","_waiAria","setAttributes","aria-label","aria-live","start_date","end_date","currDate","week_start","min_date","index","markerDate","_wrapDiv","cell","style","top","offsetTop","offsetLeft","width","height","offsetHeight","appendChild","_get_year_cell","position","block","opacity","querySelector","view_opts","_lame_copy","_mode","areas","_scales","round_position","blocks","_min_date","max_date","_max_date","_trace_x","_is_column_visible","area","start_pos","_timeline_getX","end_pos","_section_height","dy","_isRender","dx","max","cssText","insertBefore","firstChild","renderMonthCell","cells","firstDate","weekNumber","dayIndex","_colsS","heights","div","_cols","container","datatable","nextSibling","currentDate","locate_holder_day","c","_ignores","order","inner_index","days","size","locate_holder","getHours","getMinutes","first_hour","last_hour","all_hours_height","hour_size_px","hour_ms","round","lineHeight","getDefaultNode","node","isValid","fallback","getMode","_grid","blur","disable","removeAttribute","isEnabled","hasAttribute","_compareEvents","a","b","id","_pickEvent","startId","reverse","range","evs","getEvents","sort","splice","nextEventHandler","eventId","nextEvent","getEvent","currEvent","visibleDates","nextEv","setActiveNode","prevEventHandler","alt+1, alt+2, alt+3, alt+4, alt+5, alt+6, alt+7, alt+8, alt+9","tabs","HeaderCell","getNodes","undefined","click","ctrl+left,meta+left","_click","dhx_cal_prev_button","ctrl+right,meta+right","dhx_cal_next_button","ctrl+up,meta+up","scrollTop","ctrl+down,meta+down","setCurrentView","shift+e","ctrl+enter,meta+enter","addEventNow","ctrl+c,meta+c","_key_nav_copy_paste","ctrl+v,meta+v","ctrl+x,meta+x","KeyNavNode","moveTo","compareTo","canStringifyThis","toString","canStringifyThat","getNode","nodes","selector","defaultCell","newIndex","ev","_getSection","_getNodes","eventNode","defaultElement","_locate_event","calendar","apply","y_property","unit","map_to","_moveToSlot","dir","slot","nextSlot","buttons","showLightbox","movingDate","name","findVisibleColumn","setHours","x_step","x_unit","_getDefaultSection","clone","timeslot","_getMultisectionView","_getNextSection","sectionId","options","y_unit","isInRange","isVisible","defaultSlot","_pasteDate","_pasteSection","addMonthDate","extend","nextMonthSlot","_alignTimeSlot","minDate","step","nextTimelineSlot","startDate","endDate","newPos","nextUnitsSlot","optionsCount","nextDaySlot","_moveDate","oldDate","newDate","setMinutes","isBeforeLastHour","isStartDate","minutes","hours","isAfterFirstHour","isInVisibleDayTime","oldStart","toNextDay","date_part","testEnd","nextWeekAgendaSlot","nextAgendaSlot","isDateVisible","_ignores_detected","_get_date_index","nextDateColumn","current","next","tempSlot","extendSlot","extendUnitsSlot","extendTimelineSlot","extendMonthSlot","extendDaySlot","extendWeekAgendaSlot","direction","extendGenericSlot","allowedDirections","type","moveDate","newDates","extendSlotDates","oldSlot","newSlot","dateDirection","scrollSlot","shift+down","shift+up","shift+right","shift+left","globalNode","row","col","grid","_getGrid","_getNode","rows","enabled","css","_getClassName","indexOf","newRow","newCol","up,down,right,left","dhtmlx","_modalsStack","isModal","modalsStack","isChildOf","child","parent","afterPopup","box","setTimeout","startModal","eventRemove","endModal","pop","isTopModal","window","target","currentTarget","traceLightbox","getLightbox","attachEvent","_keyNavMessagePopup","focusElement","backupFocus","isActive","focusGlobalNode","blurNode","el","keyDownHandler","_locate_css","schedulerNode","_temp_key_scope","trackMousePosition","pos","x","clientX","y","clientY","mousePointer","keyNavPointer","elementFromPoint","_obj","clear_event_after","rec_type","rec_pattern","event_pid","event_length","getSelectedEvent","_select_id","isCopy","body","dhtmlxEvent","getActionData","_make_pasted_event","event_duration","copy","property","_get_section_property","multisection","_do_paste","is_copy","modified_ev","original_ev","addEvent","callEvent","_is_key_nav_active","_is_initialized","_is_lightbox_open","cancelBubble","_date","select_id","_buffer_id","updateEvent","new_ev","uid","delay","callback","clearTimeout","timeout","focusEvent","evNode","prevState","lastStart","lastEnd","lastSection","isMinical","minicalendars","focusMinical","minicalClick","srcElement","prev","rowIndex","cellIndex","tr","td","tagName","isSchedulerSelected","changeState","_edit_id","focusHandler","editor_id","item","isInlineEdit","renderMinical","renderCalendar","cal","_key_nav_click","_key_nav_focus","added","destroyMinical","destroyCalendar","setInterval","Scheduler","plugin"],"mappings":"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"}
\ No newline at end of file diff --git a/codebase/sources/ext/dhtmlxscheduler_layer.js b/codebase/sources/ext/dhtmlxscheduler_layer.js index 86e6bfd..a0866ec 100644 --- a/codebase/sources/ext/dhtmlxscheduler_layer.js +++ b/codebase/sources/ext/dhtmlxscheduler_layer.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. diff --git a/codebase/sources/ext/dhtmlxscheduler_layer.js.map b/codebase/sources/ext/dhtmlxscheduler_layer.js.map index d1be1ac..d8300c0 100644 --- a/codebase/sources/ext/dhtmlxscheduler_layer.js.map +++ b/codebase/sources/ext/dhtmlxscheduler_layer.js.map @@ -1 +1 @@ -{"version":3,"file":"dhtmlxscheduler_layer.js","sources":["dhtmlxscheduler_layer.js"],"names":["scheduler","attachEvent","this","layers","sort","a","b","zIndex","_dp_init","dp","_methods","id","_loading","validId","getEvent","layer","setUpdated","z","getState","_new_event","_getRowData","pref","ev","obj","data","indexOf","getUTCFullYear","templates","xml_format","_clearUpdateFlag","_update_callback","upd","setUserData","action_param","deleteEvent","_cloneObj","temp","constructor","key","_dataprocessors","_layers_zindex","i","length","config","name","sections","lightbox","inital_layer_zindex","url","dataProcessor","push","init","isDefault","defaultLayer","showLayer","tlayer","toggleLayer","hideLayer","visible","getLayer","setCurrentView","_date","_mode","layer_name","event_id","resetLightbox","native_event_object","noMenu","evs","checkCollision","count","collision_limit","addEvent","start_date","end_date","text","extra_data","arguments","uid","api_date","_timed","isOneDayEvent","is_new","_events","event_updated","callEvent","_evs_layer","addEventNow","start","end","e","base","d","event_duration","time_step","Math","round","_currentDate","valueOf","Date","start_hour","first_hour","getHours","setHours","locale","labels","new_event","_drag_id","_drag_mode","_drag_event","_on_mouse_up","_t_render_view_data","events","multi_day","_table_view","tvs","tvd","k","render_data","render_view_data","_not_render","_render_wait","clear_view","get_visible_events","tevs","concat","evs_layer","_render_v_bar","x","y","w","h","style","contentA","contentB","bottom","document","createElement","cs","cse","event_class","html","_quirks","innerHTML","firstChild","render_event_bar","parent","_els","_colsS","_sday","x2","_eday","hb","xy","bar_height","heights","_sweek","height","month_scale_height","_sorder","_text_style","event_bar_date","event_bar_text","_rendered","appendChild","render_event","menu","menu_width","locate_holder","sm","getMinutes","em","last_hour","top","hour_size_px","max","min_event_height","width","floor","clientWidth","_count","left","_inner","event_header","event_text","parseInt","_dy_shift","_edit_id","new_zIndex","editor_width","setAttribute","set_xy","className","d2","cssText","_quirks7","_editor","onkeypress","event","shiftKey","code","keyCode","keys","edit_save","editStop","edit_cancel","onselectstart","cancelBubble","focus","scrollLeft","select","_select_id","icons","icons_str","filter_agenda"],"mappings":"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"}
\ No newline at end of file +{"version":3,"file":"dhtmlxscheduler_layer.js","sources":["dhtmlxscheduler_layer.js"],"names":["scheduler","attachEvent","this","layers","sort","a","b","zIndex","_dp_init","dp","_methods","id","_loading","validId","getEvent","layer","setUpdated","z","getState","_new_event","_getRowData","pref","ev","obj","data","indexOf","getUTCFullYear","templates","xml_format","_clearUpdateFlag","_update_callback","upd","setUserData","action_param","deleteEvent","_cloneObj","temp","constructor","key","_dataprocessors","_layers_zindex","i","length","config","name","sections","lightbox","inital_layer_zindex","url","dataProcessor","push","init","isDefault","defaultLayer","showLayer","tlayer","toggleLayer","hideLayer","visible","getLayer","setCurrentView","_date","_mode","layer_name","event_id","resetLightbox","native_event_object","noMenu","evs","checkCollision","count","collision_limit","addEvent","start_date","end_date","text","extra_data","arguments","uid","api_date","_timed","isOneDayEvent","is_new","_events","event_updated","callEvent","_evs_layer","addEventNow","start","end","e","base","d","event_duration","time_step","Math","round","_currentDate","valueOf","Date","start_hour","first_hour","getHours","setHours","locale","labels","new_event","_drag_id","_drag_mode","_drag_event","_on_mouse_up","_t_render_view_data","events","multi_day","_table_view","tvs","tvd","k","render_data","render_view_data","_not_render","_render_wait","clear_view","get_visible_events","tevs","concat","evs_layer","_render_v_bar","x","y","w","h","style","contentA","contentB","bottom","document","createElement","cs","cse","event_class","html","_quirks","innerHTML","firstChild","render_event_bar","parent","_els","_colsS","_sday","x2","_eday","hb","xy","bar_height","heights","_sweek","height","month_scale_height","_sorder","_text_style","event_bar_date","event_bar_text","_rendered","appendChild","render_event","menu","menu_width","locate_holder","sm","getMinutes","em","last_hour","top","hour_size_px","max","min_event_height","width","floor","clientWidth","_count","left","_inner","event_header","event_text","parseInt","_dy_shift","_edit_id","new_zIndex","editor_width","setAttribute","set_xy","className","d2","cssText","_quirks7","_editor","onkeypress","event","shiftKey","code","keyCode","keys","edit_save","editStop","edit_cancel","onselectstart","cancelBubble","focus","scrollLeft","select","_select_id","icons","icons_str","filter_agenda"],"mappings":"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"}
\ No newline at end of file diff --git a/codebase/sources/ext/dhtmlxscheduler_limit.js b/codebase/sources/ext/dhtmlxscheduler_limit.js index 98da8ca..f86e8e6 100644 --- a/codebase/sources/ext/dhtmlxscheduler_limit.js +++ b/codebase/sources/ext/dhtmlxscheduler_limit.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -337,16 +337,23 @@ scheduler._temp_limit_scope = function(){ }; if (!this._table_view) { if (this._props && this._props[this._mode]) { // units view + var start_index, + end_index; var view = this._props[this._mode]; var units_l = view.size || view.options.length; - var start_index = day_index*units_l; - var end_index = (day_index+1)*units_l; + if (view.days > 1) { + start_index = day_index; + end_index = day_index + units_l; + } + else { + start_index = 0; + end_index = start_index + units_l; + } - var day_divs = this._els["dhx_cal_data"][0].childNodes; var r_divs = []; - for (var i=start_index; i<end_index; i++) { + for (var i = start_index; i < end_index; i++) { var t_day = i; // as each unit is actually considered +1 day options.days = t_day; var t_div = scheduler._render_marked_timespan(options, null, t_day)[0]; @@ -441,7 +448,8 @@ scheduler._temp_limit_scope = function(){ return r_configs; } - if ( !config || !((config.start_date && config.end_date && config.end_date > config.start_date) || (config.days !== undefined && config.zones)) ) + if ( !config || + !((config.start_date && config.end_date && config.end_date > config.start_date) || (config.days !== undefined && config.zones)) && !config.type ) return r_configs; // incorrect config was provided var min = 0; @@ -672,16 +680,40 @@ scheduler._temp_limit_scope = function(){ return blocks; }; + + scheduler._mark_timespans = function(){ + var data = this._els["dhx_cal_data"][0]; + var divs = []; + if (scheduler._table_view && scheduler._mode == "month"){ + for (var day in this._scales) { + var date = new Date(+day); + divs.push.apply(divs, scheduler._on_scale_add_marker(this._scales[day],date)); + } + }else { + //manually trigger rendering of configs for each column + var date = new Date(scheduler._min_date); + for (var i = 0, len = data.childNodes.length; i < len; i++) { + var area = data.childNodes[i]; + if (area.firstChild && scheduler._getClassName(area.firstChild).indexOf("dhx_scale_hour") > -1) { + continue; + } + + divs.push.apply(divs, scheduler._on_scale_add_marker(area, date)); + date = scheduler.date.add(date, 1, "day"); + } + } + return divs; + }; + // just marks timespan, will be cleaned after refresh scheduler.markTimespan = function(configuration) { - var divs = []; var rebuild_els = false; if(!this._els["dhx_cal_data"]){ scheduler.get_elements(); rebuild_els = true; } - var data = this._els["dhx_cal_data"][0]; + // backup regular marked timespans var timespans_ids = scheduler._marked_timespans_ids, @@ -693,17 +725,7 @@ scheduler._temp_limit_scope = function(){ //add block to configs scheduler.addMarkedTimespan(configuration); - //manually trigger rendering of configs for each column - var date = new Date(scheduler._min_date); - for(var i = 0, len = data.childNodes.length; i < len; i++){ - var area = data.childNodes[i]; - if(area.firstChild && (area.firstChild.className || "").indexOf("dhx_scale_hour") > -1){ - continue; - } - - divs.push.apply(divs, scheduler._on_scale_add_marker(area, date)); - date = scheduler.date.add(date, 1, "day"); - } + var divs = scheduler._mark_timespans(); if(rebuild_els) scheduler._els = []; @@ -727,71 +749,79 @@ scheduler._temp_limit_scope = function(){ } }; - scheduler._marked_timespans_ids = {}; - // adds marked timespan to collections, persistent - scheduler.addMarkedTimespan = function(configuration) { - var configs = scheduler._prepare_timespan_options(configuration); - var global = "global"; - if (!configs.length) - return; // options are incorrect, nothing to mark - - var id = configs[0].id; + scheduler._addMarkerTimespanConfig = function(config){ + var global = "global"; var timespans = scheduler._marked_timespans; + var id = config.id; + var ids = scheduler._marked_timespans_ids; if (!ids[id]) ids[id] = []; - for (var i=0; i<configs.length; i++) { - var config = configs[i]; - var day = config.days; - var zones = config.zones; - var css = config.css; - var sections = config.sections; - var type = config.type; // default or specified - config.id = id; - - if (sections) { - for (var view_key in sections) { - if (sections.hasOwnProperty(view_key)) { - if (!timespans[view_key]) - timespans[view_key] = {}; - var unit_id = sections[view_key]; - var timespans_view = timespans[view_key]; - if (!timespans_view[unit_id]) - timespans_view[unit_id] = {}; - if (!timespans_view[unit_id][day]) - timespans_view[unit_id][day] = {}; - if (!timespans_view[unit_id][day][type]){ - timespans_view[unit_id][day][type] = []; - if(!scheduler._marked_timespans_types) - scheduler._marked_timespans_types = {}; - if(!scheduler._marked_timespans_types[type]) - scheduler._marked_timespans_types[type] = true; - } - var day_configs = timespans_view[unit_id][day][type]; - config._array = day_configs; - day_configs.push(config); - ids[id].push(config); + + var day = config.days; + + var sections = config.sections; + var type = config.type; // default or specified + config.id = id; + + if (sections) { + for (var view_key in sections) { + if (sections.hasOwnProperty(view_key)) { + if (!timespans[view_key]) + timespans[view_key] = {}; + var unit_id = sections[view_key]; + var timespans_view = timespans[view_key]; + if (!timespans_view[unit_id]) + timespans_view[unit_id] = {}; + if (!timespans_view[unit_id][day]) + timespans_view[unit_id][day] = {}; + if (!timespans_view[unit_id][day][type]){ + timespans_view[unit_id][day][type] = []; + if(!scheduler._marked_timespans_types) + scheduler._marked_timespans_types = {}; + if(!scheduler._marked_timespans_types[type]) + scheduler._marked_timespans_types[type] = true; } + var day_configs = timespans_view[unit_id][day][type]; + config._array = day_configs; + day_configs.push(config); + ids[id].push(config); } - } else { - if (!timespans[global][day]) - timespans[global][day] = {}; - if (!timespans[global][day][type]) - timespans[global][day][type] = []; + } + } else { + if (!timespans[global][day]) + timespans[global][day] = {}; + if (!timespans[global][day][type]) + timespans[global][day][type] = []; - if(!scheduler._marked_timespans_types) - scheduler._marked_timespans_types = {}; - if(!scheduler._marked_timespans_types[type]) - scheduler._marked_timespans_types[type] = true; + if(!scheduler._marked_timespans_types) + scheduler._marked_timespans_types = {}; + if(!scheduler._marked_timespans_types[type]) + scheduler._marked_timespans_types[type] = true; - var day_configs = timespans[global][day][type]; - config._array = day_configs; - day_configs.push(config); - ids[id].push(config); - } + var day_configs = timespans[global][day][type]; + config._array = day_configs; + day_configs.push(config); + ids[id].push(config); + } + + }; + + scheduler._marked_timespans_ids = {}; + // adds marked timespan to collections, persistent + scheduler.addMarkedTimespan = function(configuration) { + var configs = scheduler._prepare_timespan_options(configuration); + + if (!configs.length) + return; // options are incorrect, nothing to mark + + var id = configs[0].id; + + for (var i=0; i<configs.length; i++) { + scheduler._addMarkerTimespanConfig(configs[i]); } return id; }; @@ -880,19 +910,40 @@ scheduler._temp_limit_scope = function(){ var sections = config.sections; var day = config.days; var type = config.type||default_timespan_type; - var day_timespans = []; // array of timespans to subtract our config + var viewspans; if (sections) { for (var view_key in sections) { if (sections.hasOwnProperty(view_key) && timespans[view_key]) { var unit_id = sections[view_key]; - if (timespans[view_key][unit_id] && timespans[view_key][unit_id][day] && timespans[view_key][unit_id][day][type]) - day_timespans = timespans[view_key][unit_id][day][type]; + if (timespans[view_key][unit_id]){ + viewspans = timespans[view_key][unit_id]; + } } } } else { - if (timespans.global[day] && timespans.global[day][type]) - day_timespans = timespans.global[day][type]; + viewspans = timespans.global; } + + if(viewspans) { + if (day !== undefined) { + if (viewspans[day] && viewspans[day][type]) { + scheduler._addMarkerTimespanConfig(config); // register config in order to be able to delete recurring timespan from a specific day + scheduler._delete_marked_timespans_list(viewspans[day][type], config); + } + } + else { + for (var d in viewspans) { + if (viewspans[d][type]) { + var dayConfig = scheduler._lame_clone(config); + config.days = d; + scheduler._addMarkerTimespanConfig(dayConfig); // register config in order to be able to delete recurring timespan from a specific day + scheduler._delete_marked_timespans_list(viewspans[d][type], config); + } + } + } + } + }; + scheduler._delete_marked_timespans_list = function(day_timespans, config){ for (var i=0; i<day_timespans.length; i++) { var d_t = day_timespans[i]; var zones = scheduler._subtract_timespan_zones(d_t.zones, config.zones); @@ -911,16 +962,6 @@ scheduler._temp_limit_scope = function(){ } } } - - for (var i in scheduler._marked_timespans.timeline) { - for (var j in scheduler._marked_timespans.timeline[i]) { - for (var k in scheduler._marked_timespans.timeline[i][j]) { - if (k === type) { - delete scheduler._marked_timespans.timeline[i][j][k]; - } - } - } - } }; scheduler.deleteMarkedTimespan = function(configuration) { // delete everything @@ -935,7 +976,7 @@ scheduler._temp_limit_scope = function(){ } else { // normal configuration was passed if(!(configuration.start_date && configuration.end_date)){ - if(!configuration.days) + if(configuration.days === undefined && !configuration.type) configuration.days = "fullweek"; if(!configuration.zones) configuration.zones = "fullday"; @@ -967,7 +1008,7 @@ scheduler._temp_limit_scope = function(){ } }; scheduler._get_types_to_render = function(common, specific) { - var types_to_render = (common) ? common : {}; + var types_to_render = (common) ? scheduler._lame_copy({},common) : {}; for (var type in specific||{} ) { if (specific.hasOwnProperty(type)) { types_to_render[type] = specific[type]; @@ -1005,7 +1046,7 @@ scheduler._temp_limit_scope = function(){ day = scheduler.date.date_part(new Date(this._date)); // for units view actually only 1 day is displayed yet the day variable will change, need to use this._date for all calls }else{ var dx = 24*60*60*1000; - var day_ind = Math.floor((day - scheduler._min_date)/dx); + var day_ind = Math.round((day - scheduler._min_date)/dx); day = scheduler.date.add(scheduler._min_date, Math.floor(day_ind/units.length), "day"); // to the "same" day for all sections day = scheduler.date.date_part(day); @@ -1029,13 +1070,16 @@ scheduler._temp_limit_scope = function(){ } return divs; }; - scheduler.attachEvent("onScaleAdd", scheduler._on_scale_add_marker); + scheduler.attachEvent("onScaleAdd", function(){ + scheduler._on_scale_add_marker.apply(scheduler, arguments); + }); scheduler.dblclick_dhx_marked_timespan = function(e,src){ - if (!scheduler.config.dblclick_create){ - scheduler.callEvent("onScaleDblClick",[scheduler.getActionData(e).date,src,e]); + scheduler.callEvent("onScaleDblClick",[scheduler.getActionData(e).date,src,e]); + + if (scheduler.config.dblclick_create){ + scheduler.addEventNow(scheduler.getActionData(e).date,null,e); } - scheduler.addEventNow(scheduler.getActionData(e).date,null,e); }; }; diff --git a/codebase/sources/ext/dhtmlxscheduler_limit.js.map b/codebase/sources/ext/dhtmlxscheduler_limit.js.map index 9642f4c..2fdc66f 100644 --- a/codebase/sources/ext/dhtmlxscheduler_limit.js.map +++ b/codebase/sources/ext/dhtmlxscheduler_limit.js.map @@ -1 +1 @@ -{"version":3,"file":"dhtmlxscheduler_limit.js","sources":["dhtmlxscheduler_limit.js"],"names":["scheduler","config","limit_start","limit_end","limit_view","check_limits","mark_now","display_marked_timespans","_temp_limit_scope","getZones","ev","timespans","day_index","day_value","timespan_type","s","zones","containers","_props","matrix","container","property","view","view_config","linker","_add_timespan_zones","_get_blocked_zones","before","dhx_time_block","default_timespan_type","fix_options","options","days","Date","start_date","end_date","get_resulting_options","sections","type","css","blockTime","addMarkedTimespan","unblockTime","deleteMarkedTimespan","attachEvent","om","od","nm","nd","isBlocked","date","mode","date_end","add","valueOf","setTimeout","resetDate","setCurrentView","checkInMarkedTimespan","on_overlap","res","temp_start_date","temp_end_date","_marked_timespans","date_part","getDay","i","length","sm","_get_zone_minutes","em","getDate","sz","ez","blocker","checkLimitViolation","event","c","evs","rec_type","dates","getRecDates","_copy_event","_lame_copy","push","complete_res","p","_timed","isOneDayEvent","allow","_drag_id","_drag_mode","setHours","setMinutes","checkEvent","callEvent","id","timeline_zones","blocked_timeline_zones","this","_get_relevant_blocked_zones","relevant_zones","classname","getEvent","event_id","native_event_object","data","is_new_event","data_copy","_lame_clone","_roll_back_dates","event_duration","time_step","native_object","is_new","getActionData","_mark_now","window","_mark_now_timer","setInterval","_is_initialized","hide","dhx_now_time","_els","now","_currentDate","cfg","_remove_mark_now","_max_date","_min_date","getHours","first_hour","last_hour","locate_holder_day","_append_mark_now","zone_start","_table_view","_mode","units_l","size","start_index","end_index","r_divs","childNodes","t_day","t_div","_render_marked_timespan","els","div","parent","parentNode","removeChild","global","getMinutes","_prepare_timespan_options","r_configs","temp_configs","Array","t_days","slice","cloned_config","apply","undefined","min","max","invert_zones","invertZones","uid","view_key","hasOwnProperty","ids","t_config","k","c_config","t_sd","t_ed","zone_end","_get_dates_by_index","index","start","end","start_day","delta","t_date","_get_css_classes_by_config","css_classes","join","_get_block_by_config","block","document","createElement","html","innerHTML","appendChild","area","day","blocks","min_date","max_date","date_to_display","min_day","areas","_scales","sweek","Math","floor","_correct_shift","_cols","sday","_ignores","block_proto","height","offsetHeight","width","offsetWidth","left","_colsS","top","heights","xy","month_scale_height","className","style","lineHeight","cloneNode","round","order","inner_index","position","locate_holder","all_hours_height","hour_size_px","hour_ms","markTimespan","configuration","divs","rebuild_els","get_elements","timespans_ids","_marked_timespans_ids","timespan_types","_marked_timespans_types","len","firstChild","indexOf","_on_scale_add_marker","unmarkTimespan","configs","unit_id","timespans_view","day_configs","_array","current_zones","resulting_zones","c_zone_start","c_zone_end","isLast","offset","splice","_subtract_timespan_zones","is_modified","_delete_marked_timespan_by_id","parent_array","_delete_marked_timespan_by_config","day_timespans","d_t","related_zones","timeline","j","arguments","types","t","typedConfig","_get_types_to_render","common","specific","types_to_render","_get_configs_to_render","units","_get_unit_index","unit","dx","day_ind","_date","key","unit_zones","unit_types","global_data","day_types","dblclick_dhx_marked_timespan","e","src","dblclick_create","addEventNow"],"mappings":"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"}
\ No newline at end of file +{"version":3,"file":"dhtmlxscheduler_limit.js","sources":["dhtmlxscheduler_limit.js"],"names":["scheduler","config","limit_start","limit_end","limit_view","check_limits","mark_now","display_marked_timespans","_temp_limit_scope","getZones","ev","timespans","day_index","day_value","timespan_type","s","zones","containers","_props","matrix","container","property","view","view_config","linker","_add_timespan_zones","_get_blocked_zones","before","dhx_time_block","default_timespan_type","fix_options","options","days","Date","start_date","end_date","get_resulting_options","sections","type","css","blockTime","addMarkedTimespan","unblockTime","deleteMarkedTimespan","attachEvent","om","od","nm","nd","isBlocked","date","mode","date_end","add","valueOf","setTimeout","resetDate","setCurrentView","checkInMarkedTimespan","on_overlap","res","temp_start_date","temp_end_date","_marked_timespans","date_part","getDay","i","length","sm","_get_zone_minutes","em","getDate","sz","ez","blocker","checkLimitViolation","event","c","evs","rec_type","dates","getRecDates","_copy_event","_lame_copy","push","complete_res","p","_timed","isOneDayEvent","allow","_drag_id","_drag_mode","setHours","setMinutes","checkEvent","callEvent","id","timeline_zones","blocked_timeline_zones","this","_get_relevant_blocked_zones","relevant_zones","classname","getEvent","event_id","native_event_object","data","is_new_event","data_copy","_lame_clone","_roll_back_dates","event_duration","time_step","native_object","is_new","getActionData","_mark_now","window","_mark_now_timer","setInterval","_is_initialized","hide","dhx_now_time","_els","now","_currentDate","cfg","_remove_mark_now","_max_date","_min_date","getHours","first_hour","last_hour","locate_holder_day","_append_mark_now","zone_start","_table_view","_mode","start_index","end_index","units_l","size","r_divs","t_day","t_div","_render_marked_timespan","els","div","parent","parentNode","removeChild","global","getMinutes","_prepare_timespan_options","r_configs","temp_configs","Array","t_days","slice","cloned_config","apply","undefined","min","max","invert_zones","invertZones","uid","view_key","hasOwnProperty","ids","t_config","k","c_config","t_sd","t_ed","zone_end","_get_dates_by_index","index","start","end","start_day","delta","t_date","_get_css_classes_by_config","css_classes","join","_get_block_by_config","block","document","createElement","html","innerHTML","appendChild","area","day","blocks","min_date","max_date","date_to_display","min_day","areas","_scales","sweek","Math","floor","_correct_shift","_cols","sday","_ignores","block_proto","height","offsetHeight","width","offsetWidth","left","_colsS","top","heights","xy","month_scale_height","className","style","lineHeight","cloneNode","round","order","inner_index","position","locate_holder","all_hours_height","hour_size_px","hour_ms","_mark_timespans","divs","_on_scale_add_marker","len","childNodes","firstChild","_getClassName","indexOf","markTimespan","configuration","rebuild_els","get_elements","timespans_ids","_marked_timespans_ids","timespan_types","_marked_timespans_types","unmarkTimespan","_addMarkerTimespanConfig","unit_id","timespans_view","day_configs","_array","configs","current_zones","resulting_zones","c_zone_start","c_zone_end","isLast","offset","splice","_subtract_timespan_zones","is_modified","_delete_marked_timespan_by_id","parent_array","_delete_marked_timespan_by_config","viewspans","_delete_marked_timespans_list","d","dayConfig","day_timespans","d_t","related_zones","arguments","types","t","typedConfig","_get_types_to_render","common","specific","types_to_render","_get_configs_to_render","units","_get_unit_index","unit","dx","day_ind","_date","key","unit_zones","unit_types","global_data","day_types","dblclick_dhx_marked_timespan","e","src","dblclick_create","addEventNow"],"mappings":"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"}
\ No newline at end of file diff --git a/codebase/sources/ext/dhtmlxscheduler_map_view.js b/codebase/sources/ext/dhtmlxscheduler_map_view.js index d0c44ae..4f49427 100644 --- a/codebase/sources/ext/dhtmlxscheduler_map_view.js +++ b/codebase/sources/ext/dhtmlxscheduler_map_view.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -214,14 +214,20 @@ scheduler.attachEvent("onSchedulerReady", function() { }); //generate html for the view - var html = "<div class='dhx_map_area'>"; + var ariaAttr = scheduler._waiAria.mapAttrString(); + + var html = "<div "+ariaAttr+" class='dhx_map_area'>"; for (var i = 0; i < events.length; i++) { var ev = events[i]; var event_class = (ev.id == scheduler._selected_event_id) ? 'dhx_map_line highlight' : 'dhx_map_line'; var bg_color = (ev.color ? ("background:" + ev.color + ";") : ""); var color = (ev.textColor ? ("color:" + ev.textColor + ";") : ""); - html += "<div class='" + event_class + "' event_id='" + ev.id + "' style='" + bg_color + "" + color + "" + (ev._text_style || "") + " width: " + (scheduler.xy.map_date_width + scheduler.xy.map_description_width + 2) + "px;'><div style='width: " + scheduler.xy.map_date_width + "px;' >" + scheduler.templates.map_time(ev.start_date, ev.end_date, ev) + "</div>"; - html += "<div class='dhx_event_icon icon_details'> </div>"; + + var ariaAttr = scheduler._waiAria.mapRowAttrString(ev); + var ariaButtonAttr = scheduler._waiAria.mapDetailsBtnString(); + + html += "<div "+ariaAttr+" class='" + event_class + "' event_id='" + ev.id + "' style='" + bg_color + "" + color + "" + (ev._text_style || "") + " width: " + (scheduler.xy.map_date_width + scheduler.xy.map_description_width + 2) + "px;'><div style='width: " + scheduler.xy.map_date_width + "px;' >" + scheduler.templates.map_time(ev.start_date, ev.end_date, ev) + "</div>"; + html += "<div "+ariaButtonAttr+" class='dhx_event_icon icon_details'> </div>"; html += "<div class='line_description' style='width:" + (scheduler.xy.map_description_width - 25) + "px;'>" + scheduler.templates.map_text(ev.start_date, ev.end_date, ev) + "</div></div>"; // -25 = icon size 20 and padding 5 } html += "<div class='dhx_v_border' style='left: " + (scheduler.xy.map_date_width - 2) + "px;'></div><div class='dhx_v_border_description'></div></div>"; diff --git a/codebase/sources/ext/dhtmlxscheduler_map_view.js.map b/codebase/sources/ext/dhtmlxscheduler_map_view.js.map index edb124a..c57b262 100644 --- a/codebase/sources/ext/dhtmlxscheduler_map_view.js.map +++ b/codebase/sources/ext/dhtmlxscheduler_map_view.js.map @@ -1 +1 @@ -{"version":3,"file":"dhtmlxscheduler_map_view.js","sources":["dhtmlxscheduler_map_view.js"],"names":["scheduler","xy","map_date_width","map_description_width","config","map_resolve_event_location","map_resolve_user_location","map_initial_position","google","maps","LatLng","map_error_position","map_infowindow_max_width","map_type","MapTypeId","ROADMAP","map_zoom_after_resolve","locale","labels","marker_geo_success","marker_geo_fail","templates","marker_date","date","date_to_str","marker_text","start","end","ev","text","event_location","dblclick_dhx_map_area","this","readonly","dblclick_create","addEventNow","start_date","_date","end_date","add","time_step","map_time","_timed","day_date","event_date","map_text","map_start","d","add_map","inc","mode","Date","valueOf","map_date","dd","ed","_latLngUpdate","attachEvent","set_full_view","l","_els","innerHTML","description","_table_view","set_sizes","clear_map_tab","_selected_event_id","map","_infowindow","close","markers","_markers","key","hasOwnProperty","setMap","_infowindows_content","fill_map_tab","events","get_visible_events","sort","a","b","id","html","i","length","event_class","bg_color","color","textColor","_text_style","scrollTop","style","width","t","firstChild","childNodes","_mode","_min_date","_max_date","_rendered","_setMapSize","elem_id","document","getElementById","height","_y","nav_height","_x","marginLeft","marginTop","_isMapPositionSet","gmap","createElement","className","dispay","node","_obj","appendChild","dhx_gmap","push","mapOptions","zoom","map_inital_zoom","center","mapTypeId","Map","disableDefaultUI","disableDoubleClickZoom","event","addListener","point","latLng","geocoder","geocode","results","status","GeocoderStatus","OK","geometry","location","lat","lng","formatted_address","infoWindowOptions","content","maxWidth","_points","InfoWindow","_initialization_count","Geocoder","navigator","geolocation","getCurrentPosition","position","_userLocation","coords","latitude","longitude","setCenter","setZoom","setContent","getCenter","open","setPosition","zIndex","getZoom","display","map_view","old","render_data","evs","hold","apply","arguments","showAddress","temp_center","dhx_cal_data","_currentDate","map_end","trigger","selectEvent","event_id","callEvent","performClick","message","_new_event","Marker","native_event_object","getAttribute","_displayEventOnMap","address","language","uid","toString","_updateEventLocation","_delay","method","object","params","delay","setTimeout","ret","event_object","getEvent","old_event_id","new_event_id","_dataprocessor","_event_resolve_delay","is_new"],"mappings":"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"}
\ No newline at end of file +{"version":3,"file":"dhtmlxscheduler_map_view.js","sources":["dhtmlxscheduler_map_view.js"],"names":["scheduler","xy","map_date_width","map_description_width","config","map_resolve_event_location","map_resolve_user_location","map_initial_position","google","maps","LatLng","map_error_position","map_infowindow_max_width","map_type","MapTypeId","ROADMAP","map_zoom_after_resolve","locale","labels","marker_geo_success","marker_geo_fail","templates","marker_date","date","date_to_str","marker_text","start","end","ev","text","event_location","dblclick_dhx_map_area","this","readonly","dblclick_create","addEventNow","start_date","_date","end_date","add","time_step","map_time","_timed","day_date","event_date","map_text","map_start","d","add_map","inc","mode","Date","valueOf","map_date","dd","ed","_latLngUpdate","attachEvent","set_full_view","l","_els","innerHTML","description","_table_view","set_sizes","clear_map_tab","_selected_event_id","map","_infowindow","close","markers","_markers","key","hasOwnProperty","setMap","_infowindows_content","fill_map_tab","events","get_visible_events","sort","a","b","id","ariaAttr","_waiAria","mapAttrString","html","i","length","event_class","bg_color","color","textColor","mapRowAttrString","ariaButtonAttr","mapDetailsBtnString","_text_style","scrollTop","style","width","t","firstChild","childNodes","_mode","_min_date","_max_date","_rendered","_setMapSize","elem_id","document","getElementById","height","_y","nav_height","_x","marginLeft","marginTop","_isMapPositionSet","gmap","createElement","className","dispay","node","_obj","appendChild","dhx_gmap","push","mapOptions","zoom","map_inital_zoom","center","mapTypeId","Map","disableDefaultUI","disableDoubleClickZoom","event","addListener","point","latLng","geocoder","geocode","results","status","GeocoderStatus","OK","geometry","location","lat","lng","formatted_address","infoWindowOptions","content","maxWidth","_points","InfoWindow","_initialization_count","Geocoder","navigator","geolocation","getCurrentPosition","position","_userLocation","coords","latitude","longitude","setCenter","setZoom","setContent","getCenter","open","setPosition","zIndex","getZoom","display","map_view","old","render_data","evs","hold","apply","arguments","showAddress","temp_center","dhx_cal_data","_currentDate","map_end","trigger","selectEvent","event_id","callEvent","performClick","message","_new_event","Marker","native_event_object","getAttribute","_displayEventOnMap","address","language","uid","toString","_updateEventLocation","_delay","method","object","params","delay","setTimeout","ret","event_object","getEvent","old_event_id","new_event_id","_dataprocessor","_event_resolve_delay","is_new"],"mappings":"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"}
\ No newline at end of file diff --git a/codebase/sources/ext/dhtmlxscheduler_minical.js b/codebase/sources/ext/dhtmlxscheduler_minical.js index 67c1b0f..6068707 100644 --- a/codebase/sources/ext/dhtmlxscheduler_minical.js +++ b/codebase/sources/ext/dhtmlxscheduler_minical.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -65,6 +65,7 @@ scheduler.renderCalendar = function(obj, _prev, is_refresh) { var end = scheduler.date.add(start, 1, "month"); var evs = this.getEvents(start, end); var filter = this["filter_" + this._mode]; + var markedDates = {}; for (var i = 0; i < evs.length; i++) { var ev = evs[i]; if (filter && !filter(ev.id, ev)) @@ -74,7 +75,10 @@ scheduler.renderCalendar = function(obj, _prev, is_refresh) { d = start; d = scheduler.date.date_part(new Date(d.valueOf())); while (d < ev.end_date) { - this.markCalendar(cal, d, "dhx_year_event"); + if(!markedDates[+d]) { + markedDates[+d] = true; + this.markCalendar(cal, d, "dhx_year_event"); + } d = this.date.add(d, 1, "day"); if (d.valueOf() >= end.valueOf()) break; @@ -117,7 +121,7 @@ scheduler._locateCalendar = function(cal, date) { if(+date > +cal._max_date || +date < +cal._min_date) return null; - var table = cal.childNodes[2].childNodes[0]; + var table = cal.querySelector(".dhx_year_body").childNodes[0]; var weekNum = 0; var dat = new Date(cal._min_date); @@ -187,15 +191,24 @@ scheduler._render_calendar = function(obj, sd, conf, previous) { var week_template = this._week_template(obj.offsetWidth - 1 - this.config.minicalendar.padding ); var d; - if (previous) - d = previous; else { + if (previous){ + d = previous; + } else { d = document.createElement("DIV"); d.className = "dhx_cal_container dhx_mini_calendar"; } d.setAttribute("date", this.templates.xml_format(sd)); - d.innerHTML = "<div class='dhx_year_month'></div><div class='dhx_year_week'>" + week_template.innerHTML + "</div><div class='dhx_year_body'></div>"; + d.innerHTML = "<div class='dhx_year_month'></div>" + + "<div class='dhx_year_grid'>" + + "<div class='dhx_year_week'>"+(week_template ? week_template.innerHTML : "")+"</div>" + + "<div class='dhx_year_body'></div>" + + "</div>"; + + var header = d.querySelector(".dhx_year_month"); + var weekHeader = d.querySelector(".dhx_year_week"); + var body = d.querySelector(".dhx_year_body"); - d.childNodes[0].innerHTML = this.templates.calendar_month(sd); + header.innerHTML = this.templates.calendar_month(sd); if (conf.navigation) { var move_minicalendar_date = function(calendar, diff) { var date = scheduler.date.add(calendar._date, diff, "month"); @@ -220,13 +233,17 @@ scheduler._render_calendar = function(obj, sd, conf, previous) { } }; }; + var labels = [scheduler.locale.labels.prev, scheduler.locale.labels.next]; for (var j = 0; j < 2; j++) { var arrow = document.createElement("DIV"); //var diff = diffs[j]; arrow.className = css_classnames[j]; + + scheduler._waiAria.headerButtonsAttributes(arrow, labels[j]); + arrow.style.cssText = css_texts[j]; arrow.innerHTML = this._mini_cal_arrows[j]; - d.firstChild.appendChild(arrow); + header.appendChild(arrow); arrow.onclick = handler(diffs[j]); } } @@ -237,24 +254,31 @@ scheduler._render_calendar = function(obj, sd, conf, previous) { var dd = d._min_date = this.date.week_start(sd); d._max_date = this.date.add(d._min_date, 6, "week"); - this._reset_month_scale(d.childNodes[2], sd, dd); - - var r = d.childNodes[2].firstChild.rows; - for (var k = r.length; k < 6; k++) { - var last_row = r[r.length - 1]; - r[0].parentNode.appendChild(last_row.cloneNode(true)); - var last_day_number = parseInt(last_row.childNodes[last_row.childNodes.length - 1].childNodes[0].innerHTML); - last_day_number = (last_day_number < 10) ? last_day_number : 0; // previous week could end on 28-31, so we should start with 0 - for (var ri = 0; ri < r[k].childNodes.length; ri++) { - r[k].childNodes[ri].className = "dhx_after"; - r[k].childNodes[ri].childNodes[0].innerHTML = scheduler.date.to_fixed(++last_day_number); - } - } + this._reset_month_scale(body, sd, dd, 6); if (!previous) obj.appendChild(d); - d.childNodes[1].style.height = (d.childNodes[1].childNodes[0].offsetHeight - 1) + "px"; // dhx_year_week should have height property so that day dates would get correct position. dhx_year_week height = height of it's child (with the day name) + weekHeader.style.height = (weekHeader.childNodes[0].offsetHeight - 1) + "px"; // dhx_year_week should have height property so that day dates would get correct position. dhx_year_week height = height of it's child (with the day name) + + var headerId = scheduler.uid(); + scheduler._waiAria.minicalHeader(header, headerId); + scheduler._waiAria.minicalGrid(d.querySelector(".dhx_year_grid"), headerId); + scheduler._waiAria.minicalRow(weekHeader); + + var dayHeaders = weekHeader.querySelectorAll(".dhx_scale_bar"); + for(var i = 0; i < dayHeaders.length; i++){ + scheduler._waiAria.minicalHeadCell(dayHeaders[i]); + } + var dayCells = body.querySelectorAll("td"); + var firstDate = new Date(temp4); + for(var i = 0; i < dayCells.length; i++){ + + scheduler._waiAria.minicalDayCell(dayCells[i], new Date(firstDate)); + firstDate = scheduler.date.add(firstDate, 1, "day"); + } + + scheduler._waiAria.minicalHeader(header, headerId); /*restore*/ this._cols = temp; @@ -301,7 +325,7 @@ scheduler.attachEvent("onTemplatesReady", function() { scheduler.templates.calendar_time = scheduler.date.date_to_str("%d-%m-%Y"); scheduler.form_blocks.calendar_time = { - render: function() { + render: function(sns) { var html = "<input class='dhx_readonly' type='text' readonly='true'>"; var cfg = scheduler.config; @@ -314,10 +338,12 @@ scheduler.form_blocks.calendar_time = { } dt.setHours(first / 60); + sns._time_values = []; html += " <select>"; for (var i = first; i < last; i += this.config.time_step * 1) { // `<` to exclude last "00:00" option var time = this.templates.time_picker(dt); html += "<option value='" + i + "'>" + time + "</option>"; + sns._time_values.push(i); dt = this.date.add(dt, this.config.time_step, "minute"); } html += "</select>"; @@ -326,7 +352,7 @@ scheduler.form_blocks.calendar_time = { return "<div style='height:30px;padding-top:0; font-size:inherit;' class='dhx_section_time'>" + html + "<span style='font-weight:normal; font-size:10pt;'> – </span>" + html + "</div>"; }, - set_value: function(node, value, ev) { + set_value: function(node, value, ev, config) { var inputs = node.getElementsByTagName("input"); var selects = node.getElementsByTagName("select"); @@ -418,8 +444,30 @@ scheduler.form_blocks.calendar_time = { _attach_action(inputs[1], ev.end_date, 1); _init_once = function() {}; - selects[0].value = ev.start_date.getHours() * 60 + ev.start_date.getMinutes(); - selects[1].value = ev.end_date.getHours() * 60 + ev.end_date.getMinutes(); + function _round_minutes(date) { + var time_values = config._time_values; + var direct_value = date.getHours() * 60 + date.getMinutes(); + var fixed_value = direct_value; + var value_found = false; + + for (var k = 0; k < time_values.length; k++) { + var t_v = time_values[k]; + if (t_v === direct_value) { + value_found = true; + break; + } + if (t_v < direct_value) + fixed_value = t_v; + } + + if(!(value_found || fixed_value)) + return -1; + + return (value_found) ? direct_value : fixed_value; + } + + selects[0].value = _round_minutes(ev.start_date); + selects[1].value = _round_minutes(ev.end_date); }, get_value: function(node, ev) { diff --git a/codebase/sources/ext/dhtmlxscheduler_minical.js.map b/codebase/sources/ext/dhtmlxscheduler_minical.js.map index 4db364a..d445405 100644 --- a/codebase/sources/ext/dhtmlxscheduler_minical.js.map +++ b/codebase/sources/ext/dhtmlxscheduler_minical.js.map @@ -1 +1 @@ -{"version":3,"file":"dhtmlxscheduler_minical.js","sources":["dhtmlxscheduler_minical.js"],"names":["scheduler","templates","calendar_month","date","date_to_str","calendar_scale_date","calendar_date","config","minicalendar","mark_events","_synced_minicalendars","renderCalendar","obj","_prev","is_refresh","cal","_currentDate","this","api_date","_render_calendar","parentNode","unmarkCalendar","cont","container","pos","position","document","getElementById","left","tpos","getOffset","top","offsetHeight","_get_def_cont","onclick","e","event","src","target","srcElement","className","indexOf","pname","newdate","xml_date","getAttribute","setDate","parseInt","innerHTML","markCalendar","_last_date","conf","handler","call","start","month_start","end","add","evs","getEvents","filter","_mode","i","length","ev","id","d","start_date","valueOf","date_part","Date","end_date","_markCalendarCurrentDate","sync","push","_on_xle_handler","attachEvent","updateCalendar","_def_count","createElement","cancelBubble","body","appendChild","style","_created","_locateCalendar","_max_date","_min_date","table","childNodes","weekNum","dat","sm","start_on_monday","day","getDay","rows","cells","firstChild","css","div","el","replace","RegExp","_week_template","width","summ","week_template","dummy_date","week_start","_cols","Math","floor","_render_x_header","lastChild","sd","_mini_cal_arrows","previous","ts","temp","temp2","temp3","_colsS","height","temp4","temp5","temp6","_date","temp7","month_day","temp8","_ignores_detected","offsetWidth","padding","setAttribute","xml_format","navigation","move_minicalendar_date","calendar","diff","getMonth","getFullYear","css_classnames","css_texts","diffs","calendars","k","j","arrow","cssText","dd","_reset_month_scale","r","last_row","cloneNode","last_day_number","ri","to_fixed","destroyCalendar","force","removeChild","detachEvent","isCalendarVisible","_attach_minical_events","dhtmlxEvent","calendar_time","form_blocks","render","html","cfg","dt","last","first","limit_time_select","first_hour","last_hour","setHours","time_step","time","time_picker","full_day","set_value","node","value","_attach_action","inp","number","_init_once","inputs","getElementsByTagName","selects","new_date","event_duration","auto_end_date","_update_minical_select","_full_day","locale","labels","wide_form","previousSibling","input","isFulldayEvent","time_part","checked","disabled","get_value","getHours","getMinutes","getTime","onchange","focus","linkCalendar","datediff","action","dateNew","mode","month_end","_props"],"mappings":"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"}
\ No newline at end of file +{"version":3,"file":"dhtmlxscheduler_minical.js","sources":["dhtmlxscheduler_minical.js"],"names":["scheduler","templates","calendar_month","date","date_to_str","calendar_scale_date","calendar_date","config","minicalendar","mark_events","_synced_minicalendars","renderCalendar","obj","_prev","is_refresh","cal","_currentDate","this","api_date","_render_calendar","parentNode","unmarkCalendar","cont","container","pos","position","document","getElementById","left","tpos","getOffset","top","offsetHeight","_get_def_cont","onclick","e","event","src","target","srcElement","className","indexOf","pname","newdate","xml_date","getAttribute","setDate","parseInt","innerHTML","markCalendar","_last_date","conf","handler","call","start","month_start","end","add","evs","getEvents","filter","_mode","markedDates","i","length","ev","id","d","start_date","valueOf","date_part","Date","end_date","_markCalendarCurrentDate","sync","push","_on_xle_handler","attachEvent","updateCalendar","_def_count","createElement","cancelBubble","body","appendChild","style","_created","_locateCalendar","_max_date","_min_date","table","querySelector","childNodes","weekNum","dat","sm","start_on_monday","day","getDay","rows","cells","firstChild","css","div","el","replace","RegExp","_week_template","width","summ","week_template","dummy_date","week_start","_cols","Math","floor","_render_x_header","lastChild","sd","_mini_cal_arrows","previous","ts","temp","temp2","temp3","_colsS","height","temp4","temp5","temp6","_date","temp7","month_day","temp8","_ignores_detected","offsetWidth","padding","setAttribute","xml_format","header","weekHeader","navigation","move_minicalendar_date","calendar","diff","getMonth","getFullYear","css_classnames","css_texts","diffs","calendars","k","labels","locale","prev","next","j","arrow","_waiAria","headerButtonsAttributes","cssText","dd","_reset_month_scale","headerId","uid","minicalHeader","minicalGrid","minicalRow","dayHeaders","querySelectorAll","minicalHeadCell","dayCells","firstDate","minicalDayCell","destroyCalendar","force","removeChild","detachEvent","isCalendarVisible","_attach_minical_events","dhtmlxEvent","calendar_time","form_blocks","render","sns","html","cfg","dt","last","first","limit_time_select","first_hour","last_hour","setHours","_time_values","time_step","time","time_picker","full_day","set_value","node","value","_attach_action","inp","number","_init_once","_round_minutes","time_values","direct_value","getHours","getMinutes","fixed_value","value_found","t_v","inputs","getElementsByTagName","selects","new_date","event_duration","auto_end_date","_update_minical_select","_full_day","wide_form","previousSibling","input","isFulldayEvent","time_part","checked","disabled","get_value","getTime","onchange","focus","linkCalendar","datediff","action","dateNew","mode","month_end","_props"],"mappings":"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"}
\ No newline at end of file diff --git a/codebase/sources/ext/dhtmlxscheduler_monthheight.js b/codebase/sources/ext/dhtmlxscheduler_monthheight.js index 8f955cc..258bd60 100644 --- a/codebase/sources/ext/dhtmlxscheduler_monthheight.js +++ b/codebase/sources/ext/dhtmlxscheduler_monthheight.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -26,9 +26,9 @@ scheduler.attachEvent("onTemplatesReady",function(){ }; var old_s=scheduler._reset_month_scale; - scheduler._reset_month_scale=function(a,b,c){ + scheduler._reset_month_scale=function(a,b,c,d){ var dummy = {clientHeight:100}; - old_s.apply(scheduler,[dummy,b,c]); + old_s.apply(scheduler,[dummy,b,c,d]); a.innerHTML = dummy.innerHTML; }; diff --git a/codebase/sources/ext/dhtmlxscheduler_monthheight.js.map b/codebase/sources/ext/dhtmlxscheduler_monthheight.js.map index 9e3191d..165693e 100644 --- a/codebase/sources/ext/dhtmlxscheduler_monthheight.js.map +++ b/codebase/sources/ext/dhtmlxscheduler_monthheight.js.map @@ -1 +1 @@ -{"version":3,"file":"dhtmlxscheduler_monthheight.js","sources":["dhtmlxscheduler_monthheight.js"],"names":["scheduler","attachEvent","xy","scroll_width","old","render_view_data","data","this","_els","firstChild","_h_fix","apply","arguments","height","parseInt","style","scrollHeight","_obj","clientHeight","old_s","_reset_month_scale","a","b","c","dummy","innerHTML"],"mappings":";;;;;;;;AAQAA,UAAUC,YAAY,mBAAmB,WACxCD,UAAUE,GAAGC,aAAe,CAE5B,IAAIC,GAAMJ,UAAUK,gBACpBL,WAAUK,iBAAiB,WAC1B,GAAIC,GAAOC,KAAKC,KAAmB,aAAE,EACrCF,GAAKG,WAAWC,QAAS,EAEzBN,EAAIO,MAAMX,UAAUY,UAIpB,IAAIC,GAASC,SAASR,EAAKS,MAAMF,OACjCP,GAAKS,MAAMF,OAAO,MAClBP,EAAKS,MAAMF,OAAOP,EAAKU,aAAa,KAEpCT,KAAKU,KAAKF,MAAMF,OAASN,KAAKU,KAAKC,aAAeZ,EAAKU,aAAeH,EAAS,KAGhF,IAAIM,GAAMnB,UAAUoB,kBACpBpB,WAAUoB,mBAAmB,SAASC,EAAEC,EAAEC,GACzC,GAAIC,IAASN,aAAa,IAC1BC,GAAMR,MAAMX,WAAWwB,EAAMF,EAAEC;AAC/BF,EAAEI,UAAYD,EAAMC"}
\ No newline at end of file +{"version":3,"file":"dhtmlxscheduler_monthheight.js","sources":["dhtmlxscheduler_monthheight.js"],"names":["scheduler","attachEvent","xy","scroll_width","old","render_view_data","data","this","_els","firstChild","_h_fix","apply","arguments","height","parseInt","style","scrollHeight","_obj","clientHeight","old_s","_reset_month_scale","a","b","c","d","dummy","innerHTML"],"mappings":";;;;;;;;AAQAA,UAAUC,YAAY,mBAAmB,WACxCD,UAAUE,GAAGC,aAAe,CAE5B,IAAIC,GAAMJ,UAAUK,gBACpBL,WAAUK,iBAAiB,WAC1B,GAAIC,GAAOC,KAAKC,KAAmB,aAAE,EACrCF,GAAKG,WAAWC,QAAS,EAEzBN,EAAIO,MAAMX,UAAUY,UAIpB,IAAIC,GAASC,SAASR,EAAKS,MAAMF,OACjCP,GAAKS,MAAMF,OAAO,MAClBP,EAAKS,MAAMF,OAAOP,EAAKU,aAAa,KAEpCT,KAAKU,KAAKF,MAAMF,OAASN,KAAKU,KAAKC,aAAeZ,EAAKU,aAAeH,EAAS,KAGhF,IAAIM,GAAMnB,UAAUoB,kBACpBpB,WAAUoB,mBAAmB,SAASC,EAAEC,EAAEC,EAAEC,GAC3C,GAAIC,IAASP,aAAa,IAC1BC,GAAMR,MAAMX,WAAWyB,EAAMH,EAAEC,EAAEC;AACjCH,EAAEK,UAAYD,EAAMC"}
\ No newline at end of file diff --git a/codebase/sources/ext/dhtmlxscheduler_multiselect.js b/codebase/sources/ext/dhtmlxscheduler_multiselect.js index a718d2c..b0ad5ff 100644 --- a/codebase/sources/ext/dhtmlxscheduler_multiselect.js +++ b/codebase/sources/ext/dhtmlxscheduler_multiselect.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -32,7 +32,7 @@ scheduler.form_blocks["multiselect"]={ var _ids = {}; if (ev[config.map_to]) { - var results = (ev[config.map_to] + "").split(','); + var results = (ev[config.map_to] + "").split(config.delimiter || scheduler.config.section_delimiter || ","); for (var i = 0; i < results.length; i++) { _ids[results[i]] = true; } @@ -62,7 +62,7 @@ scheduler.form_blocks["multiselect"]={ if(_children[i].checked) _result.push(_children[i].value); } - return _result.join(','); + return _result.join(config.delimiter || scheduler.config.section_delimiter || ","); }, focus:function(node){ diff --git a/codebase/sources/ext/dhtmlxscheduler_multiselect.js.map b/codebase/sources/ext/dhtmlxscheduler_multiselect.js.map index 04396f2..52ea1b4 100644 --- a/codebase/sources/ext/dhtmlxscheduler_multiselect.js.map +++ b/codebase/sources/ext/dhtmlxscheduler_multiselect.js.map @@ -1 +1 @@ -{"version":3,"file":"dhtmlxscheduler_multiselect.js","sources":["dhtmlxscheduler_multiselect.js"],"names":["scheduler","form_blocks","render","sns","_result","name","height","i","options","length","key","label","convertStringToBoolean","vertical","set_value","node","value","ev","config","_mark_inputs","ids","_children","getElementsByTagName","checked","_ids","map_to","results","split","_new_event","script_url","divLoading","document","createElement","className","style","cssText","appendChild","dhtmlxAjax","get","id","uid","loader","doXPath","getAttribute","removeChild","get_value","push","join","focus"],"mappings":";;;;;;;;AAQAA,UAAUC,YAAyB,aAClCC,OAAO,SAASC,GAEf,IAAK,GADDC,GAAU,gCAAgCD,EAAIE,KAAK,oCAAoCF,EAAIG,OAAO,6BAC7FC,EAAE,EAAGA,EAAEJ,EAAIK,QAAQC,OAAQF,IACnCH,GAAW,wCAAwCD,EAAIK,QAAQD,GAAGG,IAAI,MAAMP,EAAIK,QAAQD,GAAGI,MAAM,WAC9FC,uBAAuBT,EAAIU,YAAWT,GAAW,QAGrD,OADAA,IAAW,UAGZU,UAAU,SAASC,EAAKC,EAAMC,EAAGC,GAOhC,QAASC,GAAaC,GAErB,IAAI,GADAC,GAAYN,EAAKO,qBAAqB,SAClCf,EAAE,EAAEA,EAAEc,EAAUZ,OAAQF,IAC/Bc,EAAUd,GAAGgB,UAAaH,EAAIC,EAAUd,GAAGS;AAP7C,IAAI,GADAK,GAAYN,EAAKO,qBAAqB,SAClCf,EAAE,EAAEA,EAAEc,EAAUZ,OAAOF,IAC9Bc,EAAUd,GAAGgB,SAAU,CAUxB,IAAIC,KACJ,IAAIP,EAAGC,EAAOO,QAAS,CAEtB,IAAK,GADDC,IAAWT,EAAGC,EAAOO,QAAU,IAAIE,MAAM,KACpCpB,EAAI,EAAGA,EAAImB,EAAQjB,OAAQF,IACnCiB,EAAKE,EAAQnB,KAAM,CAEpBY,GAAaK,OACP,CACN,GAAIxB,UAAU4B,aAAeV,EAAOW,WACnC,MACD,IAAIC,GAAaC,SAASC,cAAc,MACxCF,GAAWG,UAAY,cACvBH,EAAWI,MAAMC,QAAU,2CAC3BpB,EAAKqB,YAAYN,GACjBO,WAAWC,IAAIpB,EAAOW,WAAa,kBAAoBX,EAAOO,OAAS,IAAMR,EAAGsB,GAAK,QAAUvC,UAAUwC,MAAO,SAASC,GAGxH,IAAK,GAFDrC,GAAUqC,EAAOC,QAAQ,eACzBlB,KACKjB,EAAI,EAAGA,EAAIH,EAAQK,OAAQF,IACnCiB,EAAKpB,EAAQG,GAAGoC,aAAazB,EAAOO,UAAW;;AAEhDN,EAAaK,GACbT,EAAK6B,YAAYd,OAIpBe,UAAU,SAAS9B,EAAKE,EAAGC,GAG1B,IAAI,GAFAd,MACAiB,EAAYN,EAAKO,qBAAqB,SAClCf,EAAE,EAAEA,EAAEc,EAAUZ,OAAOF,IAC3Bc,EAAUd,GAAGgB,SACfnB,EAAQ0C,KAAKzB,EAAUd,GAAGS,MAE5B,OAAOZ,GAAQ2C,KAAK,MAGrBC,MAAM,SAASjC"}
\ No newline at end of file +{"version":3,"file":"dhtmlxscheduler_multiselect.js","sources":["dhtmlxscheduler_multiselect.js"],"names":["scheduler","form_blocks","render","sns","_result","name","height","i","options","length","key","label","convertStringToBoolean","vertical","set_value","node","value","ev","config","_mark_inputs","ids","_children","getElementsByTagName","checked","_ids","map_to","results","split","delimiter","section_delimiter","_new_event","script_url","divLoading","document","createElement","className","style","cssText","appendChild","dhtmlxAjax","get","id","uid","loader","doXPath","getAttribute","removeChild","get_value","push","join","focus"],"mappings":";;;;;;;;AAQAA,UAAUC,YAAyB,aAClCC,OAAO,SAASC,GAEf,IAAK,GADDC,GAAU,gCAAgCD,EAAIE,KAAK,oCAAoCF,EAAIG,OAAO,6BAC7FC,EAAE,EAAGA,EAAEJ,EAAIK,QAAQC,OAAQF,IACnCH,GAAW,wCAAwCD,EAAIK,QAAQD,GAAGG,IAAI,MAAMP,EAAIK,QAAQD,GAAGI,MAAM,WAC9FC,uBAAuBT,EAAIU,YAAWT,GAAW,QAGrD,OADAA,IAAW,UAGZU,UAAU,SAASC,EAAKC,EAAMC,EAAGC,GAOhC,QAASC,GAAaC,GAErB,IAAI,GADAC,GAAYN,EAAKO,qBAAqB,SAClCf,EAAE,EAAEA,EAAEc,EAAUZ,OAAQF,IAC/Bc,EAAUd,GAAGgB,UAAaH,EAAIC,EAAUd,GAAGS;AAP7C,IAAI,GADAK,GAAYN,EAAKO,qBAAqB,SAClCf,EAAE,EAAEA,EAAEc,EAAUZ,OAAOF,IAC9Bc,EAAUd,GAAGgB,SAAU,CAUxB,IAAIC,KACJ,IAAIP,EAAGC,EAAOO,QAAS,CAEtB,IAAK,GADDC,IAAWT,EAAGC,EAAOO,QAAU,IAAIE,MAAMT,EAAOU,WAAa5B,UAAUkB,OAAOW,mBAAqB,KAC9FtB,EAAI,EAAGA,EAAImB,EAAQjB,OAAQF,IACnCiB,EAAKE,EAAQnB,KAAM,CAEpBY,GAAaK,OACP,CACN,GAAIxB,UAAU8B,aAAeZ,EAAOa,WACnC,MACD,IAAIC,GAAaC,SAASC,cAAc,MACxCF,GAAWG,UAAY,cACvBH,EAAWI,MAAMC,QAAU,2CAC3BtB,EAAKuB,YAAYN,GACjBO,WAAWC,IAAItB,EAAOa,WAAa,kBAAoBb,EAAOO,OAAS,IAAMR,EAAGwB,GAAK,QAAUzC,UAAU0C,MAAO,SAASC;AAGxH,IAAK,GAFDvC,GAAUuC,EAAOC,QAAQ,eACzBpB,KACKjB,EAAI,EAAGA,EAAIH,EAAQK,OAAQF,IACnCiB,EAAKpB,EAAQG,GAAGsC,aAAa3B,EAAOO,UAAW,CAEhDN,GAAaK,GACbT,EAAK+B,YAAYd,OAIpBe,UAAU,SAAShC,EAAKE,EAAGC,GAG1B,IAAI,GAFAd,MACAiB,EAAYN,EAAKO,qBAAqB,SAClCf,EAAE,EAAEA,EAAEc,EAAUZ,OAAOF,IAC3Bc,EAAUd,GAAGgB,SACfnB,EAAQ4C,KAAK3B,EAAUd,GAAGS,MAE5B,OAAOZ,GAAQ6C,KAAK/B,EAAOU,WAAa5B,UAAUkB,OAAOW,mBAAqB,MAG/EqB,MAAM,SAASnC"}
\ No newline at end of file diff --git a/codebase/sources/ext/dhtmlxscheduler_multisource.js b/codebase/sources/ext/dhtmlxscheduler_multisource.js index 0aeb5eb..274ae2e 100644 --- a/codebase/sources/ext/dhtmlxscheduler_multisource.js +++ b/codebase/sources/ext/dhtmlxscheduler_multisource.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. diff --git a/codebase/sources/ext/dhtmlxscheduler_mvc.js b/codebase/sources/ext/dhtmlxscheduler_mvc.js index 50666b4..87a9b46 100644 --- a/codebase/sources/ext/dhtmlxscheduler_mvc.js +++ b/codebase/sources/ext/dhtmlxscheduler_mvc.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. diff --git a/codebase/sources/ext/dhtmlxscheduler_mvc.js.map b/codebase/sources/ext/dhtmlxscheduler_mvc.js.map index 21e756c..198aac5 100644 --- a/codebase/sources/ext/dhtmlxscheduler_mvc.js.map +++ b/codebase/sources/ext/dhtmlxscheduler_mvc.js.map @@ -1 +1 @@ -{"version":3,"file":"dhtmlxscheduler_mvc.js","sources":["dhtmlxscheduler_mvc.js"],"names":["sanitize","ev","obj","key","indexOf","cfg","use_id","id","update_view","clearTimeout","update_timer","setTimeout","scheduler","updateView","_start_ext_load","cal","_loading","_not_render","callEvent","_finish_ext_load","_render_wait","render_view_data","_get_id","model","cid","backbone","events","config","add_from_queue","queue","length","parse","bind","info","_events","toJSON","_init_event","changes","deleteEvent","push","Backbone","Collection","attachEvent","getEvent","get","data","this","changeEventId","add","trigger","upd","set","remove"],"mappings":";;;;;;;;CAQA,WAOC,QAASA,GAASC,GACjB,GAAIC,KACJ,KAAK,GAAIC,KAAOF,GACU,IAArBE,EAAIC,QAAQ,OACfF,EAAIC,GAAOF,EAAGE,GAKhB,OAHKE,GAAIC,cACDJ,GAAIK,GAELL,EAIR,QAASM,KACRC,aAAaC,GACbA,EAAeC,WAAW,WACzBC,UAAUC,cACT,GAGH,QAASC,GAAgBC,GACxBA,EAAIC,UAAW,EACfD,EAAIE,aAAc,EAElBF,EAAIG,UAAU,YAEf,QAASC,GAAiBJ,GACzBA,EAAIE,aAAc,EACdF,EAAIK,cACPL,EAAIM,mBACLN,EAAIC,UAAW,EAEfD,EAAIG,UAAU,YAIf,QAASI,GAAQC,GAChB,MAAOlB,GAAIC,OAASiB,EAAMhB,GAAKgB,EAAMC,IA1CtC,GAiBId,GAjBAL,GACHC,QAAS,EA4CXM,WAAUa,SAAW,SAASC,EAAQC,GAkBrC,QAASC,KACJC,EAAMC,SACTlB,UAAUmB,MAAMF,EAAO;AACvBA,MApBEF,IAAQtB,EAAMsB,GAElBD,EAAOM,KAAK,SAAU,SAAST,EAAOU,GACrC,GAAIT,GAAMF,EAAQC,GACdtB,EAAKW,UAAUsB,QAAQV,GAAOD,EAAMY,QACxClC,GAAGM,GAAKiB,EAERZ,UAAUwB,YAAYnC,GACtBO,MAEDkB,EAAOM,KAAK,SAAU,SAAST,EAAOc,GACrC,GAAIb,GAAMF,EAAQC,EACdX,WAAUsB,QAAQV,IACrBZ,UAAU0B,YAAYd,IAGxB,IAAIK,KAQJH,GAAOM,KAAK,MAAO,SAAST,EAAOc,GAClC,GAAIb,GAAMF,EAAQC,EAClB,KAAKX,UAAUsB,QAAQV,GAAK,CAC3B,GAAIvB,GAAMsB,EAAMY,QAChBlC,GAAGM,GAAKiB,EACRZ,UAAUwB,YAAYnC,GAEtB4B,EAAMU,KAAKtC,GACS,GAAhB4B,EAAMC,QACTnB,WAAWiB,EAAe,MAI7BF,EAAOM,KAAK,UAAW,SAAS9B,GAC3BA,YAAesC,UAASC,YAC3B3B,EAAgBF,aAElBc,EAAOM,KAAK,OAAQ,SAAS9B,GACxBA,YAAesC,UAASC,YAC3BtB,EAAiBP;;GAEnBc,EAAOM,KAAK,QAAS,SAAS9B,GACzBA,YAAesC,UAASC,YAC3BtB,EAAiBP,aAInBA,UAAU8B,YAAY,iBAAkB,SAASnC,GAChD,GAAIN,GAAK,GAAIyB,GAAOH,MAAMX,UAAU+B,SAASpC,GAI7C,OAHAK,WAAUsB,QAAQ3B,GAAMN,EAAGkC,SAC3BvB,UAAUsB,QAAQ3B,GAAIA,GAAKA,GAEpB,IAGRK,UAAU8B,YAAY,eAAgB,SAASnC,GAC9C,IAAKmB,EAAOkB,IAAIrC,GAAI,CACnB,GAAIsC,GAAO7C,EAASY,UAAU+B,SAASpC,IACnCgB,EAAQ,GAAIG,GAAOH,MAAMsB,GAEzBrB,EAAMF,EAAQC,EACdC,IAAOjB,GACVuC,KAAKC,cAAcxC,EAAIiB,GACxBE,EAAOsB,IAAIzB,GACXG,EAAOuB,QAAQ,gBAAiB1B,GAEjC,OAAO,IAERX,UAAU8B,YAAY,iBAAkB,SAASnC,GAChD,GAAIN,GAAKyB,EAAOkB,IAAIrC,GAChB2C,EAAMlD,EAASY,UAAU+B,SAASpC;;AAKtC,MAHAN,GAAGkD,IAAID,GACPxB,EAAOuB,QAAQ,mBAAoBhD,IAE5B,IAERW,UAAU8B,YAAY,iBAAkB,SAASnC,GAChD,GAAIgB,GAAQG,EAAOkB,IAAIrC,EAKvB,OAJIgB,KACHG,EAAOuB,QAAQ,mBAAoB1B,GACnCG,EAAO0B,OAAO7C,KAER"}
\ No newline at end of file +{"version":3,"file":"dhtmlxscheduler_mvc.js","sources":["dhtmlxscheduler_mvc.js"],"names":["sanitize","ev","obj","key","indexOf","cfg","use_id","id","update_view","clearTimeout","update_timer","setTimeout","scheduler","updateView","_start_ext_load","cal","_loading","_not_render","callEvent","_finish_ext_load","_render_wait","render_view_data","_get_id","model","cid","backbone","events","config","add_from_queue","queue","length","parse","bind","info","_events","toJSON","_init_event","changes","deleteEvent","push","Backbone","Collection","attachEvent","getEvent","get","data","this","changeEventId","add","trigger","upd","set","remove"],"mappings":";;;;;;;;CAQA,WAOC,QAASA,GAASC,GACjB,GAAIC,KACJ,KAAK,GAAIC,KAAOF,GACU,IAArBE,EAAIC,QAAQ,OACfF,EAAIC,GAAOF,EAAGE,GAKhB,OAHKE,GAAIC,cACDJ,GAAIK,GAELL,EAIR,QAASM,KACRC,aAAaC,GACbA,EAAeC,WAAW,WACzBC,UAAUC,cACT,GAGH,QAASC,GAAgBC,GACxBA,EAAIC,UAAW,EACfD,EAAIE,aAAc,EAElBF,EAAIG,UAAU,YAEf,QAASC,GAAiBJ,GACzBA,EAAIE,aAAc,EACdF,EAAIK,cACPL,EAAIM,mBACLN,EAAIC,UAAW,EAEfD,EAAIG,UAAU,YAIf,QAASI,GAAQC,GAChB,MAAOlB,GAAIC,OAASiB,EAAMhB,GAAKgB,EAAMC,IA1CtC,GAiBId,GAjBAL,GACHC,QAAS,EA4CXM,WAAUa,SAAW,SAASC,EAAQC,GAkBrC,QAASC,KACJC,EAAMC,SACTlB,UAAUmB,MAAMF,EAAO;AACvBA,MApBEF,IAAQtB,EAAMsB,GAElBD,EAAOM,KAAK,SAAU,SAAST,EAAOU,GACrC,GAAIT,GAAMF,EAAQC,GACdtB,EAAKW,UAAUsB,QAAQV,GAAOD,EAAMY,QACxClC,GAAGM,GAAKiB,EAERZ,UAAUwB,YAAYnC,GACtBO,MAEDkB,EAAOM,KAAK,SAAU,SAAST,EAAOc,GACrC,GAAIb,GAAMF,EAAQC,EACdX,WAAUsB,QAAQV,IACrBZ,UAAU0B,YAAYd,IAGxB,IAAIK,KAQJH,GAAOM,KAAK,MAAO,SAAST,EAAOc,GAClC,GAAIb,GAAMF,EAAQC,EAClB,KAAKX,UAAUsB,QAAQV,GAAK,CAC3B,GAAIvB,GAAMsB,EAAMY,QAChBlC,GAAGM,GAAKiB,EACRZ,UAAUwB,YAAYnC,GAEtB4B,EAAMU,KAAKtC,GACS,GAAhB4B,EAAMC,QACTnB,WAAWiB,EAAe,MAI7BF,EAAOM,KAAK,UAAW,SAAS9B,GAC3BA,YAAesC,UAASC,YAC3B3B,EAAgBF,aAElBc,EAAOM,KAAK,OAAQ,SAAS9B,GACxBA,YAAesC,UAASC,YAC3BtB,EAAiBP;GAEnBc,EAAOM,KAAK,QAAS,SAAS9B,GACzBA,YAAesC,UAASC,YAC3BtB,EAAiBP,aAInBA,UAAU8B,YAAY,iBAAkB,SAASnC,GAChD,GAAIN,GAAK,GAAIyB,GAAOH,MAAMX,UAAU+B,SAASpC,GAI7C,OAHAK,WAAUsB,QAAQ3B,GAAMN,EAAGkC,SAC3BvB,UAAUsB,QAAQ3B,GAAIA,GAAKA,GAEpB,IAGRK,UAAU8B,YAAY,eAAgB,SAASnC,GAC9C,IAAKmB,EAAOkB,IAAIrC,GAAI,CACnB,GAAIsC,GAAO7C,EAASY,UAAU+B,SAASpC,IACnCgB,EAAQ,GAAIG,GAAOH,MAAMsB,GAEzBrB,EAAMF,EAAQC,EACdC,IAAOjB,GACVuC,KAAKC,cAAcxC,EAAIiB,GACxBE,EAAOsB,IAAIzB,GACXG,EAAOuB,QAAQ,gBAAiB1B,GAEjC,OAAO,IAERX,UAAU8B,YAAY,iBAAkB,SAASnC,GAChD,GAAIN,GAAKyB,EAAOkB,IAAIrC,GAChB2C,EAAMlD,EAASY,UAAU+B,SAASpC;AAKtC,MAHAN,GAAGkD,IAAID,GACPxB,EAAOuB,QAAQ,mBAAoBhD,IAE5B,IAERW,UAAU8B,YAAY,iBAAkB,SAASnC,GAChD,GAAIgB,GAAQG,EAAOkB,IAAIrC,EAKvB,OAJIgB,KACHG,EAAOuB,QAAQ,mBAAoB1B,GACnCG,EAAO0B,OAAO7C,KAER"}
\ No newline at end of file diff --git a/codebase/sources/ext/dhtmlxscheduler_offline.js b/codebase/sources/ext/dhtmlxscheduler_offline.js index ae6e1e6..e471cd1 100644 --- a/codebase/sources/ext/dhtmlxscheduler_offline.js +++ b/codebase/sources/ext/dhtmlxscheduler_offline.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. diff --git a/codebase/sources/ext/dhtmlxscheduler_offline.js.map b/codebase/sources/ext/dhtmlxscheduler_offline.js.map index f9d0978..c553fa5 100644 --- a/codebase/sources/ext/dhtmlxscheduler_offline.js.map +++ b/codebase/sources/ext/dhtmlxscheduler_offline.js.map @@ -1 +1 @@ -{"version":3,"file":"dhtmlxscheduler_offline.js","sources":["dhtmlxscheduler_offline.js"],"names":["scheduler","load","url","call","type","this","_process","arguments","_load_url","_after_call","$proxy","_load","_date","_dp_init_backup","_dp_init","dp","_sendData","a1","rowId","callEvent","getState","_in_progress","Date","valueOf","serverProcessor","mode","_tMode","to_send","i","push","id","data","operation","_send","a2","dtmlXMLLoaderObject","afterUpdate","a3","_user","getUrlSymbol","obj","getUserData","join","loadXML","indexOf","serialize","_waitMode","_updatesToParams","items","stack","length","_processResult","text","xml","loader","status","loadXMLString","xmlDoc","state","afterUpdateCallback","window","dataProcessor","prototype","init","init_original","_dataprocessor","setTransactionMode"],"mappings":";;;;;;;;AAQAA,UAAUC,KAAK,SAASC,EAAIC,GAC3B,GAAIC,EASJ,OARmB,gBAARD,KACVE,KAAKC,SAASH,EACdC,EAAOD,EACPA,EAAOI,UAAU,IAGlBF,KAAKG,UAAUN,EACfG,KAAKI,YAAYN,EACbD,EAAIQ,WACPR,GAAID,KAAKI,KAAqB,gBAARD,GAAmBA,EAAO,UAIjDC,MAAKM,MAAMT,EAAIG,KAAKO,QAGrBZ,UAAUa,gBAAkBb,UAAUc,SACtCd,UAAUc,SAAW,SAASC,GAC7BA,EAAGC,UAAY,SAASC,EAAGC,GACvB,GAAKD,EAAL,CACH,IAAKZ,KAAKc,UAAU,sBAAsBD,GAAOA,EAAMb,KAAKe,SAASF,GAAOD,IAAK,KAAM,KAAMA,IAAM,OAAO,CAG1G,IAFOC,IACNb,KAAKgB,aAAaH,IAAO,GAAKI,OAAQC,WACnClB,KAAKmB,gBAAgBd,OAAQ,CAChC,GAAIe,GAAoB,QAAbpB,KAAKqB,OAAiB,MAAQ,OACrCC;;AACJ,IAAK,GAAIC,KAAKX,GACbU,EAAQE,MAAOC,GAAIF,EAAGG,KAAMd,EAAGW,GAAII,UAAW3B,KAAKe,SAASQ,IAE7D,YADAvB,MAAKmB,gBAAgBS,MAAMN,EAASF,EAAMpB,MAI3C,GAAI6B,GAAG,GAAIC,qBAAoB9B,KAAK+B,YAAY/B,MAAK,GACjDgC,EAAKhC,KAAKmB,iBAAiBnB,KAAKiC,MAAOC,aAAalC,KAAKmB,kBAAkB,YAAYnB,KAAKiC,MAAM,eAAejC,KAAKmC,IAAIC,YAAY,EAAE,YAAYC,KAAK,KAAM,GAClJ,SAAbrC,KAAKqB,OACFQ,EAAGS,QAAQN,GAAsB,IAAjBA,EAAGO,QAAQ,KAAU,IAAI,KAAKvC,KAAKwC,UAAU5B,EAAGC,IAEhEgB,EAAGS,QAAQN,GAAG,EAAKhC,KAAKwC,UAAU5B,EAAGC,IAC5Cb,KAAKyC,cAGN/B,EAAGgC,iBAAmB,SAASC,GAE9B,IAAK,GADDC,MACKrB,EAAI,EAAGA,EAAIoB,EAAME,OAAQtB,IACjCqB,EAAMD,EAAMpB,GAAGE,IAAMkB,EAAMpB,GAAGG;;AAC/B,MAAO1B,MAAKwC,UAAUI,IAGvBlC,EAAGoC,eAAiB,SAASC,EAAMC,EAAKC,GACvC,GAAqB,KAAjBA,EAAOC,OAOXF,EAAM,GAAIlB,qBAAoB,aAAc9B,MAAK,GACjDgD,EAAIG,cAAcJ,GAClBC,EAAII,OAASH,EAEbjD,KAAK+B,YAAY/B,KAAM,KAAM,KAAM,KAAMgD,OAVxC,KAAK,GAAIzB,KAAKvB,MAAKgB,aAAc,CAChC,GAAIqC,GAAQrD,KAAKe,SAASQ,EAC1BvB,MAAKsD,oBAAoB/B,EAAGA,EAAG8B,EAAO,QAUzCrD,KAAKQ,gBAAgBE,IAGlB6C,OAAOC,gBACVA,cAAcC,UAAUC,KAAK,SAASvB,GACrCnC,KAAK2D,cAAcxB,GACnBA,EAAIyB,eAAe5D,KAEnBA,KAAK6D,mBAAmB,QAAO,GAC1B7D,KAAKmB,gBAAgBd,SACzBL,KAAKmB,kBAAqD,IAAnCnB,KAAKmB,gBAAgBoB,QAAQ,KAAS,IAAI,KAAK"}
\ No newline at end of file +{"version":3,"file":"dhtmlxscheduler_offline.js","sources":["dhtmlxscheduler_offline.js"],"names":["scheduler","load","url","call","type","this","_process","arguments","_load_url","_after_call","$proxy","_load","_date","_dp_init_backup","_dp_init","dp","_sendData","a1","rowId","callEvent","getState","_in_progress","Date","valueOf","serverProcessor","mode","_tMode","to_send","i","push","id","data","operation","_send","a2","dtmlXMLLoaderObject","afterUpdate","a3","_user","getUrlSymbol","obj","getUserData","join","loadXML","indexOf","serialize","_waitMode","_updatesToParams","items","stack","length","_processResult","text","xml","loader","status","loadXMLString","xmlDoc","state","afterUpdateCallback","window","dataProcessor","prototype","init","init_original","_dataprocessor","setTransactionMode"],"mappings":";;;;;;;;AAQAA,UAAUC,KAAK,SAASC,EAAIC,GAC3B,GAAIC,EASJ,OARmB,gBAARD,KACVE,KAAKC,SAASH,EACdC,EAAOD,EACPA,EAAOI,UAAU,IAGlBF,KAAKG,UAAUN,EACfG,KAAKI,YAAYN,EACbD,EAAIQ,WACPR,GAAID,KAAKI,KAAqB,gBAARD,GAAmBA,EAAO,UAIjDC,MAAKM,MAAMT,EAAIG,KAAKO,QAGrBZ,UAAUa,gBAAkBb,UAAUc,SACtCd,UAAUc,SAAW,SAASC,GAC7BA,EAAGC,UAAY,SAASC,EAAGC,GACvB,GAAKD,EAAL,CACH,IAAKZ,KAAKc,UAAU,sBAAsBD,GAAOA,EAAMb,KAAKe,SAASF,GAAOD,IAAK,KAAM,KAAMA,IAAM,OAAO,CAG1G,IAFOC,IACNb,KAAKgB,aAAaH,IAAO,GAAKI,OAAQC,WACnClB,KAAKmB,gBAAgBd,OAAQ,CAChC,GAAIe,GAAoB,QAAbpB,KAAKqB,OAAiB,MAAQ,OACrCC;AACJ,IAAK,GAAIC,KAAKX,GACbU,EAAQE,MAAOC,GAAIF,EAAGG,KAAMd,EAAGW,GAAII,UAAW3B,KAAKe,SAASQ,IAE7D,YADAvB,MAAKmB,gBAAgBS,MAAMN,EAASF,EAAMpB,MAI3C,GAAI6B,GAAG,GAAIC,qBAAoB9B,KAAK+B,YAAY/B,MAAK,GACjDgC,EAAKhC,KAAKmB,iBAAiBnB,KAAKiC,MAAOC,aAAalC,KAAKmB,kBAAkB,YAAYnB,KAAKiC,MAAM,eAAejC,KAAKmC,IAAIC,YAAY,EAAE,YAAYC,KAAK,KAAM,GAClJ,SAAbrC,KAAKqB,OACFQ,EAAGS,QAAQN,GAAsB,IAAjBA,EAAGO,QAAQ,KAAU,IAAI,KAAKvC,KAAKwC,UAAU5B,EAAGC,IAEhEgB,EAAGS,QAAQN,GAAG,EAAKhC,KAAKwC,UAAU5B,EAAGC,IAC5Cb,KAAKyC,cAGN/B,EAAGgC,iBAAmB,SAASC,GAE9B,IAAK,GADDC,MACKrB,EAAI,EAAGA,EAAIoB,EAAME,OAAQtB,IACjCqB,EAAMD,EAAMpB,GAAGE,IAAMkB,EAAMpB,GAAGG;AAC/B,MAAO1B,MAAKwC,UAAUI,IAGvBlC,EAAGoC,eAAiB,SAASC,EAAMC,EAAKC,GACvC,GAAqB,KAAjBA,EAAOC,OAOXF,EAAM,GAAIlB,qBAAoB,aAAc9B,MAAK,GACjDgD,EAAIG,cAAcJ,GAClBC,EAAII,OAASH,EAEbjD,KAAK+B,YAAY/B,KAAM,KAAM,KAAM,KAAMgD,OAVxC,KAAK,GAAIzB,KAAKvB,MAAKgB,aAAc,CAChC,GAAIqC,GAAQrD,KAAKe,SAASQ,EAC1BvB,MAAKsD,oBAAoB/B,EAAGA,EAAG8B,EAAO,QAUzCrD,KAAKQ,gBAAgBE,IAGlB6C,OAAOC,gBACVA,cAAcC,UAAUC,KAAK,SAASvB,GACrCnC,KAAK2D,cAAcxB,GACnBA,EAAIyB,eAAe5D,KAEnBA,KAAK6D,mBAAmB,QAAO,GAC1B7D,KAAKmB,gBAAgBd,SACzBL,KAAKmB,kBAAqD,IAAnCnB,KAAKmB,gBAAgBoB,QAAQ,KAAS,IAAI,KAAK"}
\ No newline at end of file diff --git a/codebase/sources/ext/dhtmlxscheduler_outerdrag.js b/codebase/sources/ext/dhtmlxscheduler_outerdrag.js index 65296b2..61c2bc7 100644 --- a/codebase/sources/ext/dhtmlxscheduler_outerdrag.js +++ b/codebase/sources/ext/dhtmlxscheduler_outerdrag.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -15,41 +15,45 @@ scheduler.attachEvent("onTemplatesReady", function() { last_event = e || event; return old.apply(this, arguments); }; - dragger.addDragLanding(scheduler._els["dhx_cal_data"][0], { - _drag: function(sourceHtmlObject, dhtmlObject, targetHtmlObject, targetHtml) { - if (scheduler.checkEvent("onBeforeExternalDragIn") && !scheduler.callEvent("onBeforeExternalDragIn", [sourceHtmlObject, dhtmlObject, targetHtmlObject, targetHtml, last_event])) - return; - - var temp = scheduler.attachEvent("onEventCreated", function(id) { - if (!scheduler.callEvent("onExternalDragIn", [id, sourceHtmlObject, last_event])) { - this._drag_mode = this._drag_id = null; - this.deleteEvent(id); - } - }); - - var action_data = scheduler.getActionData(last_event); - var event_data = { - start_date: new Date(action_data.date) - }; - - // custom views, need to assign section id, fix dates - if (scheduler.matrix && scheduler.matrix[scheduler._mode]) { - var view_options = scheduler.matrix[scheduler._mode]; - event_data[view_options.y_property] = action_data.section; - - var pos = scheduler._locate_cell_timeline(last_event); - event_data.start_date = view_options._trace_x[pos.x]; - event_data.end_date = scheduler.date.add(event_data.start_date, view_options.x_step, view_options.x_unit); - } - if (scheduler._props && scheduler._props[scheduler._mode]) { - event_data[scheduler._props[scheduler._mode].map_to] = action_data.section; + function on_drop(sourceHtmlObject, dhtmlObject, targetHtmlObject, targetHtml) { + + if (scheduler.checkEvent("onBeforeExternalDragIn") && !scheduler.callEvent("onBeforeExternalDragIn", [sourceHtmlObject, dhtmlObject, targetHtmlObject, targetHtml, last_event])) + return; + + var temp = scheduler.attachEvent("onEventCreated", function (id) { + if (!scheduler.callEvent("onExternalDragIn", [id, sourceHtmlObject, last_event])) { + this._drag_mode = this._drag_id = null; + this.deleteEvent(id); } + }); + + var action_data = scheduler.getActionData(last_event); + var event_data = { + start_date: new Date(action_data.date) + }; - scheduler.addEventNow(event_data); + // custom views, need to assign section id, fix dates + if (scheduler.matrix && scheduler.matrix[scheduler._mode]) { + var view_options = scheduler.matrix[scheduler._mode]; + event_data[view_options.y_property] = action_data.section; - scheduler.detachEvent(temp); + var pos = scheduler._locate_cell_timeline(last_event); + event_data.start_date = view_options._trace_x[pos.x]; + event_data.end_date = scheduler.date.add(event_data.start_date, view_options.x_step, view_options.x_unit); + } + if (scheduler._props && scheduler._props[scheduler._mode]) { + event_data[scheduler._props[scheduler._mode].map_to] = action_data.section; + } + scheduler.addEventNow(event_data); + + scheduler.detachEvent(temp); + } + + dragger.addDragLanding(scheduler._els["dhx_cal_data"][0], { + _drag: function(sourceHtmlObject, dhtmlObject, targetHtmlObject, targetHtml) { + on_drop(sourceHtmlObject, dhtmlObject, targetHtmlObject, targetHtml); }, _dragIn: function(htmlObject, shtmlObject) { return htmlObject; @@ -58,4 +62,18 @@ scheduler.attachEvent("onTemplatesReady", function() { return this; } }); + + if(dhtmlx.DragControl) { + dhtmlx.DragControl.addDrop(scheduler._els["dhx_cal_data"][0], { + onDrop: function (source, target, d, e) { + var sourceDhtmlx = dhtmlx.DragControl.getMaster(source); + last_event = e; + on_drop(source, sourceDhtmlx, target, e.target || e.srcElement); + }, + + onDragIn: function (source, target, e) { + return target; + } + }, true); + } }); diff --git a/codebase/sources/ext/dhtmlxscheduler_outerdrag.js.map b/codebase/sources/ext/dhtmlxscheduler_outerdrag.js.map index 499f218..1dd1fe9 100644 --- a/codebase/sources/ext/dhtmlxscheduler_outerdrag.js.map +++ b/codebase/sources/ext/dhtmlxscheduler_outerdrag.js.map @@ -1 +1 @@ -{"version":3,"file":"dhtmlxscheduler_outerdrag.js","sources":["dhtmlxscheduler_outerdrag.js"],"names":["scheduler","attachEvent","last_event","dragger","dhtmlDragAndDropObject","old","stopDrag","e","event","apply","this","arguments","addDragLanding","_els","_drag","sourceHtmlObject","dhtmlObject","targetHtmlObject","targetHtml","checkEvent","callEvent","temp","id","_drag_mode","_drag_id","deleteEvent","action_data","getActionData","event_data","start_date","Date","date","matrix","_mode","view_options","y_property","section","pos","_locate_cell_timeline","_trace_x","x","end_date","add","x_step","x_unit","_props","map_to","addEventNow","detachEvent","_dragIn","htmlObject","shtmlObject","_dragOut"],"mappings":";;;;;;;;AASAA,UAAUC,YAAY,mBAAoB,WACzC,GAEIC,GAFAC,EAAU,GAAKC,wBACfC,EAAMF,EAAQG,QAElBH,GAAQG,SAAW,SAASC,GAE3B,MADAL,GAAaK,GAAKC,MACXH,EAAII,MAAMC,KAAMC,YAExBR,EAAQS,eAAeZ,UAAUa,KAAmB,aAAE,IACrDC,MAAO,SAASC,EAAkBC,EAAaC,EAAkBC,GAEhE,IAAIlB,UAAUmB,WAAW,2BAA8BnB,UAAUoB,UAAU,0BAA2BL,EAAkBC,EAAaC,EAAkBC,EAAYhB,IAAnK,CAGA,GAAImB,GAAOrB,UAAUC,YAAY,iBAAkB,SAASqB,GACtDtB,UAAUoB,UAAU,oBAAqBE,EAAIP,EAAkBb,MACnEQ,KAAKa,WAAab,KAAKc,SAAW,KAClCd,KAAKe,YAAYH;;GAIfI,EAAc1B,UAAU2B,cAAczB,GACtC0B,GACHC,WAAY,GAAIC,MAAKJ,EAAYK,MAIlC,IAAI/B,UAAUgC,QAAUhC,UAAUgC,OAAOhC,UAAUiC,OAAQ,CAC1D,GAAIC,GAAelC,UAAUgC,OAAOhC,UAAUiC,MAC9CL,GAAWM,EAAaC,YAAcT,EAAYU,OAElD,IAAIC,GAAMrC,UAAUsC,sBAAsBpC,EAC1C0B,GAAWC,WAAaK,EAAaK,SAASF,EAAIG,GAClDZ,EAAWa,SAAWzC,UAAU+B,KAAKW,IAAId,EAAWC,WAAYK,EAAaS,OAAQT,EAAaU,QAE/F5C,UAAU6C,QAAU7C,UAAU6C,OAAO7C,UAAUiC,SAClDL,EAAW5B,UAAU6C,OAAO7C,UAAUiC,OAAOa,QAAUpB,EAAYU,SAGpEpC,UAAU+C,YAAYnB,GAEtB5B,UAAUgD,YAAY3B,KAGvB4B,QAAS,SAASC,EAAYC;AAC7B,MAAOD,IAERE,SAAU,SAASF,GAClB,MAAOxC"}
\ No newline at end of file +{"version":3,"file":"dhtmlxscheduler_outerdrag.js","sources":["dhtmlxscheduler_outerdrag.js"],"names":["scheduler","attachEvent","on_drop","sourceHtmlObject","dhtmlObject","targetHtmlObject","targetHtml","checkEvent","callEvent","last_event","temp","id","this","_drag_mode","_drag_id","deleteEvent","action_data","getActionData","event_data","start_date","Date","date","matrix","_mode","view_options","y_property","section","pos","_locate_cell_timeline","_trace_x","x","end_date","add","x_step","x_unit","_props","map_to","addEventNow","detachEvent","dragger","dhtmlDragAndDropObject","old","stopDrag","e","event","apply","arguments","addDragLanding","_els","_drag","_dragIn","htmlObject","shtmlObject","_dragOut","dhtmlx","DragControl","addDrop","onDrop","source","target","d","sourceDhtmlx","getMaster","srcElement","onDragIn"],"mappings":";;;;;;;;AASAA,UAAUC,YAAY,mBAAoB,WASzC,QAASC,GAAQC,EAAkBC,EAAaC,EAAkBC,GAEjE,IAAIN,UAAUO,WAAW,2BAA8BP,UAAUQ,UAAU,0BAA2BL,EAAkBC,EAAaC,EAAkBC,EAAYG,IAAnK,CAGA,GAAIC,GAAOV,UAAUC,YAAY,iBAAkB,SAAUU,GACvDX,UAAUQ,UAAU,oBAAqBG,EAAIR,EAAkBM,MACnEG,KAAKC,WAAaD,KAAKE,SAAW,KAClCF,KAAKG,YAAYJ,MAIfK,EAAchB,UAAUiB,cAAcR,GACtCS,GACHC,WAAY,GAAIC,MAAKJ,EAAYK,MAIlC,IAAIrB,UAAUsB,QAAUtB,UAAUsB,OAAOtB,UAAUuB,OAAQ,CAC1D,GAAIC,GAAexB,UAAUsB,OAAOtB,UAAUuB;AAC9CL,EAAWM,EAAaC,YAAcT,EAAYU,OAElD,IAAIC,GAAM3B,UAAU4B,sBAAsBnB,EAC1CS,GAAWC,WAAaK,EAAaK,SAASF,EAAIG,GAClDZ,EAAWa,SAAW/B,UAAUqB,KAAKW,IAAId,EAAWC,WAAYK,EAAaS,OAAQT,EAAaU,QAE/FlC,UAAUmC,QAAUnC,UAAUmC,OAAOnC,UAAUuB,SAClDL,EAAWlB,UAAUmC,OAAOnC,UAAUuB,OAAOa,QAAUpB,EAAYU,SAGpE1B,UAAUqC,YAAYnB,GAEtBlB,UAAUsC,YAAY5B,IAxCvB,GAEID,GAFA8B,EAAU,GAAKC,wBACfC,EAAMF,EAAQG,QAElBH,GAAQG,SAAW,SAASC,GAE3B,MADAlC,GAAakC,GAAKC,MACXH,EAAII,MAAMjC,KAAMkC,YAsCxBP,EAAQQ,eAAe/C,UAAUgD,KAAmB,aAAE,IACrDC,MAAO,SAAS9C,EAAkBC,EAAaC,EAAkBC;AAChEJ,EAAQC,EAAkBC,EAAaC,EAAkBC,IAE1D4C,QAAS,SAASC,EAAYC,GAC7B,MAAOD,IAERE,SAAU,SAASF,GAClB,MAAOvC,SAIN0C,OAAOC,aACTD,OAAOC,YAAYC,QAAQxD,UAAUgD,KAAmB,aAAE,IACzDS,OAAQ,SAAUC,EAAQC,EAAQC,EAAGjB,GACpC,GAAIkB,GAAeP,OAAOC,YAAYO,UAAUJ,EAChDjD,GAAakC,EACbzC,EAAQwD,EAAQG,EAAcF,EAAQhB,EAAEgB,QAAUhB,EAAEoB,aAGrDC,SAAU,SAAUN,EAAQC,EAAQhB,GACnC,MAAOgB,MAEN"}
\ No newline at end of file diff --git a/codebase/sources/ext/dhtmlxscheduler_pdf.js b/codebase/sources/ext/dhtmlxscheduler_pdf.js index 6a980c6..8057894 100644 --- a/codebase/sources/ext/dhtmlxscheduler_pdf.js +++ b/codebase/sources/ext/dhtmlxscheduler_pdf.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. diff --git a/codebase/sources/ext/dhtmlxscheduler_pdf.js.map b/codebase/sources/ext/dhtmlxscheduler_pdf.js.map index 0cf6c67..f2fddd9 100644 --- a/codebase/sources/ext/dhtmlxscheduler_pdf.js.map +++ b/codebase/sources/ext/dhtmlxscheduler_pdf.js.map @@ -1 +1 @@ -{"version":3,"file":"dhtmlxscheduler_pdf.js","sources":["dhtmlxscheduler_pdf.js"],"names":["clean_html","val","replace","newline_regexp","html_regexp","x_norm","x","offset","parseFloat","isNaN","w","colsWidth","width","cols","dx","x_norm_event","is_left","r","header","scheduler","_els","dhx_cal_header","childNodes","els","i","length","el","style","parentNode","y_norm","y","dy","get_style","node","window","getComputedStyle","currentStyle","de_day","n","parseInt","left","_cols","de_week","top","_colsS","heights","xml_start","tag","xml_end","xml_top","profile","footer","xml","xml_body_header","mode","_mode","matrix","render","dhx_cal_date","innerHTML","xh","dhx_cal_data","getElementsByTagName","className","xml_month_scale","xml_month","yh","firstChild","rows","cells","offsetHeight","tagName","indexOf","previousSibling","days","j","push","join","xhs","second_scale","offsetWidth","top_width","top_col","xml_body","colors","evs","_rendered","getAttribute","get_visible_events","d","start_date","valueOf","_min_date","end_date","m","getMonth","getFullYear","week_starts","_month","day","getDate","text_color","_get_year_cell","bg_color","Math","floor","date","add","_max_date","zx","zdx","left_norm","config","use_select_menu_space","zy","zdy","height","e_type","split","dets","getEvent","_sday","week","_sweek","_length","xy","month_head_height","rowIndex","dy_copy","parent","to_pdf","start","end","view","url","uid","document","createElement","display","body","appendChild","original_date","_date","original_mode","temp_date","Date","setCurrentView","getElementById","value","encodeURIComponent","submit","removeChild","RegExp","toPDF","apply","this","toPDFRange","templates","api_date","arguments"],"mappings":"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"}
\ No newline at end of file +{"version":3,"file":"dhtmlxscheduler_pdf.js","sources":["dhtmlxscheduler_pdf.js"],"names":["clean_html","val","replace","newline_regexp","html_regexp","x_norm","x","offset","parseFloat","isNaN","w","colsWidth","width","cols","dx","x_norm_event","is_left","r","header","scheduler","_els","dhx_cal_header","childNodes","els","i","length","el","style","parentNode","y_norm","y","dy","get_style","node","window","getComputedStyle","currentStyle","de_day","n","parseInt","left","_cols","de_week","top","_colsS","heights","xml_start","tag","xml_end","xml_top","profile","footer","xml","xml_body_header","mode","_mode","matrix","render","dhx_cal_date","innerHTML","xh","dhx_cal_data","getElementsByTagName","className","xml_month_scale","xml_month","yh","firstChild","rows","cells","offsetHeight","tagName","indexOf","previousSibling","days","j","push","join","xhs","second_scale","offsetWidth","top_width","top_col","xml_body","colors","evs","_rendered","getAttribute","get_visible_events","d","start_date","valueOf","_min_date","end_date","m","getMonth","getFullYear","week_starts","_month","day","getDate","text_color","_get_year_cell","bg_color","Math","floor","date","add","_max_date","zx","zdx","left_norm","config","use_select_menu_space","zy","zdy","height","e_type","split","dets","getEvent","_sday","week","_sweek","_length","xy","month_head_height","rowIndex","dy_copy","parent","to_pdf","start","end","view","url","uid","document","createElement","display","body","appendChild","original_date","_date","original_mode","temp_date","Date","setCurrentView","getElementById","value","encodeURIComponent","submit","removeChild","RegExp","toPDF","apply","this","toPDFRange","templates","api_date","arguments"],"mappings":"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"}
\ No newline at end of file diff --git a/codebase/sources/ext/dhtmlxscheduler_quick_info.js b/codebase/sources/ext/dhtmlxscheduler_quick_info.js index f54117c..ce80f55 100644 --- a/codebase/sources/ext/dhtmlxscheduler_quick_info.js +++ b/codebase/sources/ext/dhtmlxscheduler_quick_info.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -45,6 +45,8 @@ scheduler.showQuickInfo = function(id){ this._quick_info_box = this._init_quick_info(pos); this._fill_quick_data(id); this._show_quick_info(pos); + + this.callEvent("onQuickInfo", [id]); } }; scheduler._hideQuickInfo = function(){ @@ -52,12 +54,15 @@ scheduler._hideQuickInfo = function(){ }; scheduler.hideQuickInfo = function(forced){ var qi = this._quick_info_box; + var eventId = this._quick_info_box_id; this._quick_info_box_id = 0; if (qi && qi.parentNode){ - var width = qi._offsetWidth; - if (scheduler.config.quick_info_detached) + var width = qi.offsetWidth; + if (scheduler.config.quick_info_detached) { + this.callEvent("onAfterQuickInfo", [eventId]); return qi.parentNode.removeChild(qi); + } if (qi.style.right == "auto") qi.style.left = -width + "px"; @@ -66,6 +71,8 @@ scheduler.hideQuickInfo = function(forced){ if (forced) qi.parentNode.removeChild(qi); + + this.callEvent("onAfterQuickInfo", [eventId]); } }; dhtmlxEvent(window, "keydown", function(e){ @@ -99,7 +106,7 @@ scheduler._show_quick_info = function(pos){ qi.style.right = "-10px"; },1); } - qi.className = qi.className.replace("dhx_qi_left","").replace("dhx_qi_right","")+" dhx_qi_"+(pos==1?"left":"right"); + qi.className = qi.className.replace(" dhx_qi_left","").replace(" dhx_qi_right","")+" dhx_qi_"+(pos.dx==1?"left":"right"); } }; scheduler.attachEvent("onTemplatesReady", function(){ @@ -120,11 +127,15 @@ scheduler._init_quick_info = function(){ var sizes = scheduler.xy; var qi = this._quick_info_box = document.createElement("div"); + + this._waiAria.quickInfoAttr(qi); + qi.className = "dhx_cal_quick_info"; if (scheduler.$testmode) qi.className += " dhx_no_animate"; //title - var html = "<div class=\"dhx_cal_qi_title\" style=\"height:"+sizes.quick_info_title+"px\">" + + var ariaAttr = this._waiAria.quickInfoHeaderAttrString(); + var html = "<div class=\"dhx_cal_qi_title\" style=\"height:"+sizes.quick_info_title+"px\" "+ariaAttr+">" + "<div class=\"dhx_cal_qi_tcontent\"></div><div class=\"dhx_cal_qi_tdate\"></div>" + "</div>" + "<div class=\"dhx_cal_qi_content\"></div>"; @@ -132,8 +143,10 @@ scheduler._init_quick_info = function(){ //buttons html += "<div class=\"dhx_cal_qi_controls\" style=\"height:"+sizes.quick_info_buttons+"px\">"; var buttons = scheduler.config.icons_select; - for (var i = 0; i < buttons.length; i++) - html += "<div class=\"dhx_qi_big_icon "+buttons[i]+"\" title=\""+scheduler.locale.labels[buttons[i]]+"\"><div class='dhx_menu_icon " + buttons[i] + "'></div><div>"+scheduler.locale.labels[buttons[i]]+"</div></div>"; + for (var i = 0; i < buttons.length; i++) { + var ariaAttr = this._waiAria.quickInfoButtonAttrString(this.locale.labels[buttons[i]]); + html += "<div "+ariaAttr+" class=\"dhx_qi_big_icon " + buttons[i] + "\" title=\"" + scheduler.locale.labels[buttons[i]] + "\"><div class='dhx_menu_icon " + buttons[i] + "'></div><div>" + scheduler.locale.labels[buttons[i]] + "</div></div>"; + } html += "</div>"; qi.innerHTML = html; @@ -154,7 +167,7 @@ scheduler._qi_button_click = function(node){ var box = scheduler._quick_info_box; if (!node || node == box) return; - var mask = node.className; + var mask = scheduler._getClassName(node); if (mask.indexOf("_icon")!=-1){ var id = scheduler._quick_info_box_id; scheduler._click.buttons[mask.split(" ")[1].replace("icon_","")](id); @@ -189,10 +202,17 @@ scheduler._fill_quick_data = function(id){ scheduler._quick_info_box_id = id; //title content + + var header = { + content: scheduler.templates.quick_info_title(ev.start_date, ev.end_date, ev), + date: scheduler.templates.quick_info_date(ev.start_date, ev.end_date, ev) + }; var titleContent = qi.firstChild.firstChild; - titleContent.innerHTML = scheduler.templates.quick_info_title(ev.start_date, ev.end_date, ev); + titleContent.innerHTML = header.content; var titleDate = titleContent.nextSibling; - titleDate.innerHTML = scheduler.templates.quick_info_date(ev.start_date, ev.end_date, ev); + titleDate.innerHTML = header.date; + + scheduler._waiAria.quickInfoHeader(qi, [header.content, header.date].join(" ")); //main content var main = qi.firstChild.nextSibling; diff --git a/codebase/sources/ext/dhtmlxscheduler_quick_info.js.map b/codebase/sources/ext/dhtmlxscheduler_quick_info.js.map index c316de0..baae7cb 100644 --- a/codebase/sources/ext/dhtmlxscheduler_quick_info.js.map +++ b/codebase/sources/ext/dhtmlxscheduler_quick_info.js.map @@ -1 +1 @@ -{"version":3,"file":"dhtmlxscheduler_quick_info.js","sources":["dhtmlxscheduler_quick_info.js"],"names":["scheduler","config","icons_select","details_on_create","show_quick_info","xy","menu_width","attachEvent","id","showQuickInfo","events","hiding_function","_hideQuickInfo","i","length","templates","quick_info_title","start","end","ev","text","substr","quick_info_content","details","quick_info_date","isOneDayEvent","day_date","event_header","week_date","this","_quick_info_box_id","hideQuickInfo","pos","_get_event_counter_part","_quick_info_box","_init_quick_info","_fill_quick_data","_show_quick_info","forced","qi","parentNode","width","_offsetWidth","quick_info_detached","removeChild","style","right","left","dhtmlxEvent","window","e","keyCode","_obj","appendChild","offsetWidth","height","offsetHeight","dx","top","dy","scale_height","nav_height","setTimeout","className","replace","box","_quick_info_onscroll_handler","sizes","document","createElement","$testmode","html","quick_info_buttons","buttons","locale","labels","innerHTML","event","_qi_button_click","target","srcElement","_detachDomEvent","_els","node","mask","indexOf","_click","split","domEv","getRenderedEvent","offsetLeft","offsetTop","scrollTop","offsetParent","_x","_y","getEvent","titleContent","firstChild","start_date","end_date","titleDate","nextSibling","main"],"mappings":"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"}
\ No newline at end of file +{"version":3,"file":"dhtmlxscheduler_quick_info.js","sources":["dhtmlxscheduler_quick_info.js"],"names":["scheduler","config","icons_select","details_on_create","show_quick_info","xy","menu_width","attachEvent","id","showQuickInfo","events","hiding_function","_hideQuickInfo","i","length","templates","quick_info_title","start","end","ev","text","substr","quick_info_content","details","quick_info_date","isOneDayEvent","day_date","event_header","week_date","this","_quick_info_box_id","hideQuickInfo","pos","_get_event_counter_part","_quick_info_box","_init_quick_info","_fill_quick_data","_show_quick_info","callEvent","forced","qi","eventId","parentNode","width","offsetWidth","quick_info_detached","removeChild","style","right","left","dhtmlxEvent","window","e","keyCode","_obj","appendChild","height","offsetHeight","dx","top","dy","scale_height","nav_height","setTimeout","className","replace","box","_quick_info_onscroll_handler","sizes","document","createElement","_waiAria","quickInfoAttr","$testmode","ariaAttr","quickInfoHeaderAttrString","html","quick_info_buttons","buttons","quickInfoButtonAttrString","locale","labels","innerHTML","event","_qi_button_click","target","srcElement","_detachDomEvent","_els","node","mask","_getClassName","indexOf","_click","split","domEv","getRenderedEvent","offsetLeft","offsetTop","scrollTop","offsetParent","_x","_y","getEvent","header","content","start_date","end_date","date","titleContent","firstChild","titleDate","nextSibling","quickInfoHeader","join","main"],"mappings":"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"}
\ No newline at end of file diff --git a/codebase/sources/ext/dhtmlxscheduler_readonly.js b/codebase/sources/ext/dhtmlxscheduler_readonly.js index bd6e607..f5673e1 100644 --- a/codebase/sources/ext/dhtmlxscheduler_readonly.js +++ b/codebase/sources/ext/dhtmlxscheduler_readonly.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -129,9 +129,9 @@ scheduler.attachEvent("onTemplatesReady", function() { this.setLightboxSize(); n.onclick = function(e) { var src = e ? e.target : event.srcElement; - if (!src.className) src = src.previousSibling; + if (!scheduler._getClassName(src)) src = src.previousSibling; if (src && src.className) - switch (src.className) { + switch (scheduler._getClassName(src)) { case "dhx_cancel_btn": scheduler.callEvent("onEventCancel", [scheduler._lightbox_id]); scheduler._edit_stop_event(scheduler.getEvent(scheduler._lightbox_id), false); @@ -139,6 +139,33 @@ scheduler.attachEvent("onTemplatesReady", function() { break; } }; + + n.onkeydown=function(e){ + var event = e || window.event; + var target = e.target || e.srcElement; + var buttonTarget = target.querySelector("[dhx_button]"); + + if(!buttonTarget){ + buttonTarget = target.parentNode.querySelector(".dhx_custom_button, .dhx_readonly"); + } + + switch((e||event).keyCode){ + case 32:{//space + if ((e||event).shiftKey) return; + if(buttonTarget && buttonTarget.click){ + buttonTarget.click(); + } + break; + } + case scheduler.keys.edit_cancel: + scheduler.cancel_lightbox(); + break; + default: + break; + } + + }; + } return res; }; diff --git a/codebase/sources/ext/dhtmlxscheduler_readonly.js.map b/codebase/sources/ext/dhtmlxscheduler_readonly.js.map index 5c1dac0..105a84a 100644 --- a/codebase/sources/ext/dhtmlxscheduler_readonly.js.map +++ b/codebase/sources/ext/dhtmlxscheduler_readonly.js.map @@ -1 +1 @@ -{"version":3,"file":"dhtmlxscheduler_readonly.js","sources":["dhtmlxscheduler_readonly.js"],"names":["scheduler","attachEvent","txt_replace","tag","d","n","text","txts","getElementsByTagName","txtt","i","length","t","document","createElement","className","innerHTML","parentNode","insertBefore","removeChild","disabled","checked","original_sns","config","lightbox","sections","slice","original_left_buttons","buttons_left","original_right_buttons","buttons_right","id","this","readonly_form","getEvent","readonly","readonly_active","focus","sns","type","splice","forbidden_buttons","button_arrays","forbidden_button","k","button_array","index","p","resetLightbox","old","_fill_lightbox","lb","getLightbox","style","visibility","display","res","apply","arguments","_lightbox_r","cloneNode","uid","a","value","options","Math","max","selectedIndex","olds","call","_lightbox","drag_lightbox","firstChild","onmousedown","_ready_to_dnd","setLightboxSize","onclick","e","src","target","event","srcElement","previousSibling","callEvent","_lightbox_id","_edit_stop_event","hide_lightbox","showCover","hold"],"mappings":"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"}
\ No newline at end of file +{"version":3,"file":"dhtmlxscheduler_readonly.js","sources":["dhtmlxscheduler_readonly.js"],"names":["scheduler","attachEvent","txt_replace","tag","d","n","text","txts","getElementsByTagName","txtt","i","length","t","document","createElement","className","innerHTML","parentNode","insertBefore","removeChild","disabled","checked","original_sns","config","lightbox","sections","slice","original_left_buttons","buttons_left","original_right_buttons","buttons_right","id","this","readonly_form","getEvent","readonly","readonly_active","focus","sns","type","splice","forbidden_buttons","button_arrays","forbidden_button","k","button_array","index","p","resetLightbox","old","_fill_lightbox","lb","getLightbox","style","visibility","display","res","apply","arguments","_lightbox_r","cloneNode","uid","a","value","options","Math","max","selectedIndex","olds","call","_lightbox","drag_lightbox","firstChild","onmousedown","_ready_to_dnd","setLightboxSize","onclick","e","src","target","event","srcElement","_getClassName","previousSibling","callEvent","_lightbox_id","_edit_stop_event","hide_lightbox","onkeydown","window","buttonTarget","querySelector","keyCode","shiftKey","click","keys","edit_cancel","cancel_lightbox","showCover","hold"],"mappings":"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"}
\ No newline at end of file diff --git a/codebase/sources/ext/dhtmlxscheduler_recurring.js b/codebase/sources/ext/dhtmlxscheduler_recurring.js index 002c0a7..fa8886d 100644 --- a/codebase/sources/ext/dhtmlxscheduler_recurring.js +++ b/codebase/sources/ext/dhtmlxscheduler_recurring.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -73,6 +73,11 @@ scheduler.form_blocks["recurring"] = { return !multiselect ? col.value : [col.value]; }, + _get_node_numeric_value: function(els, name){ + var value = scheduler.form_blocks["recurring"]._get_node_value(els, name); + return ((value * 1) || 0); + }, + _set_node_value: function(els, name, value){ var col = els[name]; if(!col) return; @@ -249,13 +254,15 @@ scheduler.form_blocks["recurring"] = { var get_rcode = { month:function(code, dates) { var get_value = scheduler.form_blocks["recurring"]._get_node_value; + var get_numeric_value = scheduler.form_blocks["recurring"]._get_node_numeric_value; + if (get_value(els, "month_type") == "d") { - code.push(Math.max(1, get_value(els, "month_count"))); + code.push(Math.max(1, get_numeric_value(els, "month_count"))); dates.start.setDate(get_value(els, "month_day")); } else { - code.push(Math.max(1, get_value(els, "month_count2"))); + code.push(Math.max(1, get_numeric_value(els, "month_count2"))); code.push( get_value(els, "month_day2")); - code.push(Math.max(1, get_value(els, "month_week2"))); + code.push(Math.max(1, get_numeric_value(els, "month_week2"))); if (!scheduler.config.repeat_precise){ dates.start.setDate(1); } @@ -264,8 +271,9 @@ scheduler.form_blocks["recurring"] = { }, week:function(code, dates) { var get_value = scheduler.form_blocks["recurring"]._get_node_value; + var get_numeric_value = scheduler.form_blocks["recurring"]._get_node_numeric_value; - code.push(Math.max(1, get_value(els, "week_count"))); + code.push(Math.max(1, get_numeric_value(els, "week_count"))); code.push(""); code.push(""); var t = []; @@ -298,9 +306,10 @@ scheduler.form_blocks["recurring"] = { }, day:function(code) { var get_value = scheduler.form_blocks["recurring"]._get_node_value; + var get_numeric_value = scheduler.form_blocks["recurring"]._get_node_numeric_value; if (get_value(els, "day_type") == "d") { - code.push(Math.max(1, get_value(els, "day_count"))); + code.push(Math.max(1, get_numeric_value(els, "day_count"))); } else { code.push("week"); @@ -566,13 +575,18 @@ scheduler._rec_temp = []; scheduler.attachEvent("onEventIdChange", function(id, new_id) { if (this._ignore_call) return; this._ignore_call = true; - + if(scheduler._rec_markers[id]){ //important for for correct work of scheduler.getEvents(from, to) and collision detection scheduler._rec_markers[new_id] = scheduler._rec_markers[id]; delete scheduler._rec_markers[id]; } + if(scheduler._rec_markers_pull[id]){ + scheduler._rec_markers_pull[new_id] = scheduler._rec_markers_pull[id]; + delete scheduler._rec_markers_pull[id]; + } + for (var i = 0; i < this._rec_temp.length; i++) { var tev = this._rec_temp[i]; if (tev.event_pid == id) { @@ -581,6 +595,22 @@ scheduler.attachEvent("onEventIdChange", function(id, new_id) { } } + for(var i in this._rec_markers){ + var tev = this._rec_markers[i]; + if(tev.event_pid == id){ + tev.event_pid = new_id; + tev._pid_changed = true; + } + } + + var el = scheduler._rec_markers[new_id]; + if(el && el._pid_changed) { + delete el._pid_changed; + setTimeout(function() { + scheduler.callEvent("onEventChanged", [new_id, scheduler.getEvent(new_id)]); + }, 1); + } + delete this._ignore_call; }); scheduler.attachEvent("onConfirmedBeforeEventDelete", function(id) { @@ -883,13 +913,15 @@ scheduler.transpose_type = function(type) { } } }; -scheduler.repeat_date = function(ev, stack, non_render, from, to) { +scheduler.repeat_date = function(ev, stack, non_render, from, to, maxCount) { from = from || this._min_date; to = to || this._max_date; - + var max = maxCount || -1; var td = new Date(ev.start_date.valueOf()); + var visibleCount = 0; + if (!ev.rec_pattern && ev.rec_type) ev.rec_pattern = ev.rec_type.split("#")[0]; @@ -897,7 +929,7 @@ scheduler.repeat_date = function(ev, stack, non_render, from, to) { scheduler.date["transpose_" + ev.rec_pattern](td, from); while (td < ev.start_date || scheduler._fix_daylight_saving_date(td,from,ev,td,new Date(td.valueOf() + ev.event_length * 1000)).valueOf() <= from.valueOf() || td.valueOf() + ev.event_length * 1000 <= from.valueOf()) td = this.date.add(td, 1, ev.rec_pattern); - while (td < to && td < ev.end_date) { + while (td < to && td < ev.end_date && (max < 0 || visibleCount < max)) { var timestamp = (scheduler.config.occurrence_timestamp_in_utc) ? Date.UTC(td.getFullYear(), td.getMonth(), td.getDate(), td.getHours(), td.getMinutes(), td.getSeconds()) : td.valueOf(); var ch = this._get_rec_marker(timestamp, ev.id); if (!ch) { // unmodified element of series @@ -922,8 +954,15 @@ scheduler.repeat_date = function(ev, stack, non_render, from, to) { this._rec_temp.push(copy); } + visibleCount++; + } else - if (non_render) stack.push(ch); + if (non_render){ + if(ch.rec_type != "none"){ + visibleCount++; + } + stack.push(ch); + } td = this.date.add(td, 1, ev.rec_pattern); } @@ -944,13 +983,9 @@ scheduler._fix_daylight_saving_date = function(start_date, end_date, ev, counter }; scheduler.getRecDates = function(id, max) { var ev = typeof id == "object" ? id : scheduler.getEvent(id); - var count = 0; - var result = []; + var recurrings = []; max = max || 100; - - var td = new Date(ev.start_date.valueOf()); - var from = new Date(td.valueOf()); - + if (!ev.rec_type) { return [ { start_date: ev.start_date, end_date: ev.end_date } @@ -959,34 +994,16 @@ scheduler.getRecDates = function(id, max) { if (ev.rec_type == "none") { return []; } - this.transpose_type(ev.rec_pattern); - scheduler.date["transpose_" + ev.rec_pattern](td, from); - - while (td < ev.start_date || (td.valueOf() + ev.event_length * 1000) <= from.valueOf()) - td = this.date.add(td, 1, ev.rec_pattern); - while (td < ev.end_date) { - var ch = this._get_rec_marker(td.valueOf(), ev.id); - var res = true; - if (!ch) { // unmodified element of series - var sed = new Date(td); - var ted = new Date(td.valueOf() + ev.event_length * 1000); - ted = scheduler._fix_daylight_saving_date(sed, ted, ev, td, ted); + scheduler.repeat_date(ev, recurrings, true, ev.start_date, ev.end_date, max); - result.push({start_date:sed, end_date:ted}); - } else if(ch.rec_type == "none") { - res = false; - } else { - result.push({ start_date: ch.start_date, end_date: ch.end_date }); - } - - td = this.date.add(td, 1, ev.rec_pattern); - if (res) { - count++; - if (count == max) - break; + var result = []; + for(var i = 0; i < recurrings.length; i++){ + if(recurrings[i].rec_type != "none"){ + result.push({start_date: recurrings[i].start_date, end_date: recurrings[i].end_date}); } } + return result; }; scheduler.getEvents = function(from, to) { diff --git a/codebase/sources/ext/dhtmlxscheduler_recurring.js.map b/codebase/sources/ext/dhtmlxscheduler_recurring.js.map index d7ba61f..77db97c 100644 --- a/codebase/sources/ext/dhtmlxscheduler_recurring.js.map +++ b/codebase/sources/ext/dhtmlxscheduler_recurring.js.map @@ -1 +1 @@ -{"version":3,"file":"dhtmlxscheduler_recurring.js","sources":["dhtmlxscheduler_recurring.js"],"names":["scheduler","config","occurrence_timestamp_in_utc","recurring_workdays","form_blocks","_get_node","node","document","getElementById","style","display","_outer_html","getOuterHTML","n","h","div","createElement","appendChild","cloneNode","innerHTML","outerHTML","render","sns","form","rec","html","__recurring_template","_ds","_get_form_node","els","name","value","col","nodeName","length","i","_get_node_value","multiselect","res","checked","push","_set_node_value","hash_value","_init_set_value","ev","register_els","inps","inp","nodeType","change_current_view","$","this","setLightboxSize","get_repeat_code","dates","code","get_value","get_rcode","repeat","end","get_end_rule","Date","str_date","transpose_type","join","Math","max","transp","date","add","start","set_end_rule","has_values","ind","set_repeat_code","set_value","data","split","set_rcode","end_date","include_end_by","date_str","onchange","onclick","block","start_date","_end_date","str_date_format","str_to_date","repeat_date","date_to_str","top","getElementsByTagName","repeat_date_of_end","formatter","_currentDate","a","_get_repeat_code","month","setDate","repeat_precise","_start","week","t","day","getDay","start_exists","sort","transpose_day_week","week_start","splice","year","setMonth","d","getDate","getMonth","_set_repeat_code","elements","el","_lightbox","_rec_init_done","rf","open","rec_type","_is_modified_occurence","blocked","ds","button_click","previousSibling","firstChild","actual_dates","formSection","getValue","_start_date","rec_pattern","_get_button","header","_get_form","recurring","cont","_toggle_block","close","height","backgroundPosition","nextSibling","locale","labels","button_recurring","button_recurring_open","focus","index","section","_rec_markers","_rec_markers_pull","_add_rec_marker","time","_pid_time","id","event_pid","_get_rec_marker","ch","_get_rec_markers","_rec_temp","old_add_event","addEvent","text","extra_data","ev_id","apply","arguments","getEvent","event_length","attachEvent","new_id","_ignore_call","tev","changeEventId","_is_virtual_event","nid","uid","tid","nev","_copy_event","timestamp","_lightbox_id","_roll_back_dates","sub","hasOwnProperty","deleteEvent","_events","setEvent","_loading","_not_render","isEventFound","k","_rendered","getAttribute","_select_id","is_new_event","render_view_data","valueOf","setFullYear","getFullYear","toString","indexOf","_validId","showLightbox_rec","showLightbox","c","lightbox_recurring","pid","isVirtual","showSeries","event","confirm_recurring","that","dhtmlx","modalbox","title","title_confirm_recurring","width","position","buttons","button_edit_series","button_edit_occurrence","icon_cancel","callback","get_visible_events_rec","get_visible_events","only_timed","stack","out","old","isOneDayEvent","call","old_update_event","updateEvent","update_view","transponse_size","day_week","sd","cday","nday","list","cor","size","cor2","start_on_monday","type","f","str","gf","step","days","nd","td","delta","floor","inc","count","ceil","non_render","from","to","_min_date","_max_date","_fix_daylight_saving_date","UTC","getHours","getMinutes","getSeconds","ted","copy","_timed","_table_view","multi_day","counter","default_date","shift","getTimezoneOffset","getRecDates","result","sed","getEvents","sev","lightbox","sections","map_to","button","_copy_dummy"],"mappings":"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"}
\ No newline at end of file +{"version":3,"file":"dhtmlxscheduler_recurring.js","sources":["dhtmlxscheduler_recurring.js"],"names":["scheduler","config","occurrence_timestamp_in_utc","recurring_workdays","form_blocks","_get_node","node","document","getElementById","style","display","_outer_html","getOuterHTML","n","h","div","createElement","appendChild","cloneNode","innerHTML","outerHTML","render","sns","form","rec","html","__recurring_template","_ds","_get_form_node","els","name","value","col","nodeName","length","i","_get_node_value","multiselect","res","checked","push","_get_node_numeric_value","_set_node_value","hash_value","_init_set_value","ev","register_els","inps","inp","nodeType","change_current_view","$","this","setLightboxSize","get_repeat_code","dates","code","get_value","get_rcode","repeat","end","get_end_rule","Date","str_date","transpose_type","join","Math","max","transp","date","add","start","set_end_rule","has_values","ind","set_repeat_code","set_value","data","split","set_rcode","end_date","include_end_by","date_str","onchange","onclick","block","start_date","_end_date","str_date_format","str_to_date","repeat_date","date_to_str","top","getElementsByTagName","repeat_date_of_end","formatter","_currentDate","a","_get_repeat_code","month","get_numeric_value","setDate","repeat_precise","_start","week","t","day","getDay","start_exists","sort","transpose_day_week","week_start","splice","year","setMonth","d","getDate","getMonth","_set_repeat_code","elements","el","_lightbox","_rec_init_done","rf","open","rec_type","_is_modified_occurence","blocked","ds","button_click","previousSibling","firstChild","actual_dates","formSection","getValue","_start_date","rec_pattern","_get_button","header","_get_form","recurring","cont","_toggle_block","close","height","backgroundPosition","nextSibling","locale","labels","button_recurring","button_recurring_open","focus","index","section","_rec_markers","_rec_markers_pull","_add_rec_marker","time","_pid_time","id","event_pid","_get_rec_marker","ch","_get_rec_markers","_rec_temp","old_add_event","addEvent","text","extra_data","ev_id","apply","arguments","getEvent","event_length","attachEvent","new_id","_ignore_call","tev","changeEventId","_pid_changed","setTimeout","callEvent","_is_virtual_event","nid","uid","tid","nev","_copy_event","timestamp","_lightbox_id","_roll_back_dates","sub","hasOwnProperty","deleteEvent","_events","setEvent","_loading","_not_render","isEventFound","k","_rendered","getAttribute","_select_id","is_new_event","render_view_data","valueOf","setFullYear","getFullYear","toString","indexOf","_validId","showLightbox_rec","showLightbox","c","lightbox_recurring","pid","isVirtual","showSeries","event","confirm_recurring","that","dhtmlx","modalbox","title","title_confirm_recurring","width","position","buttons","button_edit_series","button_edit_occurrence","icon_cancel","callback","get_visible_events_rec","get_visible_events","only_timed","stack","out","old","isOneDayEvent","call","old_update_event","updateEvent","update_view","transponse_size","day_week","sd","cday","nday","list","cor","size","cor2","start_on_monday","type","f","str","gf","step","days","nd","td","delta","floor","inc","count","ceil","non_render","from","to","maxCount","_min_date","_max_date","visibleCount","_fix_daylight_saving_date","UTC","getHours","getMinutes","getSeconds","ted","copy","_timed","_table_view","multi_day","counter","default_date","shift","getTimezoneOffset","getRecDates","recurrings","result","getEvents","sev","lightbox","sections","map_to","button","_copy_dummy"],"mappings":"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"}
\ No newline at end of file diff --git a/codebase/sources/ext/dhtmlxscheduler_serialize.js b/codebase/sources/ext/dhtmlxscheduler_serialize.js index b29212d..cc58434 100644 --- a/codebase/sources/ext/dhtmlxscheduler_serialize.js +++ b/codebase/sources/ext/dhtmlxscheduler_serialize.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. diff --git a/codebase/sources/ext/dhtmlxscheduler_serialize.js.map b/codebase/sources/ext/dhtmlxscheduler_serialize.js.map index cb2e420..0f5b761 100644 --- a/codebase/sources/ext/dhtmlxscheduler_serialize.js.map +++ b/codebase/sources/ext/dhtmlxscheduler_serialize.js.map @@ -1 +1 @@ -{"version":3,"file":"dhtmlxscheduler_serialize.js","sources":["dhtmlxscheduler_serialize.js"],"names":["scheduler","_get_serializable_data","res","a","this","_events","ev","id","toString","indexOf","data_attributes","attrs","format","templates","xml_format","all_events","name","substr","push","toXML","header","xml","i","length","join","_serialize_json_value","value","replace","toJSON","json","line","toICal","start","end","date","date_to_str","full_day_format","ical","_timed","start_date","getHours","getMinutes","end_date","text"],"mappings":";;;;;;;;AAQAA,UAAUC,uBAAyB,WAClC,GAAIC,KACJ,KAAK,GAAIC,KAAKC,MAAKC,QAAQ,CAC1B,GAAIC,GAAKF,KAAKC,QAAQF,EACe,KAAjCG,EAAGC,GAAGC,WAAWC,QAAQ,OAC5BP,EAAII,EAAGC,IAAMD,GAGf,MAAOJ,IAIRF,UAAUU,gBAAgB,WACzB,GAAIC,MACAC,EAASZ,UAAUa,UAAUC,WAC7BC,EAAaX,KAAKH,wBACtB,KAAK,GAAIE,KAAKY,GAAW,CACxB,GAAIT,GAAKS,EAAWZ,EACpB,KAAK,GAAIa,KAAQV,GACO,KAAnBU,EAAKC,OAAO,EAAE,IACjBN,EAAMO,MAAMF,EAAe,cAARA,GAAgC,YAARA,EAAoBJ,EAAO,MACxE,OAED,MAAOD,IAGRX,UAAUmB,MAAQ,SAASC,GAC1B,GAAIC,MACAV,EAAQP,KAAKM,kBAEbK,EAAaX,KAAKH,wBACtB,KAAK,GAAIE,KAAKY,GAAW;AACxB,GAAIT,GAAKS,EAAWZ,EAEpBkB,GAAIH,KAAK,UACT,KAAK,GAAII,GAAE,EAAGA,EAAIX,EAAMY,OAAQD,IAC/BD,EAAIH,KAAK,IAAIP,EAAMW,GAAG,GAAG,cAAcX,EAAMW,GAAG,GAAGX,EAAMW,GAAG,GAAGhB,EAAGK,EAAMW,GAAG,KAAKhB,EAAGK,EAAMW,GAAG,KAAK,QAAQX,EAAMW,GAAG,GAAG,IAEtHD,GAAIH,KAAK,YAEV,OAAQE,GAAQ,IAAI,SAASC,EAAIG,KAAK,MAAM,WAG7CxB,UAAUyB,sBAAwB,SAASC,GAY1C,MAXa,QAAVA,GAAmC,iBAAVA,GAC3BA,EAAQ,GAAKA,GAETA,GAAmB,IAAVA,IACZA,EAAQ,IAETA,EAAQ,IAAMA,EAAMlB,WACnBmB,QAAQ,MAAM,IACdA,QAAQ,MAAM,QACdA,QAAQ,MAAO,OAAS,KAEnBD,GAGR1B,UAAU4B,OAAS,WAClB,GAAIC,MAAWH,EAAQ,GACnBf,EAAQP,KAAKM,kBACbK,EAAaX,KAAKH;;AACtB,IAAK,GAAIE,KAAKY,GAAW,CAIxB,IAAK,GAHDT,GAAKS,EAAWZ,GAEhB2B,KACKR,EAAE,EAAGA,EAAIX,EAAMY,OAAQD,IAC/BI,EAASf,EAAMW,GAAG,GAAMX,EAAMW,GAAG,GAAGhB,EAAGK,EAAMW,GAAG,KAAOhB,EAAGK,EAAMW,GAAG,IAEnEQ,EAAKZ,KAAK,KAAKP,EAAMW,GAAG,GAAG,MAAOlB,KAAKqB,sBAAsBC,GAE9DG,GAAKX,KAAK,IAAIY,EAAKN,KAAK,KAAK,KAE9B,MAAO,IAAIK,EAAKL,KAAK,OAAO,KAI7BxB,UAAU+B,OAAS,SAASX,GAC3B,GAAIY,GAAQ,0FACRC,EAAM,gBACNrB,EAASZ,UAAUkC,KAAKC,YAAY,iBACpCC,EAAkBpC,UAAUkC,KAAKC,YAAY,UAE7CE,KACAtB,EAAaX,KAAKH,wBACtB,KAAK,GAAIE,KAAKY,GAAW,CACxB,GAAIT,GAAKS,EAAWZ;;AAGpBkC,EAAKnB,KAAK,gBAITmB,EAAKnB,KAHDZ,EAAGgC,SAAYhC,EAAGiC,WAAWC,YAAelC,EAAGiC,WAAWE,cAGpD,WAAW7B,EAAON,EAAGiC,YAFrB,WAAWH,EAAgB9B,EAAGiC,aAMxCF,EAAKnB,KAHDZ,EAAGgC,SAAYhC,EAAGoC,SAASF,YAAelC,EAAGoC,SAASD,cAGhD,SAAS7B,EAAON,EAAGoC,UAFnB,SAASN,EAAgB9B,EAAGoC,WAGvCL,EAAKnB,KAAK,WAAWZ,EAAGqC,MACxBN,EAAKnB,KAAK,cAEX,MAAOc,IAAOZ,GAAQ,IAAI,KAAKiB,EAAKb,KAAK,MAAM,KAAKS"}
\ No newline at end of file +{"version":3,"file":"dhtmlxscheduler_serialize.js","sources":["dhtmlxscheduler_serialize.js"],"names":["scheduler","_get_serializable_data","res","a","this","_events","ev","id","toString","indexOf","data_attributes","attrs","format","templates","xml_format","all_events","name","substr","push","toXML","header","xml","i","length","join","_serialize_json_value","value","replace","toJSON","json","line","toICal","start","end","date","date_to_str","full_day_format","ical","_timed","start_date","getHours","getMinutes","end_date","text"],"mappings":"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"}
\ No newline at end of file diff --git a/codebase/sources/ext/dhtmlxscheduler_tooltip.js b/codebase/sources/ext/dhtmlxscheduler_tooltip.js index 431e3cf..9ee4f28 100644 --- a/codebase/sources/ext/dhtmlxscheduler_tooltip.js +++ b/codebase/sources/ext/dhtmlxscheduler_tooltip.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -18,6 +18,7 @@ dhtmlXTooltip.config = { dhtmlXTooltip.tooltip = document.createElement('div'); dhtmlXTooltip.tooltip.className = dhtmlXTooltip.config.className; +scheduler._waiAria.tooltipAttr(dhtmlXTooltip.tooltip); dhtmlXTooltip.show = function(event, text) { //browser event, text to display if (scheduler.config.touch && !scheduler.config.touch_tooltip) return; @@ -56,12 +57,12 @@ dhtmlXTooltip.show = function(event, text) { //browser event, text to display var tooltip_width = this.tooltip.offsetWidth; var tooltip_height = this.tooltip.offsetHeight; - if ((document.body.offsetWidth - actual_x - tooltip_width) < 0) { // tooltip is out of the right page bound + if ((document.documentElement.clientWidth - actual_x - tooltip_width) < 0) { // tooltip is out of the right page bound if(tooltip_div_style.removeAttribute) tooltip_div_style.removeAttribute("left"); else tooltip_div_style.removeProperty("left"); - tooltip_div_style.right = (document.body.offsetWidth - actual_x + 2 * (dhxTooltip.config.delta_x||0)) + "px"; + tooltip_div_style.right = (document.documentElement.clientWidth - actual_x + 2 * (dhxTooltip.config.delta_x||0)) + "px"; } else { if (actual_x < 0) { // tooltips is out of the left page bound @@ -72,12 +73,12 @@ dhtmlXTooltip.show = function(event, text) { //browser event, text to display } } - if ((document.body.offsetHeight - actual_y - tooltip_height) < 0) { // tooltip is below bottom of the page + if ((document.documentElement.clientHeight - actual_y - tooltip_height) < 0) { // tooltip is below bottom of the page if(tooltip_div_style.removeAttribute) tooltip_div_style.removeAttribute("top"); else tooltip_div_style.removeProperty("top"); - tooltip_div_style.bottom = (document.body.offsetHeight - actual_y - 2 * (dhxTooltip.config.delta_y||0)) + "px"; + tooltip_div_style.bottom = (document.documentElement.clientHeight - actual_y - 2 * (dhxTooltip.config.delta_y||0)) + "px"; } else { if (actual_y < 0) { // tooltip is higher then top of the page @@ -88,6 +89,8 @@ dhtmlXTooltip.show = function(event, text) { //browser event, text to display } } + scheduler._waiAria.tooltipVisibleAttr(this.tooltip); + tooltip_div_style.visibility = "visible"; this.tooltip.onmouseleave = function(e){ e = e || window.event; @@ -117,6 +120,8 @@ dhtmlXTooltip._clearTimeout = function(){ dhtmlXTooltip.hide = function() { if (this.tooltip.parentNode) { + scheduler._waiAria.tooltipHiddenAttr(this.tooltip); + var event_id = this.tooltip.event_id; this.tooltip.event_id = null; this.tooltip.onmouseleave = null; @@ -136,9 +141,7 @@ dhtmlXTooltip.delay = function(method, object, params, delay) { dhtmlXTooltip.isTooltip = function(node) { var res = false; - if (node.className.split(" ")[0] == "dhtmlXTooltip") { - //debugger; - } + while (node && !res) { res = (node.className == this.tooltip.className); node = node.parentNode; @@ -148,14 +151,7 @@ dhtmlXTooltip.isTooltip = function(node) { dhtmlXTooltip.position = function(ev) { ev = ev || window.event; - if (ev.pageX || ev.pageY) //FF, KHTML - return {x:ev.pageX, y:ev.pageY}; - //IE - var d = ((window._isIE) && (document.compatMode != "BackCompat")) ? document.documentElement : document.body; - return { - x:ev.clientX + d.scrollLeft - d.clientLeft, - y:ev.clientY + d.scrollTop - d.clientTop - }; + return {x: ev.clientX, y: ev.clientY}; }; scheduler.attachEvent("onMouseMove", function(event_id, e) { // (scheduler event_id, browser event) @@ -216,10 +212,3 @@ scheduler.attachEvent("onEventDeleted", function() { dhtmlXTooltip.hide(); return true; }); - -/* Could be redifined */ -scheduler.templates.tooltip_date_format = scheduler.date.date_to_str("%Y-%m-%d %H:%i"); - -scheduler.templates.tooltip_text = function(start, end, event) { - return "<b>Event:</b> " + event.text + "<br/><b>Start date:</b> " + scheduler.templates.tooltip_date_format(start) + "<br/><b>End date:</b> " + scheduler.templates.tooltip_date_format(end); -}; diff --git a/codebase/sources/ext/dhtmlxscheduler_tooltip.js.map b/codebase/sources/ext/dhtmlxscheduler_tooltip.js.map index 1c46eda..ee311ea 100644 --- a/codebase/sources/ext/dhtmlxscheduler_tooltip.js.map +++ b/codebase/sources/ext/dhtmlxscheduler_tooltip.js.map @@ -1 +1 @@ -{"version":3,"file":"dhtmlxscheduler_tooltip.js","sources":["dhtmlxscheduler_tooltip.js"],"names":["window","dhtmlXTooltip","scheduler","dhtmlxTooltip","config","className","timeout_to_display","timeout_to_hide","delta_x","delta_y","tooltip","document","createElement","show","event","text","touch","touch_tooltip","dhxTooltip","tooltip_div","this","tooltip_div_style","style","pos","position","target","srcElement","isTooltip","actual_x","x","actual_y","y","visibility","removeAttribute","removeProperty","left","top","innerHTML","body","appendChild","tooltip_width","offsetWidth","tooltip_height","offsetHeight","right","Math","abs","bottom","onmouseleave","e","node","relatedTarget","_obj","parentNode","delay","hide","callEvent","event_id","_clearTimeout","_timeout_id","clearTimeout","removeChild","method","object","params","setTimeout","ret","apply","res","split","ev","pageX","pageY","d","compatMode","documentElement","clientX","scrollLeft","clientLeft","clientY","scrollTop","clientTop","attachEvent","is_tooltip","is_tooltip_target","isTooltipTarget","getEvent","id","templates","tooltip_text","start_date","end_date","evt","_isIE","undefined","i","tooltip_date_format","date","date_to_str","start","end"],"mappings":"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"}
\ No newline at end of file +{"version":3,"file":"dhtmlxscheduler_tooltip.js","sources":["dhtmlxscheduler_tooltip.js"],"names":["window","dhtmlXTooltip","scheduler","dhtmlxTooltip","config","className","timeout_to_display","timeout_to_hide","delta_x","delta_y","tooltip","document","createElement","_waiAria","tooltipAttr","show","event","text","touch","touch_tooltip","dhxTooltip","tooltip_div","this","tooltip_div_style","style","pos","position","target","srcElement","isTooltip","actual_x","x","actual_y","y","visibility","removeAttribute","removeProperty","left","top","innerHTML","body","appendChild","tooltip_width","offsetWidth","tooltip_height","offsetHeight","documentElement","clientWidth","right","Math","abs","clientHeight","bottom","tooltipVisibleAttr","onmouseleave","e","node","relatedTarget","_obj","parentNode","delay","hide","callEvent","event_id","_clearTimeout","_timeout_id","clearTimeout","tooltipHiddenAttr","removeChild","method","object","params","setTimeout","ret","apply","res","ev","clientX","clientY","attachEvent","is_tooltip","is_tooltip_target","isTooltipTarget","getEvent","id","templates","tooltip_text","start_date","end_date","evt","_isIE","pageX","undefined","pageY","i"],"mappings":"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"}
\ No newline at end of file diff --git a/codebase/sources/ext/dhtmlxscheduler_url.js b/codebase/sources/ext/dhtmlxscheduler_url.js index a2c3ad5..d96210c 100644 --- a/codebase/sources/ext/dhtmlxscheduler_url.js +++ b/codebase/sources/ext/dhtmlxscheduler_url.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. diff --git a/codebase/sources/ext/dhtmlxscheduler_wp.js b/codebase/sources/ext/dhtmlxscheduler_wp.js index 326b967..caf5178 100644 --- a/codebase/sources/ext/dhtmlxscheduler_wp.js +++ b/codebase/sources/ext/dhtmlxscheduler_wp.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. diff --git a/codebase/sources/ext/dhtmlxscheduler_year_view.js b/codebase/sources/ext/dhtmlxscheduler_year_view.js index 74e15d3..200b185 100644 --- a/codebase/sources/ext/dhtmlxscheduler_year_view.js +++ b/codebase/sources/ext/dhtmlxscheduler_year_view.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -27,7 +27,8 @@ scheduler.templates.year_tooltip = function(s, e, ev) { scheduler.dblclick_dhx_month_head = function(e) { if (is_year_mode()) { var t = (e.target || e.srcElement); - if (t.parentNode.className.indexOf("dhx_before") != -1 || t.parentNode.className.indexOf("dhx_after") != -1) return false; + var className = scheduler._getClassName(t.parentNode); + if (className.indexOf("dhx_before") != -1 || className.indexOf("dhx_after") != -1) return false; var start = this.templates.xml_date(t.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.getAttribute("date")); start.setDate(parseInt(t.innerHTML, 10)); var end = this.date.add(start, 1, "day"); @@ -127,7 +128,7 @@ scheduler.templates.year_tooltip = function(s, e, ev) { var src = e.target || e.srcElement; if (src.tagName.toLowerCase() == 'a') // fix for active links extension (it adds links to the date in the cell) src = src.parentNode; - if ((src.className || "").indexOf("dhx_year_event") != -1) + if (scheduler._getClassName(src).indexOf("dhx_year_event") != -1) scheduler._showToolTip(from_attr(src.getAttribute("date")), getOffset(src), e, src); else scheduler._hideToolTip(); @@ -151,8 +152,7 @@ scheduler.templates.year_tooltip = function(s, e, ev) { var t = this._els["dhx_cal_data"][0].childNodes[m]; var d = this.week_starts[m] + d.getDate() - 1; - - return t.childNodes[2].firstChild.rows[Math.floor(d / 7)].cells[d % 7].firstChild; + return t.querySelector(".dhx_year_body").firstChild.rows[Math.floor(d / 7)].cells[d % 7].firstChild; }; scheduler._year_marked_cells = {}; @@ -234,15 +234,27 @@ scheduler.templates.year_tooltip = function(s, e, ev) { var left = 0; var week_template = document.createElement("div"); var dummy_date = this.date.week_start(scheduler._currentDate()); + + this._process_ignores(dummy_date, 7, "day", 1); + + var scales_count = 7 - (this._ignores_detected || 0); + var real_count = 0; for (var i = 0; i < 7; i++) { - this._cols[i] = Math.floor(summ / (7 - i)); - this._render_x_header(i, left, dummy_date, week_template); + if(!(this._ignores && this._ignores[i])) { + this._cols[i] = Math.floor(summ / (scales_count - real_count)); + this._render_x_header(i, left, dummy_date, week_template); + summ -= this._cols[i]; + left += this._cols[i]; + real_count++; + } dummy_date = this.date.add(dummy_date, 1, "day"); - summ -= this._cols[i]; - left += this._cols[i]; } week_template.lastChild.className += " dhx_scale_bar_last"; + for(var i = 0; i < week_template.childNodes.length; i++){ + this._waiAria.yearHeadCell(week_template.childNodes[i]); + } + var sd = this.date[this._mode + "_start"](this.date.copy(this._date)); var ssd = sd; var d = null; @@ -251,24 +263,35 @@ scheduler.templates.year_tooltip = function(s, e, ev) { d = document.createElement("DIV"); d.style.cssText = "position:absolute;"; d.setAttribute("date", this.templates.xml_format(sd)); - d.innerHTML = "<div class='dhx_year_month'></div><div class='dhx_year_week'>" + week_template.innerHTML + "</div><div class='dhx_year_body'></div>"; - d.childNodes[0].innerHTML = this.templates.year_month(sd); + d.innerHTML = "<div class='dhx_year_month'></div><div class='dhx_year_grid'><div class='dhx_year_week'>" + week_template.innerHTML + "</div><div class='dhx_year_body'></div></div>"; + + var header = d.querySelector(".dhx_year_month"); + var grid = d.querySelector(".dhx_year_grid"); + var weekHeader = d.querySelector(".dhx_year_week"); + var body = d.querySelector(".dhx_year_body"); + + var headerId = scheduler.uid(); + this._waiAria.yearHeader(header, headerId); + this._waiAria.yearGrid(grid, headerId); + + + header.innerHTML = this.templates.year_month(sd); + + var dd = this.date.week_start(sd); - var ed = this._reset_month_scale(d.childNodes[2], sd, dd); - - var r = d.childNodes[2].firstChild.rows; - for (var k=r.length; k<6; k++) { - r[0].parentNode.appendChild(r[0].cloneNode(true)); - for (var ri= 0, len = r[k].childNodes.length; ri < len; ri++) { - r[k].childNodes[ri].className = "dhx_after"; - r[k].childNodes[ri].firstChild.innerHTML = scheduler.templates.month_day(ed); - ed = scheduler.date.add(ed,1,"day"); - } + var ed = this._reset_month_scale(body, sd, dd, 6); + + var days = body.querySelectorAll("td"); + for(var day = 0; day < days.length; day++){ + this._waiAria.yearDayCell(days[day]); } + + + b.appendChild(d); - d.childNodes[1].style.height = d.childNodes[1].childNodes[0].offsetHeight + "px"; // dhx_year_week should have height property so that day dates would get correct position. dhx_year_week height = height of it's child (with the day name) + weekHeader.style.height = weekHeader.childNodes[0].offsetHeight + "px"; // dhx_year_week should have height property so that day dates would get correct position. dhx_year_week height = height of it's child (with the day name) var dt = Math.round((dy - 190) / 2); d.style.marginTop = dt + "px"; this.set_xy(d, dx - 10, dy - dt - 10, dx * j + 5, dy * i + 5 + scheduler.xy.year_top); @@ -338,10 +361,10 @@ scheduler.templates.year_tooltip = function(s, e, ev) { if(!date) return null; - return scheduler.date.week_start(scheduler.templates.xml_date(date)); + return scheduler.date.week_start(scheduler.date.month_start(from_attr(date))); }; scheduler._locate_year_month_day = function(n){ - return n.className && n.className.indexOf("dhx_year_event") != -1 && n.hasAttribute && n.hasAttribute("date"); + return scheduler._getClassName(n).indexOf("dhx_year_event") != -1 && n.hasAttribute && n.hasAttribute("date"); }; var locateEvent = scheduler._locate_event; @@ -352,7 +375,7 @@ scheduler.templates.year_tooltip = function(s, e, ev) { if(!day || !day.hasAttribute("date")) return null; - var dat = scheduler.templates.xml_date(day.getAttribute("date")); + var dat = from_attr(day.getAttribute("date")); var evs = scheduler.getEvents(dat, scheduler.date.add(dat, 1, "day")); if(!evs.length) return null; diff --git a/codebase/sources/ext/dhtmlxscheduler_year_view.js.map b/codebase/sources/ext/dhtmlxscheduler_year_view.js.map index 0df7c9d..8f5f988 100644 --- a/codebase/sources/ext/dhtmlxscheduler_year_view.js.map +++ b/codebase/sources/ext/dhtmlxscheduler_year_view.js.map @@ -1 +1 @@ -{"version":3,"file":"dhtmlxscheduler_year_view.js","sources":["dhtmlxscheduler_year_view.js"],"names":["scheduler","config","year_x","year_y","xy","year_top","templates","year_date","date","date_to_str","locale","labels","year_tab","year_month","year_scale_date","year_tooltip","s","e","ev","text","is_year_mode","_mode","dblclick_dhx_month_head","t","target","srcElement","parentNode","className","indexOf","start","this","xml_date","getAttribute","setDate","parseInt","innerHTML","end","add","readonly","dblclick_create","addEventNow","valueOf","chid","changeEventId","apply","arguments","year_view","old","render_data","to_attr","from_attr","str_to_date","evs","i","length","_year_render_event","clear","clear_view","dates","_year_marked_cells","div","hasOwnProperty","setAttribute","_hideToolTip","_tooltip","style","display","Date","_showToolTip","pos","src","document","createElement","body","appendChild","onclick","_click","dhx_cal_data","getEvents","html","filter_event","id","bg_color","color","textColor","_timed","event_date","start_date","end_date","top","offsetWidth","left","offsetHeight","_year_view_tooltip_handler","event","tagName","toLowerCase","getOffset","_init_year_tooltip","_detachDomEvent","_els","dhtmlxEvent","attachEvent","_get_year_cell","d","m","getMonth","getFullYear","_min_date","week_starts","_month","childNodes","getDate","firstChild","rows","Math","floor","cells","_mark_year_date","c","ev_class","event_class","_unmark_year_date","date_part","_max_date","mode","temp","scale_height","set_sizes","_table_view","_load_mode","_load","_reset_year_scale","_render_wait","render_view_data","_cols","_colsS","b","scrollTop","dx","width","dy","height","scroll_width","summ","week_template","dummy_date","week_start","_currentDate","_render_x_header","lastChild","sd","copy","_date","ssd","j","cssText","xml_format","dd","ed","_reset_month_scale","r","k","cloneNode","ri","len","month_day","dt","round","marginTop","set_xy","getDay","start_on_monday","getActionData","n_ev","trg","_get_year_month_date","day","_get_year_month_cell","_get_year_day_indexes","week","section","targetCell","month","_get_year_el_node","_locate_year_month_table","weeks","w","getElementsByTagName","days","node","_locate_year_month_root","_locate_year_month_day","n","hasAttribute","locateEvent","_locate_event","dat","_locate_year_month_cell","nodeName","_get_year_month_table","_get_year_month_root","condition"],"mappings":"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"}
\ No newline at end of file +{"version":3,"file":"dhtmlxscheduler_year_view.js","sources":["dhtmlxscheduler_year_view.js"],"names":["scheduler","config","year_x","year_y","xy","year_top","templates","year_date","date","date_to_str","locale","labels","year_tab","year_month","year_scale_date","year_tooltip","s","e","ev","text","is_year_mode","_mode","dblclick_dhx_month_head","t","target","srcElement","className","_getClassName","parentNode","indexOf","start","this","xml_date","getAttribute","setDate","parseInt","innerHTML","end","add","readonly","dblclick_create","addEventNow","valueOf","chid","changeEventId","apply","arguments","year_view","old","render_data","to_attr","from_attr","str_to_date","evs","i","length","_year_render_event","clear","clear_view","dates","_year_marked_cells","div","hasOwnProperty","setAttribute","_hideToolTip","_tooltip","style","display","Date","_showToolTip","pos","src","document","createElement","body","appendChild","onclick","_click","dhx_cal_data","getEvents","html","filter_event","id","bg_color","color","textColor","_timed","event_date","start_date","end_date","top","offsetWidth","left","offsetHeight","_year_view_tooltip_handler","event","tagName","toLowerCase","getOffset","_init_year_tooltip","_detachDomEvent","_els","dhtmlxEvent","attachEvent","_get_year_cell","d","m","getMonth","getFullYear","_min_date","week_starts","_month","childNodes","getDate","querySelector","firstChild","rows","Math","floor","cells","_mark_year_date","c","ev_class","event_class","_unmark_year_date","date_part","_max_date","mode","temp","scale_height","set_sizes","_table_view","_load_mode","_load","_reset_year_scale","_render_wait","render_view_data","_cols","_colsS","b","scrollTop","dx","width","dy","height","scroll_width","summ","week_template","dummy_date","week_start","_currentDate","_process_ignores","scales_count","_ignores_detected","real_count","_ignores","_render_x_header","lastChild","_waiAria","yearHeadCell","sd","copy","_date","ssd","j","cssText","xml_format","header","grid","weekHeader","headerId","uid","yearHeader","yearGrid","dd","days","_reset_month_scale","querySelectorAll","day","yearDayCell","dt","round","marginTop","set_xy","getDay","start_on_monday","getActionData","n_ev","trg","_get_year_month_date","_get_year_month_cell","_get_year_day_indexes","week","section","targetCell","month","_get_year_el_node","_locate_year_month_table","weeks","w","getElementsByTagName","node","_locate_year_month_root","month_start","_locate_year_month_day","n","hasAttribute","locateEvent","_locate_event","dat","_locate_year_month_cell","nodeName","_get_year_month_table","_get_year_month_root","condition"],"mappings":"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"}
\ No newline at end of file diff --git a/codebase/sources/locale/locale_ar.js b/codebase/sources/locale/locale_ar.js index 215cfac..b97d7a8 100644 --- a/codebase/sources/locale/locale_ar.js +++ b/codebase/sources/locale/locale_ar.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -46,7 +46,16 @@ scheduler.locale = { /* dhtmlx message default buttons */ message_ok:"OK", - message_cancel:"Cancel" + message_cancel:"Cancel", + + /* wai aria labels for non-text controls */ + next: "Next", + prev: "Previous", + year: "Year", + month: "Month", + day: "Day", + hour:"Hour", + minute: "Minute" } }; diff --git a/codebase/sources/locale/locale_ar.js.map b/codebase/sources/locale/locale_ar.js.map index c8d977a..94d31e8 100644 --- a/codebase/sources/locale/locale_ar.js.map +++ b/codebase/sources/locale/locale_ar.js.map @@ -1 +1 @@ -{"version":3,"file":"locale_ar.js","sources":["locale_ar.js"],"names":["scheduler","locale","date","month_full","month_short","day_full","day_short","labels","dhx_cal_today_button","day_tab","week_tab","month_tab","new_event","icon_save","icon_cancel","icon_details","icon_edit","icon_delete","confirm_closing","confirm_deleting","section_description","section_time","full_day","confirm_recurring","section_recurring","button_recurring","button_recurring_open","button_edit_series","button_edit_occurrence","grid_tab","drag_to_create","drag_to_move","message_ok","message_cancel"],"mappings":";;;;;;;;AAQAA,UAAUC,QACTC,MACCC,YAAa,eAAgB,OAAQ,OAAQ,QAAS,OAAQ,SAAU,OAAQ,KAAM,QAAS,cAAe,eAAgB,eAC9HC,aAAc,QAAS,SAAU,OAAQ,QAAS,OAAQ,QAAS,QAAS,QAAS,SAAU,SAAU,SAAU,UACnHC,UAAW,QAAS,UAAW,WAAY,WAAY,SAAU,SAAU,SAC3EC,WAAY,MAAO,QAAS,SAAU,SAAU,OAAQ,OAAQ,QAEjEC,QACCC,qBAAsB,QACtBC,QAAS,MACTC,SAAU,QACVC,UAAW,MACXC,UAAW;AACXC,UAAW,OACXC,YAAa,QACbC,aAAc,SACdC,UAAW,QACXC,YAAa,MACbC,gBAAiB,oCACjBC,iBAAkB,0CAClBC,oBAAqB,QACrBC,aAAc,iBACdC,SAAU,aAEVC,kBAAmB,kDACnBC,kBAAmB,cACnBC,iBAAkB,QAClBC,sBAAuB,QACvBC,mBAAoB,cACpBC,uBAAwB;AAGxBC,SAAU,OAGVC,eAAe,iBACfC,aAAa,eAGbC,WAAW,KACXC,eAAe"}
\ No newline at end of file +{"version":3,"file":"locale_ar.js","sources":["locale_ar.js"],"names":["scheduler","locale","date","month_full","month_short","day_full","day_short","labels","dhx_cal_today_button","day_tab","week_tab","month_tab","new_event","icon_save","icon_cancel","icon_details","icon_edit","icon_delete","confirm_closing","confirm_deleting","section_description","section_time","full_day","confirm_recurring","section_recurring","button_recurring","button_recurring_open","button_edit_series","button_edit_occurrence","grid_tab","drag_to_create","drag_to_move","message_ok","message_cancel","next","prev","year","month","day","hour","minute"],"mappings":";;;;;;;;AAQAA,UAAUC,QACTC,MACCC,YAAa,eAAgB,OAAQ,OAAQ,QAAS,OAAQ,SAAU,OAAQ,KAAM,QAAS,cAAe,eAAgB,eAC9HC,aAAc,QAAS,SAAU,OAAQ,QAAS,OAAQ,QAAS,QAAS,QAAS,SAAU,SAAU,SAAU,UACnHC,UAAW,QAAS,UAAW,WAAY,WAAY,SAAU,SAAU,SAC3EC,WAAY,MAAO,QAAS,SAAU,SAAU,OAAQ,OAAQ,QAEjEC,QACCC,qBAAsB,QACtBC,QAAS,MACTC,SAAU,QACVC,UAAW,MACXC,UAAW;AACXC,UAAW,OACXC,YAAa,QACbC,aAAc,SACdC,UAAW,QACXC,YAAa,MACbC,gBAAiB,oCACjBC,iBAAkB,0CAClBC,oBAAqB,QACrBC,aAAc,iBACdC,SAAU,aAEVC,kBAAmB,kDACnBC,kBAAmB,cACnBC,iBAAkB,QAClBC,sBAAuB,QACvBC,mBAAoB,cACpBC,uBAAwB;AAGxBC,SAAU,OAGVC,eAAe,iBACfC,aAAa,eAGbC,WAAW,KACXC,eAAe,SAGfC,KAAM,OACNC,KAAM,WACNC,KAAM,OACNC,MAAO,QACPC,IAAK,MACLC,KAAK,OACLC,OAAQ"}
\ No newline at end of file diff --git a/codebase/sources/locale/locale_be.js b/codebase/sources/locale/locale_be.js index 92b2abd..abdd3aa 100644 --- a/codebase/sources/locale/locale_be.js +++ b/codebase/sources/locale/locale_be.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -60,6 +60,15 @@ scheduler.locale = { /* dhtmlx message default buttons */ message_ok:"OK", - message_cancel:"Cancel" + message_cancel:"Cancel", + + /* wai aria labels for non-text controls */ + next: "Next", + prev: "Previous", + year: "Year", + month: "Month", + day: "Day", + hour:"Hour", + minute: "Minute" } };
\ No newline at end of file diff --git a/codebase/sources/locale/locale_be.js.map b/codebase/sources/locale/locale_be.js.map index 0c0dff7..7bd0ad0 100644 --- a/codebase/sources/locale/locale_be.js.map +++ b/codebase/sources/locale/locale_be.js.map @@ -1 +1 @@ -{"version":3,"file":"locale_be.js","sources":["locale_be.js"],"names":["scheduler","locale","date","month_full","month_short","day_full","day_short","labels","dhx_cal_today_button","day_tab","week_tab","month_tab","new_event","icon_save","icon_cancel","icon_details","icon_edit","icon_delete","confirm_closing","confirm_deleting","section_description","section_time","full_day","confirm_recurring","section_recurring","button_recurring","button_recurring_open","button_edit_series","button_edit_occurrence","agenda_tab","description","year_tab","week_agenda_tab","grid_tab","drag_to_create","drag_to_move","message_ok","message_cancel"],"mappings":";;;;;;;;AAWAA,UAAUC,QACTC,MACCC,YAAa,WAAY,OAAQ,UAAW,WAAY,MAAO,UAAW,SAAU,UAAW,WAAY,aAAc,WAAY,WACrIC,aAAc,QAAS,MAAO,MAAO,OAAQ,MAAO,MAAO,MAAO,OAAQ,MAAO,OAAQ,OAAQ,QACjGC,UAAY,UAAW,aAAc,UAAW,SAAU,SAAU,UAAW,UAC/EC,WAAY,KAAM,KAAM,MAAO,KAAM,MAAO,KAAM,OAEnDC,QACCC,qBAAsB,QACtBC,QAAS,QACTC,SAAU,UACVC,UAAW,QACXC,UAAW,eACXC,UAAW;AACXC,YAAa,WACbC,aAAc,SACdC,UAAW,UACXC,YAAa,WACbC,gBAAiB,GACjBC,iBAAkB,gDAClBC,oBAAqB,WACrBC,aAAc,cACdC,SAAU,cAEVC,kBAAmB,mDACnBC,kBAAmB,aACnBC,iBAAkB,YAClBC,sBAAuB,WACvBC,mBAAoB,mBACpBC,uBAAwB,qBAGxBC,WAAY;AACZ3B,KAAM,OACN4B,YAAa,WAGbC,SAAU,MAGVC,gBAAiB,OAGjBC,SAAU,OAGVC,eAAe,iBACfC,aAAa,eAGbC,WAAW,KACXC,eAAe"}
\ No newline at end of file +{"version":3,"file":"locale_be.js","sources":["locale_be.js"],"names":["scheduler","locale","date","month_full","month_short","day_full","day_short","labels","dhx_cal_today_button","day_tab","week_tab","month_tab","new_event","icon_save","icon_cancel","icon_details","icon_edit","icon_delete","confirm_closing","confirm_deleting","section_description","section_time","full_day","confirm_recurring","section_recurring","button_recurring","button_recurring_open","button_edit_series","button_edit_occurrence","agenda_tab","description","year_tab","week_agenda_tab","grid_tab","drag_to_create","drag_to_move","message_ok","message_cancel","next","prev","year","month","day","hour","minute"],"mappings":";;;;;;;;AAWAA,UAAUC,QACTC,MACCC,YAAa,WAAY,OAAQ,UAAW,WAAY,MAAO,UAAW,SAAU,UAAW,WAAY,aAAc,WAAY,WACrIC,aAAc,QAAS,MAAO,MAAO,OAAQ,MAAO,MAAO,MAAO,OAAQ,MAAO,OAAQ,OAAQ,QACjGC,UAAY,UAAW,aAAc,UAAW,SAAU,SAAU,UAAW,UAC/EC,WAAY,KAAM,KAAM,MAAO,KAAM,MAAO,KAAM,OAEnDC,QACCC,qBAAsB,QACtBC,QAAS,QACTC,SAAU,UACVC,UAAW,QACXC,UAAW,eACXC,UAAW;AACXC,YAAa,WACbC,aAAc,SACdC,UAAW,UACXC,YAAa,WACbC,gBAAiB,GACjBC,iBAAkB,gDAClBC,oBAAqB,WACrBC,aAAc,cACdC,SAAU,cAEVC,kBAAmB,mDACnBC,kBAAmB,aACnBC,iBAAkB,YAClBC,sBAAuB,WACvBC,mBAAoB,mBACpBC,uBAAwB,qBAGxBC,WAAY;AACZ3B,KAAM,OACN4B,YAAa,WAGbC,SAAU,MAGVC,gBAAiB,OAGjBC,SAAU,OAGVC,eAAe,iBACfC,aAAa,eAGbC,WAAW,KACXC,eAAe,SAGfC,KAAM,OACNC,KAAM,WACNC,KAAM,OACNC,MAAO,QACPC,IAAK,MACLC,KAAK,OACLC,OAAQ"}
\ No newline at end of file diff --git a/codebase/sources/locale/locale_ca.js b/codebase/sources/locale/locale_ca.js index 2422956..3be6c97 100644 --- a/codebase/sources/locale/locale_ca.js +++ b/codebase/sources/locale/locale_ca.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -60,6 +60,15 @@ scheduler.locale = { /* dhtmlx message default buttons */ message_ok:"OK", - message_cancel:"Cancel" + message_cancel:"Cancel", + + /* wai aria labels for non-text controls */ + next: "Next", + prev: "Previous", + year: "Year", + month: "Month", + day: "Day", + hour:"Hour", + minute: "Minute" } };
\ No newline at end of file diff --git a/codebase/sources/locale/locale_ca.js.map b/codebase/sources/locale/locale_ca.js.map index f49ebf7..f62ad12 100644 --- a/codebase/sources/locale/locale_ca.js.map +++ b/codebase/sources/locale/locale_ca.js.map @@ -1 +1 @@ -{"version":3,"file":"locale_ca.js","sources":["locale_ca.js"],"names":["scheduler","locale","date","month_full","month_short","day_full","day_short","labels","dhx_cal_today_button","day_tab","week_tab","month_tab","new_event","icon_save","icon_cancel","icon_details","icon_edit","icon_delete","confirm_closing","confirm_deleting","section_description","section_time","full_day","confirm_recurring","section_recurring","button_recurring","button_recurring_open","button_edit_series","button_edit_occurrence","agenda_tab","description","year_tab","week_agenda_tab","grid_tab","drag_to_create","drag_to_move","message_ok","message_cancel"],"mappings":";;;;;;;;AAWAA,UAAUC,QACTC,MACCC,YAAa,QAAS,SAAU,OAAQ,QAAS,OAAQ,OAAQ,SAAU,QAAS,WAAY,UAAW,WAAY,YACvHC,aAAc,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,OAC3FC,UAAW,WAAY,UAAW,UAAW,WAAY,SAAU,YAAa,YAChFC,WAAY,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,OAEjDC,QACCC,qBAAsB,MACtBC,QAAS,MACTC,SAAU,UACVC,UAAW,MACXC,UAAW,mBACXC,UAAW,UACXC,YAAa;AACbC,aAAc,UACdC,UAAW,SACXC,YAAa,WACbC,gBAAiB,GACjBC,iBAAkB,yDAClBC,oBAAqB,aACrBC,aAAc,mBACdC,SAAU,aAEVC,kBAAmB,0DACnBC,kBAAmB,4BACnBC,iBAAkB,UAClBC,sBAAuB,SACvBC,mBAAoB,aACpBC,uBAAwB,kBAGxBC,WAAY;AACZ3B,KAAM,OACN4B,YAAa,aAGbC,SAAU,MAGVC,gBAAiB,SAGjBC,SAAU,QAGVC,eAAe,iBACfC,aAAa,eAGbC,WAAW,KACXC,eAAe"}
\ No newline at end of file +{"version":3,"file":"locale_ca.js","sources":["locale_ca.js"],"names":["scheduler","locale","date","month_full","month_short","day_full","day_short","labels","dhx_cal_today_button","day_tab","week_tab","month_tab","new_event","icon_save","icon_cancel","icon_details","icon_edit","icon_delete","confirm_closing","confirm_deleting","section_description","section_time","full_day","confirm_recurring","section_recurring","button_recurring","button_recurring_open","button_edit_series","button_edit_occurrence","agenda_tab","description","year_tab","week_agenda_tab","grid_tab","drag_to_create","drag_to_move","message_ok","message_cancel","next","prev","year","month","day","hour","minute"],"mappings":";;;;;;;;AAWAA,UAAUC,QACTC,MACCC,YAAa,QAAS,SAAU,OAAQ,QAAS,OAAQ,OAAQ,SAAU,QAAS,WAAY,UAAW,WAAY,YACvHC,aAAc,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,OAC3FC,UAAW,WAAY,UAAW,UAAW,WAAY,SAAU,YAAa,YAChFC,WAAY,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,OAEjDC,QACCC,qBAAsB,MACtBC,QAAS,MACTC,SAAU,UACVC,UAAW,MACXC,UAAW,mBACXC,UAAW,UACXC,YAAa;AACbC,aAAc,UACdC,UAAW,SACXC,YAAa,WACbC,gBAAiB,GACjBC,iBAAkB,yDAClBC,oBAAqB,aACrBC,aAAc,mBACdC,SAAU,aAEVC,kBAAmB,0DACnBC,kBAAmB,4BACnBC,iBAAkB,UAClBC,sBAAuB,SACvBC,mBAAoB,aACpBC,uBAAwB,kBAGxBC,WAAY;AACZ3B,KAAM,OACN4B,YAAa,aAGbC,SAAU,MAGVC,gBAAiB,SAGjBC,SAAU,QAGVC,eAAe,iBACfC,aAAa,eAGbC,WAAW,KACXC,eAAe,SAGfC,KAAM,OACNC,KAAM,WACNC,KAAM,OACNC,MAAO,QACPC,IAAK,MACLC,KAAK,OACLC,OAAQ"}
\ No newline at end of file diff --git a/codebase/sources/locale/locale_cn.js b/codebase/sources/locale/locale_cn.js index 6219381..3fc3827 100644 --- a/codebase/sources/locale/locale_cn.js +++ b/codebase/sources/locale/locale_cn.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -64,7 +64,16 @@ scheduler.locale={ /* dhtmlx message default buttons */ message_ok:"OK", - message_cancel:"Cancel" + message_cancel:"Cancel", + + /* wai aria labels for non-text controls */ + next: "Next", + prev: "Previous", + year: "Year", + month: "Month", + day: "Day", + hour:"Hour", + minute: "Minute" } }; diff --git a/codebase/sources/locale/locale_cn.js.map b/codebase/sources/locale/locale_cn.js.map index 6a873bb..f7c8968 100644 --- a/codebase/sources/locale/locale_cn.js.map +++ b/codebase/sources/locale/locale_cn.js.map @@ -1 +1 @@ -{"version":3,"file":"locale_cn.js","sources":["locale_cn.js"],"names":["scheduler","config","day_date","default_date","month_date","locale","date","month_full","month_short","day_full","day_short","labels","dhx_cal_today_button","day_tab","week_tab","month_tab","new_event","icon_save","icon_cancel","icon_details","icon_edit","icon_delete","confirm_closing","confirm_deleting","section_description","section_time","full_day","confirm_recurring","section_recurring","button_recurring","button_recurring_open","button_edit_series","button_edit_occurrence","agenda_tab","description","year_tab","week_agenda_tab","grid_tab","drag_to_create","drag_to_move","message_ok","message_cancel"],"mappings":";;;;;;;;AAWAA,UAAUC,OAAOC,SAAS,YAC1BF,UAAUC,OAAOE,aAAa,aAC9BH,UAAUC,OAAOG,WAAW,SAE5BJ,UAAUK,QACTC,MACCC,YAAa,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,MAAO,OAChFC,aAAc,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,MAAO,MAAO,OAClFC,UAAW,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,OACrDC,WAAY,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,MAE3CC,QACCC,qBAAsB,KACtBC,QAAS,IACTC,SAAU,IACVC,UAAW,IACXC,UAAW,OACXC,UAAW,KACXC,YAAa;AACbC,aAAc,KACdC,UAAW,KACXC,YAAa,KACbC,gBAAiB,aACjBC,iBAAkB,UAClBC,oBAAqB,KACrBC,aAAc,OACdC,SAAU,KAEVC,kBAAkB,kBAClBC,kBAAkB,OAClBC,iBAAiB,KACjBC,sBAAsB,KACtBC,mBAAoB,OACpBC,uBAAwB,OAGxBC,WAAW,KACX3B,KAAK,KACL4B,YAAY,KAGZC,SAAS,KAGTC,gBAAiB,KAGjBC,SAAS,KAGTC,eAAe,iBACfC,aAAa,eAGbC,WAAW,KACXC,eAAe"}
\ No newline at end of file +{"version":3,"file":"locale_cn.js","sources":["locale_cn.js"],"names":["scheduler","config","day_date","default_date","month_date","locale","date","month_full","month_short","day_full","day_short","labels","dhx_cal_today_button","day_tab","week_tab","month_tab","new_event","icon_save","icon_cancel","icon_details","icon_edit","icon_delete","confirm_closing","confirm_deleting","section_description","section_time","full_day","confirm_recurring","section_recurring","button_recurring","button_recurring_open","button_edit_series","button_edit_occurrence","agenda_tab","description","year_tab","week_agenda_tab","grid_tab","drag_to_create","drag_to_move","message_ok","message_cancel","next","prev","year","month","day","hour","minute"],"mappings":";;;;;;;;AAWAA,UAAUC,OAAOC,SAAS,YAC1BF,UAAUC,OAAOE,aAAa,aAC9BH,UAAUC,OAAOG,WAAW,SAE5BJ,UAAUK,QACTC,MACCC,YAAa,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,MAAO,OAChFC,aAAc,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,MAAO,MAAO,OAClFC,UAAW,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,OACrDC,WAAY,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,MAE3CC,QACCC,qBAAsB,KACtBC,QAAS,IACTC,SAAU,IACVC,UAAW,IACXC,UAAW,OACXC,UAAW,KACXC,YAAa;AACbC,aAAc,KACdC,UAAW,KACXC,YAAa,KACbC,gBAAiB,aACjBC,iBAAkB,UAClBC,oBAAqB,KACrBC,aAAc,OACdC,SAAU,KAEVC,kBAAkB,kBAClBC,kBAAkB,OAClBC,iBAAiB,KACjBC,sBAAsB,KACtBC,mBAAoB,OACpBC,uBAAwB,OAGxBC,WAAW,KACX3B,KAAK,KACL4B,YAAY,KAGZC,SAAS,KAGTC,gBAAiB,KAGjBC,SAAS,KAGTC,eAAe,iBACfC,aAAa,eAGbC,WAAW,KACXC,eAAe;AAGfC,KAAM,OACNC,KAAM,WACNC,KAAM,OACNC,MAAO,QACPC,IAAK,MACLC,KAAK,OACLC,OAAQ"}
\ No newline at end of file diff --git a/codebase/sources/locale/locale_cs.js b/codebase/sources/locale/locale_cs.js index 8c972a9..7cb897a 100644 --- a/codebase/sources/locale/locale_cs.js +++ b/codebase/sources/locale/locale_cs.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -58,7 +58,16 @@ scheduler.locale = { /* dhtmlx message default buttons */ message_ok:"OK", - message_cancel:"Cancel" + message_cancel:"Cancel", + + /* wai aria labels for non-text controls */ + next: "Next", + prev: "Previous", + year: "Year", + month: "Month", + day: "Day", + hour:"Hour", + minute: "Minute" } }; diff --git a/codebase/sources/locale/locale_cs.js.map b/codebase/sources/locale/locale_cs.js.map index 3bc2145..06dcf6b 100644 --- a/codebase/sources/locale/locale_cs.js.map +++ b/codebase/sources/locale/locale_cs.js.map @@ -1 +1 @@ -{"version":3,"file":"locale_cs.js","sources":["locale_cs.js"],"names":["scheduler","locale","date","month_full","month_short","day_full","day_short","labels","dhx_cal_today_button","day_tab","week_tab","month_tab","new_event","icon_save","icon_cancel","icon_details","icon_edit","icon_delete","confirm_closing","confirm_deleting","section_description","section_time","confirm_recurring","section_recurring","button_recurring","button_recurring_open","button_edit_series","button_edit_occurrence","agenda_tab","description","year_tab","full_day","week_agenda_tab","grid_tab","drag_to_create","drag_to_move","message_ok","message_cancel"],"mappings":";;;;;;;;AAQAA,UAAUC,QACTC,MACCC,YAAa,QAAS,OAAQ,SAAU,QAAS,SAAU,SAAU,WAAY,QAAS,OAAQ,QAAS,WAAY,YACvHC,aAAc,MAAO,KAAM,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,OAAQ,MAAO,OAAQ,OAC5FC,UAAW,SAAU,UAAW,QAAS,SAAU,UAAW,QAAS,UACvEC,WAAY,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,OAEjDC,QACCC,qBAAsB,OACtBC,QAAS,MACTC,SAAU,QACVC,UAAW,QACXC,UAAW,eACXC,UAAW,SACXC,YAAa,OACbC,aAAc;AACdC,UAAW,SACXC,YAAa,SACbC,gBAAiB,GACjBC,iBAAkB,wCAClBC,oBAAqB,WACrBC,aAAc,iBAGdC,kBAAmB,sDACnBC,kBAAmB,qBACnBC,iBAAkB,UAClBC,sBAAuB,UACvBC,mBAAoB,cACpBC,uBAAwB,mBAGxBC,WAAY,UACZ1B,KAAM,QACN2B,YAAa,WAGbC,SAAU,MACVC,SAAU;AAGVC,gBAAiB,UAGjBC,SAAU,SAGVC,eAAe,iBACfC,aAAa,eAGbC,WAAW,KACXC,eAAe"}
\ No newline at end of file +{"version":3,"file":"locale_cs.js","sources":["locale_cs.js"],"names":["scheduler","locale","date","month_full","month_short","day_full","day_short","labels","dhx_cal_today_button","day_tab","week_tab","month_tab","new_event","icon_save","icon_cancel","icon_details","icon_edit","icon_delete","confirm_closing","confirm_deleting","section_description","section_time","confirm_recurring","section_recurring","button_recurring","button_recurring_open","button_edit_series","button_edit_occurrence","agenda_tab","description","year_tab","full_day","week_agenda_tab","grid_tab","drag_to_create","drag_to_move","message_ok","message_cancel","next","prev","year","month","day","hour","minute"],"mappings":";;;;;;;;AAQAA,UAAUC,QACTC,MACCC,YAAa,QAAS,OAAQ,SAAU,QAAS,SAAU,SAAU,WAAY,QAAS,OAAQ,QAAS,WAAY,YACvHC,aAAc,MAAO,KAAM,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,OAAQ,MAAO,OAAQ,OAC5FC,UAAW,SAAU,UAAW,QAAS,SAAU,UAAW,QAAS,UACvEC,WAAY,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,OAEjDC,QACCC,qBAAsB,OACtBC,QAAS,MACTC,SAAU,QACVC,UAAW,QACXC,UAAW,eACXC,UAAW,SACXC,YAAa,OACbC,aAAc;AACdC,UAAW,SACXC,YAAa,SACbC,gBAAiB,GACjBC,iBAAkB,wCAClBC,oBAAqB,WACrBC,aAAc,iBAGdC,kBAAmB,sDACnBC,kBAAmB,qBACnBC,iBAAkB,UAClBC,sBAAuB,UACvBC,mBAAoB,cACpBC,uBAAwB,mBAGxBC,WAAY,UACZ1B,KAAM,QACN2B,YAAa,WAGbC,SAAU,MACVC,SAAU;AAGVC,gBAAiB,UAGjBC,SAAU,SAGVC,eAAe,iBACfC,aAAa,eAGbC,WAAW,KACXC,eAAe,SAGfC,KAAM,OACNC,KAAM,WACNC,KAAM,OACNC,MAAO,QACPC,IAAK,MACLC,KAAK,OACLC,OAAQ"}
\ No newline at end of file diff --git a/codebase/sources/locale/locale_da.js b/codebase/sources/locale/locale_da.js index d180a7f..b36391e 100644 --- a/codebase/sources/locale/locale_da.js +++ b/codebase/sources/locale/locale_da.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -57,7 +57,16 @@ scheduler.locale = { /* dhtmlx message default buttons */ message_ok:"OK", - message_cancel:"Cancel" + message_cancel:"Cancel", + + /* wai aria labels for non-text controls */ + next: "Next", + prev: "Previous", + year: "Year", + month: "Month", + day: "Day", + hour:"Hour", + minute: "Minute" } }; diff --git a/codebase/sources/locale/locale_da.js.map b/codebase/sources/locale/locale_da.js.map index aaac1f5..e0d4736 100644 --- a/codebase/sources/locale/locale_da.js.map +++ b/codebase/sources/locale/locale_da.js.map @@ -1 +1 @@ -{"version":3,"file":"locale_da.js","sources":["locale_da.js"],"names":["scheduler","locale","date","month_full","month_short","day_full","day_short","labels","dhx_cal_today_button","day_tab","week_tab","month_tab","new_event","icon_save","icon_cancel","icon_details","icon_edit","icon_delete","confirm_closing","confirm_deleting","section_description","section_time","confirm_recurring","section_recurring","button_recurring","button_recurring_open","button_edit_series","button_edit_occurrence","agenda_tab","description","year_tab","week_agenda_tab","grid_tab","drag_to_create","drag_to_move","message_ok","message_cancel"],"mappings":";;;;;;;;AAQAA,UAAUC,QACTC,MACCC,YAAa,SAAU,UAAW,QAAS,QAAS,MAAO,OAAQ,OAAQ,SAAU,YAAa,UAAW,WAAY,YACzHC,aAAc,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,OAC3FC,UAAW,SAAU,SAAU,UAAW,SAAU,UAAW,SAAU,UACzEC,WAAY,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,QAEvDC,QACCC,qBAAsB,OACtBC,QAAS,MACTC,SAAU,MACVC,UAAW,QACXC,UAAW,gBACXC,UAAW,MACXC,YAAa;AACbC,aAAc,WACdC,UAAW,SACXC,YAAa,OACbC,gBAAiB,6CACjBC,iBAAkB,0DAClBC,oBAAqB,cACrBC,aAAc,cAGdC,kBAAmB,wDACnBC,kBAAmB,oBACnBC,iBAAkB,YAClBC,sBAAuB,YACvBC,mBAAoB,iBACpBC,uBAAwB;AAGxBC,WAAY,YACZ1B,KAAM,OACN2B,YAAa,cAGbC,SAAU,KAGVC,gBAAiB,YAGjBC,SAAU,OAGVC,eAAe,iBACfC,aAAa,eAGbC,WAAW,KACXC,eAAe"}
\ No newline at end of file +{"version":3,"file":"locale_da.js","sources":["locale_da.js"],"names":["scheduler","locale","date","month_full","month_short","day_full","day_short","labels","dhx_cal_today_button","day_tab","week_tab","month_tab","new_event","icon_save","icon_cancel","icon_details","icon_edit","icon_delete","confirm_closing","confirm_deleting","section_description","section_time","confirm_recurring","section_recurring","button_recurring","button_recurring_open","button_edit_series","button_edit_occurrence","agenda_tab","description","year_tab","week_agenda_tab","grid_tab","drag_to_create","drag_to_move","message_ok","message_cancel","next","prev","year","month","day","hour","minute"],"mappings":";;;;;;;;AAQAA,UAAUC,QACTC,MACCC,YAAa,SAAU,UAAW,QAAS,QAAS,MAAO,OAAQ,OAAQ,SAAU,YAAa,UAAW,WAAY,YACzHC,aAAc,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,OAC3FC,UAAW,SAAU,SAAU,UAAW,SAAU,UAAW,SAAU,UACzEC,WAAY,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,QAEvDC,QACCC,qBAAsB,OACtBC,QAAS,MACTC,SAAU,MACVC,UAAW,QACXC,UAAW,gBACXC,UAAW,MACXC,YAAa;AACbC,aAAc,WACdC,UAAW,SACXC,YAAa,OACbC,gBAAiB,6CACjBC,iBAAkB,0DAClBC,oBAAqB,cACrBC,aAAc,cAGdC,kBAAmB,wDACnBC,kBAAmB,oBACnBC,iBAAkB,YAClBC,sBAAuB,YACvBC,mBAAoB,iBACpBC,uBAAwB;AAGxBC,WAAY,YACZ1B,KAAM,OACN2B,YAAa,cAGbC,SAAU,KAGVC,gBAAiB,YAGjBC,SAAU,OAGVC,eAAe,iBACfC,aAAa,eAGbC,WAAW,KACXC,eAAe,SAGfC,KAAM,OACNC,KAAM,WACNC,KAAM,OACNC,MAAO,QACPC,IAAK,MACLC,KAAK,OACLC,OAAQ"}
\ No newline at end of file diff --git a/codebase/sources/locale/locale_de.js b/codebase/sources/locale/locale_de.js index ab877d3..3059cae 100644 --- a/codebase/sources/locale/locale_de.js +++ b/codebase/sources/locale/locale_de.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -57,7 +57,16 @@ scheduler.locale = { /* dhtmlx message default buttons */ message_ok:"OK", - message_cancel:"Cancel" + message_cancel:"Cancel", + + /* wai aria labels for non-text controls */ + next: "Next", + prev: "Previous", + year: "Year", + month: "Month", + day: "Day", + hour:"Hour", + minute: "Minute" } }; diff --git a/codebase/sources/locale/locale_de.js.map b/codebase/sources/locale/locale_de.js.map index 771e946..169e5cc 100644 --- a/codebase/sources/locale/locale_de.js.map +++ b/codebase/sources/locale/locale_de.js.map @@ -1 +1 @@ -{"version":3,"file":"locale_de.js","sources":["locale_de.js"],"names":["scheduler","locale","date","month_full","month_short","day_full","day_short","labels","dhx_cal_today_button","day_tab","week_tab","month_tab","new_event","icon_save","icon_cancel","icon_details","icon_edit","icon_delete","confirm_closing","confirm_deleting","section_description","section_time","full_day","confirm_recurring","section_recurring","button_recurring","button_recurring_open","button_edit_series","button_edit_occurrence","agenda_tab","description","year_tab","week_agenda_tab","grid_tab","drag_to_create","drag_to_move","message_ok","message_cancel"],"mappings":";;;;;;;;AAQAA,UAAUC,QACTC,MACCC,YAAa,UAAW,WAAY,SAAU,SAAU,OAAQ,QAAS,QAAS,UAAW,cAAe,WAAY,aAAc,aACtIC,aAAc,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,OAC3FC,UAAY,UAAW,SAAU,WAAY,YAAa,cAAe,UAAW,WACpFC,WAAY,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,OAEjDC,QACCC,qBAAsB,QACtBC,QAAS,MACTC,SAAU,QACVC,UAAW,QACXC,UAAW,gBACXC,UAAW;AACXC,YAAa,YACbC,aAAc,UACdC,UAAW,SACXC,YAAa,UACbC,gBAAiB,GACjBC,iBAAkB,4BAClBC,oBAAqB,eACrBC,aAAc,aACdC,SAAU,aAEVC,kBAAmB,yEACnBC,kBAAmB,eACnBC,iBAAkB,MAClBC,sBAAuB,KACvBC,mBAAoB,2BACpBC,uBAAwB;AAGxBC,WAAY,SACZ3B,KAAM,QACN4B,YAAa,eAGbC,SAAU,QAGVC,gBAAiB,SAGjBC,SAAU,OAGVC,eAAe,iBACfC,aAAa,eAGbC,WAAW,KACXC,eAAe"}
\ No newline at end of file +{"version":3,"file":"locale_de.js","sources":["locale_de.js"],"names":["scheduler","locale","date","month_full","month_short","day_full","day_short","labels","dhx_cal_today_button","day_tab","week_tab","month_tab","new_event","icon_save","icon_cancel","icon_details","icon_edit","icon_delete","confirm_closing","confirm_deleting","section_description","section_time","full_day","confirm_recurring","section_recurring","button_recurring","button_recurring_open","button_edit_series","button_edit_occurrence","agenda_tab","description","year_tab","week_agenda_tab","grid_tab","drag_to_create","drag_to_move","message_ok","message_cancel","next","prev","year","month","day","hour","minute"],"mappings":";;;;;;;;AAQAA,UAAUC,QACTC,MACCC,YAAa,UAAW,WAAY,SAAU,SAAU,OAAQ,QAAS,QAAS,UAAW,cAAe,WAAY,aAAc,aACtIC,aAAc,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,OAC3FC,UAAY,UAAW,SAAU,WAAY,YAAa,cAAe,UAAW,WACpFC,WAAY,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,OAEjDC,QACCC,qBAAsB,QACtBC,QAAS,MACTC,SAAU,QACVC,UAAW,QACXC,UAAW,gBACXC,UAAW;AACXC,YAAa,YACbC,aAAc,UACdC,UAAW,SACXC,YAAa,UACbC,gBAAiB,GACjBC,iBAAkB,4BAClBC,oBAAqB,eACrBC,aAAc,aACdC,SAAU,aAEVC,kBAAmB,yEACnBC,kBAAmB,eACnBC,iBAAkB,MAClBC,sBAAuB,KACvBC,mBAAoB,2BACpBC,uBAAwB;AAGxBC,WAAY,SACZ3B,KAAM,QACN4B,YAAa,eAGbC,SAAU,QAGVC,gBAAiB,SAGjBC,SAAU,OAGVC,eAAe,iBACfC,aAAa,eAGbC,WAAW,KACXC,eAAe,SAGfC,KAAM,OACNC,KAAM,WACNC,KAAM,OACNC,MAAO,QACPC,IAAK,MACLC,KAAK,OACLC,OAAQ"}
\ No newline at end of file diff --git a/codebase/sources/locale/locale_el.js b/codebase/sources/locale/locale_el.js index a70c8ae..95c2873 100644 --- a/codebase/sources/locale/locale_el.js +++ b/codebase/sources/locale/locale_el.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -58,7 +58,16 @@ scheduler.locale = { /* dhtmlx message default buttons */ message_ok:"OK", - message_cancel:"Cancel" + message_cancel:"Cancel", + + /* wai aria labels for non-text controls */ + next: "Next", + prev: "Previous", + year: "Year", + month: "Month", + day: "Day", + hour:"Hour", + minute: "Minute" } }; diff --git a/codebase/sources/locale/locale_el.js.map b/codebase/sources/locale/locale_el.js.map index 13a8616..75a552a 100644 --- a/codebase/sources/locale/locale_el.js.map +++ b/codebase/sources/locale/locale_el.js.map @@ -1 +1 @@ -{"version":3,"file":"locale_el.js","sources":["locale_el.js"],"names":["scheduler","locale","date","month_full","month_short","day_full","day_short","labels","dhx_cal_today_button","day_tab","week_tab","month_tab","new_event","icon_save","icon_cancel","icon_details","icon_edit","icon_delete","confirm_closing","confirm_deleting","section_description","section_time","full_day","confirm_recurring","section_recurring","button_recurring","button_recurring_open","button_edit_series","button_edit_occurrence","agenda_tab","description","year_tab","week_agenda_tab","grid_tab","drag_to_create","drag_to_move","message_ok","message_cancel"],"mappings":";;;;;;;;AAQAA,UAAUC,QACTC,MACCC,YAAa,aAAc,cAAe,UAAW,WAAY,QAAS,UAAW,UAAW,YAAa,cAAe,YAAa,YAAa,cACtJC,aAAc,MAAO,MAAO,MAAO,MAAO,MAAO,OAAQ,OAAQ,MAAO,MAAO,MAAO,MAAO,OAC7FC,UAAW,UAAW,UAAW,QAAS,UAAW,SAAU,YAAa,WAC5EC,WAAY,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,OAEjDC,QACCC,qBAAsB,SACtBC,QAAS,QACTC,SAAU,WACVC,UAAW,QACXC,UAAW;AACXC,UAAW,aACXC,YAAa,QACbC,aAAc,eACdC,UAAW,cACXC,YAAa,WACbC,gBAAiB,GACjBC,iBAAkB,uDAClBC,oBAAqB,YACrBC,aAAc,mBACdC,SAAU,eAGVC,kBAAmB,2EACnBC,kBAAmB,wBACnBC,iBAAkB,WAClBC,sBAAuB,SACvBC,mBAAoB;AACpBC,uBAAwB,4BAGxBC,WAAY,mBACZ3B,KAAM,aACN4B,YAAa,YAGbC,SAAU,OAGVC,gBAAiB,mBAGjBC,SAAU,SAGVC,eAAe,iBACfC,aAAa,eAGbC,WAAW,KACXC,eAAe"}
\ No newline at end of file +{"version":3,"file":"locale_el.js","sources":["locale_el.js"],"names":["scheduler","locale","date","month_full","month_short","day_full","day_short","labels","dhx_cal_today_button","day_tab","week_tab","month_tab","new_event","icon_save","icon_cancel","icon_details","icon_edit","icon_delete","confirm_closing","confirm_deleting","section_description","section_time","full_day","confirm_recurring","section_recurring","button_recurring","button_recurring_open","button_edit_series","button_edit_occurrence","agenda_tab","description","year_tab","week_agenda_tab","grid_tab","drag_to_create","drag_to_move","message_ok","message_cancel","next","prev","year","month","day","hour","minute"],"mappings":";;;;;;;;AAQAA,UAAUC,QACTC,MACCC,YAAa,aAAc,cAAe,UAAW,WAAY,QAAS,UAAW,UAAW,YAAa,cAAe,YAAa,YAAa,cACtJC,aAAc,MAAO,MAAO,MAAO,MAAO,MAAO,OAAQ,OAAQ,MAAO,MAAO,MAAO,MAAO,OAC7FC,UAAW,UAAW,UAAW,QAAS,UAAW,SAAU,YAAa,WAC5EC,WAAY,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,OAEjDC,QACCC,qBAAsB,SACtBC,QAAS,QACTC,SAAU,WACVC,UAAW,QACXC,UAAW;AACXC,UAAW,aACXC,YAAa,QACbC,aAAc,eACdC,UAAW,cACXC,YAAa,WACbC,gBAAiB,GACjBC,iBAAkB,uDAClBC,oBAAqB,YACrBC,aAAc,mBACdC,SAAU,eAGVC,kBAAmB,2EACnBC,kBAAmB,wBACnBC,iBAAkB,WAClBC,sBAAuB,SACvBC,mBAAoB;AACpBC,uBAAwB,4BAGxBC,WAAY,mBACZ3B,KAAM,aACN4B,YAAa,YAGbC,SAAU,OAGVC,gBAAiB,mBAGjBC,SAAU,SAGVC,eAAe,iBACfC,aAAa,eAGbC,WAAW,KACXC,eAAe,SAGfC,KAAM,OACNC,KAAM,WACNC,KAAM,OACNC,MAAO,QACPC,IAAK,MACLC,KAAK,OACLC,OAAQ"}
\ No newline at end of file diff --git a/codebase/sources/locale/locale_en.js b/codebase/sources/locale/locale_en.js index 11668e1..08d18b5 100644 --- a/codebase/sources/locale/locale_en.js +++ b/codebase/sources/locale/locale_en.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -58,7 +58,16 @@ scheduler.locale = { /* dhtmlx message default buttons */ message_ok:"OK", - message_cancel:"Cancel" + message_cancel:"Cancel", + + /* wai aria labels for non-text controls */ + next: "Next", + prev: "Previous", + year: "Year", + month: "Month", + day: "Day", + hour:"Hour", + minute: "Minute" } }; diff --git a/codebase/sources/locale/locale_en.js.map b/codebase/sources/locale/locale_en.js.map index 15a70b8..aadb635 100644 --- a/codebase/sources/locale/locale_en.js.map +++ b/codebase/sources/locale/locale_en.js.map @@ -1 +1 @@ -{"version":3,"file":"locale_en.js","sources":["locale_en.js"],"names":["scheduler","locale","date","month_full","month_short","day_full","day_short","labels","dhx_cal_today_button","day_tab","week_tab","month_tab","new_event","icon_save","icon_cancel","icon_details","icon_edit","icon_delete","confirm_closing","confirm_deleting","section_description","section_time","full_day","confirm_recurring","section_recurring","button_recurring","button_recurring_open","button_edit_series","button_edit_occurrence","agenda_tab","description","year_tab","week_agenda_tab","grid_tab","drag_to_create","drag_to_move","message_ok","message_cancel"],"mappings":";;;;;;;;AAQAA,UAAUC,QACTC,MACCC,YAAY,UAAW,WAAY,QAAS,QAAS,MAAO,OAAQ,OAAQ,SAAU,YAAa,UAAW,WAAY,YAC1HC,aAAa,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,OAC1FC,UAAU,SAAU,SAAU,UAAW,YAAa,WAAY,SAAU,YAC5EC,WAAW,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,QAEtDC,QACCC,qBAAqB,QACrBC,QAAQ,MACRC,SAAS,OACTC,UAAU,QACVC,UAAU,YACVC,UAAU,OACVC,YAAY;AACZC,aAAa,UACbC,UAAU,OACVC,YAAY,SACZC,gBAAgB,GAChBC,iBAAiB,mDACjBC,oBAAoB,cACpBC,aAAa,cACbC,SAAS,WAGTC,kBAAkB,wDAClBC,kBAAkB,eAClBC,iBAAiB,WACjBC,sBAAsB,UACtBC,mBAAoB,cACpBC,uBAAwB,kBAGxBC,WAAW,SACX3B,KAAK;AACL4B,YAAY,cAGZC,SAAS,OAGTC,gBAAiB,SAGjBC,SAAU,OAGVC,eAAe,iBACfC,aAAa,eAGbC,WAAW,KACXC,eAAe"}
\ No newline at end of file +{"version":3,"file":"locale_en.js","sources":["locale_en.js"],"names":["scheduler","locale","date","month_full","month_short","day_full","day_short","labels","dhx_cal_today_button","day_tab","week_tab","month_tab","new_event","icon_save","icon_cancel","icon_details","icon_edit","icon_delete","confirm_closing","confirm_deleting","section_description","section_time","full_day","confirm_recurring","section_recurring","button_recurring","button_recurring_open","button_edit_series","button_edit_occurrence","agenda_tab","description","year_tab","week_agenda_tab","grid_tab","drag_to_create","drag_to_move","message_ok","message_cancel","next","prev","year","month","day","hour","minute"],"mappings":";;;;;;;;AAQAA,UAAUC,QACTC,MACCC,YAAY,UAAW,WAAY,QAAS,QAAS,MAAO,OAAQ,OAAQ,SAAU,YAAa,UAAW,WAAY,YAC1HC,aAAa,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,OAC1FC,UAAU,SAAU,SAAU,UAAW,YAAa,WAAY,SAAU,YAC5EC,WAAW,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,QAEtDC,QACCC,qBAAqB,QACrBC,QAAQ,MACRC,SAAS,OACTC,UAAU,QACVC,UAAU,YACVC,UAAU,OACVC,YAAY;AACZC,aAAa,UACbC,UAAU,OACVC,YAAY,SACZC,gBAAgB,GAChBC,iBAAiB,mDACjBC,oBAAoB,cACpBC,aAAa,cACbC,SAAS,WAGTC,kBAAkB,wDAClBC,kBAAkB,eAClBC,iBAAiB,WACjBC,sBAAsB,UACtBC,mBAAoB,cACpBC,uBAAwB,kBAGxBC,WAAW,SACX3B,KAAK;AACL4B,YAAY,cAGZC,SAAS,OAGTC,gBAAiB,SAGjBC,SAAU,OAGVC,eAAe,iBACfC,aAAa,eAGbC,WAAW,KACXC,eAAe,SAGfC,KAAM,OACNC,KAAM,WACNC,KAAM,OACNC,MAAO,QACPC,IAAK,MACLC,KAAK,OACLC,OAAQ"}
\ No newline at end of file diff --git a/codebase/sources/locale/locale_es.js b/codebase/sources/locale/locale_es.js index 8bc07ed..187d02d 100644 --- a/codebase/sources/locale/locale_es.js +++ b/codebase/sources/locale/locale_es.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -60,6 +60,15 @@ scheduler.locale = { /* dhtmlx message default buttons */ message_ok:"OK", - message_cancel:"Cancel" + message_cancel:"Cancel", + + /* wai aria labels for non-text controls */ + next: "Next", + prev: "Previous", + year: "Year", + month: "Month", + day: "Day", + hour:"Hour", + minute: "Minute" } };
\ No newline at end of file diff --git a/codebase/sources/locale/locale_es.js.map b/codebase/sources/locale/locale_es.js.map index 44dc986..d20b9b3 100644 --- a/codebase/sources/locale/locale_es.js.map +++ b/codebase/sources/locale/locale_es.js.map @@ -1 +1 @@ -{"version":3,"file":"locale_es.js","sources":["locale_es.js"],"names":["scheduler","locale","date","month_full","month_short","day_full","day_short","labels","dhx_cal_today_button","day_tab","week_tab","month_tab","new_event","icon_save","icon_cancel","icon_details","icon_edit","icon_delete","confirm_closing","confirm_deleting","section_description","section_time","full_day","confirm_recurring","section_recurring","button_recurring","button_recurring_open","button_edit_series","button_edit_occurrence","agenda_tab","description","year_tab","week_agenda_tab","grid_tab","drag_to_create","drag_to_move","message_ok","message_cancel"],"mappings":";;;;;;;;AAWAA,UAAUC,QACTC,MACCC,YAAa,QAAS,UAAW,QAAS,QAAS,OAAQ,QAAS,QAAS,SAAU,aAAc,UAAW,YAAa,aAC7HC,aAAc,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,OAC3FC,UAAW,UAAW,QAAS,SAAU,YAAa,SAAU,UAAW,UAC3EC,WAAY,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,QAEvDC,QACCC,qBAAsB,MACtBC,QAAS,MACTC,SAAU,SACVC,UAAW,MACXC,UAAW,eACXC,UAAW,UACXC,YAAa;AACbC,aAAc,WACdC,UAAW,SACXC,YAAa,WACbC,gBAAiB,GACjBC,iBAAkB,oDAClBC,oBAAqB,cACrBC,aAAc,UACdC,SAAU,cAEVC,kBAAmB,qDACnBC,kBAAmB,mBACnBC,iBAAkB,WAClBC,sBAAuB,YACvBC,mBAAoB,kBACpBC,uBAAwB,mBAGxBC,WAAY,MACZ3B,KAAM;AACN4B,YAAa,cAGbC,SAAU,MAGVC,gBAAiB,MAGjBC,SAAU,OAGVC,eAAe,iBACfC,aAAa,eAGbC,WAAW,KACXC,eAAe"}
\ No newline at end of file +{"version":3,"file":"locale_es.js","sources":["locale_es.js"],"names":["scheduler","locale","date","month_full","month_short","day_full","day_short","labels","dhx_cal_today_button","day_tab","week_tab","month_tab","new_event","icon_save","icon_cancel","icon_details","icon_edit","icon_delete","confirm_closing","confirm_deleting","section_description","section_time","full_day","confirm_recurring","section_recurring","button_recurring","button_recurring_open","button_edit_series","button_edit_occurrence","agenda_tab","description","year_tab","week_agenda_tab","grid_tab","drag_to_create","drag_to_move","message_ok","message_cancel","next","prev","year","month","day","hour","minute"],"mappings":";;;;;;;;AAWAA,UAAUC,QACTC,MACCC,YAAa,QAAS,UAAW,QAAS,QAAS,OAAQ,QAAS,QAAS,SAAU,aAAc,UAAW,YAAa,aAC7HC,aAAc,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,OAC3FC,UAAW,UAAW,QAAS,SAAU,YAAa,SAAU,UAAW,UAC3EC,WAAY,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,QAEvDC,QACCC,qBAAsB,MACtBC,QAAS,MACTC,SAAU,SACVC,UAAW,MACXC,UAAW,eACXC,UAAW,UACXC,YAAa;AACbC,aAAc,WACdC,UAAW,SACXC,YAAa,WACbC,gBAAiB,GACjBC,iBAAkB,oDAClBC,oBAAqB,cACrBC,aAAc,UACdC,SAAU,cAEVC,kBAAmB,qDACnBC,kBAAmB,mBACnBC,iBAAkB,WAClBC,sBAAuB,YACvBC,mBAAoB,kBACpBC,uBAAwB,mBAGxBC,WAAY,MACZ3B,KAAM;AACN4B,YAAa,cAGbC,SAAU,MAGVC,gBAAiB,MAGjBC,SAAU,OAGVC,eAAe,iBACfC,aAAa,eAGbC,WAAW,KACXC,eAAe,SAGfC,KAAM,OACNC,KAAM,WACNC,KAAM,OACNC,MAAO,QACPC,IAAK,MACLC,KAAK,OACLC,OAAQ"}
\ No newline at end of file diff --git a/codebase/sources/locale/locale_fi.js b/codebase/sources/locale/locale_fi.js index 6c08a3c..744e8cf 100644 --- a/codebase/sources/locale/locale_fi.js +++ b/codebase/sources/locale/locale_fi.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -52,12 +52,21 @@ scheduler.locale = { grid_tab: "Ritilä", /* touch tooltip*/ - drag_to_create:"Drag to create", - drag_to_move:"Drag to move", + drag_to_create:"Luo uusi vetämällä", + drag_to_move:"Siirrä vetämällä", /* dhtmlx message default buttons */ message_ok:"OK", - message_cancel:"Cancel" + message_cancel:"Cancel", + + /* wai aria labels for non-text controls */ + next: "Next", + prev: "Previous", + year: "Year", + month: "Month", + day: "Day", + hour:"Hour", + minute: "Minute" } }; diff --git a/codebase/sources/locale/locale_fi.js.map b/codebase/sources/locale/locale_fi.js.map index 90fb665..aa28b45 100644 --- a/codebase/sources/locale/locale_fi.js.map +++ b/codebase/sources/locale/locale_fi.js.map @@ -1 +1 @@ -{"version":3,"file":"locale_fi.js","sources":["locale_fi.js"],"names":["scheduler","locale","date","month_full","month_short","day_full","day_short","labels","dhx_cal_today_button","day_tab","week_tab","month_tab","new_event","icon_save","icon_cancel","icon_details","icon_edit","icon_delete","confirm_closing","confirm_deleting","section_description","section_time","full_day","confirm_recurring","section_recurring","button_recurring","button_recurring_open","button_edit_series","button_edit_occurrence","agenda_tab","description","year_tab","week_agenda_tab","grid_tab","drag_to_create","drag_to_move","message_ok","message_cancel"],"mappings":";;;;;;;;AAQAA,UAAUC,QACTC,MACCC,YAAa,WAAY,WAAY,YAAa,WAAY,WAAY,eAAgB,gBAAiB,SAAU,UAAW,UAAW,YAAa,YACxJC,aAAc,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,OAC3FC,UAAW,YAAa,YAAa,UAAW,cAAe,UAAW,YAAa,YACvFC,WAAY,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,OAEjDC,QACCC,qBAAsB,SACtBC,QAAS,QACTC,SAAU,SACVC,UAAW,WACXC,UAAW;AACXC,UAAW,WACXC,YAAa,OACbC,aAAc,SACdC,UAAW,UACXC,YAAa,SACbC,gBAAiB,GACjBC,iBAAkB,wCAClBC,oBAAqB,SACrBC,aAAc,YACdC,SAAU,aAEVC,kBAAmB,kEACnBC,kBAAmB,mBACnBC,iBAAkB,6BAClBC,sBAAuB,0BACvBC,mBAAoB;AACpBC,uBAAwB,gBAGxBC,WAAY,cACZ3B,KAAM,aACN4B,YAAa,SAGbC,SAAU,SAGVC,gBAAiB,cAGjBC,SAAU,SAGVC,eAAe,iBACfC,aAAa,eAGbC,WAAW,KACXC,eAAe"}
\ No newline at end of file +{"version":3,"file":"locale_fi.js","sources":["locale_fi.js"],"names":["scheduler","locale","date","month_full","month_short","day_full","day_short","labels","dhx_cal_today_button","day_tab","week_tab","month_tab","new_event","icon_save","icon_cancel","icon_details","icon_edit","icon_delete","confirm_closing","confirm_deleting","section_description","section_time","full_day","confirm_recurring","section_recurring","button_recurring","button_recurring_open","button_edit_series","button_edit_occurrence","agenda_tab","description","year_tab","week_agenda_tab","grid_tab","drag_to_create","drag_to_move","message_ok","message_cancel","next","prev","year","month","day","hour","minute"],"mappings":";;;;;;;;AAQAA,UAAUC,QACTC,MACCC,YAAa,WAAY,WAAY,YAAa,WAAY,WAAY,eAAgB,gBAAiB,SAAU,UAAW,UAAW,YAAa,YACxJC,aAAc,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,OAC3FC,UAAW,YAAa,YAAa,UAAW,cAAe,UAAW,YAAa,YACvFC,WAAY,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,OAEjDC,QACCC,qBAAsB,SACtBC,QAAS,QACTC,SAAU,SACVC,UAAW,WACXC,UAAW;AACXC,UAAW,WACXC,YAAa,OACbC,aAAc,SACdC,UAAW,UACXC,YAAa,SACbC,gBAAiB,GACjBC,iBAAkB,wCAClBC,oBAAqB,SACrBC,aAAc,YACdC,SAAU,aAEVC,kBAAmB,kEACnBC,kBAAmB,mBACnBC,iBAAkB,6BAClBC,sBAAuB,0BACvBC,mBAAoB;AACpBC,uBAAwB,gBAGxBC,WAAY,cACZ3B,KAAM,aACN4B,YAAa,SAGbC,SAAU,SAGVC,gBAAiB,cAGjBC,SAAU,SAGVC,eAAe,qBACfC,aAAa,mBAGbC,WAAW,KACXC,eAAe,SAGfC,KAAM,OACNC,KAAM,WACNC,KAAM,OACNC,MAAO,QACPC,IAAK,MACLC,KAAK,OACLC,OAAQ"}
\ No newline at end of file diff --git a/codebase/sources/locale/locale_fr.js b/codebase/sources/locale/locale_fr.js index 8ee4813..3fc4dd6 100644 --- a/codebase/sources/locale/locale_fr.js +++ b/codebase/sources/locale/locale_fr.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -57,6 +57,15 @@ scheduler.locale = { /* dhtmlx message default buttons */ message_ok:"OK", - message_cancel:"Cancel" + message_cancel:"Cancel", + + /* wai aria labels for non-text controls */ + next: "Next", + prev: "Previous", + year: "Year", + month: "Month", + day: "Day", + hour:"Hour", + minute: "Minute" } }; diff --git a/codebase/sources/locale/locale_fr.js.map b/codebase/sources/locale/locale_fr.js.map index 16a5d48..861ef1d 100644 --- a/codebase/sources/locale/locale_fr.js.map +++ b/codebase/sources/locale/locale_fr.js.map @@ -1 +1 @@ -{"version":3,"file":"locale_fr.js","sources":["locale_fr.js"],"names":["scheduler","locale","date","month_full","month_short","day_full","day_short","labels","dhx_cal_today_button","day_tab","week_tab","month_tab","new_event","icon_save","icon_cancel","icon_details","icon_edit","icon_delete","confirm_closing","confirm_deleting","section_description","section_time","full_day","confirm_recurring","section_recurring","button_recurring","button_recurring_open","button_edit_series","button_edit_occurrence","agenda_tab","description","year_tab","week_agenda_tab","grid_tab","drag_to_create","drag_to_move","message_ok","message_cancel"],"mappings":";;;;;;;;AAQAA,UAAUC,QACTC,MACCC,YAAa,UAAW,UAAW,OAAQ,QAAS,MAAO,OAAQ,UAAW,OAAQ,YAAa,UAAW,WAAY,YAC1HC,aAAc,MAAO,MAAO,MAAO,MAAO,MAAO,OAAQ,OAAQ,MAAO,MAAO,MAAO,MAAO,OAC7FC,UAAW,WAAY,QAAS,QAAS,WAAY,QAAS,WAAY,UAC1EC,WAAY,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,QAEvDC,QACCC,qBAAsB,cACtBC,QAAS,OACTC,SAAU,UACVC,UAAW,OACXC,UAAW,mBACXC,UAAW;AACXC,YAAa,UACbC,aAAc,UACdC,UAAW,WACXC,YAAa,UACbC,gBAAiB,GACjBC,iBAAkB,sDAClBC,oBAAqB,cACrBC,aAAc,UACdC,SAAU,mBAEVC,kBAAmB,2DACnBC,kBAAmB,cACnBC,iBAAkB,YAClBC,sBAAuB,SACvBC,mBAAoB,oBACpBC,uBAAwB;AAGxBC,WAAY,OACZ3B,KAAM,OACN4B,YAAa,cAGbC,SAAU,QAGVC,gBAAiB,OAGjBC,SAAU,SAGVC,eAAe,iBACfC,aAAa,eAGbC,WAAW,KACXC,eAAe"}
\ No newline at end of file +{"version":3,"file":"locale_fr.js","sources":["locale_fr.js"],"names":["scheduler","locale","date","month_full","month_short","day_full","day_short","labels","dhx_cal_today_button","day_tab","week_tab","month_tab","new_event","icon_save","icon_cancel","icon_details","icon_edit","icon_delete","confirm_closing","confirm_deleting","section_description","section_time","full_day","confirm_recurring","section_recurring","button_recurring","button_recurring_open","button_edit_series","button_edit_occurrence","agenda_tab","description","year_tab","week_agenda_tab","grid_tab","drag_to_create","drag_to_move","message_ok","message_cancel","next","prev","year","month","day","hour","minute"],"mappings":";;;;;;;;AAQAA,UAAUC,QACTC,MACCC,YAAa,UAAW,UAAW,OAAQ,QAAS,MAAO,OAAQ,UAAW,OAAQ,YAAa,UAAW,WAAY,YAC1HC,aAAc,MAAO,MAAO,MAAO,MAAO,MAAO,OAAQ,OAAQ,MAAO,MAAO,MAAO,MAAO,OAC7FC,UAAW,WAAY,QAAS,QAAS,WAAY,QAAS,WAAY,UAC1EC,WAAY,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,QAEvDC,QACCC,qBAAsB,cACtBC,QAAS,OACTC,SAAU,UACVC,UAAW,OACXC,UAAW,mBACXC,UAAW;AACXC,YAAa,UACbC,aAAc,UACdC,UAAW,WACXC,YAAa,UACbC,gBAAiB,GACjBC,iBAAkB,sDAClBC,oBAAqB,cACrBC,aAAc,UACdC,SAAU,mBAEVC,kBAAmB,2DACnBC,kBAAmB,cACnBC,iBAAkB,YAClBC,sBAAuB,SACvBC,mBAAoB,oBACpBC,uBAAwB;AAGxBC,WAAY,OACZ3B,KAAM,OACN4B,YAAa,cAGbC,SAAU,QAGVC,gBAAiB,OAGjBC,SAAU,SAGVC,eAAe,iBACfC,aAAa,eAGbC,WAAW,KACXC,eAAe,SAGfC,KAAM,OACNC,KAAM,WACNC,KAAM,OACNC,MAAO,QACPC,IAAK,MACLC,KAAK,OACLC,OAAQ"}
\ No newline at end of file diff --git a/codebase/sources/locale/locale_he.js b/codebase/sources/locale/locale_he.js index 74c0765..ff4ddc2 100644 --- a/codebase/sources/locale/locale_he.js +++ b/codebase/sources/locale/locale_he.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -57,7 +57,16 @@ scheduler.locale = { /* dhtmlx message default buttons */ message_ok:"OK", - message_cancel:"Cancel" + message_cancel:"Cancel", + + /* wai aria labels for non-text controls */ + next: "Next", + prev: "Previous", + year: "Year", + month: "Month", + day: "Day", + hour:"Hour", + minute: "Minute" } }; diff --git a/codebase/sources/locale/locale_he.js.map b/codebase/sources/locale/locale_he.js.map index 3a59269..f6d0a4c 100644 --- a/codebase/sources/locale/locale_he.js.map +++ b/codebase/sources/locale/locale_he.js.map @@ -1 +1 @@ -{"version":3,"file":"locale_he.js","sources":["locale_he.js"],"names":["scheduler","locale","date","month_full","month_short","day_full","day_short","labels","dhx_cal_today_button","day_tab","week_tab","month_tab","new_event","icon_save","icon_cancel","icon_details","icon_edit","icon_delete","confirm_closing","confirm_deleting","section_description","section_time","confirm_recurring","section_recurring","button_recurring","button_recurring_open","full_day","button_edit_series","button_edit_occurrence","agenda_tab","description","year_tab","week_agenda_tab","grid_tab","drag_to_create","drag_to_move","message_ok","message_cancel"],"mappings":";;;;;;;;AAQAA,UAAUC,QACTC,MACCC,YAAa,QAAS,SAAU,MAAO,QAAS,MAAO,OAAQ,OAAQ,SAAU,SAAU,UAAW,SAAU,SAChHC,aAAc,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,OAC3FC,UAAW,QAAS,MAAO,QAAS,QAAS,QAAS,OAAQ,OAC9DC,WAAY,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,MAE3CC,QACCC,qBAAsB,OACtBC,QAAS,MACTC,SAAU,OACVC,UAAW,OACXC,UAAW,WACXC,UAAW,OACXC,YAAa,MACbC,aAAc,QACdC,UAAW,OACXC,YAAa;AACbC,gBAAiB,GACjBC,iBAAkB,0BAClBC,oBAAqB,OACrBC,aAAc,QAEdC,kBAAmB,2CACnBC,kBAAmB,cACnBC,iBAAkB,UAClBC,sBAAuB,OACvBC,SAAU,UACVC,mBAAoB,gBACpBC,uBAAwB,aAGxBC,WAAY,UACZ3B,KAAM,QACN4B,YAAa,QAGbC,SAAU,OAGVC,gBAAiB,UAGjBC,SAAU,OAGVC,eAAe,iBACfC,aAAa;AAGbC,WAAW,KACXC,eAAe"}
\ No newline at end of file +{"version":3,"file":"locale_he.js","sources":["locale_he.js"],"names":["scheduler","locale","date","month_full","month_short","day_full","day_short","labels","dhx_cal_today_button","day_tab","week_tab","month_tab","new_event","icon_save","icon_cancel","icon_details","icon_edit","icon_delete","confirm_closing","confirm_deleting","section_description","section_time","confirm_recurring","section_recurring","button_recurring","button_recurring_open","full_day","button_edit_series","button_edit_occurrence","agenda_tab","description","year_tab","week_agenda_tab","grid_tab","drag_to_create","drag_to_move","message_ok","message_cancel","next","prev","year","month","day","hour","minute"],"mappings":";;;;;;;;AAQAA,UAAUC,QACTC,MACCC,YAAa,QAAS,SAAU,MAAO,QAAS,MAAO,OAAQ,OAAQ,SAAU,SAAU,UAAW,SAAU,SAChHC,aAAc,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,OAC3FC,UAAW,QAAS,MAAO,QAAS,QAAS,QAAS,OAAQ,OAC9DC,WAAY,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,MAE3CC,QACCC,qBAAsB,OACtBC,QAAS,MACTC,SAAU,OACVC,UAAW,OACXC,UAAW,WACXC,UAAW,OACXC,YAAa,MACbC,aAAc,QACdC,UAAW,OACXC,YAAa;AACbC,gBAAiB,GACjBC,iBAAkB,0BAClBC,oBAAqB,OACrBC,aAAc,QAEdC,kBAAmB,2CACnBC,kBAAmB,cACnBC,iBAAkB,UAClBC,sBAAuB,OACvBC,SAAU,UACVC,mBAAoB,gBACpBC,uBAAwB,aAGxBC,WAAY,UACZ3B,KAAM,QACN4B,YAAa,QAGbC,SAAU,OAGVC,gBAAiB,UAGjBC,SAAU,OAGVC,eAAe,iBACfC,aAAa;AAGbC,WAAW,KACXC,eAAe,SAGfC,KAAM,OACNC,KAAM,WACNC,KAAM,OACNC,MAAO,QACPC,IAAK,MACLC,KAAK,OACLC,OAAQ"}
\ No newline at end of file diff --git a/codebase/sources/locale/locale_hu.js b/codebase/sources/locale/locale_hu.js index e33401c..887ebe3 100644 --- a/codebase/sources/locale/locale_hu.js +++ b/codebase/sources/locale/locale_hu.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -52,7 +52,16 @@ scheduler.locale = { /* dhtmlx message default buttons */ message_ok:"OK", - message_cancel:"Cancel" + message_cancel:"Cancel", + + /* wai aria labels for non-text controls */ + next: "Next", + prev: "Previous", + year: "Year", + month: "Month", + day: "Day", + hour:"Hour", + minute: "Minute" } }; diff --git a/codebase/sources/locale/locale_hu.js.map b/codebase/sources/locale/locale_hu.js.map index 7e1aec4..88233b2 100644 --- a/codebase/sources/locale/locale_hu.js.map +++ b/codebase/sources/locale/locale_hu.js.map @@ -1 +1 @@ -{"version":3,"file":"locale_hu.js","sources":["locale_hu.js"],"names":["scheduler","locale","date","month_full","month_short","day_full","day_short","labels","dhx_cal_today_button","day_tab","week_tab","month_tab","new_event","icon_save","icon_cancel","icon_details","icon_edit","icon_delete","confirm_closing","confirm_deleting","section_description","section_time","full_day","confirm_recurring","section_recurring","button_recurring","button_recurring_open","button_edit_series","button_edit_occurrence","agenda_tab","description","year_tab","drag_to_create","drag_to_move","message_ok","message_cancel"],"mappings":";;;;;;;;AAQAA,UAAUC,QACTC,MACCC,YAAa,SAAU,UAAW,UAAW,UAAW,QAAS,SAAU,SAAU,YAAa,aAAc,UAAW,WAAY,YACvIC,aAAc,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,OAC3FC,UAAW,WAAY,QAAS,OAAQ,SAAU,YAAa,SAAU,WACzEC,WAAY,KAAM,KAAM,KAAM,MAAO,MAAO,KAAM,QAEnDC,QACCC,qBAAsB,KACtBC,QAAS,MACTC,SAAU,MACVC,UAAW,QACXC,UAAW,aACXC,UAAW,SACXC,YAAa;AACbC,aAAc,YACdC,UAAW,cACXC,YAAa,SACbC,gBAAiB,GACjBC,iBAAkB,+CAClBC,oBAAqB,SACrBC,aAAc,UACdC,SAAU,cAGVC,kBAAmB,wEACnBC,kBAAmB,oBACnBC,iBAAkB,SAClBC,sBAAuB,eACvBC,mBAAoB,cACpBC,uBAAwB,sBAGxBC,WAAY;AACZ3B,KAAM,QACN4B,YAAa,SAGbC,SAAU,KAGVC,eAAe,iBACfC,aAAa,eAGbC,WAAW,KACXC,eAAe"}
\ No newline at end of file +{"version":3,"file":"locale_hu.js","sources":["locale_hu.js"],"names":["scheduler","locale","date","month_full","month_short","day_full","day_short","labels","dhx_cal_today_button","day_tab","week_tab","month_tab","new_event","icon_save","icon_cancel","icon_details","icon_edit","icon_delete","confirm_closing","confirm_deleting","section_description","section_time","full_day","confirm_recurring","section_recurring","button_recurring","button_recurring_open","button_edit_series","button_edit_occurrence","agenda_tab","description","year_tab","drag_to_create","drag_to_move","message_ok","message_cancel","next","prev","year","month","day","hour","minute"],"mappings":";;;;;;;;AAQAA,UAAUC,QACTC,MACCC,YAAa,SAAU,UAAW,UAAW,UAAW,QAAS,SAAU,SAAU,YAAa,aAAc,UAAW,WAAY,YACvIC,aAAc,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,OAC3FC,UAAW,WAAY,QAAS,OAAQ,SAAU,YAAa,SAAU,WACzEC,WAAY,KAAM,KAAM,KAAM,MAAO,MAAO,KAAM,QAEnDC,QACCC,qBAAsB,KACtBC,QAAS,MACTC,SAAU,MACVC,UAAW,QACXC,UAAW,aACXC,UAAW,SACXC,YAAa;AACbC,aAAc,YACdC,UAAW,cACXC,YAAa,SACbC,gBAAiB,GACjBC,iBAAkB,+CAClBC,oBAAqB,SACrBC,aAAc,UACdC,SAAU,cAGVC,kBAAmB,wEACnBC,kBAAmB,oBACnBC,iBAAkB,SAClBC,sBAAuB,eACvBC,mBAAoB,cACpBC,uBAAwB,sBAGxBC,WAAY;AACZ3B,KAAM,QACN4B,YAAa,SAGbC,SAAU,KAGVC,eAAe,iBACfC,aAAa,eAGbC,WAAW,KACXC,eAAe,SAGfC,KAAM,OACNC,KAAM,WACNC,KAAM,OACNC,MAAO,QACPC,IAAK,MACLC,KAAK,OACLC,OAAQ"}
\ No newline at end of file diff --git a/codebase/sources/locale/locale_id.js b/codebase/sources/locale/locale_id.js index 9764d82..de24af1 100644 --- a/codebase/sources/locale/locale_id.js +++ b/codebase/sources/locale/locale_id.js @@ -1,9 +1,9 @@ /*
@license
-dhtmlxScheduler v.4.3.1
+dhtmlxScheduler v.4.4.0 Stardard
This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited.
(c) Dinamenta, UAB.
*/
-scheduler.locale = {
date: {
month_full: ["Januari", "Februari", "Maret", "April", "Mei", "Juni", "Juli", "Agustus", "September", "Oktober", "November", "Desember"],
month_short: ["Jan", "Feb", "Mar", "Apr", "Mei", "Jun", "Jul", "Ags", "Sep", "Okt", "Nov", "Des"],
day_full: ["Minggu", "Senin", "Selasa", "Rabu", "Kamis", "Jumat", "Sabtu"],
day_short: ["Ming", "Sen", "Sel", "Rab", "Kam", "Jum", "Sab"]
},
labels: {
dhx_cal_today_button: "Hari Ini",
day_tab: "Hari",
week_tab: "Minggu",
month_tab: "Bulan",
new_event: "Acara Baru",
icon_save: "Simpan",
icon_cancel: "Batal",
icon_details: "Detail",
icon_edit: "Edit",
icon_delete: "Hapus",
confirm_closing: "", /*Perubahan tidak akan disimpan ?*/
confirm_deleting: "Acara akan dihapus",
section_description: "Keterangan",
section_time: "Periode",
full_day: "Hari penuh",
/*recurring events*/
confirm_recurring: "Apakah acara ini akan berulang?",
section_recurring: "Acara Rutin",
button_recurring: "Tidak Difungsikan",
button_recurring_open: "Difungsikan",
button_edit_series: "Mengedit seri",
button_edit_occurrence: "Mengedit salinan",
/*agenda view extension*/
agenda_tab: "Agenda",
date: "Tanggal",
description: "Keterangan",
/*year view extension*/
year_tab: "Tahun",
/*week agenda view extension*/
week_agenda_tab: "Agenda",
/*grid view extension*/
grid_tab: "Tabel",
/* touch tooltip*/
drag_to_create:"Drag to create",
drag_to_move:"Drag to move",
/* dhtmlx message default buttons */
message_ok:"OK",
message_cancel:"Cancel"
}
};
\ No newline at end of file +scheduler.locale = {
date: {
month_full: ["Januari", "Februari", "Maret", "April", "Mei", "Juni", "Juli", "Agustus", "September", "Oktober", "November", "Desember"],
month_short: ["Jan", "Feb", "Mar", "Apr", "Mei", "Jun", "Jul", "Ags", "Sep", "Okt", "Nov", "Des"],
day_full: ["Minggu", "Senin", "Selasa", "Rabu", "Kamis", "Jumat", "Sabtu"],
day_short: ["Ming", "Sen", "Sel", "Rab", "Kam", "Jum", "Sab"]
},
labels: {
dhx_cal_today_button: "Hari Ini",
day_tab: "Hari",
week_tab: "Minggu",
month_tab: "Bulan",
new_event: "Acara Baru",
icon_save: "Simpan",
icon_cancel: "Batal",
icon_details: "Detail",
icon_edit: "Edit",
icon_delete: "Hapus",
confirm_closing: "", /*Perubahan tidak akan disimpan ?*/
confirm_deleting: "Acara akan dihapus",
section_description: "Keterangan",
section_time: "Periode",
full_day: "Hari penuh",
/*recurring events*/
confirm_recurring: "Apakah acara ini akan berulang?",
section_recurring: "Acara Rutin",
button_recurring: "Tidak Difungsikan",
button_recurring_open: "Difungsikan",
button_edit_series: "Mengedit seri",
button_edit_occurrence: "Mengedit salinan",
/*agenda view extension*/
agenda_tab: "Agenda",
date: "Tanggal",
description: "Keterangan",
/*year view extension*/
year_tab: "Tahun",
/*week agenda view extension*/
week_agenda_tab: "Agenda",
/*grid view extension*/
grid_tab: "Tabel",
/* touch tooltip*/
drag_to_create:"Drag to create",
drag_to_move:"Drag to move",
/* dhtmlx message default buttons */
message_ok:"OK",
message_cancel:"Cancel",
/* wai aria labels for non-text controls */
next: "Next",
prev: "Previous",
year: "Year",
month: "Month",
day: "Day",
hour:"Hour",
minute: "Minute"
}
};
\ No newline at end of file diff --git a/codebase/sources/locale/locale_id.js.map b/codebase/sources/locale/locale_id.js.map index 56320c4..5e9e18b 100644 --- a/codebase/sources/locale/locale_id.js.map +++ b/codebase/sources/locale/locale_id.js.map @@ -1 +1 @@ -{"version":3,"file":"locale_id.js","sources":["locale_id.js"],"names":["scheduler","locale","date","month_full","month_short","day_full","day_short","labels","dhx_cal_today_button","day_tab","week_tab","month_tab","new_event","icon_save","icon_cancel","icon_details","icon_edit","icon_delete","confirm_closing","confirm_deleting","section_description","section_time","full_day","confirm_recurring","section_recurring","button_recurring","button_recurring_open","button_edit_series","button_edit_occurrence","agenda_tab","description","year_tab","week_agenda_tab","grid_tab","drag_to_create","drag_to_move","message_ok","message_cancel"],"mappings":";;;;;;;;AAQAA,UAAUC,QACTC,MACCC,YAAa,UAAW,WAAY,QAAS,QAAS,MAAO,OAAQ,OAAQ,UAAW,YAAa,UAAW,WAAY,YAC5HC,aAAc,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,OAC3FC,UAAW,SAAU,QAAS,SAAU,OAAQ,QAAS,QAAS,SAClEC,WAAY,OAAQ,MAAO,MAAO,MAAO,MAAO,MAAO,QAExDC,QACCC,qBAAsB,WACtBC,QAAS,OACTC,SAAU,SACVC,UAAW,QACXC,UAAW,aACXC,UAAW,SACXC,YAAa;AACbC,aAAc,SACdC,UAAW,OACXC,YAAa,QACbC,gBAAiB,GACjBC,iBAAkB,qBAClBC,oBAAqB,aACrBC,aAAc,UACdC,SAAU,aAGVC,kBAAmB,kCACnBC,kBAAmB,cACnBC,iBAAkB,oBAClBC,sBAAuB,cACvBC,mBAAoB,gBACpBC,uBAAwB,mBAGxBC,WAAY,SACZ3B,KAAM,UACN4B,YAAa,aAGbC,SAAU;AAGVC,gBAAiB,SAGjBC,SAAU,QAGVC,eAAe,iBACfC,aAAa,eAGbC,WAAW,KACXC,eAAe"}
\ No newline at end of file +{"version":3,"file":"locale_id.js","sources":["locale_id.js"],"names":["scheduler","locale","date","month_full","month_short","day_full","day_short","labels","dhx_cal_today_button","day_tab","week_tab","month_tab","new_event","icon_save","icon_cancel","icon_details","icon_edit","icon_delete","confirm_closing","confirm_deleting","section_description","section_time","full_day","confirm_recurring","section_recurring","button_recurring","button_recurring_open","button_edit_series","button_edit_occurrence","agenda_tab","description","year_tab","week_agenda_tab","grid_tab","drag_to_create","drag_to_move","message_ok","message_cancel","next","prev","year","month","day","hour","minute"],"mappings":";;;;;;;;AAQAA,UAAUC,QACTC,MACCC,YAAa,UAAW,WAAY,QAAS,QAAS,MAAO,OAAQ,OAAQ,UAAW,YAAa,UAAW,WAAY,YAC5HC,aAAc,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,OAC3FC,UAAW,SAAU,QAAS,SAAU,OAAQ,QAAS,QAAS,SAClEC,WAAY,OAAQ,MAAO,MAAO,MAAO,MAAO,MAAO,QAExDC,QACCC,qBAAsB,WACtBC,QAAS,OACTC,SAAU,SACVC,UAAW,QACXC,UAAW,aACXC,UAAW,SACXC,YAAa;AACbC,aAAc,SACdC,UAAW,OACXC,YAAa,QACbC,gBAAiB,GACjBC,iBAAkB,qBAClBC,oBAAqB,aACrBC,aAAc,UACdC,SAAU,aAGVC,kBAAmB,kCACnBC,kBAAmB,cACnBC,iBAAkB,oBAClBC,sBAAuB,cACvBC,mBAAoB,gBACpBC,uBAAwB,mBAGxBC,WAAY,SACZ3B,KAAM,UACN4B,YAAa,aAGbC,SAAU;AAGVC,gBAAiB,SAGjBC,SAAU,QAGVC,eAAe,iBACfC,aAAa,eAGbC,WAAW,KACXC,eAAe,SAGfC,KAAM,OACNC,KAAM,WACNC,KAAM,OACNC,MAAO,QACPC,IAAK,MACLC,KAAK,OACLC,OAAQ"}
\ No newline at end of file diff --git a/codebase/sources/locale/locale_it.js b/codebase/sources/locale/locale_it.js index e4257a1..7727ca3 100644 --- a/codebase/sources/locale/locale_it.js +++ b/codebase/sources/locale/locale_it.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -57,6 +57,15 @@ scheduler.locale = { /* dhtmlx message default buttons */ message_ok:"OK", - message_cancel:"Cancel" + message_cancel:"Cancel", + + /* wai aria labels for non-text controls */ + next: "Next", + prev: "Previous", + year: "Year", + month: "Month", + day: "Day", + hour:"Hour", + minute: "Minute" } }; diff --git a/codebase/sources/locale/locale_it.js.map b/codebase/sources/locale/locale_it.js.map index baa2f8c..8715c01 100644 --- a/codebase/sources/locale/locale_it.js.map +++ b/codebase/sources/locale/locale_it.js.map @@ -1 +1 @@ -{"version":3,"file":"locale_it.js","sources":["locale_it.js"],"names":["scheduler","locale","date","month_full","month_short","day_full","day_short","labels","dhx_cal_today_button","day_tab","week_tab","month_tab","new_event","icon_save","icon_cancel","icon_details","icon_edit","icon_delete","confirm_closing","confirm_deleting","section_description","section_time","full_day","confirm_recurring","section_recurring","button_recurring","button_recurring_open","button_edit_series","button_edit_occurrence","agenda_tab","description","year_tab","week_agenda_tab","grid_tab","drag_to_create","drag_to_move","message_ok","message_cancel"],"mappings":";;;;;;;;AAQAA,UAAUC,QACTC,MACCC,YAAa,UAAW,WAAY,QAAS,SAAU,SAAU,SAAU,SAAU,SAAU,YAAa,UAAW,WAAY,YACnIC,aAAc,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,OAC3FC,UAAW,WAAY,SAAU,UAAW,YAAa,UAAW,UAAW,UAC/EC,WAAY,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,QAEvDC,QACCC,qBAAsB,OACtBC,QAAS,SACTC,SAAU,YACVC,UAAW,OACXC,UAAW,eACXC,UAAW;AACXC,YAAa,SACbC,aAAc,WACdC,UAAW,WACXC,YAAa,UACbC,gBAAiB,GACjBC,iBAAkB,yCAClBC,oBAAqB,cACrBC,aAAc,mBACdC,SAAU,kBAEVC,kBAAmB,4CACnBC,kBAAmB,oBACnBC,iBAAkB,cAClBC,sBAAuB,WACvBC,mBAAoB,sBACpBC,uBAAwB;AAGxBC,WAAY,SACZ3B,KAAM,OACN4B,YAAa,cAGbC,SAAU,OAGVC,gBAAiB,SAGjBC,SAAU,UAGVC,eAAe,iBACfC,aAAa,eAGbC,WAAW,KACXC,eAAe"}
\ No newline at end of file +{"version":3,"file":"locale_it.js","sources":["locale_it.js"],"names":["scheduler","locale","date","month_full","month_short","day_full","day_short","labels","dhx_cal_today_button","day_tab","week_tab","month_tab","new_event","icon_save","icon_cancel","icon_details","icon_edit","icon_delete","confirm_closing","confirm_deleting","section_description","section_time","full_day","confirm_recurring","section_recurring","button_recurring","button_recurring_open","button_edit_series","button_edit_occurrence","agenda_tab","description","year_tab","week_agenda_tab","grid_tab","drag_to_create","drag_to_move","message_ok","message_cancel","next","prev","year","month","day","hour","minute"],"mappings":";;;;;;;;AAQAA,UAAUC,QACTC,MACCC,YAAa,UAAW,WAAY,QAAS,SAAU,SAAU,SAAU,SAAU,SAAU,YAAa,UAAW,WAAY,YACnIC,aAAc,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,OAC3FC,UAAW,WAAY,SAAU,UAAW,YAAa,UAAW,UAAW,UAC/EC,WAAY,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,QAEvDC,QACCC,qBAAsB,OACtBC,QAAS,SACTC,SAAU,YACVC,UAAW,OACXC,UAAW,eACXC,UAAW;AACXC,YAAa,SACbC,aAAc,WACdC,UAAW,WACXC,YAAa,UACbC,gBAAiB,GACjBC,iBAAkB,yCAClBC,oBAAqB,cACrBC,aAAc,mBACdC,SAAU,kBAEVC,kBAAmB,4CACnBC,kBAAmB,oBACnBC,iBAAkB,cAClBC,sBAAuB,WACvBC,mBAAoB,sBACpBC,uBAAwB;AAGxBC,WAAY,SACZ3B,KAAM,OACN4B,YAAa,cAGbC,SAAU,OAGVC,gBAAiB,SAGjBC,SAAU,UAGVC,eAAe,iBACfC,aAAa,eAGbC,WAAW,KACXC,eAAe,SAGfC,KAAM,OACNC,KAAM,WACNC,KAAM,OACNC,MAAO,QACPC,IAAK,MACLC,KAAK,OACLC,OAAQ"}
\ No newline at end of file diff --git a/codebase/sources/locale/locale_jp.js b/codebase/sources/locale/locale_jp.js index 67f0fb1..1dcc7de 100644 --- a/codebase/sources/locale/locale_jp.js +++ b/codebase/sources/locale/locale_jp.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -59,7 +59,16 @@ scheduler.locale = { /* dhtmlx message default buttons */ message_ok:"OK", - message_cancel:"Cancel" + message_cancel:"Cancel", + + /* wai aria labels for non-text controls */ + next: "Next", + prev: "Previous", + year: "Year", + month: "Month", + day: "Day", + hour:"Hour", + minute: "Minute" } }; diff --git a/codebase/sources/locale/locale_jp.js.map b/codebase/sources/locale/locale_jp.js.map index 366d1cb..8c5cd64 100644 --- a/codebase/sources/locale/locale_jp.js.map +++ b/codebase/sources/locale/locale_jp.js.map @@ -1 +1 @@ -{"version":3,"file":"locale_jp.js","sources":["locale_jp.js"],"names":["scheduler","locale","date","month_full","month_short","day_full","day_short","labels","dhx_cal_today_button","day_tab","week_tab","month_tab","new_event","icon_save","icon_cancel","icon_details","icon_edit","icon_delete","confirm_closing","confirm_deleting","section_description","section_time","confirm_recurring","section_recurring","button_recurring","button_recurring_open","full_day","button_edit_series","button_edit_occurrence","agenda_tab","description","year_tab","week_agenda_tab","grid_tab","drag_to_create","drag_to_move","message_ok","message_cancel"],"mappings":";;;;;;;;AAWAA,UAAUC,QACTC,MACCC,YAAa,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,MAAO,MAAO,OACjFC,aAAe,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,MAAO,MAAO,OACnFC,UAAW,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,OACrDC,WAAY,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,MAE3CC,QACCC,qBAAsB,KACtBC,QAAS,IACTC,SAAU,IACVC,UAAW,IACXC,UAAW,QACXC,UAAW,KACXC,YAAa,QACbC,aAAc,KACdC,UAAW,KACXC,YAAa,KACbC,gBAAiB,GACjBC,iBAAkB;AAClBC,oBAAqB,WACrBC,aAAc,KACdC,kBAAmB,yBACnBC,kBAAmB,YACnBC,iBAAkB,KAClBC,sBAAuB,KACvBC,SAAU,KACVC,mBAAoB,aACpBC,uBAAwB,SAGxBC,WAAY,MACZ3B,KAAM,KACN4B,YAAa,KAGbC,SAAU,KAGVC,gBAAiB,MAGjBC,SAAU,OAGVC,eAAe,iBACfC,aAAa,eAGbC,WAAW,KACXC,eAAe"}
\ No newline at end of file +{"version":3,"file":"locale_jp.js","sources":["locale_jp.js"],"names":["scheduler","locale","date","month_full","month_short","day_full","day_short","labels","dhx_cal_today_button","day_tab","week_tab","month_tab","new_event","icon_save","icon_cancel","icon_details","icon_edit","icon_delete","confirm_closing","confirm_deleting","section_description","section_time","confirm_recurring","section_recurring","button_recurring","button_recurring_open","full_day","button_edit_series","button_edit_occurrence","agenda_tab","description","year_tab","week_agenda_tab","grid_tab","drag_to_create","drag_to_move","message_ok","message_cancel","next","prev","year","month","day","hour","minute"],"mappings":";;;;;;;;AAWAA,UAAUC,QACTC,MACCC,YAAa,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,MAAO,MAAO,OACjFC,aAAe,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,MAAO,MAAO,OACnFC,UAAW,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,OACrDC,WAAY,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,MAE3CC,QACCC,qBAAsB,KACtBC,QAAS,IACTC,SAAU,IACVC,UAAW,IACXC,UAAW,QACXC,UAAW,KACXC,YAAa,QACbC,aAAc,KACdC,UAAW,KACXC,YAAa,KACbC,gBAAiB,GACjBC,iBAAkB;AAClBC,oBAAqB,WACrBC,aAAc,KACdC,kBAAmB,yBACnBC,kBAAmB,YACnBC,iBAAkB,KAClBC,sBAAuB,KACvBC,SAAU,KACVC,mBAAoB,aACpBC,uBAAwB,SAGxBC,WAAY,MACZ3B,KAAM,KACN4B,YAAa,KAGbC,SAAU,KAGVC,gBAAiB,MAGjBC,SAAU,OAGVC,eAAe,iBACfC,aAAa,eAGbC,WAAW,KACXC,eAAe,SAGfC,KAAM,OACNC,KAAM,WACNC,KAAM,OACNC,MAAO,QACPC,IAAK;AACLC,KAAK,OACLC,OAAQ"}
\ No newline at end of file diff --git a/codebase/sources/locale/locale_nb.js b/codebase/sources/locale/locale_nb.js index 38d587a..db1b963 100644 --- a/codebase/sources/locale/locale_nb.js +++ b/codebase/sources/locale/locale_nb.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -57,6 +57,15 @@ scheduler.locale = { /* dhtmlx message default buttons */ message_ok:"OK", - message_cancel:"Cancel" + message_cancel:"Cancel", + + /* wai aria labels for non-text controls */ + next: "Next", + prev: "Previous", + year: "Year", + month: "Month", + day: "Day", + hour:"Hour", + minute: "Minute" } };
\ No newline at end of file diff --git a/codebase/sources/locale/locale_nb.js.map b/codebase/sources/locale/locale_nb.js.map index b1d009f..48f7a2a 100644 --- a/codebase/sources/locale/locale_nb.js.map +++ b/codebase/sources/locale/locale_nb.js.map @@ -1 +1 @@ -{"version":3,"file":"locale_nb.js","sources":["locale_nb.js"],"names":["scheduler","locale","date","month_full","month_short","day_full","day_short","labels","dhx_cal_today_button","day_tab","week_tab","month_tab","new_event","icon_save","icon_cancel","icon_details","icon_edit","icon_delete","confirm_closing","confirm_deleting","section_description","section_time","confirm_recurring","section_recurring","button_recurring","button_recurring_open","button_edit_series","button_edit_occurrence","agenda_tab","description","year_tab","week_agenda_tab","grid_tab","drag_to_create","drag_to_move","message_ok","message_cancel"],"mappings":";;;;;;;;AAQAA,UAAUC,QACTC,MACCC,YAAa,SAAU,UAAW,OAAQ,QAAS,MAAO,OAAQ,OAAQ,SAAU,YAAa,UAAW,WAAY,YACxHC,aAAc,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,OAC3FC,UAAW,SAAU,SAAU,UAAW,SAAU,UAAW,SAAU,UACzEC,WAAY,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,QAEvDC,QACCC,qBAAsB,QACtBC,QAAS,MACTC,SAAU,MACVC,UAAW,QACXC,UAAW,cACXC,UAAW,QACXC,YAAa;AACbC,aAAc,WACdC,UAAW,UACXC,YAAa,QACbC,gBAAiB,GACjBC,iBAAkB,qDAClBC,oBAAqB,cACrBC,aAAc,cAGdC,kBAAmB,8DACnBC,kBAAmB,oBACnBC,iBAAkB,KAClBC,sBAAuB,KACvBC,mBAAoB,iBACpBC,uBAAwB,mBAGxBC,WAAY,SACZ1B,KAAM,OACN2B,YAAa;AAGbC,SAAU,KAGVC,gBAAiB,SAGjBC,SAAU,OAGVC,eAAe,iBACfC,aAAa,eAGbC,WAAW,KACXC,eAAe"}
\ No newline at end of file +{"version":3,"file":"locale_nb.js","sources":["locale_nb.js"],"names":["scheduler","locale","date","month_full","month_short","day_full","day_short","labels","dhx_cal_today_button","day_tab","week_tab","month_tab","new_event","icon_save","icon_cancel","icon_details","icon_edit","icon_delete","confirm_closing","confirm_deleting","section_description","section_time","confirm_recurring","section_recurring","button_recurring","button_recurring_open","button_edit_series","button_edit_occurrence","agenda_tab","description","year_tab","week_agenda_tab","grid_tab","drag_to_create","drag_to_move","message_ok","message_cancel","next","prev","year","month","day","hour","minute"],"mappings":";;;;;;;;AAQAA,UAAUC,QACTC,MACCC,YAAa,SAAU,UAAW,OAAQ,QAAS,MAAO,OAAQ,OAAQ,SAAU,YAAa,UAAW,WAAY,YACxHC,aAAc,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,OAC3FC,UAAW,SAAU,SAAU,UAAW,SAAU,UAAW,SAAU,UACzEC,WAAY,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,QAEvDC,QACCC,qBAAsB,QACtBC,QAAS,MACTC,SAAU,MACVC,UAAW,QACXC,UAAW,cACXC,UAAW,QACXC,YAAa;AACbC,aAAc,WACdC,UAAW,UACXC,YAAa,QACbC,gBAAiB,GACjBC,iBAAkB,qDAClBC,oBAAqB,cACrBC,aAAc,cAGdC,kBAAmB,8DACnBC,kBAAmB,oBACnBC,iBAAkB,KAClBC,sBAAuB,KACvBC,mBAAoB,iBACpBC,uBAAwB,mBAGxBC,WAAY,SACZ1B,KAAM,OACN2B,YAAa;AAGbC,SAAU,KAGVC,gBAAiB,SAGjBC,SAAU,OAGVC,eAAe,iBACfC,aAAa,eAGbC,WAAW,KACXC,eAAe,SAGfC,KAAM,OACNC,KAAM,WACNC,KAAM,OACNC,MAAO,QACPC,IAAK,MACLC,KAAK,OACLC,OAAQ"}
\ No newline at end of file diff --git a/codebase/sources/locale/locale_nl.js b/codebase/sources/locale/locale_nl.js index 7cc8b93..aea5b8b 100644 --- a/codebase/sources/locale/locale_nl.js +++ b/codebase/sources/locale/locale_nl.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -57,7 +57,16 @@ scheduler.locale = { /* dhtmlx message default buttons */ message_ok:"OK", - message_cancel:"Cancel" + message_cancel:"Cancel", + + /* wai aria labels for non-text controls */ + next: "Next", + prev: "Previous", + year: "Year", + month: "Month", + day: "Day", + hour:"Hour", + minute: "Minute" } }; diff --git a/codebase/sources/locale/locale_nl.js.map b/codebase/sources/locale/locale_nl.js.map index c00bec1..337df9f 100644 --- a/codebase/sources/locale/locale_nl.js.map +++ b/codebase/sources/locale/locale_nl.js.map @@ -1 +1 @@ -{"version":3,"file":"locale_nl.js","sources":["locale_nl.js"],"names":["scheduler","locale","date","month_full","month_short","day_full","day_short","labels","dhx_cal_today_button","day_tab","week_tab","month_tab","new_event","icon_save","icon_cancel","icon_details","icon_edit","icon_delete","confirm_closing","confirm_deleting","section_description","section_time","full_day","confirm_recurring","section_recurring","button_recurring","button_recurring_open","button_edit_series","button_edit_occurrence","agenda_tab","description","year_tab","week_agenda_tab","grid_tab","drag_to_create","drag_to_move","message_ok","message_cancel"],"mappings":";;;;;;;;AAQAA,UAAUC,QACTC,MACCC,YAAa,UAAW,WAAY,QAAS,QAAS,MAAO,OAAQ,OAAQ,WAAY,YAAa,UAAW,WAAY,YAC7HC,aAAc,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,OAC3FC,UAAW,SAAU,UAAW,UAAW,WAAY,YAAa,UAAW,YAC/EC,WAAY,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,OAEjDC,QACCC,qBAAsB,UACtBC,QAAS,MACTC,SAAU,OACVC,UAAW,QACXC,UAAW,aACXC,UAAW,UACXC,YAAa;AACbC,aAAc,UACdC,UAAW,OACXC,YAAa,cACbC,gBAAiB,GACjBC,iBAAkB,kDAClBC,oBAAqB,eACrBC,aAAc,eACdC,SAAU,WAEVC,kBAAmB,4CACnBC,kBAAmB,gBACnBC,iBAAkB,MAClBC,sBAAuB,MACvBC,mBAAoB,kBACpBC,uBAAwB,mBAGxBC,WAAY,SACZ3B,KAAM,QACN4B,YAAa;AAGbC,SAAU,OAGVC,gBAAiB,SAGjBC,SAAU,QAGVC,eAAe,iBACfC,aAAa,eAGbC,WAAW,KACXC,eAAe"}
\ No newline at end of file +{"version":3,"file":"locale_nl.js","sources":["locale_nl.js"],"names":["scheduler","locale","date","month_full","month_short","day_full","day_short","labels","dhx_cal_today_button","day_tab","week_tab","month_tab","new_event","icon_save","icon_cancel","icon_details","icon_edit","icon_delete","confirm_closing","confirm_deleting","section_description","section_time","full_day","confirm_recurring","section_recurring","button_recurring","button_recurring_open","button_edit_series","button_edit_occurrence","agenda_tab","description","year_tab","week_agenda_tab","grid_tab","drag_to_create","drag_to_move","message_ok","message_cancel","next","prev","year","month","day","hour","minute"],"mappings":";;;;;;;;AAQAA,UAAUC,QACTC,MACCC,YAAa,UAAW,WAAY,QAAS,QAAS,MAAO,OAAQ,OAAQ,WAAY,YAAa,UAAW,WAAY,YAC7HC,aAAc,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,OAC3FC,UAAW,SAAU,UAAW,UAAW,WAAY,YAAa,UAAW,YAC/EC,WAAY,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,OAEjDC,QACCC,qBAAsB,UACtBC,QAAS,MACTC,SAAU,OACVC,UAAW,QACXC,UAAW,aACXC,UAAW,UACXC,YAAa;AACbC,aAAc,UACdC,UAAW,OACXC,YAAa,cACbC,gBAAiB,GACjBC,iBAAkB,kDAClBC,oBAAqB,eACrBC,aAAc,eACdC,SAAU,WAEVC,kBAAmB,4CACnBC,kBAAmB,gBACnBC,iBAAkB,MAClBC,sBAAuB,MACvBC,mBAAoB,kBACpBC,uBAAwB,mBAGxBC,WAAY,SACZ3B,KAAM,QACN4B,YAAa;AAGbC,SAAU,OAGVC,gBAAiB,SAGjBC,SAAU,QAGVC,eAAe,iBACfC,aAAa,eAGbC,WAAW,KACXC,eAAe,SAGfC,KAAM,OACNC,KAAM,WACNC,KAAM,OACNC,MAAO,QACPC,IAAK,MACLC,KAAK,OACLC,OAAQ"}
\ No newline at end of file diff --git a/codebase/sources/locale/locale_no.js b/codebase/sources/locale/locale_no.js index fb60a55..305f825 100644 --- a/codebase/sources/locale/locale_no.js +++ b/codebase/sources/locale/locale_no.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -58,7 +58,16 @@ scheduler.locale = { /* dhtmlx message default buttons */ message_ok:"OK", - message_cancel:"Cancel" + message_cancel:"Cancel", + + /* wai aria labels for non-text controls */ + next: "Next", + prev: "Previous", + year: "Year", + month: "Month", + day: "Day", + hour:"Hour", + minute: "Minute" } }; diff --git a/codebase/sources/locale/locale_no.js.map b/codebase/sources/locale/locale_no.js.map index fded590..32b450c 100644 --- a/codebase/sources/locale/locale_no.js.map +++ b/codebase/sources/locale/locale_no.js.map @@ -1 +1 @@ -{"version":3,"file":"locale_no.js","sources":["locale_no.js"],"names":["scheduler","locale","date","month_full","month_short","day_full","day_short","labels","dhx_cal_today_button","day_tab","week_tab","month_tab","new_event","icon_save","icon_cancel","icon_details","icon_edit","icon_delete","confirm_closing","confirm_deleting","section_description","section_time","full_day","confirm_recurring","section_recurring","button_recurring","button_recurring_open","button_edit_series","button_edit_occurrence","agenda_tab","description","year_tab","week_agenda_tab","grid_tab","drag_to_create","drag_to_move","message_ok","message_cancel"],"mappings":";;;;;;;;AAQAA,UAAUC,QACTC,MACCC,YAAa,SAAU,UAAW,OAAQ,QAAS,MAAO,OAAQ,OAAQ,SAAU,YAAa,UAAW,WAAY,YACxHC,aAAc,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,OAC3FC,UAAW,SAAU,SAAU,UAAW,SAAU,UAAW,SAAU,UACzEC,WAAY,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,QAEvDC,QACCC,qBAAsB,OACtBC,QAAS,MACTC,SAAU,MACVC,UAAW,QACXC,UAAW,KACXC,UAAW,QACXC,YAAa,SACbC,aAAc;AACdC,UAAW,QACXC,YAAa,QACbC,gBAAiB,4CACjBC,iBAAkB,6CAClBC,oBAAqB,cACrBC,aAAc,cACdC,SAAU,WAGVC,kBAAmB,wDACnBC,kBAAmB,wBACnBC,iBAAkB,aAClBC,sBAAuB,QACvBC,mBAAoB,iBACpBC,uBAAwB,mBAGxBC,WAAY;AACZ3B,KAAM,OACN4B,YAAa,cAGbC,SAAU,KAGVC,gBAAiB,SAGjBC,SAAU,OAGVC,eAAe,iBACfC,aAAa,eAGbC,WAAW,KACXC,eAAe"}
\ No newline at end of file +{"version":3,"file":"locale_no.js","sources":["locale_no.js"],"names":["scheduler","locale","date","month_full","month_short","day_full","day_short","labels","dhx_cal_today_button","day_tab","week_tab","month_tab","new_event","icon_save","icon_cancel","icon_details","icon_edit","icon_delete","confirm_closing","confirm_deleting","section_description","section_time","full_day","confirm_recurring","section_recurring","button_recurring","button_recurring_open","button_edit_series","button_edit_occurrence","agenda_tab","description","year_tab","week_agenda_tab","grid_tab","drag_to_create","drag_to_move","message_ok","message_cancel","next","prev","year","month","day","hour","minute"],"mappings":";;;;;;;;AAQAA,UAAUC,QACTC,MACCC,YAAa,SAAU,UAAW,OAAQ,QAAS,MAAO,OAAQ,OAAQ,SAAU,YAAa,UAAW,WAAY,YACxHC,aAAc,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,OAC3FC,UAAW,SAAU,SAAU,UAAW,SAAU,UAAW,SAAU,UACzEC,WAAY,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,QAEvDC,QACCC,qBAAsB,OACtBC,QAAS,MACTC,SAAU,MACVC,UAAW,QACXC,UAAW,KACXC,UAAW,QACXC,YAAa,SACbC,aAAc;AACdC,UAAW,QACXC,YAAa,QACbC,gBAAiB,4CACjBC,iBAAkB,6CAClBC,oBAAqB,cACrBC,aAAc,cACdC,SAAU,WAGVC,kBAAmB,wDACnBC,kBAAmB,wBACnBC,iBAAkB,aAClBC,sBAAuB,QACvBC,mBAAoB,iBACpBC,uBAAwB,mBAGxBC,WAAY;AACZ3B,KAAM,OACN4B,YAAa,cAGbC,SAAU,KAGVC,gBAAiB,SAGjBC,SAAU,OAGVC,eAAe,iBACfC,aAAa,eAGbC,WAAW,KACXC,eAAe,SAGfC,KAAM,OACNC,KAAM,WACNC,KAAM,OACNC,MAAO,QACPC,IAAK,MACLC,KAAK,OACLC,OAAQ"}
\ No newline at end of file diff --git a/codebase/sources/locale/locale_pl.js b/codebase/sources/locale/locale_pl.js index 3f4b8bf..2a4ee3c 100644 --- a/codebase/sources/locale/locale_pl.js +++ b/codebase/sources/locale/locale_pl.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -58,7 +58,16 @@ scheduler.locale = { /* dhtmlx message default buttons */ message_ok:"OK", - message_cancel:"Cancel" + message_cancel:"Cancel", + + /* wai aria labels for non-text controls */ + next: "Next", + prev: "Previous", + year: "Year", + month: "Month", + day: "Day", + hour:"Hour", + minute: "Minute" } }; diff --git a/codebase/sources/locale/locale_pl.js.map b/codebase/sources/locale/locale_pl.js.map index d5e8e26..41dc95e 100644 --- a/codebase/sources/locale/locale_pl.js.map +++ b/codebase/sources/locale/locale_pl.js.map @@ -1 +1 @@ -{"version":3,"file":"locale_pl.js","sources":["locale_pl.js"],"names":["scheduler","locale","date","month_full","month_short","day_full","day_short","labels","dhx_cal_today_button","day_tab","week_tab","month_tab","new_event","icon_save","icon_cancel","icon_details","icon_edit","icon_delete","confirm_closing","confirm_deleting","section_description","section_time","full_day","confirm_recurring","section_recurring","button_recurring","button_recurring_open","button_edit_series","button_edit_occurrence","agenda_tab","description","year_tab","week_agenda_tab","grid_tab","drag_to_create","drag_to_move","message_ok","message_cancel"],"mappings":";;;;;;;;AAQAA,UAAUC,QACTC,MACCC,YAAa,UAAW,OAAQ,SAAU,WAAY,MAAO,WAAY,SAAU,WAAY,WAAY,cAAe,WAAY,YACtIC,aAAc,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,OAC3FC,UAAW,YAAa,eAAgB,SAAU,QAAS,WAAY,SAAU,UACjFC,WAAY,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,QAEvDC,QACCC,qBAAsB,OACtBC,QAAS,QACTC,SAAU,UACVC,UAAW,UACXC,UAAW;AACXC,UAAW,SACXC,YAAa,SACbC,aAAc,YACdC,UAAW,SACXC,YAAa,OACbC,gBAAiB,GACjBC,iBAAkB,sDAClBC,oBAAqB,OACrBC,aAAc,cACdC,SAAU,aAGVC,kBAAmB,6DACnBC,kBAAmB,oBACnBC,iBAAkB,aAClBC,sBAAuB,UACvBC,mBAAoB,eACpBC,uBAAwB;AAGxBC,WAAY,SACZ3B,KAAM,OACN4B,YAAa,OAGbC,SAAU,MAGVC,gBAAiB,SAGjBC,SAAU,SAGVC,eAAe,iBACfC,aAAa,eAGbC,WAAW,KACXC,eAAe"}
\ No newline at end of file +{"version":3,"file":"locale_pl.js","sources":["locale_pl.js"],"names":["scheduler","locale","date","month_full","month_short","day_full","day_short","labels","dhx_cal_today_button","day_tab","week_tab","month_tab","new_event","icon_save","icon_cancel","icon_details","icon_edit","icon_delete","confirm_closing","confirm_deleting","section_description","section_time","full_day","confirm_recurring","section_recurring","button_recurring","button_recurring_open","button_edit_series","button_edit_occurrence","agenda_tab","description","year_tab","week_agenda_tab","grid_tab","drag_to_create","drag_to_move","message_ok","message_cancel","next","prev","year","month","day","hour","minute"],"mappings":";;;;;;;;AAQAA,UAAUC,QACTC,MACCC,YAAa,UAAW,OAAQ,SAAU,WAAY,MAAO,WAAY,SAAU,WAAY,WAAY,cAAe,WAAY,YACtIC,aAAc,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,OAC3FC,UAAW,YAAa,eAAgB,SAAU,QAAS,WAAY,SAAU,UACjFC,WAAY,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,QAEvDC,QACCC,qBAAsB,OACtBC,QAAS,QACTC,SAAU,UACVC,UAAW,UACXC,UAAW;AACXC,UAAW,SACXC,YAAa,SACbC,aAAc,YACdC,UAAW,SACXC,YAAa,OACbC,gBAAiB,GACjBC,iBAAkB,sDAClBC,oBAAqB,OACrBC,aAAc,cACdC,SAAU,aAGVC,kBAAmB,6DACnBC,kBAAmB,oBACnBC,iBAAkB,aAClBC,sBAAuB,UACvBC,mBAAoB,eACpBC,uBAAwB;AAGxBC,WAAY,SACZ3B,KAAM,OACN4B,YAAa,OAGbC,SAAU,MAGVC,gBAAiB,SAGjBC,SAAU,SAGVC,eAAe,iBACfC,aAAa,eAGbC,WAAW,KACXC,eAAe,SAGfC,KAAM,OACNC,KAAM,WACNC,KAAM,OACNC,MAAO,QACPC,IAAK,MACLC,KAAK,OACLC,OAAQ"}
\ No newline at end of file diff --git a/codebase/sources/locale/locale_pt.js b/codebase/sources/locale/locale_pt.js index f839ee7..8f059a0 100644 --- a/codebase/sources/locale/locale_pt.js +++ b/codebase/sources/locale/locale_pt.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -67,7 +67,16 @@ scheduler.locale = { /* dhtmlx message default buttons */ message_ok:"OK", - message_cancel:"Cancel" + message_cancel:"Cancel", + + /* wai aria labels for non-text controls */ + next: "Next", + prev: "Previous", + year: "Year", + month: "Month", + day: "Day", + hour:"Hour", + minute: "Minute" } }; diff --git a/codebase/sources/locale/locale_pt.js.map b/codebase/sources/locale/locale_pt.js.map index e342702..14393ce 100644 --- a/codebase/sources/locale/locale_pt.js.map +++ b/codebase/sources/locale/locale_pt.js.map @@ -1 +1 @@ -{"version":3,"file":"locale_pt.js","sources":["locale_pt.js"],"names":["scheduler","locale","date","month_full","month_short","day_full","day_short","labels","dhx_cal_today_button","day_tab","week_tab","month_tab","new_event","icon_save","icon_cancel","icon_details","icon_edit","icon_delete","confirm_closing","confirm_deleting","section_description","section_time","full_day","confirm_recurring","section_recurring","button_recurring","button_recurring_open","button_edit_series","button_edit_occurrence","agenda_tab","description","year_tab","week_agenda_tab","grid_tab","drag_to_create","drag_to_move","message_ok","message_cancel"],"mappings":";;;;;;;;AAkBAA,UAAUC,QACTC,MACCC,YAAa,UAAW,YAAa,QAAS,QAAS,OAAQ,QAAS,QAAS,SAAU,WAAY,UAAW,WAAY,YAC9HC,aAAc,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,OAC3FC,UAAW,UAAW,UAAW,QAAS,SAAU,SAAU,QAAS,UACvEC,WAAY,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,QAEvDC,QACCC,qBAAsB,OACtBC,QAAS,MACTC,SAAU,SACVC,UAAW,MACXC,UAAW,cACXC,UAAW,SACXC,YAAa;AACbC,aAAc,WACdC,UAAW,SACXC,YAAa,UACbC,gBAAiB,GACjBC,iBAAkB,kCAClBC,oBAAqB,YACrBC,aAAc,mBACdC,SAAU,cAEVC,kBAAmB,+CACnBC,kBAAmB,iBACnBC,iBAAkB,cAClBC,sBAAuB,YACvBC,mBAAoB,iBACpBC,uBAAwB,mBAGxBC,WAAY,MACZ3B,KAAM,OACN4B,YAAa;AAGbC,SAAU,MAGVC,gBAAiB,MAGjBC,SAAU,QAGVC,eAAe,iBACfC,aAAa,eAGbC,WAAW,KACXC,eAAe"}
\ No newline at end of file +{"version":3,"file":"locale_pt.js","sources":["locale_pt.js"],"names":["scheduler","locale","date","month_full","month_short","day_full","day_short","labels","dhx_cal_today_button","day_tab","week_tab","month_tab","new_event","icon_save","icon_cancel","icon_details","icon_edit","icon_delete","confirm_closing","confirm_deleting","section_description","section_time","full_day","confirm_recurring","section_recurring","button_recurring","button_recurring_open","button_edit_series","button_edit_occurrence","agenda_tab","description","year_tab","week_agenda_tab","grid_tab","drag_to_create","drag_to_move","message_ok","message_cancel","next","prev","year","month","day","hour","minute"],"mappings":";;;;;;;;AAkBAA,UAAUC,QACTC,MACCC,YAAa,UAAW,YAAa,QAAS,QAAS,OAAQ,QAAS,QAAS,SAAU,WAAY,UAAW,WAAY,YAC9HC,aAAc,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,OAC3FC,UAAW,UAAW,UAAW,QAAS,SAAU,SAAU,QAAS,UACvEC,WAAY,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,QAEvDC,QACCC,qBAAsB,OACtBC,QAAS,MACTC,SAAU,SACVC,UAAW,MACXC,UAAW,cACXC,UAAW,SACXC,YAAa;AACbC,aAAc,WACdC,UAAW,SACXC,YAAa,UACbC,gBAAiB,GACjBC,iBAAkB,kCAClBC,oBAAqB,YACrBC,aAAc,mBACdC,SAAU,cAEVC,kBAAmB,+CACnBC,kBAAmB,iBACnBC,iBAAkB,cAClBC,sBAAuB,YACvBC,mBAAoB,iBACpBC,uBAAwB,mBAGxBC,WAAY,MACZ3B,KAAM,OACN4B,YAAa;AAGbC,SAAU,MAGVC,gBAAiB,MAGjBC,SAAU,QAGVC,eAAe,iBACfC,aAAa,eAGbC,WAAW,KACXC,eAAe,SAGfC,KAAM,OACNC,KAAM,WACNC,KAAM,OACNC,MAAO,QACPC,IAAK,MACLC,KAAK,OACLC,OAAQ"}
\ No newline at end of file diff --git a/codebase/sources/locale/locale_ro.js b/codebase/sources/locale/locale_ro.js index a23af54..ef1217a 100644 --- a/codebase/sources/locale/locale_ro.js +++ b/codebase/sources/locale/locale_ro.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -62,7 +62,16 @@ scheduler.locale = { /* dhtmlx message default buttons */ message_ok:"OK", - message_cancel:"Cancel" + message_cancel:"Cancel", + + /* wai aria labels for non-text controls */ + next: "Next", + prev: "Previous", + year: "Year", + month: "Month", + day: "Day", + hour:"Hour", + minute: "Minute" } }; diff --git a/codebase/sources/locale/locale_ro.js.map b/codebase/sources/locale/locale_ro.js.map index a229305..42e173d 100644 --- a/codebase/sources/locale/locale_ro.js.map +++ b/codebase/sources/locale/locale_ro.js.map @@ -1 +1 @@ -{"version":3,"file":"locale_ro.js","sources":["locale_ro.js"],"names":["scheduler","locale","date","month_full","month_short","day_full","day_short","labels","dhx_cal_today_button","day_tab","week_tab","month_tab","new_event","icon_save","icon_cancel","icon_details","icon_edit","icon_delete","confirm_closing","confirm_deleting","section_description","section_time","full_day","confirm_recurring","section_recurring","button_recurring","button_recurring_open","button_edit_series","button_edit_occurrence","agenda_tab","description","year_tab","week_agenda_tab","grid_tab","drag_to_create","drag_to_move","message_ok","message_cancel"],"mappings":";;;;;;;;AAYAA,UAAUC,QACTC,MACCC,YAAY,WAAY,YAAa,SAAU,UAAW,MAAO,QAAS,QAAS,SAAU,aAAc,YAAa,WAAY,YACpIC,aAAa,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,OAC1FC,UAAU,WAAY,OAAQ,QAAS,WAAY,MAAO,SAAU,WACpEC,WAAW,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,OAEhDC,QACCC,qBAAqB,SACrBC,QAAQ,KACRC,SAAS,YACTC,UAAU,OACVC,UAAU,gBACVC,UAAU,WACVC,YAAY;AACZC,aAAa,UACbC,UAAU,WACVC,YAAY,SACZC,gBAAgB,6CAChBC,iBAAiB,iDACjBC,oBAAoB,YACpBC,aAAa,WACbC,SAAS,aAGTC,kBAAkB,sDAClBC,kBAAkB,WAClBC,iBAAiB,cACjBC,sBAAsB,WACtBC,mBAAoB,iBACpBC,uBAAwB;AAGxBC,WAAW,SACX3B,KAAK,OACL4B,YAAY,YAGZC,SAAS,KAGTC,gBAAiB,SAGjBC,SAAU,QAGVC,eAAe,iBACfC,aAAa,eAGbC,WAAW,KACXC,eAAe"}
\ No newline at end of file +{"version":3,"file":"locale_ro.js","sources":["locale_ro.js"],"names":["scheduler","locale","date","month_full","month_short","day_full","day_short","labels","dhx_cal_today_button","day_tab","week_tab","month_tab","new_event","icon_save","icon_cancel","icon_details","icon_edit","icon_delete","confirm_closing","confirm_deleting","section_description","section_time","full_day","confirm_recurring","section_recurring","button_recurring","button_recurring_open","button_edit_series","button_edit_occurrence","agenda_tab","description","year_tab","week_agenda_tab","grid_tab","drag_to_create","drag_to_move","message_ok","message_cancel","next","prev","year","month","day","hour","minute"],"mappings":";;;;;;;;AAYAA,UAAUC,QACTC,MACCC,YAAY,WAAY,YAAa,SAAU,UAAW,MAAO,QAAS,QAAS,SAAU,aAAc,YAAa,WAAY,YACpIC,aAAa,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,OAC1FC,UAAU,WAAY,OAAQ,QAAS,WAAY,MAAO,SAAU,WACpEC,WAAW,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,OAEhDC,QACCC,qBAAqB,SACrBC,QAAQ,KACRC,SAAS,YACTC,UAAU,OACVC,UAAU,gBACVC,UAAU,WACVC,YAAY;AACZC,aAAa,UACbC,UAAU,WACVC,YAAY,SACZC,gBAAgB,6CAChBC,iBAAiB,iDACjBC,oBAAoB,YACpBC,aAAa,WACbC,SAAS,aAGTC,kBAAkB,sDAClBC,kBAAkB,WAClBC,iBAAiB,cACjBC,sBAAsB,WACtBC,mBAAoB,iBACpBC,uBAAwB;AAGxBC,WAAW,SACX3B,KAAK,OACL4B,YAAY,YAGZC,SAAS,KAGTC,gBAAiB,SAGjBC,SAAU,QAGVC,eAAe,iBACfC,aAAa,eAGbC,WAAW,KACXC,eAAe,SAGfC,KAAM,OACNC,KAAM,WACNC,KAAM,OACNC,MAAO,QACPC,IAAK,MACLC,KAAK,OACLC,OAAQ"}
\ No newline at end of file diff --git a/codebase/sources/locale/locale_ru.js b/codebase/sources/locale/locale_ru.js index 039dc13..3790c23 100644 --- a/codebase/sources/locale/locale_ru.js +++ b/codebase/sources/locale/locale_ru.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -57,6 +57,15 @@ scheduler.locale = { /* dhtmlx message default buttons */ message_ok:"OK", - message_cancel:"Cancel" + message_cancel:"Cancel", + + /* wai aria labels for non-text controls */ + next: "Next", + prev: "Previous", + year: "Year", + month: "Month", + day: "Day", + hour:"Hour", + minute: "Minute" } };
\ No newline at end of file diff --git a/codebase/sources/locale/locale_ru.js.map b/codebase/sources/locale/locale_ru.js.map index 6b665cf..47750be 100644 --- a/codebase/sources/locale/locale_ru.js.map +++ b/codebase/sources/locale/locale_ru.js.map @@ -1 +1 @@ -{"version":3,"file":"locale_ru.js","sources":["locale_ru.js"],"names":["scheduler","locale","date","month_full","month_short","day_full","day_short","labels","dhx_cal_today_button","day_tab","week_tab","month_tab","new_event","icon_save","icon_cancel","icon_details","icon_edit","icon_delete","confirm_closing","confirm_deleting","section_description","section_time","full_day","confirm_recurring","section_recurring","button_recurring","button_recurring_open","button_edit_series","button_edit_occurrence","agenda_tab","description","year_tab","week_agenda_tab","grid_tab","drag_to_create","drag_to_move","message_ok","message_cancel"],"mappings":";;;;;;;;AAQAA,UAAUC,QACTC,MACCC,YAAa,SAAU,UAAW,OAAQ,SAAU,MAAO,OAAQ,OAAQ,SAAU,WAAY,UAAW,SAAU,WACtHC,aAAc,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,OAC3FC,UAAY,cAAe,cAAe,UAAW,QAAS,UAAW,UAAW,WACpFC,WAAY,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,OAEjDC,QACCC,qBAAsB,UACtBC,QAAS,OACTC,SAAU,SACVC,UAAW,QACXC,UAAW,gBACXC,UAAW,YACXC,YAAa;AACbC,aAAc,SACdC,UAAW,WACXC,YAAa,UACbC,gBAAiB,GACjBC,iBAAkB,kDAClBC,oBAAqB,WACrBC,aAAc,iBACdC,SAAU,YAEVC,kBAAmB,sDACnBC,kBAAmB,aACnBC,iBAAkB,YAClBC,sBAAuB,WACvBC,mBAAoB,sBACpBC,uBAAwB,0BAGxBC,WAAY;AACZ3B,KAAM,OACN4B,YAAa,WAGbC,SAAU,MAGVC,gBAAiB,SAGjBC,SAAU,UAGVC,eAAe,iBACfC,aAAa,eAGbC,WAAW,KACXC,eAAe"}
\ No newline at end of file +{"version":3,"file":"locale_ru.js","sources":["locale_ru.js"],"names":["scheduler","locale","date","month_full","month_short","day_full","day_short","labels","dhx_cal_today_button","day_tab","week_tab","month_tab","new_event","icon_save","icon_cancel","icon_details","icon_edit","icon_delete","confirm_closing","confirm_deleting","section_description","section_time","full_day","confirm_recurring","section_recurring","button_recurring","button_recurring_open","button_edit_series","button_edit_occurrence","agenda_tab","description","year_tab","week_agenda_tab","grid_tab","drag_to_create","drag_to_move","message_ok","message_cancel","next","prev","year","month","day","hour","minute"],"mappings":";;;;;;;;AAQAA,UAAUC,QACTC,MACCC,YAAa,SAAU,UAAW,OAAQ,SAAU,MAAO,OAAQ,OAAQ,SAAU,WAAY,UAAW,SAAU,WACtHC,aAAc,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,OAC3FC,UAAY,cAAe,cAAe,UAAW,QAAS,UAAW,UAAW,WACpFC,WAAY,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,OAEjDC,QACCC,qBAAsB,UACtBC,QAAS,OACTC,SAAU,SACVC,UAAW,QACXC,UAAW,gBACXC,UAAW,YACXC,YAAa;AACbC,aAAc,SACdC,UAAW,WACXC,YAAa,UACbC,gBAAiB,GACjBC,iBAAkB,kDAClBC,oBAAqB,WACrBC,aAAc,iBACdC,SAAU,YAEVC,kBAAmB,sDACnBC,kBAAmB,aACnBC,iBAAkB,YAClBC,sBAAuB,WACvBC,mBAAoB,sBACpBC,uBAAwB,0BAGxBC,WAAY;AACZ3B,KAAM,OACN4B,YAAa,WAGbC,SAAU,MAGVC,gBAAiB,SAGjBC,SAAU,UAGVC,eAAe,iBACfC,aAAa,eAGbC,WAAW,KACXC,eAAe,SAGfC,KAAM,OACNC,KAAM,WACNC,KAAM,OACNC,MAAO,QACPC,IAAK,MACLC,KAAK,OACLC,OAAQ"}
\ No newline at end of file diff --git a/codebase/sources/locale/locale_si.js b/codebase/sources/locale/locale_si.js index 36c73d6..318cdd4 100644 --- a/codebase/sources/locale/locale_si.js +++ b/codebase/sources/locale/locale_si.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -58,7 +58,16 @@ scheduler.locale = { /* dhtmlx message default buttons */ message_ok:"OK", - message_cancel:"Cancel" + message_cancel:"Cancel", + + /* wai aria labels for non-text controls */ + next: "Next", + prev: "Previous", + year: "Year", + month: "Month", + day: "Day", + hour:"Hour", + minute: "Minute" } }; diff --git a/codebase/sources/locale/locale_si.js.map b/codebase/sources/locale/locale_si.js.map index 2c1e261..755b34c 100644 --- a/codebase/sources/locale/locale_si.js.map +++ b/codebase/sources/locale/locale_si.js.map @@ -1 +1 @@ -{"version":3,"file":"locale_si.js","sources":["locale_si.js"],"names":["scheduler","locale","date","month_full","month_short","day_full","day_short","labels","dhx_cal_today_button","day_tab","week_tab","month_tab","new_event","icon_save","icon_cancel","icon_details","icon_edit","icon_delete","confirm_closing","confirm_deleting","section_description","section_time","full_day","confirm_recurring","section_recurring","button_recurring","button_recurring_open","button_edit_series","button_edit_occurrence","agenda_tab","description","year_tab","week_agenda_tab","grid_tab","drag_to_create","drag_to_move","message_ok","message_cancel"],"mappings":";;;;;;;;AAQAA,UAAUC,QACTC,MACCC,YAAa,SAAU,UAAW,QAAS,QAAS,MAAO,QAAS,QAAS,SAAU,YAAa,UAAW,WAAY,YAC3HC,aAAc,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,OAC3FC,UAAW,UAAW,aAAc,QAAS,QAAS,UAAW,QAAS,UAC1EC,WAAY,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,QAEvDC,QACCC,qBAAsB,QACtBC,QAAS,MACTC,SAAU,QACVC,UAAW,QACXC,UAAW,cACXC,UAAW,SACXC,YAAa;AACbC,aAAc,cACdC,UAAW,QACXC,YAAa,UACbC,gBAAiB,GACjBC,iBAAkB,2CAClBC,oBAAqB,OACrBC,aAAc,gBACdC,SAAU,UAGVC,kBAAmB,qDACnBC,kBAAmB,iBACnBC,iBAAkB,cAClBC,sBAAuB,YACvBC,mBAAoB,cACpBC,uBAAwB,kBAGxBC,WAAY,SACZ3B,KAAM,QACN4B,YAAa;AAGbC,SAAU,OAGVC,gBAAiB,SAGjBC,SAAU,OAGVC,eAAe,iBACfC,aAAa,eAGbC,WAAW,KACXC,eAAe"}
\ No newline at end of file +{"version":3,"file":"locale_si.js","sources":["locale_si.js"],"names":["scheduler","locale","date","month_full","month_short","day_full","day_short","labels","dhx_cal_today_button","day_tab","week_tab","month_tab","new_event","icon_save","icon_cancel","icon_details","icon_edit","icon_delete","confirm_closing","confirm_deleting","section_description","section_time","full_day","confirm_recurring","section_recurring","button_recurring","button_recurring_open","button_edit_series","button_edit_occurrence","agenda_tab","description","year_tab","week_agenda_tab","grid_tab","drag_to_create","drag_to_move","message_ok","message_cancel","next","prev","year","month","day","hour","minute"],"mappings":";;;;;;;;AAQAA,UAAUC,QACTC,MACCC,YAAa,SAAU,UAAW,QAAS,QAAS,MAAO,QAAS,QAAS,SAAU,YAAa,UAAW,WAAY,YAC3HC,aAAc,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,OAC3FC,UAAW,UAAW,aAAc,QAAS,QAAS,UAAW,QAAS,UAC1EC,WAAY,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,QAEvDC,QACCC,qBAAsB,QACtBC,QAAS,MACTC,SAAU,QACVC,UAAW,QACXC,UAAW,cACXC,UAAW,SACXC,YAAa;AACbC,aAAc,cACdC,UAAW,QACXC,YAAa,UACbC,gBAAiB,GACjBC,iBAAkB,2CAClBC,oBAAqB,OACrBC,aAAc,gBACdC,SAAU,UAGVC,kBAAmB,qDACnBC,kBAAmB,iBACnBC,iBAAkB,cAClBC,sBAAuB,YACvBC,mBAAoB,cACpBC,uBAAwB,kBAGxBC,WAAY,SACZ3B,KAAM,QACN4B,YAAa;AAGbC,SAAU,OAGVC,gBAAiB,SAGjBC,SAAU,OAGVC,eAAe,iBACfC,aAAa,eAGbC,WAAW,KACXC,eAAe,SAGfC,KAAM,OACNC,KAAM,WACNC,KAAM,OACNC,MAAO,QACPC,IAAK,MACLC,KAAK,OACLC,OAAQ"}
\ No newline at end of file diff --git a/codebase/sources/locale/locale_sk.js b/codebase/sources/locale/locale_sk.js index b0afd9f..06a3d1a 100644 --- a/codebase/sources/locale/locale_sk.js +++ b/codebase/sources/locale/locale_sk.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -58,7 +58,16 @@ scheduler.locale = { /* dhtmlx message default buttons */ message_ok:"OK", - message_cancel:"Cancel" + message_cancel:"Cancel", + + /* wai aria labels for non-text controls */ + next: "Next", + prev: "Previous", + year: "Year", + month: "Month", + day: "Day", + hour:"Hour", + minute: "Minute" } }; diff --git a/codebase/sources/locale/locale_sk.js.map b/codebase/sources/locale/locale_sk.js.map index baf966b..7027b89 100644 --- a/codebase/sources/locale/locale_sk.js.map +++ b/codebase/sources/locale/locale_sk.js.map @@ -1 +1 @@ -{"version":3,"file":"locale_sk.js","sources":["locale_sk.js"],"names":["scheduler","locale","date","month_full","month_short","day_full","day_short","labels","dhx_cal_today_button","day_tab","week_tab","month_tab","new_event","icon_save","icon_cancel","icon_details","icon_edit","icon_delete","confirm_closing","confirm_deleting","section_description","section_time","confirm_recurring","section_recurring","button_recurring","button_recurring_open","button_edit_series","button_edit_occurrence","agenda_tab","description","year_tab","full_day","week_agenda_tab","grid_tab","drag_to_create","drag_to_move","message_ok","message_cancel"],"mappings":";;;;;;;;AAQAA,UAAUC,QACTC,MACCC,YAAa,SAAU,UAAW,QAAS,QAAS,MAAO,MAAO,MAAO,SAAU,YAAa,UAAW,WAAY,YACvHC,aAAc,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,OAAQ,MAAO,MAAO,OAC5FC,UAAW,SAAU,WAAY,SAAU,SAAU,UAAW,SAAU,UAC1EC,WAAY,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,OAEjDC,QACCC,qBAAsB,OACtBC,QAAS,MACTC,SAAU,SACVC,UAAW,SACXC,UAAW,eACXC,UAAW,SACXC,YAAa;AACbC,aAAc,SACdC,UAAW,SACXC,YAAa,SACbC,gBAAiB,uCACjBC,iBAAkB,4CAClBC,oBAAqB,WACrBC,aAAc,iBAGdC,kBAAmB,qDACnBC,kBAAmB,sBACnBC,iBAAkB,UAClBC,sBAAuB,UACvBC,mBAAoB,qBACpBC,uBAAwB,oBAGxBC,WAAY;AACZ1B,KAAM,QACN2B,YAAa,WAGbC,SAAU,MACVC,SAAU,WAGVC,gBAAiB,UAGjBC,SAAU,UAGVC,eAAe,iBACfC,aAAa,eAGbC,WAAW,KACXC,eAAe"}
\ No newline at end of file +{"version":3,"file":"locale_sk.js","sources":["locale_sk.js"],"names":["scheduler","locale","date","month_full","month_short","day_full","day_short","labels","dhx_cal_today_button","day_tab","week_tab","month_tab","new_event","icon_save","icon_cancel","icon_details","icon_edit","icon_delete","confirm_closing","confirm_deleting","section_description","section_time","confirm_recurring","section_recurring","button_recurring","button_recurring_open","button_edit_series","button_edit_occurrence","agenda_tab","description","year_tab","full_day","week_agenda_tab","grid_tab","drag_to_create","drag_to_move","message_ok","message_cancel","next","prev","year","month","day","hour","minute"],"mappings":";;;;;;;;AAQAA,UAAUC,QACTC,MACCC,YAAa,SAAU,UAAW,QAAS,QAAS,MAAO,MAAO,MAAO,SAAU,YAAa,UAAW,WAAY,YACvHC,aAAc,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,OAAQ,MAAO,MAAO,OAC5FC,UAAW,SAAU,WAAY,SAAU,SAAU,UAAW,SAAU,UAC1EC,WAAY,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,OAEjDC,QACCC,qBAAsB,OACtBC,QAAS,MACTC,SAAU,SACVC,UAAW,SACXC,UAAW,eACXC,UAAW,SACXC,YAAa;AACbC,aAAc,SACdC,UAAW,SACXC,YAAa,SACbC,gBAAiB,uCACjBC,iBAAkB,4CAClBC,oBAAqB,WACrBC,aAAc,iBAGdC,kBAAmB,qDACnBC,kBAAmB,sBACnBC,iBAAkB,UAClBC,sBAAuB,UACvBC,mBAAoB,qBACpBC,uBAAwB,oBAGxBC,WAAY;AACZ1B,KAAM,QACN2B,YAAa,WAGbC,SAAU,MACVC,SAAU,WAGVC,gBAAiB,UAGjBC,SAAU,UAGVC,eAAe,iBACfC,aAAa,eAGbC,WAAW,KACXC,eAAe,SAGfC,KAAM,OACNC,KAAM,WACNC,KAAM,OACNC,MAAO,QACPC,IAAK,MACLC,KAAK,OACLC,OAAQ"}
\ No newline at end of file diff --git a/codebase/sources/locale/locale_sv.js b/codebase/sources/locale/locale_sv.js index 808421c..926bba6 100644 --- a/codebase/sources/locale/locale_sv.js +++ b/codebase/sources/locale/locale_sv.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -21,7 +21,7 @@ scheduler.locale = { new_event: "Ny händelse", icon_save: "Spara", icon_cancel: "Ångra", - icon_details: "Detajer", + icon_details: "Detaljer", icon_edit: "Ändra", icon_delete: "Ta bort", confirm_closing: "", //Dina förändingar kommer gå förlorade, är du säker? @@ -53,11 +53,20 @@ scheduler.locale = { grid_tab: "Galler", /* touch tooltip*/ - drag_to_create:"Drag to create", - drag_to_move:"Drag to move", + drag_to_create:"Dra för att skapa ny", + drag_to_move:"Dra för att flytta", /* dhtmlx message default buttons */ message_ok:"OK", - message_cancel:"Cancel" + message_cancel:"Cancel", + + /* wai aria labels for non-text controls */ + next: "Next", + prev: "Previous", + year: "Year", + month: "Month", + day: "Day", + hour:"Hour", + minute: "Minute" } };
\ No newline at end of file diff --git a/codebase/sources/locale/locale_sv.js.map b/codebase/sources/locale/locale_sv.js.map index da1fed4..8eb3216 100644 --- a/codebase/sources/locale/locale_sv.js.map +++ b/codebase/sources/locale/locale_sv.js.map @@ -1 +1 @@ -{"version":3,"file":"locale_sv.js","sources":["locale_sv.js"],"names":["scheduler","locale","date","month_full","month_short","day_full","day_short","labels","dhx_cal_today_button","day_tab","week_tab","month_tab","new_event","icon_save","icon_cancel","icon_details","icon_edit","icon_delete","confirm_closing","confirm_deleting","section_description","section_time","full_day","confirm_recurring","section_recurring","button_recurring","button_recurring_open","button_edit_series","button_edit_occurrence","agenda_tab","description","year_tab","week_agenda_tab","grid_tab","drag_to_create","drag_to_move","message_ok","message_cancel"],"mappings":";;;;;;;;AAQAA,UAAUC,QACTC,MACCC,YAAa,UAAW,WAAY,OAAQ,QAAS,MAAO,OAAQ,OAAQ,UAAW,YAAa,UAAW,WAAY,YAC3HC,aAAc,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,OAC3FC,UAAW,SAAU,SAAU,SAAU,SAAU,UAAW,SAAU,UACxEC,WAAY,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,QAEvDC,QACCC,qBAAsB,OACtBC,QAAS,MACTC,SAAU,QACVC,UAAW,QACXC,UAAW,cACXC,UAAW,QACXC,YAAa;AACbC,aAAc,UACdC,UAAW,QACXC,YAAa,UACbC,gBAAiB,GACjBC,iBAAkB,0DAClBC,oBAAqB,cACrBC,aAAc,MACdC,SAAU,aAGVC,kBAAmB,0DACnBC,kBAAmB,mBACnBC,iBAAkB,cAClBC,sBAAuB,YACvBC,mBAAoB,kBACpBC,uBAAwB,oBAGxBC,WAAY;AACZ3B,KAAM,QACN4B,YAAa,cAGbC,SAAU,KAGVC,gBAAiB,aAGjBC,SAAU,SAGVC,eAAe,iBACfC,aAAa,eAGbC,WAAW,KACXC,eAAe"}
\ No newline at end of file +{"version":3,"file":"locale_sv.js","sources":["locale_sv.js"],"names":["scheduler","locale","date","month_full","month_short","day_full","day_short","labels","dhx_cal_today_button","day_tab","week_tab","month_tab","new_event","icon_save","icon_cancel","icon_details","icon_edit","icon_delete","confirm_closing","confirm_deleting","section_description","section_time","full_day","confirm_recurring","section_recurring","button_recurring","button_recurring_open","button_edit_series","button_edit_occurrence","agenda_tab","description","year_tab","week_agenda_tab","grid_tab","drag_to_create","drag_to_move","message_ok","message_cancel","next","prev","year","month","day","hour","minute"],"mappings":";;;;;;;;AAQAA,UAAUC,QACTC,MACCC,YAAa,UAAW,WAAY,OAAQ,QAAS,MAAO,OAAQ,OAAQ,UAAW,YAAa,UAAW,WAAY,YAC3HC,aAAc,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,OAC3FC,UAAW,SAAU,SAAU,SAAU,SAAU,UAAW,SAAU,UACxEC,WAAY,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,QAEvDC,QACCC,qBAAsB,OACtBC,QAAS,MACTC,SAAU,QACVC,UAAW,QACXC,UAAW,cACXC,UAAW,QACXC,YAAa;AACbC,aAAc,WACdC,UAAW,QACXC,YAAa,UACbC,gBAAiB,GACjBC,iBAAkB,0DAClBC,oBAAqB,cACrBC,aAAc,MACdC,SAAU,aAGVC,kBAAmB,0DACnBC,kBAAmB,mBACnBC,iBAAkB,cAClBC,sBAAuB,YACvBC,mBAAoB,kBACpBC,uBAAwB,oBAGxBC,WAAY;AACZ3B,KAAM,QACN4B,YAAa,cAGbC,SAAU,KAGVC,gBAAiB,aAGjBC,SAAU,SAGVC,eAAe,uBACfC,aAAa,qBAGbC,WAAW,KACXC,eAAe,SAGfC,KAAM,OACNC,KAAM,WACNC,KAAM,OACNC,MAAO,QACPC,IAAK,MACLC,KAAK,OACLC,OAAQ"}
\ No newline at end of file diff --git a/codebase/sources/locale/locale_tr.js b/codebase/sources/locale/locale_tr.js index 46be1c4..bd5eed0 100644 --- a/codebase/sources/locale/locale_tr.js +++ b/codebase/sources/locale/locale_tr.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -58,6 +58,15 @@ scheduler.locale = { /* dhtmlx message default buttons */ message_ok:"OK", - message_cancel:"Cancel" + message_cancel:"Cancel", + + /* wai aria labels for non-text controls */ + next: "Next", + prev: "Previous", + year: "Year", + month: "Month", + day: "Day", + hour:"Hour", + minute: "Minute" } };
\ No newline at end of file diff --git a/codebase/sources/locale/locale_tr.js.map b/codebase/sources/locale/locale_tr.js.map index cda38b6..b10f9b1 100644 --- a/codebase/sources/locale/locale_tr.js.map +++ b/codebase/sources/locale/locale_tr.js.map @@ -1 +1 @@ -{"version":3,"file":"locale_tr.js","sources":["locale_tr.js"],"names":["scheduler","locale","date","month_full","month_short","day_full","day_short","labels","dhx_cal_today_button","day_tab","week_tab","month_tab","new_event","icon_save","icon_cancel","icon_details","icon_edit","icon_delete","confirm_closing","confirm_deleting","section_description","section_time","full_day","confirm_recurring","section_recurring","button_recurring","button_recurring_open","button_edit_series","button_edit_occurrence","agenda_tab","description","year_tab","week_agenda_tab","grid_tab","drag_to_create","drag_to_move","message_ok","message_cancel"],"mappings":";;;;;;;;AAQAA,UAAUC,QACTC,MACCC,YAAa,OAAQ,QAAS,OAAQ,QAAS,QAAS,UAAW,SAAU,UAAW,QAAS,OAAQ,QAAS,UAClHC,aAAc,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,OAC3FC,UAAW,QAAS,YAAa,OAAQ,WAAY,WAAY,OAAQ,aACzEC,WAAY,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,QAEvDC,QACCC,qBAAsB,QACtBC,QAAS,MACTC,SAAU,QACVC,UAAW,KACXC,UAAW,QACXC,UAAW,SACXC,YAAa,QACbC,aAAc;AACdC,UAAW,UACXC,YAAa,MACbC,gBAAiB,GACjBC,iBAAkB,6BAClBC,oBAAqB,WACrBC,aAAc,gBACdC,SAAU,UAGVC,kBAAmB,gDACnBC,kBAAmB,qBACnBC,iBAAkB,QAClBC,sBAAuB,QACvBC,mBAAoB,iBACpBC,uBAAwB,2BAGxBC,WAAY,SACZ3B,KAAM,QACN4B,YAAa,WAGbC,SAAU,MAGVC,gBAAiB;AAGjBC,SAAU,SAGVC,eAAe,iBACfC,aAAa,eAGbC,WAAW,KACXC,eAAe"}
\ No newline at end of file +{"version":3,"file":"locale_tr.js","sources":["locale_tr.js"],"names":["scheduler","locale","date","month_full","month_short","day_full","day_short","labels","dhx_cal_today_button","day_tab","week_tab","month_tab","new_event","icon_save","icon_cancel","icon_details","icon_edit","icon_delete","confirm_closing","confirm_deleting","section_description","section_time","full_day","confirm_recurring","section_recurring","button_recurring","button_recurring_open","button_edit_series","button_edit_occurrence","agenda_tab","description","year_tab","week_agenda_tab","grid_tab","drag_to_create","drag_to_move","message_ok","message_cancel","next","prev","year","month","day","hour","minute"],"mappings":";;;;;;;;AAQAA,UAAUC,QACTC,MACCC,YAAa,OAAQ,QAAS,OAAQ,QAAS,QAAS,UAAW,SAAU,UAAW,QAAS,OAAQ,QAAS,UAClHC,aAAc,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,OAC3FC,UAAW,QAAS,YAAa,OAAQ,WAAY,WAAY,OAAQ,aACzEC,WAAY,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,QAEvDC,QACCC,qBAAsB,QACtBC,QAAS,MACTC,SAAU,QACVC,UAAW,KACXC,UAAW,QACXC,UAAW,SACXC,YAAa,QACbC,aAAc;AACdC,UAAW,UACXC,YAAa,MACbC,gBAAiB,GACjBC,iBAAkB,6BAClBC,oBAAqB,WACrBC,aAAc,gBACdC,SAAU,UAGVC,kBAAmB,gDACnBC,kBAAmB,qBACnBC,iBAAkB,QAClBC,sBAAuB,QACvBC,mBAAoB,iBACpBC,uBAAwB,2BAGxBC,WAAY,SACZ3B,KAAM,QACN4B,YAAa,WAGbC,SAAU,MAGVC,gBAAiB;AAGjBC,SAAU,SAGVC,eAAe,iBACfC,aAAa,eAGbC,WAAW,KACXC,eAAe,SAGfC,KAAM,OACNC,KAAM,WACNC,KAAM,OACNC,MAAO,QACPC,IAAK,MACLC,KAAK,OACLC,OAAQ"}
\ No newline at end of file diff --git a/codebase/sources/locale/locale_ua.js b/codebase/sources/locale/locale_ua.js index 7037e76..bf4314c 100644 --- a/codebase/sources/locale/locale_ua.js +++ b/codebase/sources/locale/locale_ua.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -58,6 +58,15 @@ scheduler.locale = { /* dhtmlx message default buttons */ message_ok:"OK", - message_cancel:"Cancel" + message_cancel:"Cancel", + + /* wai aria labels for non-text controls */ + next: "Next", + prev: "Previous", + year: "Year", + month: "Month", + day: "Day", + hour:"Hour", + minute: "Minute" } };
\ No newline at end of file diff --git a/codebase/sources/locale/locale_ua.js.map b/codebase/sources/locale/locale_ua.js.map index 7e9e8ab..ea094e0 100644 --- a/codebase/sources/locale/locale_ua.js.map +++ b/codebase/sources/locale/locale_ua.js.map @@ -1 +1 @@ -{"version":3,"file":"locale_ua.js","sources":["locale_ua.js"],"names":["scheduler","locale","date","month_full","month_short","day_full","day_short","labels","dhx_cal_today_button","day_tab","week_tab","month_tab","new_event","icon_save","icon_cancel","icon_details","icon_edit","icon_delete","confirm_closing","confirm_deleting","section_description","section_time","full_day","confirm_recurring","section_recurring","button_recurring","button_recurring_open","button_edit_series","button_edit_occurrence","agenda_tab","description","year_tab","week_agenda_tab","grid_tab","drag_to_create","drag_to_move","message_ok","message_cancel"],"mappings":";;;;;;;;AAQAA,UAAUC,QACTC,MACCC,YAAa,SAAU,QAAS,WAAY,UAAW,UAAW,UAAW,SAAU,UAAW,WAAY,UAAW,WAAY,WACrIC,aAAc,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,OAC3FC,UAAW,SAAU,YAAa,WAAY,SAAU,SAAU,WAAY,UAC9EC,WAAY,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,QAEvDC,QACCC,qBAAsB,WACtBC,QAAS,OACTC,SAAU,UACVC,UAAW,SACXC,UAAW,aACXC,UAAW;AACXC,YAAa,UACbC,aAAc,SACdC,UAAW,aACXC,YAAa,WACbC,gBAAiB,GACjBC,iBAAkB,0CAClBC,oBAAqB,OACrBC,aAAc,mBACdC,SAAU,YAGVC,kBAAmB,qDACnBC,kBAAmB,oBACnBC,iBAAkB,aAClBC,sBAAuB,WACvBC,mBAAoB,mBACpBC,uBAAwB;AAGxBC,WAAY,UACZ3B,KAAM,OACN4B,YAAa,OAGbC,SAAU,MAGVC,gBAAiB,UAGjBC,SAAU,UAGVC,eAAe,iBACfC,aAAa,eAGbC,WAAW,KACXC,eAAe"}
\ No newline at end of file +{"version":3,"file":"locale_ua.js","sources":["locale_ua.js"],"names":["scheduler","locale","date","month_full","month_short","day_full","day_short","labels","dhx_cal_today_button","day_tab","week_tab","month_tab","new_event","icon_save","icon_cancel","icon_details","icon_edit","icon_delete","confirm_closing","confirm_deleting","section_description","section_time","full_day","confirm_recurring","section_recurring","button_recurring","button_recurring_open","button_edit_series","button_edit_occurrence","agenda_tab","description","year_tab","week_agenda_tab","grid_tab","drag_to_create","drag_to_move","message_ok","message_cancel","next","prev","year","month","day","hour","minute"],"mappings":";;;;;;;;AAQAA,UAAUC,QACTC,MACCC,YAAa,SAAU,QAAS,WAAY,UAAW,UAAW,UAAW,SAAU,UAAW,WAAY,UAAW,WAAY,WACrIC,aAAc,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,OAC3FC,UAAW,SAAU,YAAa,WAAY,SAAU,SAAU,WAAY,UAC9EC,WAAY,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,QAEvDC,QACCC,qBAAsB,WACtBC,QAAS,OACTC,SAAU,UACVC,UAAW,SACXC,UAAW,aACXC,UAAW;AACXC,YAAa,UACbC,aAAc,SACdC,UAAW,aACXC,YAAa,WACbC,gBAAiB,GACjBC,iBAAkB,0CAClBC,oBAAqB,OACrBC,aAAc,mBACdC,SAAU,YAGVC,kBAAmB,qDACnBC,kBAAmB,oBACnBC,iBAAkB,aAClBC,sBAAuB,WACvBC,mBAAoB,mBACpBC,uBAAwB;AAGxBC,WAAY,UACZ3B,KAAM,OACN4B,YAAa,OAGbC,SAAU,MAGVC,gBAAiB,UAGjBC,SAAU,UAGVC,eAAe,iBACfC,aAAa,eAGbC,WAAW,KACXC,eAAe,SAGfC,KAAM,OACNC,KAAM,WACNC,KAAM,OACNC,MAAO,QACPC,IAAK,MACLC,KAAK,OACLC,OAAQ"}
\ No newline at end of file diff --git a/codebase/sources/locale/recurring/locale_recurring_be.js b/codebase/sources/locale/recurring/locale_recurring_be.js index 3b03c18..aa36d61 100644 --- a/codebase/sources/locale/recurring/locale_recurring_be.js +++ b/codebase/sources/locale/recurring/locale_recurring_be.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. diff --git a/codebase/sources/locale/recurring/locale_recurring_cn.js b/codebase/sources/locale/recurring/locale_recurring_cn.js index 864ce66..dbc9a16 100644 --- a/codebase/sources/locale/recurring/locale_recurring_cn.js +++ b/codebase/sources/locale/recurring/locale_recurring_cn.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. diff --git a/codebase/sources/locale/recurring/locale_recurring_cs.js b/codebase/sources/locale/recurring/locale_recurring_cs.js index 8eedfc4..ffb39a9 100644 --- a/codebase/sources/locale/recurring/locale_recurring_cs.js +++ b/codebase/sources/locale/recurring/locale_recurring_cs.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. diff --git a/codebase/sources/locale/recurring/locale_recurring_da.js b/codebase/sources/locale/recurring/locale_recurring_da.js index 91214bf..928cf88 100644 --- a/codebase/sources/locale/recurring/locale_recurring_da.js +++ b/codebase/sources/locale/recurring/locale_recurring_da.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. diff --git a/codebase/sources/locale/recurring/locale_recurring_de.js b/codebase/sources/locale/recurring/locale_recurring_de.js index b52bc10..d6a8e1a 100644 --- a/codebase/sources/locale/recurring/locale_recurring_de.js +++ b/codebase/sources/locale/recurring/locale_recurring_de.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. diff --git a/codebase/sources/locale/recurring/locale_recurring_el.js b/codebase/sources/locale/recurring/locale_recurring_el.js index 0d0cff5..8652582 100644 --- a/codebase/sources/locale/recurring/locale_recurring_el.js +++ b/codebase/sources/locale/recurring/locale_recurring_el.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. diff --git a/codebase/sources/locale/recurring/locale_recurring_en.js b/codebase/sources/locale/recurring/locale_recurring_en.js index 073cdd3..2f9880a 100644 --- a/codebase/sources/locale/recurring/locale_recurring_en.js +++ b/codebase/sources/locale/recurring/locale_recurring_en.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. diff --git a/codebase/sources/locale/recurring/locale_recurring_es.js b/codebase/sources/locale/recurring/locale_recurring_es.js index b6156e1..fa9161e 100644 --- a/codebase/sources/locale/recurring/locale_recurring_es.js +++ b/codebase/sources/locale/recurring/locale_recurring_es.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. diff --git a/codebase/sources/locale/recurring/locale_recurring_fi.js b/codebase/sources/locale/recurring/locale_recurring_fi.js index eba346b..394b1d6 100644 --- a/codebase/sources/locale/recurring/locale_recurring_fi.js +++ b/codebase/sources/locale/recurring/locale_recurring_fi.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. diff --git a/codebase/sources/locale/recurring/locale_recurring_fr.js b/codebase/sources/locale/recurring/locale_recurring_fr.js index fd6dc0c..255575f 100644 --- a/codebase/sources/locale/recurring/locale_recurring_fr.js +++ b/codebase/sources/locale/recurring/locale_recurring_fr.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. diff --git a/codebase/sources/locale/recurring/locale_recurring_it.js b/codebase/sources/locale/recurring/locale_recurring_it.js index 4564440..32fa3c3 100644 --- a/codebase/sources/locale/recurring/locale_recurring_it.js +++ b/codebase/sources/locale/recurring/locale_recurring_it.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. diff --git a/codebase/sources/locale/recurring/locale_recurring_nb.js b/codebase/sources/locale/recurring/locale_recurring_nb.js index d75a72d..ad17302 100644 --- a/codebase/sources/locale/recurring/locale_recurring_nb.js +++ b/codebase/sources/locale/recurring/locale_recurring_nb.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. diff --git a/codebase/sources/locale/recurring/locale_recurring_nl.js b/codebase/sources/locale/recurring/locale_recurring_nl.js index 228079d..2083e71 100644 --- a/codebase/sources/locale/recurring/locale_recurring_nl.js +++ b/codebase/sources/locale/recurring/locale_recurring_nl.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. diff --git a/codebase/sources/locale/recurring/locale_recurring_pl.js b/codebase/sources/locale/recurring/locale_recurring_pl.js index 2a35cc5..2a6349f 100644 --- a/codebase/sources/locale/recurring/locale_recurring_pl.js +++ b/codebase/sources/locale/recurring/locale_recurring_pl.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. diff --git a/codebase/sources/locale/recurring/locale_recurring_pt.js b/codebase/sources/locale/recurring/locale_recurring_pt.js index 15ec042..f28022e 100644 --- a/codebase/sources/locale/recurring/locale_recurring_pt.js +++ b/codebase/sources/locale/recurring/locale_recurring_pt.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. diff --git a/codebase/sources/locale/recurring/locale_recurring_ro.js b/codebase/sources/locale/recurring/locale_recurring_ro.js index 645adf8..ab3849c 100644 --- a/codebase/sources/locale/recurring/locale_recurring_ro.js +++ b/codebase/sources/locale/recurring/locale_recurring_ro.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. diff --git a/codebase/sources/locale/recurring/locale_recurring_ru.js b/codebase/sources/locale/recurring/locale_recurring_ru.js index 78073eb..4345430 100644 --- a/codebase/sources/locale/recurring/locale_recurring_ru.js +++ b/codebase/sources/locale/recurring/locale_recurring_ru.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. diff --git a/codebase/sources/locale/recurring/locale_recurring_sk.js b/codebase/sources/locale/recurring/locale_recurring_sk.js index f6f07b6..b700aa5 100644 --- a/codebase/sources/locale/recurring/locale_recurring_sk.js +++ b/codebase/sources/locale/recurring/locale_recurring_sk.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. diff --git a/codebase/sources/locale/recurring/locale_recurring_sv.js b/codebase/sources/locale/recurring/locale_recurring_sv.js index 344c4c7..8f34eeb 100644 --- a/codebase/sources/locale/recurring/locale_recurring_sv.js +++ b/codebase/sources/locale/recurring/locale_recurring_sv.js @@ -1,9 +1,9 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. (c) Dinamenta, UAB. */ -scheduler.__recurring_template='<div class="dhx_form_repeat"> <form> <div class="dhx_repeat_left"> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="day" />Dagligen</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="week"/>Veckovis</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="month" checked />Månadsvis</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="year" />Årligen</label> </div> <div class="dhx_repeat_divider"></div> <div class="dhx_repeat_center"> <div style="display:none;" id="dhx_repeat_day"> <label><input class="dhx_repeat_radio" type="radio" name="day_type" value="d"/>Var</label><input class="dhx_repeat_text" type="text" name="day_count" value="1" />dag<br /> <label><input class="dhx_repeat_radio" type="radio" name="day_type" checked value="w"/>Varje arbetsdag</label> </div> <div style="display:none;" id="dhx_repeat_week"> Upprepa var<input class="dhx_repeat_text" type="text" name="week_count" value="1" />vecka dessa dagar:<br /> <table class="dhx_repeat_days"> <tr> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="1" />Måndag</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="4" />Tisdag</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="2" />Torsdag</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="5" />Fredag</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="3" />Onsdag</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="6" />Lördag</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="0" />Söndag</label><br /><br /> </td> </tr> </table> </div> <div id="dhx_repeat_month"> <label><input class="dhx_repeat_radio" type="radio" name="month_type" value="d"/>Upprepa</label><input class="dhx_repeat_text" type="text" name="month_day" value="1" />dagen var<input class="dhx_repeat_text" type="text" name="month_count" value="1" />månad<br /> <label><input class="dhx_repeat_radio" type="radio" name="month_type" checked value="w"/>Den</label><input class="dhx_repeat_text" type="text" name="month_week2" value="1" /><select name="month_day2"><option value="1" selected >måndagen<option value="2">tisdagen<option value="3">onsdagen<option value="4">torsdagen<option value="5">fredagen<option value="6">lördagen<option value="0">söndagen</select>var<input class="dhx_repeat_text" type="text" name="month_count2" value="1" />månad<br /> </div> <div style="display:none;" id="dhx_repeat_year"> <label><input class="dhx_repeat_radio" type="radio" name="year_type" value="d"/>Varje</label><input class="dhx_repeat_text" type="text" name="year_day" value="1" />dag i<select name="year_month"><option value="0" selected >Januari<option value="1">Februari<option value="2">Mars<option value="3">April<option value="4">Maj<option value="5">Juni<option value="6">Juli<option value="7">Augusti<option value="8">September<option value="9">Oktober<option value="10">November<option value="11">December</select>månad<br /> <label><input class="dhx_repeat_radio" type="radio" name="year_type" checked value="w"/>Den</label><input class="dhx_repeat_text" type="text" name="year_week2" value="1" /><select name="year_day2"><option value="1" selected >måndagen<option value="2">tisdagen<option value="3">onsdagen<option value="4">torsdagen<option value="5">fredagen<option value="6">lördagen<option value="7">söndagen</select>i<select name="year_month2"><option value="0" selected >Januari<option value="1">Februari<option value="2">Mars<option value="3">April<option value="4">Maj<option value="5">Juni<option value="6">Juli<option value="7">Augusti<option value="8">September<option value="9">Oktober<option value="10">November<option value="11">December</select><br /> </div> </div> <div class="dhx_repeat_divider"></div> <div class="dhx_repeat_right"> <label><input class="dhx_repeat_radio" type="radio" name="end" checked/>Inget slutdatum</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="end" />Efter</label><input class="dhx_repeat_text" type="text" name="occurences_count" value="1" />upprepningar<br /> <label><input class="dhx_repeat_radio" type="radio" name="end" />Sluta efter</label><input class="dhx_repeat_date" type="text" name="date_of_end" value="'+scheduler.config.repeat_date_of_end+'" /><br /> </div> </form> </div> <div style="clear:both"> </div>';
\ No newline at end of file +scheduler.__recurring_template='<div class="dhx_form_repeat"> <form> <div class="dhx_repeat_left"> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="day" />Dagligen</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="week"/>Veckovis</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="month" checked />Månadsvis</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="year" />Årligen</label> </div> <div class="dhx_repeat_divider"></div> <div class="dhx_repeat_center"> <div style="display:none;" id="dhx_repeat_day"> <label><input class="dhx_repeat_radio" type="radio" name="day_type" value="d"/>Var</label><input class="dhx_repeat_text" type="text" name="day_count" value="1" />dag<br /> <label><input class="dhx_repeat_radio" type="radio" name="day_type" checked value="w"/>Varje arbetsdag</label> </div> <div style="display:none;" id="dhx_repeat_week"> Upprepa var<input class="dhx_repeat_text" type="text" name="week_count" value="1" />vecka dessa dagar:<br /> <table class="dhx_repeat_days"> <tr> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="1" />Måndag</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="4" />Torsdag</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="2" />Tisdag</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="5" />Fredag</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="3" />Onsdag</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="6" />Lördag</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="0" />Söndag</label><br /><br /> </td> </tr> </table> </div> <div id="dhx_repeat_month"> <label><input class="dhx_repeat_radio" type="radio" name="month_type" value="d"/>Upprepa</label><input class="dhx_repeat_text" type="text" name="month_day" value="1" />dagen var<input class="dhx_repeat_text" type="text" name="month_count" value="1" />månad<br /> <label><input class="dhx_repeat_radio" type="radio" name="month_type" checked value="w"/>Den</label><input class="dhx_repeat_text" type="text" name="month_week2" value="1" /><select name="month_day2"><option value="1" selected >måndagen<option value="2">tisdagen<option value="3">onsdagen<option value="4">torsdagen<option value="5">fredagen<option value="6">lördagen<option value="0">söndagen</select>var<input class="dhx_repeat_text" type="text" name="month_count2" value="1" />månad<br /> </div> <div style="display:none;" id="dhx_repeat_year"> <label><input class="dhx_repeat_radio" type="radio" name="year_type" value="d"/>Varje</label><input class="dhx_repeat_text" type="text" name="year_day" value="1" />dag i<select name="year_month"><option value="0" selected >Januari<option value="1">Februari<option value="2">Mars<option value="3">April<option value="4">Maj<option value="5">Juni<option value="6">Juli<option value="7">Augusti<option value="8">September<option value="9">Oktober<option value="10">November<option value="11">December</select>månad<br /> <label><input class="dhx_repeat_radio" type="radio" name="year_type" checked value="w"/>Den</label><input class="dhx_repeat_text" type="text" name="year_week2" value="1" /><select name="year_day2"><option value="1" selected >måndagen<option value="2">tisdagen<option value="3">onsdagen<option value="4">torsdagen<option value="5">fredagen<option value="6">lördagen<option value="7">söndagen</select>i<select name="year_month2"><option value="0" selected >Januari<option value="1">Februari<option value="2">Mars<option value="3">April<option value="4">Maj<option value="5">Juni<option value="6">Juli<option value="7">Augusti<option value="8">September<option value="9">Oktober<option value="10">November<option value="11">December</select><br /> </div> </div> <div class="dhx_repeat_divider"></div> <div class="dhx_repeat_right"> <label><input class="dhx_repeat_radio" type="radio" name="end" checked/>Inget slutdatum</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="end" />Efter</label><input class="dhx_repeat_text" type="text" name="occurences_count" value="1" />upprepningar<br /> <label><input class="dhx_repeat_radio" type="radio" name="end" />Sluta efter</label><input class="dhx_repeat_date" type="text" name="date_of_end" value="'+scheduler.config.repeat_date_of_end+'" /><br /> </div> </form> </div> <div style="clear:both"> </div>';
\ No newline at end of file diff --git a/codebase/sources/locale/recurring/locale_recurring_ua.js b/codebase/sources/locale/recurring/locale_recurring_ua.js index b250a7b..6a2926c 100644 --- a/codebase/sources/locale/recurring/locale_recurring_ua.js +++ b/codebase/sources/locale/recurring/locale_recurring_ua.js @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. diff --git a/codebase/sources/skins/dhtmlxscheduler.css b/codebase/sources/skins/dhtmlxscheduler.css index 1d4be27..a517934 100644 --- a/codebase/sources/skins/dhtmlxscheduler.css +++ b/codebase/sources/skins/dhtmlxscheduler.css @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 Stardard +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -10,13 +10,13 @@ This software is covered by GPL license. You also can obtain Commercial or Enter position: fixed; right: 5px; width: 250px; - z-index: 1000; + z-index: 11; } .dhtmlx-info { min-width: 120px; padding: 4px 4px 4px 20px; font-family: Tahoma; - z-index: 10000; + z-index: 14; overflow: hidden; margin: 5px; margin-bottom: 10px; @@ -44,7 +44,7 @@ This software is covered by GPL license. You also can obtain Commercial or Enter background: -moz-linear-gradient(top, #ffffff 1%, #d0d0d0 99%); box-shadow: 0px 0px 14px #888; font-family: Tahoma; - z-index: 20000; + z-index: 18; border-radius: 6px; border: 1px solid #ffffff; } @@ -89,7 +89,7 @@ div.dhx_modal_cover { filter: alpha(opacity=20); opacity: 0.2; position: fixed; - z-index: 19999; + z-index: 17; left: 0px; top: 0px; width: 100%; @@ -262,7 +262,7 @@ div.dhx_modal_cover { .dhx_cal_event.dhx_cal_editor { border: 1px solid #B7A543; border-top-style: dotted; - z-index: 999; + z-index: 10; position: absolute; overflow: hidden; } @@ -332,7 +332,7 @@ div.icon_delete { right: 20px; background-color: rgba(255, 255, 255, 0.7); color: #000; - z-index: 10000; + z-index: 14; padding: 20px 30px; width: 190px; } @@ -360,7 +360,7 @@ div.icon_delete { border: 1px solid #B7A64B; color: #887A2E; position: absolute; - z-index: 10001; + z-index: 15; width: 580px; height: 300px; box-shadow: 5px 5px 5px #888; @@ -476,7 +476,7 @@ div.icon_delete { width: 100%; height: 100%; position: absolute; - z-index: 10000; + z-index: 14; top: 0px; left: 0px; background-color: black; @@ -577,7 +577,7 @@ div.icon_delete { } .dhx_minical_popup { position: absolute; - z-index: 10100; + z-index: 16; width: 251px; height: 175px; } @@ -595,7 +595,7 @@ div.icon_delete { height: 18px; cursor: pointer; background-position: 0px 18px; - z-index: 16; + z-index: 4; } .dhx_scheduler_agenda .dhx_cal_data { background-image: url(imgs/databg.png); @@ -677,7 +677,7 @@ div.icon_delete { border: 1px solid #BBBBBB; background-image: url(imgs/databg.png); position: absolute; - z-index: 9998; + z-index: 12; width: 300px; height: auto; font-family: Tahoma; @@ -901,8 +901,8 @@ div.icon_delete { color: #887A2E; cursor: default; padding: 10px; - position: absolute; - z-index: 500; + position: fixed; + z-index: 9; font-family: Tahoma; font-size: 8pt; opacity: 1; @@ -935,7 +935,9 @@ div.icon_delete { .dhx_cal_light .combo { padding: 4px; } -.dhx_cal_light_wide .dhx_combo_box { +/* dhtmlxCombo v3.x */ +.dhx_cal_light_wide .dhx_combo_box, +.dhx_cal_light_wide .combo > div { width: 608px !important; left: 10px; } @@ -1117,7 +1119,7 @@ div.icon_delete { border: 2px solid #888; border-radius: 5px; position: absolute; - z-index: 300; + z-index: 8; background-color: #8e99ae; background-color: rgba(98, 107, 127, 0.5); padding-left: 7px; @@ -1190,6 +1192,19 @@ div.icon_delete { border-top: 1px solid #B6B6B6; border-bottom: 1px solid #b6b6b6; } +/* key nav */ +.dhx_focus_slot { + background: #FFE763; + position: absolute; + pointer-events: none; + opacity: 0.3; +} +.dhx_cal_container *:focus { + outline-style: solid; + /*not visible focus outline in ie11*/ + outline-style: auto; +} +/* key nav end*/ /* bootstrap CSS fix start */ .dhx_cal_navline div, .dhx_cal_header, @@ -1201,11 +1216,25 @@ div.icon_delete { .dhx_multi_day div, .dhx_tooltip_line div, .dhx_cal_quick_info, -.dhx_cal_quick_info div { +.dhx_cal_quick_info div, +.dhtmlx_modal_box * { -webkit-box-sizing: content-box; -moz-box-sizing: content-box; box-sizing: content-box; } +.dhx_cal_light .dhx_wrap_section, +.dhx_cal_light .dhx_cal_lsection { + -webkit-box-sizing: content-box; + -moz-box-sizing: content-box; + box-sizing: content-box; +} +.dhx_cal_data div.dhx_scale_hour, +.dhx_cal_data table .dhx_matrix_cell, +.dhx_cal_data table .dhx_matrix_scell { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; +} .dhx_cal_event div { line-height: normal; } @@ -1251,7 +1280,7 @@ div.icon_delete { width: 1px; overflow: hidden; height: 17px; - z-index: 20; + z-index: 5; top: 0px; } .dhx_cal_prev_button { @@ -1394,7 +1423,7 @@ div.icon_delete { } .dhx_cal_drag { position: absolute; - z-index: 9999; + z-index: 13; background-color: #FFE763; border: 1px solid #B7A543; opacity: 0.5; @@ -1405,7 +1434,7 @@ div.icon_delete { width: 128px; height: 15px; background-image: url(imgs/loading.gif); - z-index: 9999; + z-index: 13; } .dhx_multi_day_icon, .dhx_multi_day { diff --git a/codebase/sources/skins/dhtmlxscheduler_classic.css b/codebase/sources/skins/dhtmlxscheduler_classic.css index 0957146..84be97b 100644 --- a/codebase/sources/skins/dhtmlxscheduler_classic.css +++ b/codebase/sources/skins/dhtmlxscheduler_classic.css @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 Stardard +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -10,13 +10,13 @@ This software is covered by GPL license. You also can obtain Commercial or Enter position: fixed; right: 5px; width: 250px; - z-index: 1000; + z-index: 11; } .dhtmlx-info { min-width: 120px; padding: 4px 4px 4px 20px; font-family: Tahoma; - z-index: 10000; + z-index: 14; overflow: hidden; margin: 5px; margin-bottom: 10px; @@ -44,7 +44,7 @@ This software is covered by GPL license. You also can obtain Commercial or Enter background: -moz-linear-gradient(top, #ffffff 1%, #d0d0d0 99%); box-shadow: 0px 0px 14px #888; font-family: Tahoma; - z-index: 20000; + z-index: 18; border-radius: 6px; border: 1px solid #ffffff; } @@ -89,7 +89,7 @@ div.dhx_modal_cover { filter: alpha(opacity=20); opacity: 0.2; position: fixed; - z-index: 19999; + z-index: 17; left: 0px; top: 0px; width: 100%; @@ -262,7 +262,7 @@ div.dhx_modal_cover { .dhx_cal_event.dhx_cal_editor { border: 1px solid #B7A543; border-top-style: dotted; - z-index: 999; + z-index: 10; position: absolute; overflow: hidden; } @@ -332,7 +332,7 @@ div.icon_delete { right: 20px; background-color: rgba(255, 255, 255, 0.7); color: #000; - z-index: 10000; + z-index: 14; padding: 20px 30px; width: 190px; } @@ -360,7 +360,7 @@ div.icon_delete { border: 1px solid #B7A64B; color: #887A2E; position: absolute; - z-index: 10001; + z-index: 15; width: 580px; height: 300px; box-shadow: 5px 5px 5px #888; @@ -476,7 +476,7 @@ div.icon_delete { width: 100%; height: 100%; position: absolute; - z-index: 10000; + z-index: 14; top: 0px; left: 0px; background-color: black; @@ -577,7 +577,7 @@ div.icon_delete { } .dhx_minical_popup { position: absolute; - z-index: 10100; + z-index: 16; width: 251px; height: 175px; } @@ -595,7 +595,7 @@ div.icon_delete { height: 18px; cursor: pointer; background-position: 0px 18px; - z-index: 16; + z-index: 4; } .dhx_scheduler_agenda .dhx_cal_data { background-image: url(imgs/databg.png); @@ -677,7 +677,7 @@ div.icon_delete { border: 1px solid #BBBBBB; background-image: url(imgs/databg.png); position: absolute; - z-index: 9998; + z-index: 12; width: 300px; height: auto; font-family: Tahoma; @@ -901,8 +901,8 @@ div.icon_delete { color: #887A2E; cursor: default; padding: 10px; - position: absolute; - z-index: 500; + position: fixed; + z-index: 9; font-family: Tahoma; font-size: 8pt; opacity: 1; @@ -935,7 +935,9 @@ div.icon_delete { .dhx_cal_light .combo { padding: 4px; } -.dhx_cal_light_wide .dhx_combo_box { +/* dhtmlxCombo v3.x */ +.dhx_cal_light_wide .dhx_combo_box, +.dhx_cal_light_wide .combo > div { width: 608px !important; left: 10px; } @@ -1117,7 +1119,7 @@ div.icon_delete { border: 2px solid #888; border-radius: 5px; position: absolute; - z-index: 300; + z-index: 8; background-color: #8e99ae; background-color: rgba(98, 107, 127, 0.5); padding-left: 7px; @@ -1190,6 +1192,19 @@ div.icon_delete { border-top: 1px solid #B6B6B6; border-bottom: 1px solid #b6b6b6; } +/* key nav */ +.dhx_focus_slot { + background: #FFE763; + position: absolute; + pointer-events: none; + opacity: 0.3; +} +.dhx_cal_container *:focus { + outline-style: solid; + /*not visible focus outline in ie11*/ + outline-style: auto; +} +/* key nav end*/ /* bootstrap CSS fix start */ .dhx_cal_navline div, .dhx_cal_header, @@ -1201,11 +1216,25 @@ div.icon_delete { .dhx_multi_day div, .dhx_tooltip_line div, .dhx_cal_quick_info, -.dhx_cal_quick_info div { +.dhx_cal_quick_info div, +.dhtmlx_modal_box * { -webkit-box-sizing: content-box; -moz-box-sizing: content-box; box-sizing: content-box; } +.dhx_cal_light .dhx_wrap_section, +.dhx_cal_light .dhx_cal_lsection { + -webkit-box-sizing: content-box; + -moz-box-sizing: content-box; + box-sizing: content-box; +} +.dhx_cal_data div.dhx_scale_hour, +.dhx_cal_data table .dhx_matrix_cell, +.dhx_cal_data table .dhx_matrix_scell { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; +} .dhx_cal_event div { line-height: normal; } @@ -1251,7 +1280,7 @@ div.icon_delete { width: 1px; overflow: hidden; height: 17px; - z-index: 20; + z-index: 5; top: 0px; } .dhx_cal_prev_button { @@ -1394,7 +1423,7 @@ div.icon_delete { } .dhx_cal_drag { position: absolute; - z-index: 9999; + z-index: 13; background-color: #FFE763; border: 1px solid #B7A543; opacity: 0.5; @@ -1405,7 +1434,7 @@ div.icon_delete { width: 128px; height: 15px; background-image: url(imgs/loading.gif); - z-index: 9999; + z-index: 13; } .dhx_multi_day_icon, .dhx_multi_day { diff --git a/codebase/sources/skins/dhtmlxscheduler_contrast_black.css b/codebase/sources/skins/dhtmlxscheduler_contrast_black.css new file mode 100644 index 0000000..c92cbdf --- /dev/null +++ b/codebase/sources/skins/dhtmlxscheduler_contrast_black.css @@ -0,0 +1,2409 @@ +/* +@license +dhtmlxScheduler v.4.4.0 Stardard + +This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. + +(c) Dinamenta, UAB. +*/ +.dhtmlx_message_area { + position: fixed; + right: 5px; + width: 250px; + z-index: 11; +} +.dhtmlx-info { + min-width: 120px; + padding: 4px 4px 4px 20px; + font-family: Tahoma; + z-index: 14; + overflow: hidden; + margin: 5px; + margin-bottom: 10px; + -webkit-transition: all .5s ease; + -moz-transition: all .5s ease; + -o-transition: all .5s ease; + transition: all .5s ease; +} +.dhtmlx-info.hidden { + height: 0px; + padding: 0px; + border-width: 0px; + margin: 0px; + overflow: hidden; +} +.dhtmlx_modal_box { + overflow: hidden; + display: inline-block; + min-width: 300px; + width: 300px; + text-align: center; + position: fixed; + background-color: #fff; + background: -webkit-linear-gradient(top, #ffffff 1%, #d0d0d0 99%); + background: -moz-linear-gradient(top, #ffffff 1%, #d0d0d0 99%); + box-shadow: 0px 0px 14px #888; + font-family: Tahoma; + z-index: 18; + border-radius: 6px; + border: 1px solid #ffffff; +} +.dhtmlx_popup_title { + border-top-left-radius: 5px; + border-top-right-radius: 5px; + border-width: 0px; + background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAoCAMAAAAIaGBFAAAAhFBMVEVwcHBubm5sbGxqampoaGhmZmZlZWVjY2NhYWFfX19dXV1bW1taWlpYWFhWVlZUVFRSUlJRUVFPT09NTU1LS0tJSUlHR0dGRkZERERCQkJAQEA+Pj49PT09PT0+Pj5AQEBBQUFDQ0NERERGRkZHR0dJSUlKSkpMTExMTEw5OTk5OTk5OTkny8YEAAAAQklEQVQImQXBCRJCAAAAwKVSQqdyjSPXNP7/QLsIhA6OTiJnF7GrRCpzc/fw9PKW+/gqlCq1RqvTG/yMJrPF6m/bAVEhAxxnHG0oAAAAAElFTkSuQmCC); + background-image: -webkit-linear-gradient(top, #707070 1%, #3d3d3d 70%, #4c4c4c 97%, #393939 97%); + background-image: -moz-linear-gradient(top, #707070 1%, #3d3d3d 70%, #4c4c4c 97%, #393939 97%); +} +.dhtmlx-info, +.dhtmlx_popup_button, +.dhtmlx_button { + user-select: none; + -webkit-user-select: none; + -moz-user-select: -moz-none; + cursor: pointer; +} +.dhtmlx_popup_text { + overflow: hidden; +} +.dhtmlx_popup_controls { + border-radius: 6px; + padding: 5px; +} +.dhtmlx_popup_button, +.dhtmlx_button { + height: 30px; + line-height: 30px; + display: inline-block; + margin: 0 5px; + border-radius: 6px; + color: #FFF; +} +.dhtmlx_popup_button { + min-width: 120px; +} +div.dhx_modal_cover { + background-color: #000; + cursor: default; + filter: alpha(opacity=20); + opacity: 0.2; + position: fixed; + z-index: 17; + left: 0px; + top: 0px; + width: 100%; + height: 100%; + border: none; + zoom: 1; +} +.dhtmlx-info img, +.dhtmlx_modal_box img { + float: left; + margin-right: 20px; +} +.dhtmlx-alert-error .dhtmlx_popup_title, +.dhtmlx-confirm-error .dhtmlx_popup_title { + background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAsCAIAAAArRUU2AAAATklEQVR4nIWLuw2AMBBDjVuQiBT2oWbRDATrnB0KQOJoqPzRe3BrHI6dcBASYREKovtK6/6DsDOX+stN+3H1YX9ciRgnYq5EWYhS2dftBIuLT4JyIrPCAAAAAElFTkSuQmCC); +} +.dhtmlx-alert-error, +.dhtmlx-confirm-error { + border: 1px solid #ff0000; +} +/*Skin section*/ +.dhtmlx_button, +.dhtmlx_popup_button { + box-shadow: 0px 0px 4px #888; + border: 1px solid #838383; +} +.dhtmlx_button input, +.dhtmlx_popup_button div { + border: 1px solid #FFF; + background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAeCAMAAADaS4T1AAAAYFBMVEVwcHBtbW1ra2toaGhmZmZjY2NhYWFeXl5cXFxaWlpXV1dVVVVSUlJQUFBNTU1LS0tJSUlGRkZERERBQUE/Pz88PDw9PT0+Pj5AQEBCQkJDQ0NFRUVHR0dISEhKSkpMTEzqthaMAAAAMklEQVQImQXBhQ2AMAAAsOIMlwWH/8+kRSKVyRVKlVrQaHV6g9FktlhFm93hdLk9Xt8PIfgBvdUqyskAAAAASUVORK5CYII=); + background-image: -webkit-linear-gradient(top, #707070 1%, #3d3d3d 70%, #4c4c4c 99%); + background-image: -moz-linear-gradient(top, #707070 1%, #3d3d3d 70%, #4c4c4c 99%); + border-radius: 6px; + font-size: 15px; + font-weight: normal; + -moz-box-sizing: content-box; + box-sizing: content-box; + color: #fff; + padding: 0px; + margin: 0px; + vertical-align: top; + height: 28px; + line-height: 28px; +} +.dhtmlx_button input:focus, +.dhtmlx_button input:active, +.dhtmlx_popup_button div:active, +.dhtmlx_popup_button div:focus { + background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAeCAMAAADaS4T1AAAAXVBMVEVwcHBubm5tbW1sbGxra2tpaWloaGhnZ2dmZmZlZWVjY2NiYmJhYWFgYGBfX19dXV1cXFxbW1taWlpZWVlXV1dWVlZVVVVUVFRTU1NRUVFQUFBPT09OTk5NTU1LS0tT9SY0AAAAMUlEQVQImQXBhQGAMAAAIGxnx2z9/00BiVQmVyhVakGj1ekNRpPZYhVtdofT5fZ4fT8hpwG05JjexgAAAABJRU5ErkJggg==); + background-image: -webkit-linear-gradient(top, #707070 1%, #4c4c4c 99%); + background-image: -moz-linear-gradient(top, #707070 1%, #4c4c4c 99%); +} +.dhtmlx_popup_title { + color: #fff; + text-shadow: 1px 1px #000; + height: 40px; + line-height: 40px; + font-size: 20px; +} +.dhtmlx_popup_text { + margin: 15px 15px 5px 15px; + font-size: 14px; + color: #000; + min-height: 30px; + border-radius: 6px; +} +.dhtmlx-info, +.dhtmlx-error { + font-size: 14px; + color: #000; + box-shadow: 0px 0px 10px #888; + padding: 0px; + background-color: #FFF; + border-radius: 3px; + border: 1px solid #ffffff; +} +.dhtmlx-info div { + padding: 5px 10px 5px 10px; + background-color: #fff; + border-radius: 3px; + border: 1px solid #B8B8B8; +} +.dhtmlx-error { + background-color: #d81b1b; + border: 1px solid #ff3c3c; + box-shadow: 0px 0px 10px #000; +} +.dhtmlx-error div { + background-color: #d81b1b; + border: 1px solid #940000; + color: #FFF; +} +.dhx_cal_event .dhx_header, +.dhx_cal_event .dhx_title, +.dhx_cal_event .dhx_body, +.dhx_cal_event .dhx_footer { + background-color: #FFE763; + border: 1px solid #B7A543; + color: #887A2E; + overflow: hidden; + width: 100%; + font-family: Tahoma; + font-size: 8pt; +} +.dhx_move_denied .dhx_cal_event .dhx_header, +.dhx_move_denied .dhx_cal_event .dhx_title { + cursor: default; +} +.dhx_cal_event .dhx_header { + height: 1px; + margin-left: 1px; + border-width: 1px 1px 0px 1px; + cursor: pointer; +} +.dhx_cal_event .dhx_title { + height: 12px; + border-width: 0px 1px 1px 1px; + border-bottom-style: dotted; + font-size: 7pt; + font-weight: bold; + text-align: center; + background-position: right; + background-repeat: no-repeat; + cursor: pointer; +} +.dhx_cal_event .dhx_body, +.dhx_cal_event.dhx_cal_select_menu .dhx_body { + border-width: 0 1px 1px 1px; + padding: 5px; +} +.dhx_resize_denied, +.dhx_resize_denied .dhx_event_resize { + cursor: default !important; +} +.dhx_cal_event .dhx_event_resize { + cursor: s-resize; +} +.dhx_cal_event .dhx_footer, +.dhx_cal_event .dhx_select_menu_footer { + height: 1px; + margin-left: 2px; + border-width: 0px 1px 1px 1px; + position: relative; +} +.dhx_cal_event_line { + background-color: #FFE763; + border: 1px solid #B7A543; + border-radius: 3px; + font-family: Tahoma; + font-size: 8pt; + height: 13px; + padding-left: 10px; + color: #887A2E; + cursor: pointer; + overflow: hidden; +} +.dhx_cal_event_clear { + font-family: Tahoma; + font-size: 8pt; + height: 13px; + padding-left: 2px; + color: #887A2E; + white-space: nowrap; + overflow: hidden; + cursor: pointer; +} +.dhx_in_move { + background-color: #FFFF80; +} +.dhx_cal_event.dhx_cal_editor { + border: 1px solid #B7A543; + border-top-style: dotted; + z-index: 10; + position: absolute; + overflow: hidden; +} +textarea.dhx_cal_editor { + width: 100%; + height: 100%; + border: 0 solid black; + margin: 0; + padding: 0; + overflow: auto; +} +div.dhx_menu_head { + background-image: url(imgs/controls.gif); + background-position: 0px -43px; + width: 10px; + height: 10px; + margin-left: 5px; + margin-top: 1px; + border: none; + cursor: default; +} +div.dhx_menu_icon { + background-image: url(imgs/controls.gif); + width: 20px; + height: 20px; + margin-left: -5px; + margin-top: 0px; + border: none; + cursor: pointer; +} +div.icon_details { + background-position: 0px 0px; +} +div.icon_edit { + background-position: -22px 0px; +} +div.icon_save { + background-position: -84px -1px; +} +div.icon_cancel { + background-position: -62px 0px; +} +div.icon_delete { + background-position: -42px 0px; +} +/*view more link in month view*/ +.dhx_month_link { + position: absolute; + box-sizing: border-box; + -moz-box-sizing: border-box; + text-align: right; + cursor: pointer; + padding-right: 10px; +} +.dhx_month_link a { + color: blue; +} +.dhx_month_link a:hover { + text-decoration: underline; +} +.dhx_global_tip { + font-family: Tahoma, Helvetica; + text-align: center; + font-size: 20px; + position: fixed; + top: 60px; + right: 20px; + background-color: rgba(255, 255, 255, 0.7); + color: #000; + z-index: 14; + padding: 20px 30px; + width: 190px; +} +.dhx_global_tip div { + font-size: 30px; +} +@media (-moz-touch-enabled) { + .dhx_cal_container { + user-select: none; + -moz-user-select: none; + } +} +.dhx_unselectable, +.dhx_unselectable div { + -webkit-user-select: none; + -moz-user-select: none; + -moz-user-select: -moz-none; +} +.dhx_cal_light { + -webkit-tap-highlight-color: transparent; + background-color: #FFE763; + border-radius: 5px; + font-family: Tahoma; + font-size: 8pt; + border: 1px solid #B7A64B; + color: #887A2E; + position: absolute; + z-index: 15; + width: 580px; + height: 300px; + box-shadow: 5px 5px 5px #888; +} +.dhx_cal_light_wide { + width: 650px; +} +.dhx_mark { + position: relative; + top: 3px; + background-image: url('imgs/controls.gif'); + background-position: 0px -43px; + padding-left: 10px; +} +.dhx_ie6 .dhx_mark { + background-position: 6px -41px; +} +.dhx_cal_light select { + font-family: Tahoma; + font-size: 8pt; + color: #887A2E; + padding: 2px; + margin: 0px; +} +.dhx_cal_ltitle { + padding: 2px 0px 2px 5px; + overflow: hidden; + white-space: nowrap; +} +.dhx_cal_ltitle span { + white-space: nowrap; +} +.dhx_cal_lsection { + background-color: #DBCF8C; + color: #FFF4B5; + font-weight: bold; + padding: 5px 0px 3px 10px; +} +.dhx_section_time { + background-color: #DBCF8C; + white-space: nowrap; +} +.dhx_cal_lsection .dhx_fullday { + float: right; + margin-right: 5px; + color: #887A2E; + font-size: 12px; + font-weight: normal; + line-height: 20px; + vertical-align: top; + cursor: pointer; +} +.dhx_cal_lsection { + font-size: 18px; + font-family: Arial; +} +.dhx_cal_ltext { + padding: 2px 0px 2px 10px; + overflow: hidden; +} +.dhx_cal_ltext textarea { + background-color: #FFF4B5; + /* #FFF4B5; should be the same for dhx_cal_larea, was transperent */ + overflow: auto; + border: none; + color: #887A2E; + height: 100%; + width: 100%; + outline: none !important; + resize: none; +} +.dhx_time { + font-weight: bold; +} +.dhx_cal_light .dhx_title { + padding-left: 10px; +} +.dhx_cal_larea { + border: 1px solid #DCC43E; + background-color: #FFF4B5; + overflow: hidden; + margin-left: 3px; + width: 572px; + height: 1px; +} +.dhx_btn_set { + padding: 5px 10px 0px 10px; + float: left; +} +.dhx_btn_set div { + float: left; + height: 21px; + line-height: 21px; + vertical-align: middle; + cursor: pointer; +} +.dhx_save_btn { + background-image: url('imgs/controls.gif'); + background-position: -84px 0px; + width: 21px; +} +.dhx_cancel_btn { + background-image: url('imgs/controls.gif'); + background-position: -63px 0px; + width: 20px; +} +.dhx_delete_btn { + background-image: url('imgs/controls.gif'); + background-position: -42px 0px; + width: 20px; +} +.dhx_cal_cover { + width: 100%; + height: 100%; + position: absolute; + z-index: 14; + top: 0px; + left: 0px; + background-color: black; + opacity: 0.1; + filter: alpha(opacity=10); +} +.dhx_custom_button { + padding: 0px 3px 0px 3px; + color: #887A2E; + font-family: Tahoma; + font-size: 8pt; + background-color: #FFE763; + font-weight: normal; + margin-right: 5px; + margin-top: 0px; + cursor: pointer; +} +.dhx_custom_button div { + cursor: pointer; + float: left; + height: 21px; + line-height: 21px; + vertical-align: middle; +} +.dhx_cal_light_wide .dhx_cal_larea { + border-top-width: 0px; +} +.dhx_cal_light_wide .dhx_cal_lsection { + border: 0px; + float: left; + text-align: right; + width: 100px; + height: 20px; + font-size: 16px; + padding: 5px 0px 0px 10px; +} +.dhx_cal_light_wide .dhx_wrap_section { + border-top: 1px solid #DBCF8C; + position: relative; + background-color: #DBCF8C; + overflow: hidden; +} +.dhx_cal_light_wide .dhx_section_time { + padding-top: 2px !important; + height: 20px !important; +} +.dhx_section_time { + text-align: center; +} +.dhx_cal_light_wide .dhx_cal_larea { + width: 730px; +} +.dhx_cal_light_wide { + width: 738px; +} +.dhx_cal_light_wide .dhx_section_time { + background: transparent; +} +.dhx_cal_light_wide .dhx_cal_checkbox label { + padding-left: 0px; +} +.dhx_cal_wide_checkbox input { + margin-top: 8px; + margin-left: 14px; +} +.dhx_cal_light input { + font-family: Tahoma; + font-size: 8pt; + color: #887A2E; +} +.dhx_cal_light_wide .dhx_cal_lsection .dhx_fullday { + float: none; + margin-right: 0px; + color: #FFF4B5; + font-weight: bold; + font-size: 16px; + font-family: Arial; + cursor: pointer; +} +.dhx_custom_button { + float: right; + height: 21px; + width: 90px; + -webkit-border-radius: 4px; + -moz-border-radius: 4px; + -ms-border-radius: 4px; + -o-border-radius: 4px; + border-radius: 4px; +} +.dhx_cal_light_wide .dhx_custom_button { + position: absolute; + top: 0; + right: 0; + margin-top: 2px; +} +.dhx_cal_light_wide .dhx_repeat_right { + margin-right: 55px; +} +.dhx_minical_popup { + position: absolute; + z-index: 16; + width: 251px; + height: 175px; +} +.dhx_scale_bar_header { + position: absolute; + border-bottom: 1px dotted #8894A3; + width: 100%; +} +.dhx_expand_icon { + position: absolute; + top: 0px; + right: 0px; + background-image: url(imgs/collapse_expand_icon.gif); + width: 18px; + height: 18px; + cursor: pointer; + background-position: 0px 18px; + z-index: 4; +} +.dhx_scheduler_agenda .dhx_cal_data { + background-image: url(imgs/databg.png); +} +.dhx_agenda_area { + width: 100%; + overflow-y: auto; + background-image: url(imgs/databg.png); +} +.dhx_agenda_line { + height: 21px; + clear: both; + overflow: hidden; +} +.dhx_agenda_line div { + float: left; + width: 188px; + border-right: 1px dotted #8894A3; + text-align: center; + line-height: 21px; + overflow: hidden; +} +.dhx_agenda_area .dhx_agenda_line div { + border-right: 0px dotted #8894A3; +} +.dhx_v_border { + position: absolute; + left: 187px; + top: 0; + border-right: 1px dotted #8894A3; + width: 1px; + height: 100%; +} +.dhx_agenda_line .dhx_event_icon { + width: 20px; + border-width: 0px; + background: url(imgs/icon.png) no-repeat; + background-position: 5px 4px; + cursor: pointer; +} +.dhx_agenda_line span { + padding-left: 5px; + line-height: 21px; +} +.dhx_year_body { + border-left: 1px dotted #586A7E; +} +.dhx_year_week { + position: relative; +} +.dhx_scale_bar_last { + border-right: 1px dotted #586A7E; +} +.dhx_year_month { + height: 18px; + padding-top: 3px; + border: 1px dotted #586A7E; + text-align: center; + vertical-align: middle; +} +.dhx_year_body .dhx_before .dhx_month_head, +.dhx_year_body .dhx_after .dhx_month_head, +.dhx_year_body .dhx_before .dhx_month_head a, +.dhx_year_body .dhx_after .dhx_month_head a { + color: #E2E3E6 !important; +} +.dhx_year_body .dhx_month_body { + height: 0px; + overflow: hidden; +} +.dhx_month_head.dhx_year_event { + background-color: #FFE763; +} +.dhx_year_body .dhx_before .dhx_month_head, +.dhx_year_body .dhx_after .dhx_month_head { + cursor: default; +} +.dhx_year_tooltip { + border: 1px solid #BBBBBB; + background-image: url(imgs/databg.png); + position: absolute; + z-index: 12; + width: 300px; + height: auto; + font-family: Tahoma; + font-size: 8pt; + overflow: hidden; +} +.dhx_tooltip_line { + line-height: 20px; + height: 20px; + overflow: hidden; +} +.dhx_tooltip_line .dhx_event_icon { + width: 20px; + height: 20px; + padding-right: 10px; + float: left; + border-width: 0px; + position: relative; + background: url(imgs/icon.png) no-repeat; + background-position: 5px 4px; + cursor: pointer; +} +.dhx_tooltip_date { + float: left; + width: auto; + padding-left: 5px; + text-align: center; +} +.dhx_text_disabled { + color: #887A2E; + font-family: Tahoma; + font-size: 8pt; +} +.dhx_mini_calendar { + -moz-box-shadow: 5px 5px 5px #888; + /*Doesn't work in IE*/ + -khtml-box-shadow: 5px 5px 5px #888; + -moz-user-select: -moz-none; + -webkit-user-select: none; + -user-select: none; +} +.dhx_mini_calendar .dhx_month_head { + cursor: pointer; +} +.dhx_mini_calendar .dhx_calendar_click { + background-color: #C2D5FC; +} +.dhx_cal_navline div.dhx_minical_icon { + width: 18px; + height: 18px; + left: 190px; + top: 1px; + cursor: pointer; + background-image: url(imgs/calendar.gif); +} +.dhx_matrix_scell { + height: 100%; +} +.dhx_matrix_cell, +.dhx_matrix_scell { + overflow: hidden; + text-align: center; + vertical-align: middle; + border-bottom: 1px dotted #8894A3; + border-right: 1px dotted #8894A3; +} +.dhx_matrix_cell { + background-color: white; +} +.dhx_matrix_line { + overflow: hidden; +} +.dhx_matrix_cell div, +.dhx_matrix_scell div { + overflow: hidden; + text-align: center; + height: auto; +} +.dhx_cal_lsection .dhx_readonly { + font-size: 9pt; + font-size: 8pt; + padding: 2px; + color: #887A2E; +} +.dhx_cal_event_line .dhx_event_resize { + cursor: w-resize; + background: url(imgs/resize_dots.png) repeat-y; + position: absolute; + top: 0; + width: 4px; + height: 100%; +} +.dhx_event_resize_start { + left: 0; +} +.dhx_event_resize_end { + right: 0; +} +/* Tree view */ +.dhx_matrix_scell.folder, +.dhx_data_table.folder .dhx_matrix_cell { + background-color: #969394; + cursor: pointer; +} +.dhx_matrix_scell .dhx_scell_level0 { + padding-left: 5px; +} +.dhx_matrix_scell .dhx_scell_level1 { + padding-left: 20px; +} +.dhx_matrix_scell .dhx_scell_level2 { + padding-left: 35px; +} +.dhx_matrix_scell .dhx_scell_level3 { + padding-left: 50px; +} +.dhx_matrix_scell .dhx_scell_level4 { + padding-left: 65px; +} +.dhx_matrix_scell.folder { + font-weight: bold; + text-align: left; +} +.dhx_matrix_scell.folder .dhx_scell_expand { + float: left; + width: 10px; + padding-right: 3px; +} +.dhx_matrix_scell.folder .dhx_scell_name { + float: left; + width: auto; +} +.dhx_matrix_scell.item .dhx_scell_name { + padding-left: 15px; + text-align: left; +} +.dhx_data_table.folder .dhx_matrix_cell { + border-right: 0; +} +.dhx_section_timeline { + overflow: hidden; + padding: 4px 0 2px 10px; +} +.dhx_section_timeline select { + width: 552px; +} +/* Tree view end*/ +/* Map view */ +.dhx_map_area { + width: 100%; + height: 100%; + overflow-y: auto; + overflow-x: hidden; + background-image: url(imgs/databg.png); +} +.dhx_map_line .dhx_event_icon { + width: 20px; + border-width: 0px; + background: url(imgs/icon.png) no-repeat; + background-position: 5px 4px; + cursor: pointer; +} +.dhx_map_line { + height: 21px; + clear: both; + overflow: hidden; +} +.dhx_map { + position: absolute; +} +.dhx_map_line div { + float: left; + border-right: 1px dotted #8894A3; + text-align: center; + line-height: 21px; + overflow: hidden; +} +.dhx_map_line .headline_description { + float: left; + border-right: 1px dotted #8894A3; + text-align: center; + line-height: 21px; + overflow: hidden; +} +.dhx_map_line .dhx_map_description { + float: left; + border-right: 0 dotted #8894A3; + text-align: center; + line-height: 21px; + overflow: hidden; +} +.dhx_map_line .headline_date, +.dhx_map_line .headline_description { + border-left: 0; +} +.dhx_map_line .line_description { + float: left; + border-right: 1px dotted #8894A3; + text-align: left; + padding-left: 5px; + line-height: 21px; + overflow: hidden; +} +.dhx_map_line.highlight { + background-color: #C4C5CC; +} +.dhx_map_area .dhx_map_line div { + border-right: 0px dotted #8894A3; +} +/* Map view end */ +/* dhtmlXTooltip start */ +.dhtmlXTooltip.tooltip { + -moz-box-shadow: 3px 3px 3px #888888; + -webkit-box-shadow: 3px 3px 3px #888888; + -o-box-shadow: 3px 3px 3px #888888; + box-shadow: 3px 3px 3px #888888; + filter: progid:DXImageTransform.Microsoft.Shadow(color='#888888', Direction=135, Strength=5); + background-color: white; + border-left: 1px dotted #887A2E; + border-top: 1px dotted #887A2E; + color: #887A2E; + cursor: default; + padding: 10px; + position: fixed; + z-index: 9; + font-family: Tahoma; + font-size: 8pt; + opacity: 1; +} +/* dhtmlXTooltip end */ +/* Lightbox checkbox section */ +.dhx_cal_checkbox label { + padding-left: 5px; +} +/* Lightbox checkbox section end */ +/* Lightbox radiobuttons section */ +.dhx_cal_light .radio { + padding: 2px 0px 2px 10px; +} +.dhx_cal_light .radio input, +.dhx_cal_light .radio label { + line-height: 15px; +} +.dhx_cal_light .radio input { + vertical-align: middle; + margin: 0px; + padding: 0px; +} +.dhx_cal_light .radio label { + vertical-align: middle; + padding-right: 10px; +} +/* Lightbox radiobuttons section end */ +/* Lightbox dhtmlx combo section */ +.dhx_cal_light .combo { + padding: 4px; +} +/* dhtmlxCombo v3.x */ +.dhx_cal_light_wide .dhx_combo_box, +.dhx_cal_light_wide .combo > div { + width: 608px !important; + left: 10px; +} +/* Lightbox dhtmlx combo section end */ +/* Agenda week start */ +.dhx_wa_column { + float: left; +} +.dhx_wa_column_last .dhx_wa_day_cont { + border-left: 1px dotted #8894A3; +} +.dhx_wa_scale_bar { + font-family: Tahoma; + padding-left: 10px; + font-size: 11px; + border-top: 1px dotted #8894A3; + border-bottom: 1px dotted #8894A3; +} +.dhx_wa_day_data { + background-color: #FCFEFC; + overflow-y: auto; +} +.dhx_wa_ev_body { + border-bottom: 1px dotted #778899; + font-size: 12px; + padding: 5px 0 5px 7px; +} +.dhx_wa_dnd { + font-family: Tahoma; + position: absolute; + padding-right: 7px; + color: #887AE2 !important; + background-color: #FFE763 !important; + border: 1px solid #B7A543; +} +.dhx_cal_event_selected { + background-color: #9cc1db; + color: white; +} +/* Agenda week end */ +/* timeline second scale start */ +.dhx_second_scale_bar { + border-bottom: 1px dotted #586A7E; + padding-top: 2px; +} +/* timeline second scale end */ +/* grid view */ +.dhx_cal_header div div { + border-left: 1px dotted #8894A3; +} +.dhx_grid_area { + width: 100%; + height: 100%; + overflow-y: auto; + background-color: #FCFEFC; +} +.dhx_grid_area table { + border-collapse: collapse; + border-spacing: 0; + width: 100%; + table-layout: fixed; +} +.dhx_grid_area td { + table-layout: fixed; + text-align: center; +} +.dhx_grid_line { + height: 21px; + clear: both; + overflow: hidden; +} +.dhx_grid_line div { + float: left; + cursor: default; + padding-top: 0; + padding-bottom: 0; + text-align: center; + line-height: 21px; + overflow: hidden; +} +.dhx_grid_area td, +.dhx_grid_line div { + padding-left: 8px; + padding-right: 8px; +} +.dhx_grid_area tr.dhx_grid_event { + height: 21px; + overflow: hidden; + margin: 0 0 1px 0; +} +.dhx_grid_area tr.dhx_grid_event td { + /*borders for old ies*/ + border-bottom: 1px solid #ECEEF4; +} +.dhx_grid_area tr.dhx_grid_event:nth-child(2n+1) td, +.dhx_grid_area tr.dhx_grid_event:nth-child(2n) td { + border-bottom-width: 0px; + border-bottom-style: none; +} +.dhx_grid_area tr.dhx_grid_event:nth-child(2n) { + background-color: #ECEEF4; +} +.dhx_grid_area .dhx_grid_dummy { + table-layout: auto; + margin: 0 !important; + padding: 0 !important; +} +.dhx_grid_v_border { + position: absolute; + border-right: 1px solid #A4BED4; + width: 1px; + height: 100%; +} +.dhx_grid_event_selected { + background-color: #9cc1db !important; + color: white !important; +} +.dhx_grid_sort_desc .dhx_grid_view_sort { + background-position: 0 -55px; +} +.dhx_grid_sort_asc .dhx_grid_view_sort { + background-position: 0 -66px; +} +.dhx_grid_view_sort { + width: 10px; + height: 10px; + position: absolute; + border: none !important; + top: 5px; + background-repeat: no-repeat; + background-image: url(imgs/images.png); +} +/* end grid */ +/* marked timespans */ +.dhx_marked_timespan { + position: absolute; + width: 100%; + margin-left: 0; + /* fix bootstrap conflict [class*="span"] */ +} +.dhx_time_block { + position: absolute; + width: 100%; + background: silver; + opacity: 0.4; + filter: alpha(opacity=40); + z-index: 1; +} +.dhx_time_block_reset { + opacity: 1; + filter: alpha(opacity=100); +} +.dhx_scheduler_month .dhx_marked_timespan { + display: none; +} +.dhx_mini_calendar .dhx_marked_timespan { + display: none; +} +/* now time */ +.dhx_now_time { + width: 100%; + border-bottom: 2px solid red; + z-index: 1; +} +.dhx_scheduler_month .dhx_now_time { + border-bottom: 0; + border-left: 2px solid red; +} +.dhx_matrix_now_time { + border-left: 2px solid red; + z-index: 1; +} +.dhx_now_time, +.dhx_matrix_now_time { + opacity: 0.5; +} +/* Quick info */ +.dhx_cal_quick_info { + border: 2px solid #888; + border-radius: 5px; + position: absolute; + z-index: 8; + background-color: #8e99ae; + background-color: rgba(98, 107, 127, 0.5); + padding-left: 7px; + width: 300px; + transition: left 0.5s ease, right 0.5s; + -moz-transition: left 0.5s ease, right 0.5s; + -webkit-transition: left 0.5s ease, right 0.5s; + -o-transition: left 0.5s ease, right 0.5s; +} +.dhx_no_animate { + transition: none; + -moz-transition: none; + -webkit-transition: none; + -o-transition: none; +} +.dhx_cal_quick_info.dhx_qi_left .dhx_qi_big_icon { + float: right; +} +.dhx_cal_qi_title { + padding: 5px 0px 10px 5px; + color: #FFF; + letter-spacing: 1px; +} +.dhx_cal_qi_tdate { + font-size: 14px; +} +.dhx_cal_qi_tcontent { + font-size: 18px; + font-weight: bold; +} +.dhx_cal_qi_content { + border: 1px solid #888; + background-color: #fefefe; + padding: 16px 8px; + font-size: 14px; + color: #444; + width: 275px; + overflow: hidden; +} +.dhx_qi_big_icon { + border-radius: 3px; + color: #444; + margin: 5px 9px 5px 0px; + min-width: 60px; + line-height: 20px; + vertical-align: middle; + padding: 5px 10px 5px 5px; + cursor: pointer; + background-color: #fefefe; + border-bottom: 1px solid #666; + border-right: 1px solid #666; + float: left; +} +.dhx_cal_qi_controls div { + float: left; + height: 20px; + text-align: center; + line-height: 20px; +} +.dhx_qi_big_icon .dhx_menu_icon { + margin: 0 8px 0 0px; +} +.dhx_drag_marker { + width: 100%; + filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=50); + opacity: 0.5; + background-color: #FFE763; + position: absolute; + box-sizing: border-box !important; + border-top: 1px solid #B6B6B6; + border-bottom: 1px solid #b6b6b6; +} +/* key nav */ +.dhx_focus_slot { + background: #FFE763; + position: absolute; + pointer-events: none; + opacity: 0.3; +} +.dhx_cal_container *:focus { + outline-style: solid; + /*not visible focus outline in ie11*/ + outline-style: auto; +} +/* key nav end*/ +/* bootstrap CSS fix start */ +.dhx_cal_navline div, +.dhx_cal_header, +.dhx_cal_header div, +.dhx_cal_data, +.dhx_cal_data div, +.dhx_cal_data table *, +.dhx_multi_day, +.dhx_multi_day div, +.dhx_tooltip_line div, +.dhx_cal_quick_info, +.dhx_cal_quick_info div, +.dhtmlx_modal_box * { + -webkit-box-sizing: content-box; + -moz-box-sizing: content-box; + box-sizing: content-box; +} +.dhx_cal_light .dhx_wrap_section, +.dhx_cal_light .dhx_cal_lsection { + -webkit-box-sizing: content-box; + -moz-box-sizing: content-box; + box-sizing: content-box; +} +.dhx_cal_data div.dhx_scale_hour, +.dhx_cal_data table .dhx_matrix_cell, +.dhx_cal_data table .dhx_matrix_scell { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; +} +.dhx_cal_event div { + line-height: normal; +} +.dhx_cal_data table { + border-collapse: separate; +} +.dhx_cal_light .dhx_cal_radio label { + margin-bottom: 0; +} +.dhx_cal_event div { + line-height: normal; +} +/* bootstrap CSS fix end */ +.dhx_cal_container { + background-color: #C2D5FC; + font-family: Tahoma; + font-size: 8pt; + position: relative; + overflow: hidden; +} +.dhx_cal_container div { + -moz-user-select: none; + -moz-user-select: -moz-none; +} +.dhx_cal_navline { + height: 20px; + position: absolute; + z-index: 3; + width: 750px; + color: #2F3A48; +} +.dhx_cal_navline div { + position: absolute; + top: 2px; + white-space: nowrap; +} +.dhx_cal_navline .dhx_cal_date { + font-weight: 600; + left: 210px; + padding-top: 1px; +} +.dhx_cal_button .dhx_left_bg { + width: 1px; + overflow: hidden; + height: 17px; + z-index: 5; + top: 0px; +} +.dhx_cal_prev_button { + background-image: url(imgs/buttons.png); + background-position: 0px 0px; + width: 29px; + height: 17px; + left: 50px; + cursor: pointer; +} +.dhx_cal_next_button { + background-image: url(imgs/buttons.png); + background-position: -30px 0px; + width: 29px; + height: 17px; + left: 80px; + cursor: pointer; +} +.dhx_cal_today_button { + background-image: url(imgs/buttons.png); + background-position: -60px 0px; + width: 75px; + height: 17px; + left: 112px; + cursor: pointer; + text-align: center; + text-decoration: underline; +} +.dhx_cal_tab { + width: 59px; + height: 19px; + text-align: center; + text-decoration: underline; + padding-top: 2px; + cursor: pointer; + background-color: #D8E1EA; + -webkit-border-top-left-radius: 4px; + -webkit-border-top-right-radius: 4px; + -moz-border-radius-topleft: 4px; + -moz-border-radius-topright: 4px; + border-top-left-radius: 4px; + border-top-right-radius: 4px; +} +.dhx_cal_tab.active { + text-decoration: none; + cursor: default; + font-weight: bold; + border: 1px dotted #586A7E; + border-bottom: 0; + background-color: #C2D5FC; +} +.dhx_cal_header { + position: absolute; + left: 10px; + top: 23px; + width: 750px; + border-top: 1px dotted #8894A3; + border-right: 1px dotted #8894A3; + z-index: 2; + overflow: hidden; + color: #2F3A48; +} +.dhx_cal_data { + -webkit-tap-highlight-color: transparent; + border-top: 1px dotted #8894A3; + position: absolute; + top: 44px; + width: 600px; + overflow-y: auto; + overflow-x: hidden; + -webkit-overflow-scrolling: touch; +} +.dhx_cal_data { + -ms-touch-action: pan-y; +} +.dhx_cal_event, +.dhx_cal_event_line, +.dhx_cal_event_clear { + -ms-touch-action: none; +} +.dhx_scale_bar { + position: absolute; + text-align: center; + background-color: #C2D5FC; + padding-top: 3px; + border-left: 1px dotted #586A7E; +} +.dhx_scale_holder { + position: absolute; + border-right: 1px dotted #586A7E; + background-image: url(imgs/databg.png); +} +.dhx_scale_holder_now { + position: absolute; + border-right: 1px dotted #586A7E; + background-image: url(imgs/databg_now.png); +} +.dhx_scale_hour { + height: 41px; + width: 50px; + border-bottom: 1px dotted #8894A3; + background-color: #C2D5FC; + text-align: center; + line-height: 40px; + color: #586A7E; + overflow: hidden; +} +.dhx_month_head { + background-color: #EBEFF4; + color: #2F3A48; + height: 18px; + padding-right: 5px; + padding-top: 3px; + text-align: right; + border-right: 1px dotted #586A7E; +} +.dhx_month_body { + border-right: 1px dotted #586A7E; + border-bottom: 1px dotted #586A7E; + background-color: #FFFFFF; +} +.dhx_now .dhx_month_body { + background-color: #E2EDFF; +} +.dhx_after .dhx_month_body, +.dhx_before .dhx_month_body { + background-color: #ECECEC; +} +.dhx_after .dhx_month_head, +.dhx_before .dhx_month_head { + background-color: #E2E3E6; + color: #94A6BB; +} +.dhx_now .dhx_month_head { + background-color: #D1DEF4; + font-weight: bold; +} +.dhx_scale_ignore { + display: none; +} +.dhx_cal_drag { + position: absolute; + z-index: 13; + background-color: #FFE763; + border: 1px solid #B7A543; + opacity: 0.5; + filter: alpha(opacity=50); +} +.dhx_loading { + position: absolute; + width: 128px; + height: 15px; + background-image: url(imgs/loading.gif); + z-index: 13; +} +.dhx_multi_day_icon, +.dhx_multi_day { + background-color: #E1E6FF; + background-repeat: no-repeat; + border-right: 1px dotted #8894A3; +} +.dhx_multi_day { + position: absolute; + border-top: 1px dotted #8894A3; +} +.dhx_multi_day_icon, +.dhx_multi_day_icon_small { + background-position: center center; + background-color: #E1E6FF; + background-repeat: no-repeat; + border-bottom: 1px dotted #8894A3; + border-right: 1px dotted #8894A3; +} +.dhx_multi_day_icon { + background-image: url(imgs/clock_big.gif); +} +.dhx_multi_day_icon_small { + background-image: url(imgs/clock_small.gif); +} +.dhtmlxLayoutPolyContainer_dhx_skyblue .dhx_cal_container { + background-color: #d0e5ff; +} +/* left border config option support */ +.dhx_scale_hour_border, +.dhx_month_body_border, +.dhx_scale_bar_border, +.dhx_month_head_border { + border-left: 1px dotted #8894A3; +} +/* export to PDF and iCal buttons start */ +.dhx_cal_navline .dhx_cal_export { + width: 18px; + height: 18px; + margin: 2px; + cursor: pointer; + top: 0px; +} +.dhx_cal_navline .dhx_cal_export.pdf { + left: 2px; + background-image: url('imgs/export_pdf.png'); +} +.dhx_cal_navline .dhx_cal_export.ical { + left: 24px; + background-image: url('imgs/export_ical.png'); +} +/* export to PDF and iCal buttons end */ +/*All*/ +.dhx_form_repeat, +.dhx_form_repeat input { + padding: 0; + margin: 0; + padding-left: 5px; + font-family: Tahoma, Verdana; + font-size: 11px; + line-height: 24px; +} +.dhx_form_repeat { + overflow: hidden; + /*height:115px;*/ + background-color: #FFF4B5; + /*border: 1px solid #DCC43E;*/ +} +.dhx_cal_light_wide .dhx_form_repeat { + background-color: transparent; +} +.dhx_repeat_center, +.dhx_repeat_left, +.dhx_repeat_divider, +.dhx_repeat_right { + height: 115px; + -moz-box-sizing: border-box; + box-sizing: border-box; +} +.dhx_repeat_center, +.dhx_repeat_left { + padding: 10px 0 0px 10px; + float: left; +} +.dhx_repeat_left { + width: 105px; +} +.dhx_repeat_center { + width: 345px; + padding-top: 22px; +} +.dhx_repeat_divider { + float: left; + border-left: 1px dotted #DCC43E; + /*background-color: #DCC43E;*/ + width: 1px; +} +.dhx_repeat_right { + float: right; + width: 173px; + padding: 17px 3px 0px 10px; +} +input.dhx_repeat_text { + height: 16px; + width: 27px; + margin: 0 4px 0 4px; + line-height: 18px; + padding: 0 0 0 2px; +} +.dhx_form_repeat select { + height: 20px; + width: 87px; + padding: 0 0 0 2px; + margin: 0 4px 0 4px; +} +input.dhx_repeat_date { + height: 18px; + width: 80px; + padding: 0 0 0 2px; + margin: 0 4px 0 4px; + background-repeat: no-repeat; + background-position: 64px 0; + border: 1px #7f9db9 solid; + line-height: 18px; +} +input.dhx_repeat_radio { + margin-right: 4px; +} +input.dhx_repeat_checkbox { + margin: 4px 4px 0 0; +} +.dhx_repeat_days td { + padding-right: 5px; +} +.dhx_repeat_days label { + font-size: 10px; +} +.dhx_custom_button { + width: 90px; + -webkit-border-radius: 4px; + -moz-border-radius: 4px; + -ms-border-radius: 4px; + -o-border-radius: 4px; + border-radius: 4px; +} +.dhx_custom_button_recurring { + background-image: url(imgs/but_repeat.gif); + background-position: -5px 20px; + width: 20px; + margin-right: 10px; +} +/* increase width of lightbox */ +.dhx_cal_light_rec { + width: 640px; +} +.dhx_cal_light_rec .dhx_cal_larea { + width: 632px; +} +.dhx_cal_light_rec.dhx_cal_light_wide { + width: 816px; +} +.dhx_cal_light_rec.dhx_cal_light_wide .dhx_cal_larea { + width: 808px; +} +/* event start */ +.dhx_cal_event .dhx_title { + border-width: 1px 1px 0 1px; + padding-top: 1px; + -webkit-border-top-left-radius: 4px; + -webkit-border-top-right-radius: 4px; + -moz-border-radius-topleft: 4px; + -moz-border-radius-topright: 4px; + border-top-left-radius: 4px; + border-top-right-radius: 4px; + font-family: "arial"; + font-weight: bold; + font-size: 14px; + line-height: 14px; +} +.dhx_cal_event .dhx_body, +.dhx_cal_event.dhx_cal_select_menu .dhx_body { + padding-bottom: 8px; + -webkit-border-bottom-right-radius: 4px; + -webkit-border-bottom-left-radius: 4px; + -moz-border-radius-bottomright: 4px; + -moz-border-radius-bottomleft: 4px; + border-bottom-right-radius: 4px; + border-bottom-left-radius: 4px; +} +.dhx_cal_event .dhx_header, +.dhx_cal_event.dhx_cal_select_menu .dhx_footer { + display: none; +} +.dhx_cal_event.dhx_cal_select_menu { + -webkit-box-shadow: 0 0 1px #FFF; + -moz-box-shadow: 0 0 1px #FFF; + box-shadow: 0 0 1px #FFF; +} +.dhx_cal_event .dhx_footer { + height: 5px; + border: 0; + margin-top: -6px; + background: url(imgs_contrast_black/resizing.png) no-repeat center center; +} +.dhx_cal_event .dhx_header, +.dhx_cal_event .dhx_footer, +.dhx_cal_event .dhx_body, +.dhx_cal_event .dhx_title { + background-color: #1b4872; + border-color: #00b7ff; + color: #ffffff; +} +.dhx_cal_event.dhx_cal_editor { + border: 1px solid transparent; +} +.dhx_cal_editor { + font-size: 16px; + font-family: Arial, sans-serif; +} +div.dhx_menu_head, +div.dhx_menu_icon { + background-image: url(imgs_contrast_black/controls.png); +} +.dhx_cal_event_line { + border: 1px solid #00b7ff; + background-color: #1b4872; + color: #ffffff; + height: 17px; + line-height: 17px; + -webkit-border-radius: 2px; + -moz-border-radius: 2px; + border-radius: 2px; +} +.dhx_cal_event_line_start { + -webkit-border-top-left-radius: 9px; + -webkit-border-bottom-left-radius: 9px; + -moz-border-radius-topleft: 9px; + -moz-border-radius-bottomleft: 9px; + border-top-left-radius: 9px; + border-bottom-left-radius: 9px; +} +.dhx_cal_event_line_end { + -webkit-border-top-right-radius: 9px; + -webkit-border-bottom-right-radius: 9px; + -moz-border-radius-topright: 9px; + -moz-border-radius-bottomright: 9px; + border-top-right-radius: 9px; + border-bottom-right-radius: 9px; +} +.dhx_cal_event .dhx_body, +.dhx_cal_event_line { + font-size: 14px; + font-family: "arial", sans-serif; +} +/* event end */ +/* scales, containers start */ +.dhx_cal_container { + font-family: "arial"; + font-size: 14px; + background-color: #000000; +} +.dhx_cal_data { + color: #ffffff; + background: #000000; + border-top: 1px solid #8d8d8d; +} +.dhx_scale_holder { + background-image: url(imgs_contrast_black/databg.png); + border-right: 1px solid #8d8d8d; +} +.dhx_scale_holder_now { + background-image: url(imgs_contrast_black/databg.png); + background-color: #423f0c; + background-color: rgba(144, 136, 15, 0.5); + border-right: 1px solid #8d8d8d; +} +.dhx_scale_hour { + border-bottom: 1px solid #8d8d8d; + background-color: #000000; + font: 16px/44px "arial"; + color: #e9e9e9; + font-weight: bold; +} +.dhx_cal_header { + border: 1px solid #8d8d8d; + color: #e9e9e9; + font-weight: bold; + border-left: 0; + border-bottom: 0; +} +.dhx_scale_bar { + border-left: 1px solid #8d8d8d; +} +.dhx_scale_bar { + font: 16px/16px "arial"; + color: #e9e9e9; + font-weight: bold; + padding-top: 2px; + background-color: #000000; +} +/* scales, containers end */ +/* navigation start */ +.dhx_cal_navline div { + top: 14px; +} +.dhx_cal_tab, +.dhx_cal_date, +.dhx_cal_today_button, +.dhx_cal_prev_button, +.dhx_cal_next_button { + color: #ffffff; + height: 30px; + line-height: 30px; + background: none; + border: 2px solid #ffffff; +} +.dhx_cal_navline .dhx_cal_date { + border: 0; + font-size: 18px; + font-weight: normal; + font-family: "arial"; + width: 100%; + top: 14px; + text-align: center; + position: absolute; + left: 0; + z-index: -1; +} +.dhx_cal_today_button { + color: #ffffff; + left: auto; + right: 123px; + background: none; + text-decoration: none; + width: 80px; + font-size: 14px; + font-weight: bold; + font-family: "arial"; + -webkit-border-radius: 5px; + -moz-border-radius: 5px; + border-radius: 5px; +} +.dhx_cal_prev_button, +.dhx_cal_next_button { + left: auto; + width: 46px; +} +.dhx_cal_prev_button { + right: 61px; + background: url(imgs_contrast_black/arrow_left.png) no-repeat center center; + -webkit-border-top-left-radius: 5px; + -webkit-border-bottom-left-radius: 5px; + -moz-border-radius-topleft: 5px; + -moz-border-radius-bottomleft: 5px; + border-top-left-radius: 5px; + border-bottom-left-radius: 5px; +} +.dhx_cal_next_button { + right: 14px; + background: url(imgs_contrast_black/arrow_right.png) no-repeat center center; + -webkit-border-top-right-radius: 5px; + -webkit-border-bottom-right-radius: 5px; + -moz-border-radius-topright: 5px; + -moz-border-radius-bottomright: 5px; + border-top-right-radius: 5px; + border-bottom-right-radius: 5px; +} +.dhx_cal_tab { + color: #ffffff; + width: 60px; + padding-top: 0; + text-decoration: none; + -webkit-border-radius: 0px; + -moz-border-radius: 0px; + border-radius: 0px; + font-weight: bold; + font-family: "arial"; + font-size: 14px; +} +.dhx_cal_tab.active { + background-color: #ffffff; + color: #000000; + border: 2px solid #ffffff; + text-shadow: none; +} +.dhx_cal_tab_first { + -webkit-border-top-left-radius: 5px; + -webkit-border-bottom-left-radius: 5px; + -moz-border-radius-topleft: 5px; + -moz-border-radius-bottomleft: 5px; + border-top-left-radius: 5px; + border-bottom-left-radius: 5px; +} +.dhx_cal_tab_last { + -webkit-border-top-right-radius: 5px; + -webkit-border-bottom-right-radius: 5px; + -moz-border-radius-topright: 5px; + -moz-border-radius-bottomright: 5px; + border-top-right-radius: 5px; + border-bottom-right-radius: 5px; +} +.dhx_cal_tab_standalone { + -webkit-border-radius: 5px; + -moz-border-radius: 5px; + border-radius: 5px; + padding: 0 5px; +} +.dhx_multi_day, +.dhx_multi_day_icon_small, +.dhx_multi_day_icon { + background-color: #000000; +} +.dhx_multi_day { + border-top: 1px solid #8d8d8d; +} +.dhx_multi_day_icon, +.dhx_multi_day_icon_small { + border-bottom: 1px solid #8d8d8d; + border-right: 1px solid #8d8d8d; +} +.dhx_multi_day_icon_small { + background-image: none; +} +.dhx_multi_day_icon { + background-image: none; +} +/* navigation end */ +/* month view start */ +.dhx_month_head, +.dhx_after .dhx_month_head, +.dhx_before .dhx_month_head, +.dhx_after .dhx_month_body, +.dhx_before .dhx_month_body { + background-color: #2e2e2e; +} +.dhx_month_head { + height: 21px; + padding-top: 0; + font: 14px/21px Arial; + background: #000000; + color: #e9e9e9; + font-weight: bold; + border-right: 1px solid #8d8d8d; +} +.dhx_after .dhx_month_head, +.dhx_before .dhx_month_head, +.dhx_after .dhx_month_head, +.dhx_before .dhx_month_head { + color: #e9e9e9; +} +.dhx_month_body { + border-right: 1px solid #8d8d8d; + border-bottom: 1px solid #8d8d8d; + background: #000000; +} +.dhx_now .dhx_month_head, +.dhx_now .dhx_month_body { + background-color: #423f0c; + font-weight: normal; +} +.dhx_cal_event_clear { + color: #ffffff; + font-size: 14px; + height: 16px; +} +/* month view end */ +/* lightbox start */ +.dhx_cal_larea { + margin-left: 0; +} +.dhx_cal_light_wide .dhx_cal_larea { + margin-left: 3px; +} +.dhx_cal_light_wide .dhx_wrap_section { + padding: 5px 0; +} +.dhx_cal_light, +.dhx_cal_larea, +.dhx_cal_lsection, +.dhx_wrap_section, +.dhx_cal_light_wide .dhx_wrap_section, +.dhx_cal_ltext textarea { + background-color: #000000; +} +.dhx_cal_lsection, +.dhx_cal_light_wide .dhx_cal_lsection .dhx_fullday, +.dhx_cal_lsection .dhx_fullday, +.dhx_cal_light input { + color: #e9e9e9; +} +.dhx_cal_light_wide .dhx_wrap_section { + border-top: 0; + border-bottom: 1px solid #CECECE; +} +.dhx_cal_larea { + border: 1px solid transparent; +} +.dhx_cal_ltext textarea, +.dhx_cal_light select, +.dhx_cal_light input, +.dhx_cal_light { + color: #ffffff; + background: #000000; +} +.dhx_cal_light { + border: 1px solid #CECECE; + font-size: 14px; +} +.dhx_cal_light_wide .dhx_cal_lsection, +.dhx_cal_light_wide .dhx_cal_lsection .dhx_fullday { + font-size: 14px; +} +.dhx_section_time { + background-color: transparent; +} +.dhx_save_btn, +.dhx_cancel_btn, +.dhx_delete_btn, +.dhx_btn_set div:first-child { + display: none; +} +.dhx_btn_set, +.dhx_btn_set div { + height: 30px; + padding: 0 20px; + line-height: 30px; +} +.dhx_btn_set { + margin: 12px 0 0 0; + padding: 0; + font-size: 14px; + color: #e9e9e9; + font-weight: bold; + -webkit-border-radius: 3px; + -moz-border-radius: 3px; + border-radius: 3px; +} +.dhx_left_btn_set { + margin-left: 20px; +} +.dhx_right_btn_set { + margin-right: 20px; +} +.dhx_btn_set.dhx_save_btn_set { + border: 2px solid #00b7ff; + color: #ffffff; + text-shadow: none; + background-color: #1b4872; +} +.dhx_btn_set, +.dhx_cancel_btn_set { + border: 2px solid #ffffff; +} +.dhx_btn_set.dhx_delete_btn_set { + border: 2px solid #ffc400; + background-color: #000000; + color: #ffc400; +} +.dhx_cal_ltitle { + height: 30px; + line-height: 30px; + border-bottom: 1px solid #8d8d8d; +} +.dhx_cal_ltitle span { + float: left; +} +.dhx_cal_light .dhx_title { + padding-left: 13px; +} +.dhx_mark { + display: none; +} +.dhx_time { + padding-left: 10px; +} +.dhx_close_icon { + float: right; + width: 9px; + height: 9px; + background: url(imgs_contrast_black/close_icon.png) no-repeat center center; + padding: 10px; + margin-top: 1px; +} +.dhx_cal_light_wide .dhx_cal_ltext.dhx_cal_template { + line-height: 22px; +} +.dhx_cal_ltext textarea { + line-height: 20px; + box-sizing: border-box; + -moz-box-sizing: border-box; + border: 1px solid #8d8d8d; + background-color: #000000; +} +/* lightbox end */ +/* modal box */ +.dhtmlx_modal_box { + background: #000000; + border: 1px solid #8d8d8d; + color: #ffffff; + padding: 4px; + font-family: "arial"; + border-radius: 6px; + -webkit-box-shadow: inset 0px 0px 0px 4px #1b4872; + -moz-box-shadow: inset 0px 0px 0px 4px #1b4872; + box-shadow: inset 0px 0px 0px 4px #1b4872; + width: 330px; +} +.dhtmlx_popup_title { + text-shadow: none; + background: transparent; + border-bottom: 1px solid #ffffff; +} +.dhtmlx_popup_text { + color: #ffffff; +} +.dhtmlx_popup_controls { + padding-bottom: 9px; +} +.dhtmlx_popup_button, +.dhtmlx_popup_button:active, +.dhtmlx_popup_button div, +.dhtmlx_popup_button div:active { + color: #ffffff; + font-weight: bold; + background: #000000; + box-shadow: none; +} +.dhtmlx_popup_button.dhtmlx_ok_button { + border: 2px solid #00b7ff; + color: #ffffff; + background-color: #1b4872; +} +.dhtmlx_popup_button.dhtmlx_ok_button div { + background: #1b4872; + border: 1px solid transparent; + color: #ffffff; + text-shadow: none; +} +.dhtmlx-error, +.dhtmlx-info { + background-color: #000000; + color: #ffffff; + font-size: 14px; +} +.dhtmlx-info div { + background-color: #000000; +} +/* mobdal box end */ +/* minicalendar */ +.dhx_cal_container.dhx_mini_calendar { + box-sizing: border-box; + border: 1px solid #8d8d8d; + box-shadow: none; + border-radius: 3px; +} +.dhx_mini_calendar .dhx_year_month { + border: 1px solid #8d8d8d; + color: #ffffff; + font-family: Arial; + font-size: 16px; + font-weight: bold; +} +.dhx_mini_calendar .dhx_month_head, +.dhx_mini_calendar .dhx_year_month, +.dhx_mini_calendar .dhx_month_body, +.dhx_mini_calendar .dhx_scale_bar, +.dhx_mini_calendar .dhx_year_body { + border-color: transparent; +} +.dhx_mini_calendar .dhx_year_body { + padding-top: 1px; +} +.dhx_mini_calendar .dhx_scale_bar { + border-width: 0; + font-size: 14px; +} +.dhx_mini_calendar .dhx_year_week { + border-bottom: 1px solid #8d8d8d; + padding-top: 1px; +} +.dhx_mini_calendar .dhx_month_head { + padding-right: 0; + margin-right: 1px; + text-align: center; +} +.dhx_mini_calendar .dhx_cal_prev_button, +.dhx_mini_calendar .dhx_cal_next_button { + border: 0; + height: 20px; +} +/* minicalendar end */ +.dhx_cal_navline div.dhx_minical_icon { + left: 210px; + top: 14px; + width: 30px; + height: 30px; + background: url(imgs_contrast_black/calendar.gif) no-repeat; + background-position: 3px 5px; +} +/* timeline */ +.dhx_cal_event_line .dhx_event_resize { + background: url(imgs_contrast_black/resize_dots.png) repeat-y; +} +.dhx_matrix_scell, +.dhx_matrix_cell { + border-bottom: 1px solid #8d8d8d; + border-right: 1px solid #8d8d8d; +} +.dhx_cal_header div div { + border-left: 1px solid #8d8d8d; +} +.dhx_matrix_scell.folder { + border-right: 0; +} +.dhx_second_scale_bar { + border-bottom: 1px solid #8d8d8d; +} +.dhx_matrix_cell { + background: transparent; +} +/* timeline end */ +/* recurring */ +.dhx_repeat_divider { + border-left: 1px solid #8d8d8d; +} +.dhx_form_repeat { + font-size: 13px; + background: #000000; + font-family: "arial"; +} +.dhx_custom_button { + background-color: #000000; + border: 1px solid #ffffff; + font-size: 12px; + color: #ffffff; +} +.dhx_cal_light_wide .dhx_custom_button { + margin-top: 6px; +} +.dhx_cal_light input, +.dhx_cal_light textarea, +.dhx_cal_light select { + font-size: 14px; +} +.dhx_cal_light_wide .dhx_section_time { + padding-top: 0 !important; +} +.dhx_custom_button_recurring { + background-image: url(imgs_contrast_black/but_repeat.gif); +} +/* recurring end */ +/* agenda */ +.dhx_v_border, +.dhx_agenda_line div { + border-right: 1px solid #8d8d8d; +} +.dhx_agenda_area, +.dhx_scheduler_agenda .dhx_cal_data { + background-image: url(imgs_contrast_black/databg.png); +} +.dhx_agenda_line { + font-size: 16px; + height: 22px; +} +.dhx_agenda_line .dhx_event_icon { + background: url(imgs_contrast_black/controls.png) no-repeat; + background-position: 0px 0px; +} +/* agenda end */ +/* year */ +.dhx_year_month { + border: 1px solid #8d8d8d; + font-size: 16px; +} +.dhx_scale_bar_last { + border-right: 1px solid #8d8d8d; +} +.dhx_year_body { + border-left: 1px solid #8d8d8d; +} +.dhx_year_week { + border-bottom: 1px solid #8d8d8d; +} +.dhx_tooltip_line { + height: 22px; + line-height: 22px; + color: #ffffff; +} +.dhx_tooltip_line .dhx_event_icon { + background-position: 0 0; + background-repeat: no-repeat; + background-image: url(imgs_contrast_black/controls.png); + height: 20px; + margin: 0 7px; +} +.dhx_year_tooltip { + font-size: 14px; + background-color: #000000; + background-image: url(imgs_contrast_black/databg.png); +} +/* year end */ +/* expand */ +.dhx_expand_icon { + top: -3px; +} +/* expand end */ +/* units view */ +.dhx_scale_bar .dhx_cal_next_button, +.dhx_scale_bar .dhx_cal_prev_button { + width: 20px; + height: 20px; + top: 0px !important; + border: 0; +} +.dhx_scale_bar .dhx_cal_next_button { + right: 1px !important; + border-left: 1px solid #8d8d8d; +} +.dhx_scale_bar .dhx_cal_prev_button { + left: 1px !important; + border-right: 1px solid #8d8d8d; +} +/* units view end */ +/* map view */ +.dhx_map_line .headline_date, +.dhx_map_line .headline_description { + border: 0; +} +.dhx_map_line .headline_date { + border-right: 1px solid #8d8d8d; +} +/* map view end */ +/* tooltip start */ +.dhtmlXTooltip.tooltip { + font-size: 14px; + color: #ffffff; + background: #000000; + border: 1px solid #8d8d8d; + line-height: 16px; +} +/* tooltip end */ +/* week agenda start */ +.dhx_wa_day_data { + background: #000000; +} +.dhx_wa_scale_bar { + border-top: 1px solid #8d8d8d; + border-bottom: 1px solid #8d8d8d; +} +.dhx_wa_column_last .dhx_wa_day_cont { + border-left: 1px solid #8d8d8d; +} +.dhx_wa_ev_body { + font-size: 14px; + border-bottom: 1px solid #8d8d8d; +} +.dhx_wa_scale_bar { + font-size: 16px; + color: #e9e9e9; + font-weight: bold; + background-color: #000000; +} +.dhx_wa_ev_body.dhx_cal_event_selected { + background-color: #fff3a1; + color: #362d26; +} +.dhx_wa_dnd { + background-color: #fddb93 !important; + color: #747473 !important; + border: 1px solid #ccb177; +} +/* week agenda end */ +/* readonly start */ +.dhx_text_disabled { + color: #2E2E2E; +} +.dhx_cal_ltext .dhx_text_disabled { + line-height: 22px; +} +/* readonly end */ +/* grid view start */ +.dhx_grid_v_border { + border-right-color: #8d8d8d; +} +.dhx_grid_area { + background: transparent; +} +.dhx_grid_area tr.dhx_grid_event:nth-child(2n) { + background: #2e2e2e; +} +.dhx_grid_line { + font-size: 16px; +} +/* grid view end*/ +/* left border support */ +.dhx_scale_hour_border, +.dhx_month_body_border, +.dhx_scale_bar_border, +.dhx_month_head_border { + border-left: 1px solid #8d8d8d; +} +.dhx_cal_quick_info { + background: #000000; + border: 1px solid #ffffff; + -webkit-box-shadow: inset 0px 0px 0px 4px #1b4872; + -moz-box-shadow: inset 0px 0px 0px 4px #1b4872; + box-shadow: inset 0px 0px 0px 4px #1b4872; + padding: 4px; +} +.dhx_cal_qi_title { + padding: 5px 0px 8px 12px; + color: #ffffff; + background-color: #000000; + border-bottom: 1px solid #8d8d8d; +} +.dhx_cal_qi_content { + background: transparent; + width: auto; + border: none; + color: #ffffff; +} +.dhx_qi_big_icon { + margin: 8px 9px 8px 6px; + background: #000000; + color: #ffffff; + border: 2px solid #ffffff; +} +/* export to PDF and iCal buttons start */ +.dhx_cal_navline .dhx_cal_export { + width: 32px; + height: 32px; + margin: 2px; + cursor: pointer; + top: 12px; +} +.dhx_cal_navline .dhx_cal_export.pdf { + left: auto; + right: 249px; + background-image: url('imgs_contrast_black/export_pdf.png'); +} +.dhx_cal_navline .dhx_cal_export.ical { + left: auto; + right: 210px; + background-image: url('imgs_contrast_black/export_ical.png'); +} +/* export to PDF and iCal buttons end */ +/* minicalendar */ +.dhx_mini_calendar { + padding: 5px; +} +.dhx_mini_calendar .dhx_year_event, +.dhx_mini_calendar .dhx_calendar_click { + border-radius: 7px; +} +.dhx_mini_calendar .dhx_month_head { + margin: 2px 2px; +} +.dhx_mini_calendar .dhx_year_month { + line-height: 20px; + height: 25px; + font-size: 16px; +} +.dhx_mini_calendar .dhx_cal_prev_button { + top: 8px !important; +} +.dhx_mini_calendar .dhx_cal_next_button { + top: 8px !important; +} +.dhx_year_body .dhx_month_head.dhx_year_event, +.dhx_year_body .dhx_month_head.dhx_calendar_click { + color: #000000; +} diff --git a/codebase/sources/skins/dhtmlxscheduler_contrast_white.css b/codebase/sources/skins/dhtmlxscheduler_contrast_white.css new file mode 100644 index 0000000..eb90b3c --- /dev/null +++ b/codebase/sources/skins/dhtmlxscheduler_contrast_white.css @@ -0,0 +1,2425 @@ +/* +@license +dhtmlxScheduler v.4.4.0 Stardard + +This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. + +(c) Dinamenta, UAB. +*/ +.dhtmlx_message_area { + position: fixed; + right: 5px; + width: 250px; + z-index: 11; +} +.dhtmlx-info { + min-width: 120px; + padding: 4px 4px 4px 20px; + font-family: Tahoma; + z-index: 14; + overflow: hidden; + margin: 5px; + margin-bottom: 10px; + -webkit-transition: all .5s ease; + -moz-transition: all .5s ease; + -o-transition: all .5s ease; + transition: all .5s ease; +} +.dhtmlx-info.hidden { + height: 0px; + padding: 0px; + border-width: 0px; + margin: 0px; + overflow: hidden; +} +.dhtmlx_modal_box { + overflow: hidden; + display: inline-block; + min-width: 300px; + width: 300px; + text-align: center; + position: fixed; + background-color: #fff; + background: -webkit-linear-gradient(top, #ffffff 1%, #d0d0d0 99%); + background: -moz-linear-gradient(top, #ffffff 1%, #d0d0d0 99%); + box-shadow: 0px 0px 14px #888; + font-family: Tahoma; + z-index: 18; + border-radius: 6px; + border: 1px solid #ffffff; +} +.dhtmlx_popup_title { + border-top-left-radius: 5px; + border-top-right-radius: 5px; + border-width: 0px; + background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAoCAMAAAAIaGBFAAAAhFBMVEVwcHBubm5sbGxqampoaGhmZmZlZWVjY2NhYWFfX19dXV1bW1taWlpYWFhWVlZUVFRSUlJRUVFPT09NTU1LS0tJSUlHR0dGRkZERERCQkJAQEA+Pj49PT09PT0+Pj5AQEBBQUFDQ0NERERGRkZHR0dJSUlKSkpMTExMTEw5OTk5OTk5OTkny8YEAAAAQklEQVQImQXBCRJCAAAAwKVSQqdyjSPXNP7/QLsIhA6OTiJnF7GrRCpzc/fw9PKW+/gqlCq1RqvTG/yMJrPF6m/bAVEhAxxnHG0oAAAAAElFTkSuQmCC); + background-image: -webkit-linear-gradient(top, #707070 1%, #3d3d3d 70%, #4c4c4c 97%, #393939 97%); + background-image: -moz-linear-gradient(top, #707070 1%, #3d3d3d 70%, #4c4c4c 97%, #393939 97%); +} +.dhtmlx-info, +.dhtmlx_popup_button, +.dhtmlx_button { + user-select: none; + -webkit-user-select: none; + -moz-user-select: -moz-none; + cursor: pointer; +} +.dhtmlx_popup_text { + overflow: hidden; +} +.dhtmlx_popup_controls { + border-radius: 6px; + padding: 5px; +} +.dhtmlx_popup_button, +.dhtmlx_button { + height: 30px; + line-height: 30px; + display: inline-block; + margin: 0 5px; + border-radius: 6px; + color: #FFF; +} +.dhtmlx_popup_button { + min-width: 120px; +} +div.dhx_modal_cover { + background-color: #000; + cursor: default; + filter: alpha(opacity=20); + opacity: 0.2; + position: fixed; + z-index: 17; + left: 0px; + top: 0px; + width: 100%; + height: 100%; + border: none; + zoom: 1; +} +.dhtmlx-info img, +.dhtmlx_modal_box img { + float: left; + margin-right: 20px; +} +.dhtmlx-alert-error .dhtmlx_popup_title, +.dhtmlx-confirm-error .dhtmlx_popup_title { + background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAsCAIAAAArRUU2AAAATklEQVR4nIWLuw2AMBBDjVuQiBT2oWbRDATrnB0KQOJoqPzRe3BrHI6dcBASYREKovtK6/6DsDOX+stN+3H1YX9ciRgnYq5EWYhS2dftBIuLT4JyIrPCAAAAAElFTkSuQmCC); +} +.dhtmlx-alert-error, +.dhtmlx-confirm-error { + border: 1px solid #ff0000; +} +/*Skin section*/ +.dhtmlx_button, +.dhtmlx_popup_button { + box-shadow: 0px 0px 4px #888; + border: 1px solid #838383; +} +.dhtmlx_button input, +.dhtmlx_popup_button div { + border: 1px solid #FFF; + background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAeCAMAAADaS4T1AAAAYFBMVEVwcHBtbW1ra2toaGhmZmZjY2NhYWFeXl5cXFxaWlpXV1dVVVVSUlJQUFBNTU1LS0tJSUlGRkZERERBQUE/Pz88PDw9PT0+Pj5AQEBCQkJDQ0NFRUVHR0dISEhKSkpMTEzqthaMAAAAMklEQVQImQXBhQ2AMAAAsOIMlwWH/8+kRSKVyRVKlVrQaHV6g9FktlhFm93hdLk9Xt8PIfgBvdUqyskAAAAASUVORK5CYII=); + background-image: -webkit-linear-gradient(top, #707070 1%, #3d3d3d 70%, #4c4c4c 99%); + background-image: -moz-linear-gradient(top, #707070 1%, #3d3d3d 70%, #4c4c4c 99%); + border-radius: 6px; + font-size: 15px; + font-weight: normal; + -moz-box-sizing: content-box; + box-sizing: content-box; + color: #fff; + padding: 0px; + margin: 0px; + vertical-align: top; + height: 28px; + line-height: 28px; +} +.dhtmlx_button input:focus, +.dhtmlx_button input:active, +.dhtmlx_popup_button div:active, +.dhtmlx_popup_button div:focus { + background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAeCAMAAADaS4T1AAAAXVBMVEVwcHBubm5tbW1sbGxra2tpaWloaGhnZ2dmZmZlZWVjY2NiYmJhYWFgYGBfX19dXV1cXFxbW1taWlpZWVlXV1dWVlZVVVVUVFRTU1NRUVFQUFBPT09OTk5NTU1LS0tT9SY0AAAAMUlEQVQImQXBhQGAMAAAIGxnx2z9/00BiVQmVyhVakGj1ekNRpPZYhVtdofT5fZ4fT8hpwG05JjexgAAAABJRU5ErkJggg==); + background-image: -webkit-linear-gradient(top, #707070 1%, #4c4c4c 99%); + background-image: -moz-linear-gradient(top, #707070 1%, #4c4c4c 99%); +} +.dhtmlx_popup_title { + color: #fff; + text-shadow: 1px 1px #000; + height: 40px; + line-height: 40px; + font-size: 20px; +} +.dhtmlx_popup_text { + margin: 15px 15px 5px 15px; + font-size: 14px; + color: #000; + min-height: 30px; + border-radius: 6px; +} +.dhtmlx-info, +.dhtmlx-error { + font-size: 14px; + color: #000; + box-shadow: 0px 0px 10px #888; + padding: 0px; + background-color: #FFF; + border-radius: 3px; + border: 1px solid #ffffff; +} +.dhtmlx-info div { + padding: 5px 10px 5px 10px; + background-color: #fff; + border-radius: 3px; + border: 1px solid #B8B8B8; +} +.dhtmlx-error { + background-color: #d81b1b; + border: 1px solid #ff3c3c; + box-shadow: 0px 0px 10px #000; +} +.dhtmlx-error div { + background-color: #d81b1b; + border: 1px solid #940000; + color: #FFF; +} +.dhx_cal_event .dhx_header, +.dhx_cal_event .dhx_title, +.dhx_cal_event .dhx_body, +.dhx_cal_event .dhx_footer { + background-color: #FFE763; + border: 1px solid #B7A543; + color: #887A2E; + overflow: hidden; + width: 100%; + font-family: Tahoma; + font-size: 8pt; +} +.dhx_move_denied .dhx_cal_event .dhx_header, +.dhx_move_denied .dhx_cal_event .dhx_title { + cursor: default; +} +.dhx_cal_event .dhx_header { + height: 1px; + margin-left: 1px; + border-width: 1px 1px 0px 1px; + cursor: pointer; +} +.dhx_cal_event .dhx_title { + height: 12px; + border-width: 0px 1px 1px 1px; + border-bottom-style: dotted; + font-size: 7pt; + font-weight: bold; + text-align: center; + background-position: right; + background-repeat: no-repeat; + cursor: pointer; +} +.dhx_cal_event .dhx_body, +.dhx_cal_event.dhx_cal_select_menu .dhx_body { + border-width: 0 1px 1px 1px; + padding: 5px; +} +.dhx_resize_denied, +.dhx_resize_denied .dhx_event_resize { + cursor: default !important; +} +.dhx_cal_event .dhx_event_resize { + cursor: s-resize; +} +.dhx_cal_event .dhx_footer, +.dhx_cal_event .dhx_select_menu_footer { + height: 1px; + margin-left: 2px; + border-width: 0px 1px 1px 1px; + position: relative; +} +.dhx_cal_event_line { + background-color: #FFE763; + border: 1px solid #B7A543; + border-radius: 3px; + font-family: Tahoma; + font-size: 8pt; + height: 13px; + padding-left: 10px; + color: #887A2E; + cursor: pointer; + overflow: hidden; +} +.dhx_cal_event_clear { + font-family: Tahoma; + font-size: 8pt; + height: 13px; + padding-left: 2px; + color: #887A2E; + white-space: nowrap; + overflow: hidden; + cursor: pointer; +} +.dhx_in_move { + background-color: #FFFF80; +} +.dhx_cal_event.dhx_cal_editor { + border: 1px solid #B7A543; + border-top-style: dotted; + z-index: 10; + position: absolute; + overflow: hidden; +} +textarea.dhx_cal_editor { + width: 100%; + height: 100%; + border: 0 solid black; + margin: 0; + padding: 0; + overflow: auto; +} +div.dhx_menu_head { + background-image: url(imgs/controls.gif); + background-position: 0px -43px; + width: 10px; + height: 10px; + margin-left: 5px; + margin-top: 1px; + border: none; + cursor: default; +} +div.dhx_menu_icon { + background-image: url(imgs/controls.gif); + width: 20px; + height: 20px; + margin-left: -5px; + margin-top: 0px; + border: none; + cursor: pointer; +} +div.icon_details { + background-position: 0px 0px; +} +div.icon_edit { + background-position: -22px 0px; +} +div.icon_save { + background-position: -84px -1px; +} +div.icon_cancel { + background-position: -62px 0px; +} +div.icon_delete { + background-position: -42px 0px; +} +/*view more link in month view*/ +.dhx_month_link { + position: absolute; + box-sizing: border-box; + -moz-box-sizing: border-box; + text-align: right; + cursor: pointer; + padding-right: 10px; +} +.dhx_month_link a { + color: blue; +} +.dhx_month_link a:hover { + text-decoration: underline; +} +.dhx_global_tip { + font-family: Tahoma, Helvetica; + text-align: center; + font-size: 20px; + position: fixed; + top: 60px; + right: 20px; + background-color: rgba(255, 255, 255, 0.7); + color: #000; + z-index: 14; + padding: 20px 30px; + width: 190px; +} +.dhx_global_tip div { + font-size: 30px; +} +@media (-moz-touch-enabled) { + .dhx_cal_container { + user-select: none; + -moz-user-select: none; + } +} +.dhx_unselectable, +.dhx_unselectable div { + -webkit-user-select: none; + -moz-user-select: none; + -moz-user-select: -moz-none; +} +.dhx_cal_light { + -webkit-tap-highlight-color: transparent; + background-color: #FFE763; + border-radius: 5px; + font-family: Tahoma; + font-size: 8pt; + border: 1px solid #B7A64B; + color: #887A2E; + position: absolute; + z-index: 15; + width: 580px; + height: 300px; + box-shadow: 5px 5px 5px #888; +} +.dhx_cal_light_wide { + width: 650px; +} +.dhx_mark { + position: relative; + top: 3px; + background-image: url('imgs/controls.gif'); + background-position: 0px -43px; + padding-left: 10px; +} +.dhx_ie6 .dhx_mark { + background-position: 6px -41px; +} +.dhx_cal_light select { + font-family: Tahoma; + font-size: 8pt; + color: #887A2E; + padding: 2px; + margin: 0px; +} +.dhx_cal_ltitle { + padding: 2px 0px 2px 5px; + overflow: hidden; + white-space: nowrap; +} +.dhx_cal_ltitle span { + white-space: nowrap; +} +.dhx_cal_lsection { + background-color: #DBCF8C; + color: #FFF4B5; + font-weight: bold; + padding: 5px 0px 3px 10px; +} +.dhx_section_time { + background-color: #DBCF8C; + white-space: nowrap; +} +.dhx_cal_lsection .dhx_fullday { + float: right; + margin-right: 5px; + color: #887A2E; + font-size: 12px; + font-weight: normal; + line-height: 20px; + vertical-align: top; + cursor: pointer; +} +.dhx_cal_lsection { + font-size: 18px; + font-family: Arial; +} +.dhx_cal_ltext { + padding: 2px 0px 2px 10px; + overflow: hidden; +} +.dhx_cal_ltext textarea { + background-color: #FFF4B5; + /* #FFF4B5; should be the same for dhx_cal_larea, was transperent */ + overflow: auto; + border: none; + color: #887A2E; + height: 100%; + width: 100%; + outline: none !important; + resize: none; +} +.dhx_time { + font-weight: bold; +} +.dhx_cal_light .dhx_title { + padding-left: 10px; +} +.dhx_cal_larea { + border: 1px solid #DCC43E; + background-color: #FFF4B5; + overflow: hidden; + margin-left: 3px; + width: 572px; + height: 1px; +} +.dhx_btn_set { + padding: 5px 10px 0px 10px; + float: left; +} +.dhx_btn_set div { + float: left; + height: 21px; + line-height: 21px; + vertical-align: middle; + cursor: pointer; +} +.dhx_save_btn { + background-image: url('imgs/controls.gif'); + background-position: -84px 0px; + width: 21px; +} +.dhx_cancel_btn { + background-image: url('imgs/controls.gif'); + background-position: -63px 0px; + width: 20px; +} +.dhx_delete_btn { + background-image: url('imgs/controls.gif'); + background-position: -42px 0px; + width: 20px; +} +.dhx_cal_cover { + width: 100%; + height: 100%; + position: absolute; + z-index: 14; + top: 0px; + left: 0px; + background-color: black; + opacity: 0.1; + filter: alpha(opacity=10); +} +.dhx_custom_button { + padding: 0px 3px 0px 3px; + color: #887A2E; + font-family: Tahoma; + font-size: 8pt; + background-color: #FFE763; + font-weight: normal; + margin-right: 5px; + margin-top: 0px; + cursor: pointer; +} +.dhx_custom_button div { + cursor: pointer; + float: left; + height: 21px; + line-height: 21px; + vertical-align: middle; +} +.dhx_cal_light_wide .dhx_cal_larea { + border-top-width: 0px; +} +.dhx_cal_light_wide .dhx_cal_lsection { + border: 0px; + float: left; + text-align: right; + width: 100px; + height: 20px; + font-size: 16px; + padding: 5px 0px 0px 10px; +} +.dhx_cal_light_wide .dhx_wrap_section { + border-top: 1px solid #DBCF8C; + position: relative; + background-color: #DBCF8C; + overflow: hidden; +} +.dhx_cal_light_wide .dhx_section_time { + padding-top: 2px !important; + height: 20px !important; +} +.dhx_section_time { + text-align: center; +} +.dhx_cal_light_wide .dhx_cal_larea { + width: 730px; +} +.dhx_cal_light_wide { + width: 738px; +} +.dhx_cal_light_wide .dhx_section_time { + background: transparent; +} +.dhx_cal_light_wide .dhx_cal_checkbox label { + padding-left: 0px; +} +.dhx_cal_wide_checkbox input { + margin-top: 8px; + margin-left: 14px; +} +.dhx_cal_light input { + font-family: Tahoma; + font-size: 8pt; + color: #887A2E; +} +.dhx_cal_light_wide .dhx_cal_lsection .dhx_fullday { + float: none; + margin-right: 0px; + color: #FFF4B5; + font-weight: bold; + font-size: 16px; + font-family: Arial; + cursor: pointer; +} +.dhx_custom_button { + float: right; + height: 21px; + width: 90px; + -webkit-border-radius: 4px; + -moz-border-radius: 4px; + -ms-border-radius: 4px; + -o-border-radius: 4px; + border-radius: 4px; +} +.dhx_cal_light_wide .dhx_custom_button { + position: absolute; + top: 0; + right: 0; + margin-top: 2px; +} +.dhx_cal_light_wide .dhx_repeat_right { + margin-right: 55px; +} +.dhx_minical_popup { + position: absolute; + z-index: 16; + width: 251px; + height: 175px; +} +.dhx_scale_bar_header { + position: absolute; + border-bottom: 1px dotted #8894A3; + width: 100%; +} +.dhx_expand_icon { + position: absolute; + top: 0px; + right: 0px; + background-image: url(imgs/collapse_expand_icon.gif); + width: 18px; + height: 18px; + cursor: pointer; + background-position: 0px 18px; + z-index: 4; +} +.dhx_scheduler_agenda .dhx_cal_data { + background-image: url(imgs/databg.png); +} +.dhx_agenda_area { + width: 100%; + overflow-y: auto; + background-image: url(imgs/databg.png); +} +.dhx_agenda_line { + height: 21px; + clear: both; + overflow: hidden; +} +.dhx_agenda_line div { + float: left; + width: 188px; + border-right: 1px dotted #8894A3; + text-align: center; + line-height: 21px; + overflow: hidden; +} +.dhx_agenda_area .dhx_agenda_line div { + border-right: 0px dotted #8894A3; +} +.dhx_v_border { + position: absolute; + left: 187px; + top: 0; + border-right: 1px dotted #8894A3; + width: 1px; + height: 100%; +} +.dhx_agenda_line .dhx_event_icon { + width: 20px; + border-width: 0px; + background: url(imgs/icon.png) no-repeat; + background-position: 5px 4px; + cursor: pointer; +} +.dhx_agenda_line span { + padding-left: 5px; + line-height: 21px; +} +.dhx_year_body { + border-left: 1px dotted #586A7E; +} +.dhx_year_week { + position: relative; +} +.dhx_scale_bar_last { + border-right: 1px dotted #586A7E; +} +.dhx_year_month { + height: 18px; + padding-top: 3px; + border: 1px dotted #586A7E; + text-align: center; + vertical-align: middle; +} +.dhx_year_body .dhx_before .dhx_month_head, +.dhx_year_body .dhx_after .dhx_month_head, +.dhx_year_body .dhx_before .dhx_month_head a, +.dhx_year_body .dhx_after .dhx_month_head a { + color: #E2E3E6 !important; +} +.dhx_year_body .dhx_month_body { + height: 0px; + overflow: hidden; +} +.dhx_month_head.dhx_year_event { + background-color: #FFE763; +} +.dhx_year_body .dhx_before .dhx_month_head, +.dhx_year_body .dhx_after .dhx_month_head { + cursor: default; +} +.dhx_year_tooltip { + border: 1px solid #BBBBBB; + background-image: url(imgs/databg.png); + position: absolute; + z-index: 12; + width: 300px; + height: auto; + font-family: Tahoma; + font-size: 8pt; + overflow: hidden; +} +.dhx_tooltip_line { + line-height: 20px; + height: 20px; + overflow: hidden; +} +.dhx_tooltip_line .dhx_event_icon { + width: 20px; + height: 20px; + padding-right: 10px; + float: left; + border-width: 0px; + position: relative; + background: url(imgs/icon.png) no-repeat; + background-position: 5px 4px; + cursor: pointer; +} +.dhx_tooltip_date { + float: left; + width: auto; + padding-left: 5px; + text-align: center; +} +.dhx_text_disabled { + color: #887A2E; + font-family: Tahoma; + font-size: 8pt; +} +.dhx_mini_calendar { + -moz-box-shadow: 5px 5px 5px #888; + /*Doesn't work in IE*/ + -khtml-box-shadow: 5px 5px 5px #888; + -moz-user-select: -moz-none; + -webkit-user-select: none; + -user-select: none; +} +.dhx_mini_calendar .dhx_month_head { + cursor: pointer; +} +.dhx_mini_calendar .dhx_calendar_click { + background-color: #C2D5FC; +} +.dhx_cal_navline div.dhx_minical_icon { + width: 18px; + height: 18px; + left: 190px; + top: 1px; + cursor: pointer; + background-image: url(imgs/calendar.gif); +} +.dhx_matrix_scell { + height: 100%; +} +.dhx_matrix_cell, +.dhx_matrix_scell { + overflow: hidden; + text-align: center; + vertical-align: middle; + border-bottom: 1px dotted #8894A3; + border-right: 1px dotted #8894A3; +} +.dhx_matrix_cell { + background-color: white; +} +.dhx_matrix_line { + overflow: hidden; +} +.dhx_matrix_cell div, +.dhx_matrix_scell div { + overflow: hidden; + text-align: center; + height: auto; +} +.dhx_cal_lsection .dhx_readonly { + font-size: 9pt; + font-size: 8pt; + padding: 2px; + color: #887A2E; +} +.dhx_cal_event_line .dhx_event_resize { + cursor: w-resize; + background: url(imgs/resize_dots.png) repeat-y; + position: absolute; + top: 0; + width: 4px; + height: 100%; +} +.dhx_event_resize_start { + left: 0; +} +.dhx_event_resize_end { + right: 0; +} +/* Tree view */ +.dhx_matrix_scell.folder, +.dhx_data_table.folder .dhx_matrix_cell { + background-color: #969394; + cursor: pointer; +} +.dhx_matrix_scell .dhx_scell_level0 { + padding-left: 5px; +} +.dhx_matrix_scell .dhx_scell_level1 { + padding-left: 20px; +} +.dhx_matrix_scell .dhx_scell_level2 { + padding-left: 35px; +} +.dhx_matrix_scell .dhx_scell_level3 { + padding-left: 50px; +} +.dhx_matrix_scell .dhx_scell_level4 { + padding-left: 65px; +} +.dhx_matrix_scell.folder { + font-weight: bold; + text-align: left; +} +.dhx_matrix_scell.folder .dhx_scell_expand { + float: left; + width: 10px; + padding-right: 3px; +} +.dhx_matrix_scell.folder .dhx_scell_name { + float: left; + width: auto; +} +.dhx_matrix_scell.item .dhx_scell_name { + padding-left: 15px; + text-align: left; +} +.dhx_data_table.folder .dhx_matrix_cell { + border-right: 0; +} +.dhx_section_timeline { + overflow: hidden; + padding: 4px 0 2px 10px; +} +.dhx_section_timeline select { + width: 552px; +} +/* Tree view end*/ +/* Map view */ +.dhx_map_area { + width: 100%; + height: 100%; + overflow-y: auto; + overflow-x: hidden; + background-image: url(imgs/databg.png); +} +.dhx_map_line .dhx_event_icon { + width: 20px; + border-width: 0px; + background: url(imgs/icon.png) no-repeat; + background-position: 5px 4px; + cursor: pointer; +} +.dhx_map_line { + height: 21px; + clear: both; + overflow: hidden; +} +.dhx_map { + position: absolute; +} +.dhx_map_line div { + float: left; + border-right: 1px dotted #8894A3; + text-align: center; + line-height: 21px; + overflow: hidden; +} +.dhx_map_line .headline_description { + float: left; + border-right: 1px dotted #8894A3; + text-align: center; + line-height: 21px; + overflow: hidden; +} +.dhx_map_line .dhx_map_description { + float: left; + border-right: 0 dotted #8894A3; + text-align: center; + line-height: 21px; + overflow: hidden; +} +.dhx_map_line .headline_date, +.dhx_map_line .headline_description { + border-left: 0; +} +.dhx_map_line .line_description { + float: left; + border-right: 1px dotted #8894A3; + text-align: left; + padding-left: 5px; + line-height: 21px; + overflow: hidden; +} +.dhx_map_line.highlight { + background-color: #C4C5CC; +} +.dhx_map_area .dhx_map_line div { + border-right: 0px dotted #8894A3; +} +/* Map view end */ +/* dhtmlXTooltip start */ +.dhtmlXTooltip.tooltip { + -moz-box-shadow: 3px 3px 3px #888888; + -webkit-box-shadow: 3px 3px 3px #888888; + -o-box-shadow: 3px 3px 3px #888888; + box-shadow: 3px 3px 3px #888888; + filter: progid:DXImageTransform.Microsoft.Shadow(color='#888888', Direction=135, Strength=5); + background-color: white; + border-left: 1px dotted #887A2E; + border-top: 1px dotted #887A2E; + color: #887A2E; + cursor: default; + padding: 10px; + position: fixed; + z-index: 9; + font-family: Tahoma; + font-size: 8pt; + opacity: 1; +} +/* dhtmlXTooltip end */ +/* Lightbox checkbox section */ +.dhx_cal_checkbox label { + padding-left: 5px; +} +/* Lightbox checkbox section end */ +/* Lightbox radiobuttons section */ +.dhx_cal_light .radio { + padding: 2px 0px 2px 10px; +} +.dhx_cal_light .radio input, +.dhx_cal_light .radio label { + line-height: 15px; +} +.dhx_cal_light .radio input { + vertical-align: middle; + margin: 0px; + padding: 0px; +} +.dhx_cal_light .radio label { + vertical-align: middle; + padding-right: 10px; +} +/* Lightbox radiobuttons section end */ +/* Lightbox dhtmlx combo section */ +.dhx_cal_light .combo { + padding: 4px; +} +/* dhtmlxCombo v3.x */ +.dhx_cal_light_wide .dhx_combo_box, +.dhx_cal_light_wide .combo > div { + width: 608px !important; + left: 10px; +} +/* Lightbox dhtmlx combo section end */ +/* Agenda week start */ +.dhx_wa_column { + float: left; +} +.dhx_wa_column_last .dhx_wa_day_cont { + border-left: 1px dotted #8894A3; +} +.dhx_wa_scale_bar { + font-family: Tahoma; + padding-left: 10px; + font-size: 11px; + border-top: 1px dotted #8894A3; + border-bottom: 1px dotted #8894A3; +} +.dhx_wa_day_data { + background-color: #FCFEFC; + overflow-y: auto; +} +.dhx_wa_ev_body { + border-bottom: 1px dotted #778899; + font-size: 12px; + padding: 5px 0 5px 7px; +} +.dhx_wa_dnd { + font-family: Tahoma; + position: absolute; + padding-right: 7px; + color: #887AE2 !important; + background-color: #FFE763 !important; + border: 1px solid #B7A543; +} +.dhx_cal_event_selected { + background-color: #9cc1db; + color: white; +} +/* Agenda week end */ +/* timeline second scale start */ +.dhx_second_scale_bar { + border-bottom: 1px dotted #586A7E; + padding-top: 2px; +} +/* timeline second scale end */ +/* grid view */ +.dhx_cal_header div div { + border-left: 1px dotted #8894A3; +} +.dhx_grid_area { + width: 100%; + height: 100%; + overflow-y: auto; + background-color: #FCFEFC; +} +.dhx_grid_area table { + border-collapse: collapse; + border-spacing: 0; + width: 100%; + table-layout: fixed; +} +.dhx_grid_area td { + table-layout: fixed; + text-align: center; +} +.dhx_grid_line { + height: 21px; + clear: both; + overflow: hidden; +} +.dhx_grid_line div { + float: left; + cursor: default; + padding-top: 0; + padding-bottom: 0; + text-align: center; + line-height: 21px; + overflow: hidden; +} +.dhx_grid_area td, +.dhx_grid_line div { + padding-left: 8px; + padding-right: 8px; +} +.dhx_grid_area tr.dhx_grid_event { + height: 21px; + overflow: hidden; + margin: 0 0 1px 0; +} +.dhx_grid_area tr.dhx_grid_event td { + /*borders for old ies*/ + border-bottom: 1px solid #ECEEF4; +} +.dhx_grid_area tr.dhx_grid_event:nth-child(2n+1) td, +.dhx_grid_area tr.dhx_grid_event:nth-child(2n) td { + border-bottom-width: 0px; + border-bottom-style: none; +} +.dhx_grid_area tr.dhx_grid_event:nth-child(2n) { + background-color: #ECEEF4; +} +.dhx_grid_area .dhx_grid_dummy { + table-layout: auto; + margin: 0 !important; + padding: 0 !important; +} +.dhx_grid_v_border { + position: absolute; + border-right: 1px solid #A4BED4; + width: 1px; + height: 100%; +} +.dhx_grid_event_selected { + background-color: #9cc1db !important; + color: white !important; +} +.dhx_grid_sort_desc .dhx_grid_view_sort { + background-position: 0 -55px; +} +.dhx_grid_sort_asc .dhx_grid_view_sort { + background-position: 0 -66px; +} +.dhx_grid_view_sort { + width: 10px; + height: 10px; + position: absolute; + border: none !important; + top: 5px; + background-repeat: no-repeat; + background-image: url(imgs/images.png); +} +/* end grid */ +/* marked timespans */ +.dhx_marked_timespan { + position: absolute; + width: 100%; + margin-left: 0; + /* fix bootstrap conflict [class*="span"] */ +} +.dhx_time_block { + position: absolute; + width: 100%; + background: silver; + opacity: 0.4; + filter: alpha(opacity=40); + z-index: 1; +} +.dhx_time_block_reset { + opacity: 1; + filter: alpha(opacity=100); +} +.dhx_scheduler_month .dhx_marked_timespan { + display: none; +} +.dhx_mini_calendar .dhx_marked_timespan { + display: none; +} +/* now time */ +.dhx_now_time { + width: 100%; + border-bottom: 2px solid red; + z-index: 1; +} +.dhx_scheduler_month .dhx_now_time { + border-bottom: 0; + border-left: 2px solid red; +} +.dhx_matrix_now_time { + border-left: 2px solid red; + z-index: 1; +} +.dhx_now_time, +.dhx_matrix_now_time { + opacity: 0.5; +} +/* Quick info */ +.dhx_cal_quick_info { + border: 2px solid #888; + border-radius: 5px; + position: absolute; + z-index: 8; + background-color: #8e99ae; + background-color: rgba(98, 107, 127, 0.5); + padding-left: 7px; + width: 300px; + transition: left 0.5s ease, right 0.5s; + -moz-transition: left 0.5s ease, right 0.5s; + -webkit-transition: left 0.5s ease, right 0.5s; + -o-transition: left 0.5s ease, right 0.5s; +} +.dhx_no_animate { + transition: none; + -moz-transition: none; + -webkit-transition: none; + -o-transition: none; +} +.dhx_cal_quick_info.dhx_qi_left .dhx_qi_big_icon { + float: right; +} +.dhx_cal_qi_title { + padding: 5px 0px 10px 5px; + color: #FFF; + letter-spacing: 1px; +} +.dhx_cal_qi_tdate { + font-size: 14px; +} +.dhx_cal_qi_tcontent { + font-size: 18px; + font-weight: bold; +} +.dhx_cal_qi_content { + border: 1px solid #888; + background-color: #fefefe; + padding: 16px 8px; + font-size: 14px; + color: #444; + width: 275px; + overflow: hidden; +} +.dhx_qi_big_icon { + border-radius: 3px; + color: #444; + margin: 5px 9px 5px 0px; + min-width: 60px; + line-height: 20px; + vertical-align: middle; + padding: 5px 10px 5px 5px; + cursor: pointer; + background-color: #fefefe; + border-bottom: 1px solid #666; + border-right: 1px solid #666; + float: left; +} +.dhx_cal_qi_controls div { + float: left; + height: 20px; + text-align: center; + line-height: 20px; +} +.dhx_qi_big_icon .dhx_menu_icon { + margin: 0 8px 0 0px; +} +.dhx_drag_marker { + width: 100%; + filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=50); + opacity: 0.5; + background-color: #FFE763; + position: absolute; + box-sizing: border-box !important; + border-top: 1px solid #B6B6B6; + border-bottom: 1px solid #b6b6b6; +} +/* key nav */ +.dhx_focus_slot { + background: #FFE763; + position: absolute; + pointer-events: none; + opacity: 0.3; +} +.dhx_cal_container *:focus { + outline-style: solid; + /*not visible focus outline in ie11*/ + outline-style: auto; +} +/* key nav end*/ +/* bootstrap CSS fix start */ +.dhx_cal_navline div, +.dhx_cal_header, +.dhx_cal_header div, +.dhx_cal_data, +.dhx_cal_data div, +.dhx_cal_data table *, +.dhx_multi_day, +.dhx_multi_day div, +.dhx_tooltip_line div, +.dhx_cal_quick_info, +.dhx_cal_quick_info div, +.dhtmlx_modal_box * { + -webkit-box-sizing: content-box; + -moz-box-sizing: content-box; + box-sizing: content-box; +} +.dhx_cal_light .dhx_wrap_section, +.dhx_cal_light .dhx_cal_lsection { + -webkit-box-sizing: content-box; + -moz-box-sizing: content-box; + box-sizing: content-box; +} +.dhx_cal_data div.dhx_scale_hour, +.dhx_cal_data table .dhx_matrix_cell, +.dhx_cal_data table .dhx_matrix_scell { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; +} +.dhx_cal_event div { + line-height: normal; +} +.dhx_cal_data table { + border-collapse: separate; +} +.dhx_cal_light .dhx_cal_radio label { + margin-bottom: 0; +} +.dhx_cal_event div { + line-height: normal; +} +/* bootstrap CSS fix end */ +.dhx_cal_container { + background-color: #C2D5FC; + font-family: Tahoma; + font-size: 8pt; + position: relative; + overflow: hidden; +} +.dhx_cal_container div { + -moz-user-select: none; + -moz-user-select: -moz-none; +} +.dhx_cal_navline { + height: 20px; + position: absolute; + z-index: 3; + width: 750px; + color: #2F3A48; +} +.dhx_cal_navline div { + position: absolute; + top: 2px; + white-space: nowrap; +} +.dhx_cal_navline .dhx_cal_date { + font-weight: 600; + left: 210px; + padding-top: 1px; +} +.dhx_cal_button .dhx_left_bg { + width: 1px; + overflow: hidden; + height: 17px; + z-index: 5; + top: 0px; +} +.dhx_cal_prev_button { + background-image: url(imgs/buttons.png); + background-position: 0px 0px; + width: 29px; + height: 17px; + left: 50px; + cursor: pointer; +} +.dhx_cal_next_button { + background-image: url(imgs/buttons.png); + background-position: -30px 0px; + width: 29px; + height: 17px; + left: 80px; + cursor: pointer; +} +.dhx_cal_today_button { + background-image: url(imgs/buttons.png); + background-position: -60px 0px; + width: 75px; + height: 17px; + left: 112px; + cursor: pointer; + text-align: center; + text-decoration: underline; +} +.dhx_cal_tab { + width: 59px; + height: 19px; + text-align: center; + text-decoration: underline; + padding-top: 2px; + cursor: pointer; + background-color: #D8E1EA; + -webkit-border-top-left-radius: 4px; + -webkit-border-top-right-radius: 4px; + -moz-border-radius-topleft: 4px; + -moz-border-radius-topright: 4px; + border-top-left-radius: 4px; + border-top-right-radius: 4px; +} +.dhx_cal_tab.active { + text-decoration: none; + cursor: default; + font-weight: bold; + border: 1px dotted #586A7E; + border-bottom: 0; + background-color: #C2D5FC; +} +.dhx_cal_header { + position: absolute; + left: 10px; + top: 23px; + width: 750px; + border-top: 1px dotted #8894A3; + border-right: 1px dotted #8894A3; + z-index: 2; + overflow: hidden; + color: #2F3A48; +} +.dhx_cal_data { + -webkit-tap-highlight-color: transparent; + border-top: 1px dotted #8894A3; + position: absolute; + top: 44px; + width: 600px; + overflow-y: auto; + overflow-x: hidden; + -webkit-overflow-scrolling: touch; +} +.dhx_cal_data { + -ms-touch-action: pan-y; +} +.dhx_cal_event, +.dhx_cal_event_line, +.dhx_cal_event_clear { + -ms-touch-action: none; +} +.dhx_scale_bar { + position: absolute; + text-align: center; + background-color: #C2D5FC; + padding-top: 3px; + border-left: 1px dotted #586A7E; +} +.dhx_scale_holder { + position: absolute; + border-right: 1px dotted #586A7E; + background-image: url(imgs/databg.png); +} +.dhx_scale_holder_now { + position: absolute; + border-right: 1px dotted #586A7E; + background-image: url(imgs/databg_now.png); +} +.dhx_scale_hour { + height: 41px; + width: 50px; + border-bottom: 1px dotted #8894A3; + background-color: #C2D5FC; + text-align: center; + line-height: 40px; + color: #586A7E; + overflow: hidden; +} +.dhx_month_head { + background-color: #EBEFF4; + color: #2F3A48; + height: 18px; + padding-right: 5px; + padding-top: 3px; + text-align: right; + border-right: 1px dotted #586A7E; +} +.dhx_month_body { + border-right: 1px dotted #586A7E; + border-bottom: 1px dotted #586A7E; + background-color: #FFFFFF; +} +.dhx_now .dhx_month_body { + background-color: #E2EDFF; +} +.dhx_after .dhx_month_body, +.dhx_before .dhx_month_body { + background-color: #ECECEC; +} +.dhx_after .dhx_month_head, +.dhx_before .dhx_month_head { + background-color: #E2E3E6; + color: #94A6BB; +} +.dhx_now .dhx_month_head { + background-color: #D1DEF4; + font-weight: bold; +} +.dhx_scale_ignore { + display: none; +} +.dhx_cal_drag { + position: absolute; + z-index: 13; + background-color: #FFE763; + border: 1px solid #B7A543; + opacity: 0.5; + filter: alpha(opacity=50); +} +.dhx_loading { + position: absolute; + width: 128px; + height: 15px; + background-image: url(imgs/loading.gif); + z-index: 13; +} +.dhx_multi_day_icon, +.dhx_multi_day { + background-color: #E1E6FF; + background-repeat: no-repeat; + border-right: 1px dotted #8894A3; +} +.dhx_multi_day { + position: absolute; + border-top: 1px dotted #8894A3; +} +.dhx_multi_day_icon, +.dhx_multi_day_icon_small { + background-position: center center; + background-color: #E1E6FF; + background-repeat: no-repeat; + border-bottom: 1px dotted #8894A3; + border-right: 1px dotted #8894A3; +} +.dhx_multi_day_icon { + background-image: url(imgs/clock_big.gif); +} +.dhx_multi_day_icon_small { + background-image: url(imgs/clock_small.gif); +} +.dhtmlxLayoutPolyContainer_dhx_skyblue .dhx_cal_container { + background-color: #d0e5ff; +} +/* left border config option support */ +.dhx_scale_hour_border, +.dhx_month_body_border, +.dhx_scale_bar_border, +.dhx_month_head_border { + border-left: 1px dotted #8894A3; +} +/* export to PDF and iCal buttons start */ +.dhx_cal_navline .dhx_cal_export { + width: 18px; + height: 18px; + margin: 2px; + cursor: pointer; + top: 0px; +} +.dhx_cal_navline .dhx_cal_export.pdf { + left: 2px; + background-image: url('imgs/export_pdf.png'); +} +.dhx_cal_navline .dhx_cal_export.ical { + left: 24px; + background-image: url('imgs/export_ical.png'); +} +/* export to PDF and iCal buttons end */ +/*All*/ +.dhx_form_repeat, +.dhx_form_repeat input { + padding: 0; + margin: 0; + padding-left: 5px; + font-family: Tahoma, Verdana; + font-size: 11px; + line-height: 24px; +} +.dhx_form_repeat { + overflow: hidden; + /*height:115px;*/ + background-color: #FFF4B5; + /*border: 1px solid #DCC43E;*/ +} +.dhx_cal_light_wide .dhx_form_repeat { + background-color: transparent; +} +.dhx_repeat_center, +.dhx_repeat_left, +.dhx_repeat_divider, +.dhx_repeat_right { + height: 115px; + -moz-box-sizing: border-box; + box-sizing: border-box; +} +.dhx_repeat_center, +.dhx_repeat_left { + padding: 10px 0 0px 10px; + float: left; +} +.dhx_repeat_left { + width: 105px; +} +.dhx_repeat_center { + width: 345px; + padding-top: 22px; +} +.dhx_repeat_divider { + float: left; + border-left: 1px dotted #DCC43E; + /*background-color: #DCC43E;*/ + width: 1px; +} +.dhx_repeat_right { + float: right; + width: 173px; + padding: 17px 3px 0px 10px; +} +input.dhx_repeat_text { + height: 16px; + width: 27px; + margin: 0 4px 0 4px; + line-height: 18px; + padding: 0 0 0 2px; +} +.dhx_form_repeat select { + height: 20px; + width: 87px; + padding: 0 0 0 2px; + margin: 0 4px 0 4px; +} +input.dhx_repeat_date { + height: 18px; + width: 80px; + padding: 0 0 0 2px; + margin: 0 4px 0 4px; + background-repeat: no-repeat; + background-position: 64px 0; + border: 1px #7f9db9 solid; + line-height: 18px; +} +input.dhx_repeat_radio { + margin-right: 4px; +} +input.dhx_repeat_checkbox { + margin: 4px 4px 0 0; +} +.dhx_repeat_days td { + padding-right: 5px; +} +.dhx_repeat_days label { + font-size: 10px; +} +.dhx_custom_button { + width: 90px; + -webkit-border-radius: 4px; + -moz-border-radius: 4px; + -ms-border-radius: 4px; + -o-border-radius: 4px; + border-radius: 4px; +} +.dhx_custom_button_recurring { + background-image: url(imgs/but_repeat.gif); + background-position: -5px 20px; + width: 20px; + margin-right: 10px; +} +/* increase width of lightbox */ +.dhx_cal_light_rec { + width: 640px; +} +.dhx_cal_light_rec .dhx_cal_larea { + width: 632px; +} +.dhx_cal_light_rec.dhx_cal_light_wide { + width: 816px; +} +.dhx_cal_light_rec.dhx_cal_light_wide .dhx_cal_larea { + width: 808px; +} +/* event start */ +.dhx_cal_event .dhx_title { + border-width: 1px 1px 0 1px; + padding-top: 1px; + -webkit-border-top-left-radius: 2px; + -webkit-border-top-right-radius: 2px; + -moz-border-radius-topleft: 2px; + -moz-border-radius-topright: 2px; + border-top-left-radius: 2px; + border-top-right-radius: 2px; + font-family: "arial"; + font-weight: bold; + font-size: 16px; + line-height: 16px; + font-size: 14px; + line-height: 14px; +} +.dhx_cal_event .dhx_body, +.dhx_cal_event.dhx_cal_select_menu .dhx_body { + padding-bottom: 8px; + -webkit-border-bottom-right-radius: 2px; + -webkit-border-bottom-left-radius: 2px; + -moz-border-radius-bottomright: 2px; + -moz-border-radius-bottomleft: 2px; + border-bottom-right-radius: 2px; + border-bottom-left-radius: 2px; +} +.dhx_cal_event .dhx_header, +.dhx_cal_event.dhx_cal_select_menu .dhx_footer { + display: none; +} +.dhx_cal_event.dhx_cal_select_menu { + -webkit-box-shadow: 0 0 1px #FFF; + -moz-box-shadow: 0 0 1px #FFF; + box-shadow: 0 0 1px #FFF; +} +.dhx_cal_event .dhx_footer { + height: 5px; + border: 0; + margin-top: -6px; + background: url(imgs_contrast_white/resizing.png) no-repeat center center; +} +.dhx_cal_event .dhx_header, +.dhx_cal_event .dhx_footer, +.dhx_cal_event .dhx_body, +.dhx_cal_event .dhx_title { + background-color: #a8b2f5; + border-color: #677cfb; + color: #000000; +} +.dhx_cal_event.dhx_cal_editor { + border: 1px solid #677cfb; +} +.dhx_cal_editor { + font-size: 16px; + font-family: Arial, sans-serif; +} +div.dhx_menu_head, +div.dhx_menu_icon { + background-image: url(imgs_contrast_white/controls.png); +} +.dhx_cal_event_line { + border: 1px solid #677cfb; + background-color: #a8b2f5; + color: #000000; + height: 17px; + line-height: 17px; + -webkit-border-radius: 2px; + -moz-border-radius: 2px; + border-radius: 2px; +} +.dhx_cal_event_line_start { + -webkit-border-top-left-radius: 9px; + -webkit-border-bottom-left-radius: 9px; + -moz-border-radius-topleft: 9px; + -moz-border-radius-bottomleft: 9px; + border-top-left-radius: 9px; + border-bottom-left-radius: 9px; +} +.dhx_cal_event_line_end { + -webkit-border-top-right-radius: 9px; + -webkit-border-bottom-right-radius: 9px; + -moz-border-radius-topright: 9px; + -moz-border-radius-bottomright: 9px; + border-top-right-radius: 9px; + border-bottom-right-radius: 9px; +} +.dhx_cal_event .dhx_body, +.dhx_cal_event_line { + font-size: 16px; + font-family: "arial", sans-serif; +} +/* event end */ +/* scales, containers start */ +.dhx_cal_container { + font-family: "arial"; + font-size: 16px; + background-color: #ffffff; +} +.dhx_cal_data { + color: #000000; + background: #ffffff; + border-top: 1px solid #585858; +} +.dhx_scale_holder { + background-image: url(imgs_contrast_white/databg.png); + border-right: 1px solid #585858; +} +.dhx_scale_holder_now { + background-image: url(imgs_contrast_white/databg.png); + background-color: #feff87; + border-right: 1px solid #585858; +} +.dhx_scale_hour { + border-bottom: 1px solid #585858; + background-color: #ffffff; + font: 16px/44px "arial"; + color: #585858; + font-weight: bold; +} +.dhx_cal_header { + border: 1px solid #585858; + color: #585858; + font-weight: bold; + border-left: 0; + border-bottom: 0; +} +.dhx_scale_bar { + border-left: 1px solid #585858; +} +.dhx_scale_bar { + font: 16px/16px "arial"; + color: #585858; + font-weight: bold; + padding-top: 2px; + background-color: #ffffff; +} +/* scales, containers end */ +/* navigation start */ +.dhx_cal_navline div { + top: 14px; +} +.dhx_cal_tab, +.dhx_cal_date, +.dhx_cal_today_button, +.dhx_cal_prev_button, +.dhx_cal_next_button { + color: #585858; + height: 30px; + line-height: 30px; + background: none; + border: 2px solid #585858; +} +.dhx_cal_navline .dhx_cal_date { + border: 0; + font-size: 18px; + font-weight: normal; + font-family: "arial"; + width: 100%; + top: 14px; + text-align: center; + position: absolute; + left: 0; + z-index: -1; +} +.dhx_cal_today_button { + color: #000000; + left: auto; + right: 123px; + background: none; + text-decoration: none; + width: 80px; + font-size: 16px; + font-weight: bold; + font-family: "arial"; + -webkit-border-radius: 5px; + -moz-border-radius: 5px; + border-radius: 5px; +} +.dhx_cal_prev_button, +.dhx_cal_next_button { + left: auto; + width: 46px; +} +.dhx_cal_prev_button { + right: 61px; + background: url(imgs_contrast_white/arrow_left.png) no-repeat center center; + -webkit-border-top-left-radius: 5px; + -webkit-border-bottom-left-radius: 5px; + -moz-border-radius-topleft: 5px; + -moz-border-radius-bottomleft: 5px; + border-top-left-radius: 5px; + border-bottom-left-radius: 5px; +} +.dhx_cal_next_button { + right: 14px; + background: url(imgs_contrast_white/arrow_right.png) no-repeat center center; + -webkit-border-top-right-radius: 5px; + -webkit-border-bottom-right-radius: 5px; + -moz-border-radius-topright: 5px; + -moz-border-radius-bottomright: 5px; + border-top-right-radius: 5px; + border-bottom-right-radius: 5px; +} +.dhx_cal_tab { + color: #000000; + width: 60px; + padding-top: 0; + text-decoration: none; + -webkit-border-radius: 0px; + -moz-border-radius: 0px; + border-radius: 0px; + font-weight: bold; + font-family: "arial"; + font-size: 16px; +} +.dhx_cal_tab.active { + background-color: #585858; + color: #ffffff; + border: 2px solid #585858; + text-shadow: none; +} +.dhx_cal_tab_first { + -webkit-border-top-left-radius: 5px; + -webkit-border-bottom-left-radius: 5px; + -moz-border-radius-topleft: 5px; + -moz-border-radius-bottomleft: 5px; + border-top-left-radius: 5px; + border-bottom-left-radius: 5px; +} +.dhx_cal_tab_last { + -webkit-border-top-right-radius: 5px; + -webkit-border-bottom-right-radius: 5px; + -moz-border-radius-topright: 5px; + -moz-border-radius-bottomright: 5px; + border-top-right-radius: 5px; + border-bottom-right-radius: 5px; +} +.dhx_cal_tab_standalone { + -webkit-border-radius: 5px; + -moz-border-radius: 5px; + border-radius: 5px; + padding: 0 5px; +} +.dhx_multi_day, +.dhx_multi_day_icon_small, +.dhx_multi_day_icon { + background-color: #ffffff; +} +.dhx_multi_day { + border-top: 1px solid #585858; +} +.dhx_multi_day_icon, +.dhx_multi_day_icon_small { + border-bottom: 1px solid #585858; + border-right: 1px solid #585858; +} +.dhx_multi_day_icon_small { + background-image: url(imgs_contrast_white/clock_small.gif); +} +.dhx_multi_day_icon { + background-image: url(imgs_contrast_white/clock_big.gif); +} +/* navigation end */ +/* month view start */ +.dhx_month_head, +.dhx_after .dhx_month_head, +.dhx_before .dhx_month_head, +.dhx_after .dhx_month_body, +.dhx_before .dhx_month_body { + background-color: #e5e5e5; + color: #585858; +} +.dhx_mini_calendar .dhx_before .dhx_month_body, +.dhx_mini_calendar .dhx_after .dhx_month_body { + display: none; +} +.dhx_month_head { + height: 21px; + padding-top: 0; + font: 16px/21px Arial; + color: #585858; + background: #ffffff; + font-weight: bold; + border-right: 1px solid #585858; +} +.dhx_after .dhx_month_head, +.dhx_before .dhx_month_head, +.dhx_after .dhx_month_head, +.dhx_before .dhx_month_head { + color: #585858; +} +.dhx_month_body { + border-right: 1px solid #585858; + border-bottom: 1px solid #585858; + background: #ffffff; +} +.dhx_now .dhx_month_head, +.dhx_now .dhx_month_body { + background-color: #feff87; + font-weight: normal; +} +.dhx_cal_event_clear { + color: #000000; + font-size: 16px; + height: 16px; +} +/* month view end */ +/* lightbox start */ +.dhx_cal_larea { + margin-left: 0; +} +.dhx_cal_light input, +.dhx_cal_light textarea, +.dhx_cal_light select { + font-size: 16px; +} +.dhx_cal_light_wide .dhx_section_time { + padding-top: 0 !important; +} +.dhx_cal_light_wide .dhx_cal_larea { + margin-left: 3px; +} +.dhx_cal_light_wide .dhx_wrap_section { + padding: 5px 0; +} +.dhx_cal_light, +.dhx_cal_larea, +.dhx_cal_lsection, +.dhx_wrap_section, +.dhx_cal_light_wide .dhx_wrap_section, +.dhx_cal_ltext textarea { + background-color: #ffffff; +} +.dhx_cal_lsection, +.dhx_cal_light_wide .dhx_cal_lsection .dhx_fullday, +.dhx_cal_lsection .dhx_fullday, +.dhx_cal_light input { + color: #000000; +} +.dhx_cal_light_wide .dhx_wrap_section { + border-top: 0; + border-bottom: 1px solid #CECECE; +} +.dhx_cal_larea { + border: 1px solid transparent; +} +.dhx_cal_ltext textarea, +.dhx_cal_light select, +.dhx_cal_light input, +.dhx_cal_light { + color: #000000; + background: #ffffff; +} +.dhx_cal_light { + border: 1px solid #CECECE; + font-size: 16px; +} +.dhx_cal_light_wide .dhx_cal_lsection, +.dhx_cal_light_wide .dhx_cal_lsection .dhx_fullday { + font-size: 16px; +} +.dhx_section_time { + background-color: transparent; +} +.dhx_save_btn, +.dhx_cancel_btn, +.dhx_delete_btn, +.dhx_btn_set div:first-child { + display: none; +} +.dhx_btn_set, +.dhx_btn_set div { + height: 30px; + padding: 0 20px; + line-height: 30px; +} +.dhx_btn_set { + margin: 12px 0 0 0; + padding: 0; + font-size: 14px; + color: #000000; + font-weight: bold; + -webkit-border-radius: 3px; + -moz-border-radius: 3px; + border-radius: 3px; +} +.dhx_left_btn_set { + margin-left: 20px; +} +.dhx_right_btn_set { + margin-right: 20px; +} +.dhx_btn_set, +.dhx_cancel_btn_set { + border: 2px solid #585858; +} +.dhx_save_btn_set { + border: 2px solid #677cfb; + color: #000000; + text-shadow: none; + background-color: #a8b2f5; +} +.dhx_delete_btn_set { + border: 2px solid #9f3500; + background-color: #9f3500; + color: #ffffff; +} +.dhx_cal_ltitle { + height: 30px; + line-height: 30px; + border-bottom: 1px solid #7e7e7e; +} +.dhx_cal_ltitle span { + float: left; +} +.dhx_cal_light .dhx_title { + padding-left: 13px; +} +.dhx_mark { + display: none; +} +.dhx_time { + padding-left: 10px; +} +.dhx_close_icon { + float: right; + width: 9px; + height: 9px; + background: url(imgs_contrast_white/close_icon.png) no-repeat center center; + padding: 10px; + margin-top: 1px; +} +.dhx_cal_light_wide .dhx_cal_ltext.dhx_cal_template { + line-height: 22px; +} +.dhx_cal_ltext textarea { + line-height: 20px; + box-sizing: border-box; + -moz-box-sizing: border-box; + border: 1px solid #7e7e7e; + background-color: #ffffff; +} +/* lightbox end */ +/* modal box */ +.dhtmlx_modal_box { + background: #ffffff; + border: 3px solid #585858; + color: #000000; + font-family: "arial"; + border-radius: 6px; + width: 330px; +} +.dhtmlx_popup_title { + text-shadow: none; + background: transparent; + border-bottom: 1px solid #000000; + color: #000000; +} +.dhtmlx_popup_controls { + padding-bottom: 9px; +} +.dhtmlx_popup_button, +.dhtmlx_popup_button:active, +.dhtmlx_popup_button div, +.dhtmlx_popup_button div:active { + color: #000000; + background: #ffffff; + box-shadow: none; +} +.dhtmlx_popup_button.dhtmlx_ok_button { + border: 2px solid #677cfb; + color: #000000; + background-color: #a8b2f5; +} +.dhtmlx_popup_button.dhtmlx_ok_button div { + background: #a8b2f5; + color: #000000; + border: none; + font-weight: bold; + text-shadow: none; +} +/* mobdal box end */ +/* minicalendar */ +.dhx_cal_container.dhx_mini_calendar { + box-sizing: border-box; + border: 1px solid #585858; + box-shadow: none; + border-radius: 3px; +} +.dhx_mini_calendar .dhx_year_month { + border: 1px solid #7e7e7e; + color: #000000; + font-family: Arial; + font-size: 16px; + font-weight: bold; +} +.dhx_mini_calendar .dhx_month_head, +.dhx_mini_calendar .dhx_year_month, +.dhx_mini_calendar .dhx_month_body, +.dhx_mini_calendar .dhx_scale_bar, +.dhx_mini_calendar .dhx_year_body { + border-color: transparent; +} +.dhx_mini_calendar .dhx_year_body { + padding-top: 1px; +} +.dhx_mini_calendar .dhx_scale_bar { + border-width: 0; + font-size: 16px; +} +.dhx_mini_calendar .dhx_year_week { + border-bottom: 1px solid #7e7e7e; + padding-top: 1px; +} +.dhx_mini_calendar .dhx_month_head { + padding-right: 0; + margin-right: 1px; + text-align: center; +} +.dhx_mini_calendar .dhx_cal_prev_button, +.dhx_mini_calendar .dhx_cal_next_button { + border: 0; + height: 20px; +} +/* minicalendar end */ +.dhx_cal_navline div.dhx_minical_icon { + left: 210px; + top: 14px; + width: 30px; + height: 30px; + background: url(imgs_contrast_white/calendar.gif) no-repeat; + background-position: 3px 5px; +} +/* timeline */ +.dhx_cal_event_line .dhx_event_resize { + background: url(imgs_contrast_white/resize_dots.png) repeat-y; +} +.dhx_matrix_scell, +.dhx_matrix_cell { + border-bottom: 1px solid #7e7e7e; + border-right: 1px solid #7e7e7e; +} +.dhx_cal_header div div { + border-left: 1px solid #585858; +} +.dhx_matrix_scell.folder { + border-right: 0; +} +.dhx_second_scale_bar { + border-bottom: 1px solid #585858; +} +.dhx_matrix_cell { + background: transparent; +} +/* timeline end */ +/* recurring */ +.dhx_repeat_divider { + border-left: 1px solid #7e7e7e; +} +.dhx_form_repeat { + font-size: 13px; + font-family: "arial"; + background: #ffffff; +} +.dhx_custom_button { + background-color: #ffffff; + border: 1px solid #585858; + font-size: 16px; + color: #000000; +} +.dhx_cal_light_wide .dhx_custom_button { + margin-top: 6px; +} +.dhx_custom_button_recurring { + background-image: url(imgs_contrast_white/but_repeat.gif); +} +/* recurring end */ +/* agenda */ +.dhx_v_border, +.dhx_agenda_line div { + border-right: 1px solid #7e7e7e; +} +.dhx_agenda_area, +.dhx_scheduler_agenda .dhx_cal_data { + background-image: url(imgs_contrast_white/databg.png); +} +.dhx_agenda_line { + font-size: 16px; + height: 22px; +} +.dhx_agenda_line .dhx_event_icon { + background: url(imgs/icon.png) no-repeat; + background-position: 4px 4px; +} +/* agenda end */ +/* year */ +.dhx_year_tooltip { + background-image: url(imgs_contrast_white/databg.png); +} +.dhx_tooltip_line { + line-height: 22px; + height: 22px; + font-size: 16px; +} +.dhx_year_body .dhx_before .dhx_month_head, +.dhx_year_body .dhx_after .dhx_month_head, +.dhx_year_body .dhx_before .dhx_month_head a, +.dhx_year_body .dhx_after .dhx_month_head a { + color: #454545 !important; +} +.dhx_year_week { + border-bottom: 1px solid #585858; +} +.dhx_year_month { + border: 1px solid #585858; + font-size: 16px; +} +.dhx_scale_bar_last { + border-right: 1px solid #585858; +} +.dhx_year_body { + border-left: 1px solid #585858; +} +.dhx_year_week { + border-bottom: 1px solid #585858; +} +.dhx_tooltip_line { + height: 22px; + line-height: 22px; + color: #000000; +} +.dhx_tooltip_line .dhx_event_icon { + background-position: 5px 4px; + background-repeat: no-repeat; + height: 20px; + margin: 0px 2px; +} +.dhx_year_tooltip { + font-size: 16px; + background-color: #ffffff; + background-image: url(imgs_contrast_black/databg.png); +} +/* year end */ +/* expand */ +.dhx_expand_icon { + top: -3px; +} +/* expand end */ +/* units view */ +.dhx_scale_bar .dhx_cal_next_button, +.dhx_scale_bar .dhx_cal_prev_button { + width: 20px; + height: 20px; + top: 0px !important; + border: 0; +} +.dhx_scale_bar .dhx_cal_next_button { + right: 1px !important; + border-left: 1px solid #585858; +} +.dhx_scale_bar .dhx_cal_prev_button { + left: 1px !important; + border-right: 1px solid #585858; +} +/* units view end */ +/* map view */ +.dhx_map_line .headline_date, +.dhx_map_line .headline_description { + border: 0; +} +.dhx_map_line .headline_date { + border-right: 1px solid #585858; +} +/* map view end */ +/* tooltip start */ +.dhtmlXTooltip.tooltip { + font-size: 16px; + color: #000000; + background: #ffffff; + border: 1px solid #585858; + line-height: 16px; +} +/* tooltip end */ +/* week agenda start */ +.dhx_wa_day_data { + background: #ffffff; +} +.dhx_wa_scale_bar { + border-top: 1px solid #585858; + border-bottom: 1px solid #585858; +} +.dhx_wa_column_last .dhx_wa_day_cont { + border-left: 1px solid #585858; +} +.dhx_wa_ev_body { + font-size: 16px; + border-bottom: 1px solid #7e7e7e; +} +.dhx_wa_scale_bar { + font-size: 16px; + color: #585858; + font-weight: bold; + background-color: #ffffff; +} +.dhx_wa_ev_body.dhx_cal_event_selected { + background-color: #fff3a1; + color: #362d26; +} +.dhx_wa_dnd { + background-color: #fddb93 !important; + color: #747473 !important; + border: 1px solid #ccb177; +} +/* week agenda end */ +/* readonly start */ +.dhx_text_disabled { + color: #2E2E2E; +} +.dhx_cal_ltext .dhx_text_disabled { + line-height: 22px; +} +/* readonly end */ +/* grid view start */ +.dhx_grid_v_border { + border-right-color: #7e7e7e; +} +.dhx_grid_area { + background: transparent; +} +.dhx_grid_area tr.dhx_grid_event:nth-child(2n) { + background: #e5e5e5; +} +.dhx_grid_line { + font-size: 16px; +} +/* grid view end*/ +/* left border support */ +.dhx_scale_hour_border, +.dhx_month_body_border, +.dhx_scale_bar_border, +.dhx_month_head_border { + border-left: 1px solid #7e7e7e; +} +.dhx_cal_quick_info { + background: #ffffff; + border: 1px solid #585858; + -webkit-box-shadow: inset 0px 0px 0px 4px #585858; + -moz-box-shadow: inset 0px 0px 0px 4px #585858; + box-shadow: inset 0px 0px 0px 4px #585858; + padding: 4px; +} +.dhx_cal_qi_title { + padding: 5px 0px 8px 12px; + color: #000000; + background-color: #ffffff; + border-bottom: 1px solid #585858; +} +.dhx_cal_qi_content { + background: transparent; + width: auto; + border: none; + color: #000000; +} +.dhx_qi_big_icon { + margin: 8px 9px 8px 6px; + background: #ffffff; + color: #000000; + border: 2px solid #000000; +} +.dhx_qi_big_icon div.icon_details { + background-image: url('imgs_contrast_white/quick_info_edit.png'); +} +.dhx_qi_big_icon.icon_delete { + background: #9f3500; + border-color: #9f3500; + color: #ffffff; + font-weight: bold; +} +/* export to PDF and iCal buttons start */ +.dhx_cal_navline .dhx_cal_export { + width: 32px; + height: 32px; + margin: 2px; + cursor: pointer; + top: 12px; +} +.dhx_cal_navline .dhx_cal_export.pdf { + left: auto; + right: 249px; + background-image: url('imgs_contrast_white/export_pdf.png'); +} +.dhx_cal_navline .dhx_cal_export.ical { + left: auto; + right: 210px; + background-image: url('imgs_contrast_white/export_ical.png'); +} +/* export to PDF and iCal buttons end */ +/* minicalendar */ +.dhx_mini_calendar { + padding: 5px; +} +.dhx_mini_calendar .dhx_year_event, +.dhx_mini_calendar .dhx_calendar_click { + border-radius: 7px; +} +.dhx_mini_calendar .dhx_month_head { + margin: 2px 2px; +} +.dhx_mini_calendar .dhx_year_month { + line-height: 20px; + height: 25px; + font-size: 14px; +} +.dhx_mini_calendar .dhx_cal_prev_button { + top: 8px !important; +} +.dhx_mini_calendar .dhx_cal_next_button { + top: 8px !important; +} +.dhx_year_body .dhx_month_head.dhx_year_event, +.dhx_year_body .dhx_month_head.dhx_calendar_click { + color: #585858; +} diff --git a/codebase/sources/skins/dhtmlxscheduler_flat.css b/codebase/sources/skins/dhtmlxscheduler_flat.css index 7220f3c..8e6e9fb 100644 --- a/codebase/sources/skins/dhtmlxscheduler_flat.css +++ b/codebase/sources/skins/dhtmlxscheduler_flat.css @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 Stardard +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -10,13 +10,13 @@ This software is covered by GPL license. You also can obtain Commercial or Enter position: fixed; right: 5px; width: 250px; - z-index: 1000; + z-index: 11; } .dhtmlx-info { min-width: 120px; padding: 4px 4px 4px 20px; font-family: Tahoma; - z-index: 10000; + z-index: 14; overflow: hidden; margin: 5px; margin-bottom: 10px; @@ -44,7 +44,7 @@ This software is covered by GPL license. You also can obtain Commercial or Enter background: -moz-linear-gradient(top, #ffffff 1%, #d0d0d0 99%); box-shadow: 0px 0px 14px #888; font-family: Tahoma; - z-index: 20000; + z-index: 18; border-radius: 6px; border: 1px solid #ffffff; } @@ -89,7 +89,7 @@ div.dhx_modal_cover { filter: alpha(opacity=20); opacity: 0.2; position: fixed; - z-index: 19999; + z-index: 17; left: 0px; top: 0px; width: 100%; @@ -262,7 +262,7 @@ div.dhx_modal_cover { .dhx_cal_event.dhx_cal_editor { border: 1px solid #B7A543; border-top-style: dotted; - z-index: 999; + z-index: 10; position: absolute; overflow: hidden; } @@ -332,7 +332,7 @@ div.icon_delete { right: 20px; background-color: rgba(255, 255, 255, 0.7); color: #000; - z-index: 10000; + z-index: 14; padding: 20px 30px; width: 190px; } @@ -360,7 +360,7 @@ div.icon_delete { border: 1px solid #B7A64B; color: #887A2E; position: absolute; - z-index: 10001; + z-index: 15; width: 580px; height: 300px; box-shadow: 5px 5px 5px #888; @@ -476,7 +476,7 @@ div.icon_delete { width: 100%; height: 100%; position: absolute; - z-index: 10000; + z-index: 14; top: 0px; left: 0px; background-color: black; @@ -577,7 +577,7 @@ div.icon_delete { } .dhx_minical_popup { position: absolute; - z-index: 10100; + z-index: 16; width: 251px; height: 175px; } @@ -595,7 +595,7 @@ div.icon_delete { height: 18px; cursor: pointer; background-position: 0px 18px; - z-index: 16; + z-index: 4; } .dhx_scheduler_agenda .dhx_cal_data { background-image: url(imgs/databg.png); @@ -677,7 +677,7 @@ div.icon_delete { border: 1px solid #BBBBBB; background-image: url(imgs/databg.png); position: absolute; - z-index: 9998; + z-index: 12; width: 300px; height: auto; font-family: Tahoma; @@ -901,8 +901,8 @@ div.icon_delete { color: #887A2E; cursor: default; padding: 10px; - position: absolute; - z-index: 500; + position: fixed; + z-index: 9; font-family: Tahoma; font-size: 8pt; opacity: 1; @@ -935,7 +935,9 @@ div.icon_delete { .dhx_cal_light .combo { padding: 4px; } -.dhx_cal_light_wide .dhx_combo_box { +/* dhtmlxCombo v3.x */ +.dhx_cal_light_wide .dhx_combo_box, +.dhx_cal_light_wide .combo > div { width: 608px !important; left: 10px; } @@ -1117,7 +1119,7 @@ div.icon_delete { border: 2px solid #888; border-radius: 5px; position: absolute; - z-index: 300; + z-index: 8; background-color: #8e99ae; background-color: rgba(98, 107, 127, 0.5); padding-left: 7px; @@ -1190,6 +1192,19 @@ div.icon_delete { border-top: 1px solid #B6B6B6; border-bottom: 1px solid #b6b6b6; } +/* key nav */ +.dhx_focus_slot { + background: #FFE763; + position: absolute; + pointer-events: none; + opacity: 0.3; +} +.dhx_cal_container *:focus { + outline-style: solid; + /*not visible focus outline in ie11*/ + outline-style: auto; +} +/* key nav end*/ /* bootstrap CSS fix start */ .dhx_cal_navline div, .dhx_cal_header, @@ -1201,11 +1216,25 @@ div.icon_delete { .dhx_multi_day div, .dhx_tooltip_line div, .dhx_cal_quick_info, -.dhx_cal_quick_info div { +.dhx_cal_quick_info div, +.dhtmlx_modal_box * { -webkit-box-sizing: content-box; -moz-box-sizing: content-box; box-sizing: content-box; } +.dhx_cal_light .dhx_wrap_section, +.dhx_cal_light .dhx_cal_lsection { + -webkit-box-sizing: content-box; + -moz-box-sizing: content-box; + box-sizing: content-box; +} +.dhx_cal_data div.dhx_scale_hour, +.dhx_cal_data table .dhx_matrix_cell, +.dhx_cal_data table .dhx_matrix_scell { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; +} .dhx_cal_event div { line-height: normal; } @@ -1251,7 +1280,7 @@ div.icon_delete { width: 1px; overflow: hidden; height: 17px; - z-index: 20; + z-index: 5; top: 0px; } .dhx_cal_prev_button { @@ -1394,7 +1423,7 @@ div.icon_delete { } .dhx_cal_drag { position: absolute; - z-index: 9999; + z-index: 13; background-color: #FFE763; border: 1px solid #B7A543; opacity: 0.5; @@ -1405,7 +1434,7 @@ div.icon_delete { width: 128px; height: 15px; background-image: url(imgs/loading.gif); - z-index: 9999; + z-index: 13; } .dhx_multi_day_icon, .dhx_multi_day { @@ -2185,6 +2214,7 @@ input.dhx_repeat_date { /* expand */ .dhx_expand_icon { top: -3px; + background-image: url(imgs_flat/collapse_expand_icon.gif); } /* expand end */ /* units view */ diff --git a/codebase/sources/skins/dhtmlxscheduler_glossy.css b/codebase/sources/skins/dhtmlxscheduler_glossy.css index 18eb185..6edc4a8 100644 --- a/codebase/sources/skins/dhtmlxscheduler_glossy.css +++ b/codebase/sources/skins/dhtmlxscheduler_glossy.css @@ -1,6 +1,6 @@ /* @license -dhtmlxScheduler v.4.3.1 Stardard +dhtmlxScheduler v.4.4.0 Stardard This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited. @@ -10,13 +10,13 @@ This software is covered by GPL license. You also can obtain Commercial or Enter position: fixed; right: 5px; width: 250px; - z-index: 1000; + z-index: 11; } .dhtmlx-info { min-width: 120px; padding: 4px 4px 4px 20px; font-family: Tahoma; - z-index: 10000; + z-index: 14; overflow: hidden; margin: 5px; margin-bottom: 10px; @@ -44,7 +44,7 @@ This software is covered by GPL license. You also can obtain Commercial or Enter background: -moz-linear-gradient(top, #ffffff 1%, #d0d0d0 99%); box-shadow: 0px 0px 14px #888; font-family: Tahoma; - z-index: 20000; + z-index: 18; border-radius: 6px; border: 1px solid #ffffff; } @@ -89,7 +89,7 @@ div.dhx_modal_cover { filter: alpha(opacity=20); opacity: 0.2; position: fixed; - z-index: 19999; + z-index: 17; left: 0px; top: 0px; width: 100%; @@ -262,7 +262,7 @@ div.dhx_modal_cover { .dhx_cal_event.dhx_cal_editor { border: 1px solid #B7A543; border-top-style: dotted; - z-index: 999; + z-index: 10; position: absolute; overflow: hidden; } @@ -332,7 +332,7 @@ div.icon_delete { right: 20px; background-color: rgba(255, 255, 255, 0.7); color: #000; - z-index: 10000; + z-index: 14; padding: 20px 30px; width: 190px; } @@ -360,7 +360,7 @@ div.icon_delete { border: 1px solid #B7A64B; color: #887A2E; position: absolute; - z-index: 10001; + z-index: 15; width: 580px; height: 300px; box-shadow: 5px 5px 5px #888; @@ -476,7 +476,7 @@ div.icon_delete { width: 100%; height: 100%; position: absolute; - z-index: 10000; + z-index: 14; top: 0px; left: 0px; background-color: black; @@ -577,7 +577,7 @@ div.icon_delete { } .dhx_minical_popup { position: absolute; - z-index: 10100; + z-index: 16; width: 251px; height: 175px; } @@ -595,7 +595,7 @@ div.icon_delete { height: 18px; cursor: pointer; background-position: 0px 18px; - z-index: 16; + z-index: 4; } .dhx_scheduler_agenda .dhx_cal_data { background-image: url(imgs/databg.png); @@ -677,7 +677,7 @@ div.icon_delete { border: 1px solid #BBBBBB; background-image: url(imgs/databg.png); position: absolute; - z-index: 9998; + z-index: 12; width: 300px; height: auto; font-family: Tahoma; @@ -901,8 +901,8 @@ div.icon_delete { color: #887A2E; cursor: default; padding: 10px; - position: absolute; - z-index: 500; + position: fixed; + z-index: 9; font-family: Tahoma; font-size: 8pt; opacity: 1; @@ -935,7 +935,9 @@ div.icon_delete { .dhx_cal_light .combo { padding: 4px; } -.dhx_cal_light_wide .dhx_combo_box { +/* dhtmlxCombo v3.x */ +.dhx_cal_light_wide .dhx_combo_box, +.dhx_cal_light_wide .combo > div { width: 608px !important; left: 10px; } @@ -1117,7 +1119,7 @@ div.icon_delete { border: 2px solid #888; border-radius: 5px; position: absolute; - z-index: 300; + z-index: 8; background-color: #8e99ae; background-color: rgba(98, 107, 127, 0.5); padding-left: 7px; @@ -1190,6 +1192,19 @@ div.icon_delete { border-top: 1px solid #B6B6B6; border-bottom: 1px solid #b6b6b6; } +/* key nav */ +.dhx_focus_slot { + background: #FFE763; + position: absolute; + pointer-events: none; + opacity: 0.3; +} +.dhx_cal_container *:focus { + outline-style: solid; + /*not visible focus outline in ie11*/ + outline-style: auto; +} +/* key nav end*/ /* bootstrap CSS fix start */ .dhx_cal_navline div, .dhx_cal_header, @@ -1201,11 +1216,25 @@ div.icon_delete { .dhx_multi_day div, .dhx_tooltip_line div, .dhx_cal_quick_info, -.dhx_cal_quick_info div { +.dhx_cal_quick_info div, +.dhtmlx_modal_box * { + -webkit-box-sizing: content-box; + -moz-box-sizing: content-box; + box-sizing: content-box; +} +.dhx_cal_light .dhx_wrap_section, +.dhx_cal_light .dhx_cal_lsection { -webkit-box-sizing: content-box; -moz-box-sizing: content-box; box-sizing: content-box; } +.dhx_cal_data div.dhx_scale_hour, +.dhx_cal_data table .dhx_matrix_cell, +.dhx_cal_data table .dhx_matrix_scell { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; +} .dhx_cal_event div { line-height: normal; } @@ -1251,7 +1280,7 @@ div.icon_delete { width: 1px; overflow: hidden; height: 17px; - z-index: 20; + z-index: 5; top: 0px; } .dhx_cal_prev_button { @@ -1394,7 +1423,7 @@ div.icon_delete { } .dhx_cal_drag { position: absolute; - z-index: 9999; + z-index: 13; background-color: #FFE763; border: 1px solid #B7A543; opacity: 0.5; @@ -1405,7 +1434,7 @@ div.icon_delete { width: 128px; height: 15px; background-image: url(imgs/loading.gif); - z-index: 9999; + z-index: 13; } .dhx_multi_day_icon, .dhx_multi_day { @@ -1813,7 +1842,9 @@ div.dhx_menu_icon { .dhx_cal_light_wide .dhx_cal_lsection.dhx_cal_checkbox { height: 20px; } -.dhx_cal_light_wide .dhx_combo_box { +/* dhtmlxCombo v3.x */ +.dhx_cal_light_wide .dhx_combo_box, +.dhx_cal_light_wide .combo > div { width: 602px !important; left: 0px; } @@ -1892,3 +1923,8 @@ div.dhx_menu_icon { background-image: url('imgs_glossy/export_ical.png'); } /* export to PDF and iCal buttons end */ +/* expand */ +.dhx_expand_icon { + background-image: url(imgs_glossy/collapse_expand_icon.gif); +} +/* expand end */ |