YetiForceCompany/YetiForceCRM

View on GitHub
public_html/layouts/resources/Field.min.js.map

Summary

Maintainability
Test Coverage
{"version":3,"file":"Field.min.js","sources":["Field.js"],"sourcesContent":["/*+***********************************************************************************\n * The contents of this file are subject to the vtiger CRM Public License Version 1.0\n * (\"License\"); You may not use this file except in compliance with the License\n * The Original Code is:  vtiger CRM Open Source\n * The Initial Developer of the Original Code is vtiger.\n * Portions created by vtiger are Copyright (C) vtiger.\n * All Rights Reserved.\n * Contributor(s): YetiForce S.A.\n *************************************************************************************/\n'use strict';\n\njQuery.Class(\n\t'Vtiger_Field_Js',\n\t{\n\t\t/**\n\t\t * Function to get Instance of the class based on moduleName\n\t\t * @param data,data to set\n\t\t * @param moduleName module for which Instance should be created\n\t\t * @return Instance of field class\n\t\t */\n\t\tgetInstance: function (data, moduleName) {\n\t\t\tif (typeof moduleName === 'undefined') {\n\t\t\t\tmoduleName = app.getModuleName();\n\t\t\t}\n\t\t\tvar moduleField = moduleName + '_Field_Js';\n\t\t\tvar moduleFieldObj = window[moduleField];\n\t\t\tvar fieldClass = '';\n\t\t\tif (typeof moduleFieldObj !== 'undefined') {\n\t\t\t\tfieldClass = moduleFieldObj;\n\t\t\t} else {\n\t\t\t\tfieldClass = Vtiger_Field_Js;\n\t\t\t}\n\t\t\tvar fieldObj = new fieldClass();\n\n\t\t\tif (typeof data === 'undefined') {\n\t\t\t\tdata = {};\n\t\t\t}\n\t\t\tfieldObj.setData(data);\n\t\t\treturn fieldObj;\n\t\t}\n\t},\n\t{\n\t\tdata: {},\n\t\t/**\n\t\t * Function to check whether field is mandatory or not\n\t\t * @return true if feld is madatory\n\t\t * @return false if field is not mandatory\n\t\t */\n\t\tisMandatory: function () {\n\t\t\treturn this.get('mandatory');\n\t\t},\n\t\t/**\n\t\t * Function to get the value of particular key in object\n\t\t * @return value for the passed key\n\t\t */\n\n\t\tget: function (key) {\n\t\t\tif (key in this.data) {\n\t\t\t\treturn this.data[key];\n\t\t\t}\n\t\t\treturn '';\n\t\t},\n\t\t/**\n\t\t * Function to get type attribute of the object\n\t\t * @return type attribute of the object\n\t\t */\n\t\tgetType: function () {\n\t\t\treturn this.get('type');\n\t\t},\n\t\t/**\n\t\t * Function to get name of the field\n\t\t * @return <String> name of the field\n\t\t */\n\t\tgetName: function () {\n\t\t\treturn this.get('name');\n\t\t},\n\t\t/**\n\t\t * Function to get value of the field\n\t\t * @return <Object> value of the field or empty of there is not value\n\t\t */\n\t\tgetValue: function () {\n\t\t\tif ('value' in this.getData()) {\n\t\t\t\treturn this.get('value');\n\t\t\t} else if ('defaultValue' in this.getData()) {\n\t\t\t\treturn this.get('defaultValue');\n\t\t\t}\n\t\t\treturn '';\n\t\t},\n\t\t/**\n\t\t * Function to get the whole data\n\t\t * @return <object>\n\t\t */\n\t\tgetData: function () {\n\t\t\treturn this.data;\n\t\t},\n\t\t/**\n\t\t * Function to set data attribute of the class\n\t\t * @return Instance of the class\n\t\t */\n\t\tsetData: function (fieldInfo) {\n\t\t\tthis.data = fieldInfo;\n\t\t\treturn this;\n\t\t},\n\t\tgetModuleName: function () {\n\t\t\treturn app.getModuleName();\n\t\t},\n\t\t/**\n\t\t * Function to get the ui type specific model\n\t\t */\n\t\tgetUiTypeModel: function () {\n\t\t\tvar currentModule = this.getModuleName();\n\n\t\t\tvar type = this.getType();\n\t\t\tvar typeClassName = type.charAt(0).toUpperCase() + type.slice(1).toLowerCase();\n\t\t\tvar moduleUiTypeClassName = window[currentModule + '_' + typeClassName + '_Field_Js'];\n\t\t\tvar BasicUiTypeClassName = window['Vtiger_' + typeClassName + '_Field_Js'];\n\t\t\tif (typeof moduleUiTypeClassName !== 'undefined') {\n\t\t\t\treturn new moduleUiTypeClassName().setData(this.getData());\n\t\t\t}\n\t\t\tif (typeof BasicUiTypeClassName !== 'undefined') {\n\t\t\t\treturn new BasicUiTypeClassName().setData(this.getData());\n\t\t\t}\n\t\t\treturn this;\n\t\t},\n\t\t/**\n\t\t * Funtion to get the ui for the field  - generally this will be extend by the child classes to\n\t\t * give ui type specific ui\n\t\t * return <String or Jquery> it can return either plain html or jquery object\n\t\t */\n\t\tgetUi: function () {\n\t\t\tvar html = '<input type=\"text\" name=\"' + this.getName() + '\" class=\"form-control\" />';\n\t\t\thtml = jQuery(html).val(app.htmlDecode(this.getValue()));\n\t\t\treturn this.addValidationToElement(html);\n\t\t},\n\t\t/**\n\t\t * Function to get the ui for a field depending on the ui type\n\t\t * this will get the specific ui depending on the field type\n\t\t * return <String or Jquery> it can return either plain html or jquery object\n\t\t */\n\t\tgetUiTypeSpecificHtml: function () {\n\t\t\tvar uiTypeModel = this.getUiTypeModel();\n\t\t\treturn uiTypeModel.getUi();\n\t\t},\n\t\t/**\n\t\t * Function to add the validation for the element\n\t\t */\n\t\taddValidationToElement: function (element) {\n\t\t\telement = jQuery(element);\n\t\t\tvar addValidationToElement = element;\n\t\t\tvar elementInStructure = element.find('[name=\"' + this.getName() + '\"]');\n\t\t\tif (elementInStructure.length > 0) {\n\t\t\t\taddValidationToElement = elementInStructure;\n\t\t\t}\n\t\t\tvar validationHandler = 'validate[';\n\t\t\tif (this.isMandatory()) {\n\t\t\t\tvalidationHandler += 'required,';\n\t\t\t}\n\t\t\tvalidationHandler += 'funcCall[Vtiger_Base_Validator_Js.invokeValidation]]';\n\t\t\taddValidationToElement\n\t\t\t\t.attr('data-validation-engine', validationHandler)\n\t\t\t\t.attr('data-fieldinfo', JSON.stringify(this.getData()))\n\t\t\t\t.attr('data-validator', JSON.stringify(this.getData().specialValidator));\n\t\t\treturn element;\n\t\t}\n\t}\n);\n\nVtiger_Field_Js(\n\t'Vtiger_Picklist_Field_Js',\n\t{},\n\t{\n\t\t/**\n\t\t * Function to get the pick list values\n\t\t * @return <object> key value pair of options\n\t\t */\n\t\tgetPickListValues: function () {\n\t\t\treturn this.get('picklistvalues');\n\t\t},\n\t\t/**\n\t\t * Function to get the ui\n\t\t * @return - select element and select2 element\n\t\t */\n\t\tgetUi: function () {\n\t\t\tvar html = '<select class=\"select2 form-control\" name=\"' + this.getName() + '\">';\n\t\t\tvar pickListValues = this.getPickListValues();\n\t\t\tvar selectedOption = app.htmlDecode(this.getValue());\n\t\t\tfor (var option in pickListValues) {\n\t\t\t\thtml += '<option value=\"' + option + '\" ';\n\t\t\t\tif (option == selectedOption) {\n\t\t\t\t\thtml += ' selected ';\n\t\t\t\t}\n\t\t\t\thtml += '>' + pickListValues[option] + '</option>';\n\t\t\t}\n\t\t\thtml += '</select>';\n\t\t\tvar selectContainer = jQuery(html);\n\t\t\tthis.addValidationToElement(selectContainer);\n\t\t\treturn selectContainer;\n\t\t}\n\t}\n);\n\nVtiger_Field_Js(\n\t'Vtiger_Multipicklist_Field_Js',\n\t{},\n\t{\n\t\t/**\n\t\t * Function to get the pick list values\n\t\t * @return <object> key value pair of options\n\t\t */\n\t\tgetPickListValues: function () {\n\t\t\treturn this.get('picklistvalues');\n\t\t},\n\t\t/**\n\t\t * Function to get the ui\n\t\t * @return - select element and select2 element\n\t\t */\n\t\tgetUi: function () {\n\t\t\tvar html = '<select class=\"select2 form-control\" multiple name=\"' + this.getName() + '[]\">';\n\t\t\tvar pickListValues = this.getPickListValues();\n\t\t\tvar selectedOption = app.htmlDecode(this.getValue());\n\t\t\tvar selectedOptionsArray = selectedOption.split(',');\n\t\t\tfor (var option in pickListValues) {\n\t\t\t\thtml += '<option value=\"' + option + '\" ';\n\t\t\t\tif (jQuery.inArray(option, selectedOptionsArray) != -1) {\n\t\t\t\t\thtml += ' selected ';\n\t\t\t\t}\n\t\t\t\thtml += '>' + pickListValues[option] + '</option>';\n\t\t\t}\n\t\t\thtml += '</select>';\n\t\t\tvar selectContainer = jQuery(html);\n\t\t\tthis.addValidationToElement(selectContainer);\n\t\t\treturn selectContainer;\n\t\t}\n\t}\n);\nVtiger_Field_Js(\n\t'Vtiger_Boolean_Field_Js',\n\t{},\n\t{\n\t\t/**\n\t\t * Function to check whether the field is checked or not\n\t\t * @return <Boolean>\n\t\t */\n\t\tisChecked: function () {\n\t\t\tvar value = this.getValue();\n\t\t\tif (value == 1 || value == '1' || value.toLowerCase() == 'on') {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t\treturn false;\n\t\t},\n\t\t/**\n\t\t * Function to get the ui\n\t\t * @return - checkbox element\n\t\t */\n\t\tgetUi: function () {\n\t\t\tvar html =\n\t\t\t\t'<input type=\"hidden\" name=\"' +\n\t\t\t\tthis.getName() +\n\t\t\t\t'\" value=\"0\"/><input type=\"checkbox\" name=\"' +\n\t\t\t\tthis.getName() +\n\t\t\t\t'\" ';\n\t\t\tif (this.isChecked()) {\n\t\t\t\thtml += 'checked';\n\t\t\t}\n\t\t\thtml += ' />';\n\t\t\treturn this.addValidationToElement(html);\n\t\t}\n\t}\n);\n\nVtiger_Field_Js(\n\t'Vtiger_Date_Field_Js',\n\t{},\n\t{\n\t\t/**\n\t\t * Function to get the user date format\n\t\t */\n\t\tgetDateFormat: function () {\n\t\t\treturn this.get('date-format');\n\t\t},\n\t\t/**\n\t\t * Function to get the ui\n\t\t * @return - input text field\n\t\t */\n\t\tgetUi: function () {\n\t\t\tvar html =\n\t\t\t\t'<div class=\"date input-group\">' +\n\t\t\t\t'<input class=\"dateField form-control datepicker\" type=\"text\" name=\"' +\n\t\t\t\tthis.getName() +\n\t\t\t\t'\"  data-date-format=\"' +\n\t\t\t\tthis.getDateFormat() +\n\t\t\t\t'\"  value=\"' +\n\t\t\t\tthis.getValue() +\n\t\t\t\t'\" autocomplete=\"off\"/>' +\n\t\t\t\t'<div class=\"input-group-append\"><span class=\"input-group-text u-cursor-pointer js-date__btn\" data-js=\"click\"><span class=\"fas fa-calendar-alt\"></span></span></div>' +\n\t\t\t\t'</div>';\n\t\t\tvar element = jQuery(html);\n\t\t\treturn this.addValidationToElement(element);\n\t\t}\n\t}\n);\n\nVtiger_Field_Js(\n\t'Vtiger_Currency_Field_Js',\n\t{},\n\t{\n\t\t/**\n\t\t * get the currency symbol configured for the user\n\t\t */\n\t\tgetCurrencySymbol: function () {\n\t\t\treturn this.get('currency_symbol');\n\t\t},\n\t\tgetUi: function () {\n\t\t\tvar html =\n\t\t\t\t'<div class=\"input-group\">' +\n\t\t\t\t'<span class=\"input-group-append\">' +\n\t\t\t\tthis.getCurrencySymbol() +\n\t\t\t\t'</span>' +\n\t\t\t\t'<input type=\"text\" class=\"form-control\" name=\"' +\n\t\t\t\tthis.getName() +\n\t\t\t\t'\" value=\"' +\n\t\t\t\tthis.getValue() +\n\t\t\t\t'\"  />' +\n\t\t\t\t'</div>';\n\t\t\tvar element = jQuery(html);\n\t\t\treturn this.addValidationToElement(element);\n\t\t}\n\t}\n);\n\nVtiger_Field_Js(\n\t'Vtiger_Owner_Field_Js',\n\t{},\n\t{\n\t\t/**\n\t\t * Function to get the picklist values\n\t\t */\n\t\tgetPickListValues: function () {\n\t\t\treturn this.get('picklistvalues');\n\t\t},\n\t\tgetUi: function () {\n\t\t\tvar html = '<select class=\"select2 form-control\" name=\"' + this.getName() + '\">';\n\t\t\tvar pickListValues = this.getPickListValues();\n\t\t\tvar selectedOption = this.getValue();\n\t\t\tfor (var optGroup in pickListValues) {\n\t\t\t\thtml += '<optgroup label=\"' + optGroup + '\">';\n\t\t\t\tvar optionGroupValues = pickListValues[optGroup];\n\t\t\t\tfor (var option in optionGroupValues) {\n\t\t\t\t\thtml += '<option value=\"' + option + '\" ';\n\t\t\t\t\t//comparing with the value instead of key , because saved value is giving username instead of id.\n\t\t\t\t\tif (option == selectedOption) {\n\t\t\t\t\t\thtml += ' selected ';\n\t\t\t\t\t}\n\t\t\t\t\thtml += '>' + optionGroupValues[option] + '</option>';\n\t\t\t\t}\n\t\t\t\thtml += '</optgroup>';\n\t\t\t}\n\n\t\t\thtml += '</select>';\n\t\t\tvar selectContainer = jQuery(html);\n\t\t\tthis.addValidationToElement(selectContainer);\n\t\t\treturn selectContainer;\n\t\t}\n\t}\n);\n\nVtiger_Multipicklist_Field_Js('Vtiger_Multireferencevalue_Field_Js', {}, {});\n\nVtiger_Multipicklist_Field_Js('Vtiger_Sharedowner_Field_Js', {}, {});\n\nVtiger_Picklist_Field_Js('Vtiger_Tree_Field_Js', {}, {});\n\nVtiger_Tree_Field_Js('Vtiger_Categorymultipicklist_Field_Js', {}, {});\n\nVtiger_Picklist_Field_Js('Vtiger_Modules_Field_Js', {}, {});\n\nVtiger_Date_Field_Js('Vtiger_Datetime_Field_Js', {}, {});\n\nVtiger_Picklist_Field_Js('Vtiger_Taxs_Field_Js', {}, {});\n\nVtiger_Picklist_Field_Js('Vtiger_InventoryLimit_Field_Js', {}, {});\n\nVtiger_Field_Js(\n\t'Vtiger_Time_Field_Js',\n\t{},\n\t{\n\t\t/**\n\t\t * Function to get the user date format\n\t\t */\n\t\tgetTimeFormat: function () {\n\t\t\treturn this.get('time-format');\n\t\t},\n\t\t/**\n\t\t * Function to get the ui\n\t\t * @return - input text field\n\t\t */\n\t\tgetUi: function () {\n\t\t\tvar html =\n\t\t\t\t'<div class=\"input-group time\">' +\n\t\t\t\t'<input class=\"clockPicker form-control\" type=\"text\" data-format=\"' +\n\t\t\t\tthis.getTimeFormat() +\n\t\t\t\t'\" name=\"' +\n\t\t\t\tthis.getName() +\n\t\t\t\t'\"  value=\"' +\n\t\t\t\tthis.getValue() +\n\t\t\t\t'\" />' +\n\t\t\t\t'<span class=\"input-group-append\"><i class=\"far fa-clock\"></i></span>' +\n\t\t\t\t'</div>';\n\t\t\tvar element = jQuery(html);\n\t\t\treturn this.addValidationToElement(element);\n\t\t}\n\t}\n);\n\nVtiger_Field_Js(\n\t'Vtiger_Text_Field_Js',\n\t{},\n\t{\n\t\t/**\n\t\t * Function to get the ui\n\t\t * @return - input text field\n\t\t */\n\t\tgetUi: function () {\n\t\t\tvar html =\n\t\t\t\t'<textarea class=\"form-control-lg form-control\" name=\"' +\n\t\t\t\tthis.getName() +\n\t\t\t\t'\"  value=\"' +\n\t\t\t\tthis.getValue() +\n\t\t\t\t'\">' +\n\t\t\t\tthis.getValue() +\n\t\t\t\t'</textarea>';\n\t\t\tvar element = jQuery(html);\n\t\t\treturn this.addValidationToElement(element);\n\t\t}\n\t}\n);\n\nVtiger_Field_Js(\n\t'Vtiger_Percentage_Field_Js',\n\t{},\n\t{\n\t\t/**\n\t\t * Function to get the ui\n\t\t * @return - input percentage field\n\t\t */\n\t\tgetUi: function () {\n\t\t\tvar html =\n\t\t\t\t'<div class=\"input-group\">' +\n\t\t\t\t'<input type=\"number\" class=\"form-control\" min=\"0\" max=\"100\" name=\"' +\n\t\t\t\tthis.getName() +\n\t\t\t\t'\" value=\"' +\n\t\t\t\tthis.getValue() +\n\t\t\t\t'\" step=\"any\"/>' +\n\t\t\t\t'<span class=\"input-group-append\">%</span>' +\n\t\t\t\t'</div>';\n\t\t\tvar element = jQuery(html);\n\t\t\treturn this.addValidationToElement(element);\n\t\t}\n\t}\n);\nVtiger_Field_Js(\n\t'Vtiger_Recurrence_Field_Js',\n\t{},\n\t{\n\t\t/**\n\t\t * Function to get the pick list values\n\t\t * @return <object> key value pair of options\n\t\t */\n\t\tgetPickListValues: function () {\n\t\t\treturn this.get('picklistvalues');\n\t\t},\n\t\t/**\n\t\t * Function to get the ui\n\t\t * @return - select element and select2 element\n\t\t */\n\t\tgetUi: function () {\n\t\t\tvar html = '<select class=\"select2 form-control\" name=\"' + this.getName() + '\">';\n\t\t\tvar pickListValues = this.getPickListValues();\n\t\t\tvar selectedOption = app.htmlDecode(this.getValue());\n\t\t\tfor (var option in pickListValues) {\n\t\t\t\thtml += '<option value=\"' + option + '\" ';\n\t\t\t\tif (option == selectedOption) {\n\t\t\t\t\thtml += ' selected ';\n\t\t\t\t}\n\t\t\t\thtml += '>' + pickListValues[option] + '</option>';\n\t\t\t}\n\t\t\thtml += '</select>';\n\t\t\tvar selectContainer = jQuery(html);\n\t\t\tthis.addValidationToElement(selectContainer);\n\t\t\treturn selectContainer;\n\t\t}\n\t}\n);\n"],"names":["jQuery","Class","getInstance","data","moduleName","app","getModuleName","moduleField","moduleFieldObj","window","fieldClass","Vtiger_Field_Js","fieldObj","setData","isMandatory","get","key","getType","getName","getValue","getData","fieldInfo","getUiTypeModel","currentModule","type","typeClassName","charAt","toUpperCase","slice","toLowerCase","moduleUiTypeClassName","BasicUiTypeClassName","getUi","html","val","htmlDecode","addValidationToElement","getUiTypeSpecificHtml","uiTypeModel","element","elementInStructure","find","length","validationHandler","attr","JSON","stringify","specialValidator","getPickListValues","pickListValues","selectedOption","option","selectContainer","selectedOptionsArray","split","inArray","isChecked","value","getDateFormat","getCurrencySymbol","optGroup","optionGroupValues","Vtiger_Multipicklist_Field_Js","Vtiger_Picklist_Field_Js","Vtiger_Tree_Field_Js","Vtiger_Date_Field_Js","getTimeFormat"],"mappings":"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"}