Your IP : 18.219.40.177


Current Path : /usr/local/mgr5/skins/orion/src/
Upload File :
Current File : //usr/local/mgr5/skins/orion/src/App.ResizeFormPage.js

/**
 * Module resize form page by lagest
 *  @param {object} window  global object
 *  @param {function} $ jQuery library
 *  @param {object} EventMgr EventMgr library
 *  @param {object} App Application
 *  @return {object} api
 */
App.ResizeFormPage = function(window, $, EventMgr, App) {
  'use strict';

  function checkPageWidth(e, data) {
    if (data &&
        data.tabObj &&
        data.tabObj.func === 'settings' &&
        data.tabObj.type === 'form') {
      var tabId = data.tabId,
          $formPages = $('#form-wrapper-' + tabId + ' .b-form-page'),
          $formPage,
          $labels,
          $labelsArr = [],
          maxWidth = 0,
          tmpWidth;
      //go for pages
      for (var i = 0, l = $formPages.length; i < l; i++) {
        $fields = $($formPages[i]).find('.l-label__wrapper');
        //go for 1st label 
        for (var j = 0, lf = $fields.length; j < lf; j++) {
           tmpWidth = $fields[j].offsetWidth;

           if (tmpWidth !== 0) {
             if (tmpWidth > maxWidth) {
               maxWidth = tmpWidth;
             }
             $labelsArr.push($fields[j]);
             break;
           }
        }
      }
      if (maxWidth > 0) {
        for (var i = 0, l = $labelsArr.length; i < l; i++) {
          $labelsArr[i].style.minWidth = maxWidth + 'px';
        }
      }
    }
  }

  function init() {
    EventMgr.bind('appendForm', checkPageWidth);
  }

  var api = {
    init: init
  };

  return api;

} (window, $, EventMgr, App);