AnonSec Shell
Server IP : 85.193.89.191  /  Your IP : 18.220.233.82
Web Server : Apache
System : Linux 956367-cx40159.tmweb.ru 3.10.0-1160.105.1.el7.x86_64 #1 SMP Thu Dec 7 15:39:45 UTC 2023 x86_64
User : bitrix ( 600)
PHP Version : 8.1.27
Disable Function : NONE
MySQL : OFF  |  cURL : OFF  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : ON  |  Pkexec : ON
Directory :  /home/bitrix/www/bitrix/components/bitrix/main.field.date/templates/main.view/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ HOME ]     

Current File : /home/bitrix/www/bitrix/components/bitrix/main.field.date/templates/main.view/mobile.js
this.BX = this.BX || {};
this.BX.Mobile = this.BX.Mobile || {};
this.BX.Mobile.Field = this.BX.Mobile.Field || {};
(function (exports,main_core) {
	'use strict';

	var BX = window.BX,
	    BXMobileApp = window.BXMobileApp;

	var nodeDate = function () {
	  var nodeDate = function nodeDate(node, type, container, formats) {
	    this.type = type;
	    this.node = node;
	    this.container = container;
	    this.click = BX.delegate(this.click, this);
	    this.callback = BX.delegate(this.callback, this);
	    BX.bind(this.container, 'click', this.click);
	    BX.bind(this.container.parentNode, 'click', this.click); //this.type = 'datetime'; // 'datetime', 'date', 'time'

	    this.format = {
	      inner: {
	        datetime: 'dd.MM.yyyy H:mm',
	        time: 'H:mm',
	        date: 'dd.MM.yyyy'
	      },
	      bitrix: {
	        datetime: null,
	        time: null,
	        date: null
	      },
	      visible: {
	        datetime: null,
	        time: null,
	        date: null
	      }
	    };
	    this.init(formats);
	  };

	  nodeDate.prototype = {
	    click: function click(e) {
	      BX.eventCancelBubble(e);
	      this.show();
	      return BX.PreventDefault(e);
	    },
	    show: function show() {
	      var res = {
	        type: this.type,
	        start_date: this.getStrDate(this.node.value),
	        format: this.format.inner[this.type],
	        callback: this.callback
	      };

	      if (res['start_date'] == '') {
	        delete res['start_date'];
	      }

	      BXMobileApp.UI.DatePicker.setParams(res);
	      BXMobileApp.UI.DatePicker.show();
	    },
	    callback: function callback(data) {
	      var d = this.makeDate(data);
	      this.node.value = BX.date.format(this.format.bitrix[this.type], d);
	      var text = BX.date.format(BX.clone(this.format.visible[this.type]), d);

	      if (!BX.type.isNotEmptyString(text)) {
	        text = this.container.getAttribute('placeholder') || ' ';
	      }

	      this.container.innerHTML = text;

	      if (this.delButton) {
	        this.delButton.style.display = 'inline-block';
	      }

	      BX.onCustomEvent(this, 'onChange', [this, this.node]);
	    },
	    makeDate: function makeDate(str) {
	      //Format: 'day.month.year hour:minute'
	      var d = new Date();

	      if (BX.type.isNotEmptyString(str)) {
	        var dateR = new RegExp('(\\d{2}).(\\d{2}).(\\d{4})'),
	            timeR = new RegExp('(\\d{1,2}):(\\d{1,2})'),
	            m;

	        if (dateR.test(str) && (m = dateR.exec(str)) && m) {
	          d.setDate(m[1]);
	          d.setMonth(m[2] - 1);
	          d.setFullYear(m[3]);
	        }

	        if (timeR.test(str) && (m = timeR.exec(str)) && m) {
	          d.setHours(m[1]);
	          d.setMinutes(m[2]);
	          d.setSeconds(0);
	        }
	      }

	      return d;
	    },
	    getStrDate: function getStrDate(value) {
	      var d = BX.parseDate(value),
	          res = '';

	      if (d !== null) {
	        if (this.type == 'date' || this.type == 'datetime') {
	          res = BX.util.str_pad_left(d.getDate().toString(), 2, '0') + '.' + BX.util.str_pad_left((d.getMonth() + 1).toString(), 2, '0') + '.' + d.getFullYear().toString();
	        }

	        if (this.type == 'datetime') {
	          res += ' ';
	        }

	        if (this.type == 'time' || this.type == 'datetime') {
	          res += BX.util.str_pad_left(d.getHours().toString(), 2, '0') + ':' + d.getMinutes().toString();
	        }
	      }

	      return res;
	    },
	    init: function init(formats) {
	      var DATETIME_FORMAT = BX.date.convertBitrixFormat(main_core.Loc.getMessage('FORMAT_DATETIME')),
	          DATE_FORMAT = BX.date.convertBitrixFormat(main_core.Loc.getMessage('FORMAT_DATE')),
	          TIME_FORMAT;

	      if (DATETIME_FORMAT.substr(0, DATE_FORMAT.length) == DATE_FORMAT) {
	        TIME_FORMAT = BX.util.trim(DATETIME_FORMAT.substr(DATE_FORMAT.length));
	      } else {
	        TIME_FORMAT = BX.date.convertBitrixFormat(DATETIME_FORMAT.indexOf('T') >= 0 ? 'H:MI:SS T' : 'HH:MI:SS');
	      }

	      this.format.bitrix.datetime = DATETIME_FORMAT;
	      this.format.bitrix.date = DATE_FORMAT;
	      this.format.bitrix.time = TIME_FORMAT;
	      formats = formats || {};
	      this.format.visible.datetime = formats['datetime'] || DATETIME_FORMAT.replace(':s', '');
	      this.format.visible.date = formats['date'] || DATE_FORMAT;
	      this.format.visible.time = formats['time'] || TIME_FORMAT.replace(':s', '');
	      this.format.visible.datetime = [['today', 'today, ' + this.format.visible.time], ['tommorow', 'tommorow, ' + this.format.visible.time], ['yesterday', 'yesterday, ' + this.format.visible.time], ['', this.format.visible.datetime]];
	      this.format.visible.date = [['today', 'today'], ['tommorow', 'tommorow'], ['yesterday', 'yesterday'], ['', this.format.visible.date]];
	      this.delButton = BX("".concat(this.node.id, "_del"));

	      if (this.delButton) {
	        BX.bind(this.delButton, 'click', BX.proxy(this.drop, this));
	      }
	    },
	    drop: function drop(e) {
	      if (e) {
	        BX.eventCancelBubble(e);
	        BX.PreventDefault(e);
	      }

	      this.node.value = '';
	      this.container.innerHTML = this.container.getAttribute('placeholder');

	      if (this.delButton) {
	        this.delButton.style.display = 'none';
	      }

	      BX.onCustomEvent(this, 'onChange', [this, this.node]);
	      return false;
	    }
	  };
	  return nodeDate;
	}();

	window.app.exec('enableCaptureKeyboard', true);

	BX.Mobile.Field.Date = function (params) {
	  this.init(params);
	};

	BX.Mobile.Field.Date.prototype = {
	  __proto__: BX.Mobile.Field.prototype,
	  bindElement: function bindElement(node) {
	    var result = null;

	    if (BX(node)) {
	      var type = node.hasAttribute('data-bx-type') ? node.getAttribute('data-bx-type').toLowerCase() : '';
	      result = new nodeDate(node, type, BX("".concat(node.id, "_container")), this.format);
	    }

	    return result;
	  }
	};

}((this.BX.Mobile.Field.Date = this.BX.Mobile.Field.Date || {}),BX));
//# sourceMappingURL=mobile.js.map

Anon7 - 2022
AnonSec Team