lime.js 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. mainApp = null;
  2. (function ($) {
  3. mainApp = {
  4. initTooltip: function () {
  5. var tooltips = $('[data-toggle="tooltip"]');
  6. $.each(tooltips, function(i, tooltip){
  7. var html = $(tooltip).data('html');
  8. var params = {};
  9. if(html){
  10. params.html = true;
  11. $(tooltip).tooltip(params);
  12. }
  13. });
  14. },
  15. initMask: function(){
  16. $('.ssn').mask('000-00-0000');
  17. $('.date').mask('00/00/0000');
  18. $('.phone, [name=cellNumber], [name=cellNumber]').mask('000-000-0000');
  19. },
  20. initMaskPhone: function(){
  21. $('.phone').mask('000-000-0000');
  22. },
  23. initAutoSuggestRecord: function(){
  24. var suggestInputs = $("[auto-suggest-record]");
  25. $.each(suggestInputs, function(i, input){
  26. var placeholder = $(input).attr('placeholder');
  27. var url = $(input).data('url');
  28. var valueProp = $(input).data('valueprop');
  29. var select2 = $(input).select2({
  30. placeholder: placeholder,
  31. minimumInputLength: 2,
  32. ajax: {
  33. url: url,
  34. dataType: 'json',
  35. type: "GET",
  36. quietMillis: 50,
  37. data: function (params) {
  38. return {
  39. term: params.term,
  40. json: true
  41. };
  42. },
  43. processResults: function (data) {
  44. data = data.results || [];
  45. return {
  46. results: $.map(data, function (item) {
  47. return {
  48. text: item.text,
  49. id: valueProp ? item[valueProp] : item.uid
  50. }
  51. })
  52. };
  53. }
  54. }
  55. });
  56. console.log({select2});
  57. });
  58. },
  59. initPopover: function(){
  60. $('[data-toggle="popover"]').popover();
  61. },
  62. init: function () {
  63. var self = this;
  64. self.initAutoSuggestRecord();
  65. self.initMask();
  66. $(document).on('ready', function () {
  67. self.initTooltip();
  68. self.initPopover();
  69. });
  70. },
  71. };
  72. mainApp.init();
  73. })(jQuery);