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.GroupEdit.js

/**
 * App.GroupEdit
 *
 *  @param {object} window  global object
 *  @param {function} $ jQuery library
 *  @param {object} EventMgr EventMgr library
 *  @param {object} App Application
 */
App.GroupEdit = function(window, $, EventMgr, App) {
  'use strict';

  function $content() {
    return $('.i-form-wr');
  }

  function inputHandler(e) {
    var $this = $(this);
    if (this.value === '') {
     //$this.addClass('b-input-mixed');
    } else if ($this.hasClass('b-input-mixed')) {
      $this.removeClass('b-input-mixed').removeClass('i-control-mixed');
      $this.attr('placeholder', '');
    }
  }

  function checkboxHandler(e) {
    var $this = $(this),
        $wrapper = $this.closest('.b-checkbox__wrapper');
        $this.removeClass('i-control-mixed');
    if ($wrapper.hasClass('b-checkbox_mixed_yes')) {
      $wrapper.removeClass('b-checkbox_mixed_yes');
     // $('#' + $this.attr('data-id')).removeClass('i-control-mixed');
    }
  }

  function selectHandler(e) {
    var $this = $(this),
        $wrapper = $this.closest('.b-myselect');
        $this.removeClass('i-control-mixed');
    if ($wrapper.hasClass('b-select_mixed_yes')) {
      $wrapper.removeClass('b-select_mixed_yes');
    }
  }

  function mSelectHandler(e) {
    var $this = $(this),
        $wrapper = $this.closest('.b-mselect');
        $this.removeClass('i-mselect_mixed_yes'),
        $unselectMsgNode = $wrapper.find('.b-mselect__item_msg_unselected');
    $unselectMsgNode.html($unselectMsgNode.attr('data-default-msg'));
    if ($wrapper.hasClass('b-mselect_mixed_yes')) {
      $wrapper.removeClass('b-mselect_mixed_yes');
    }
  }

  function textareaHandler() {
    var $this = $(this);
    if (this.value === '') {
     //$this.addClass('b-input-mixed');
    } else if ($this.hasClass('b-textarea-mixed')) {
      $this.removeClass('b-textarea-mixed').removeClass('i-control-mixed');
      $this.attr('placeholder', '');
    }
  }

  function radioHandler() {
    var $this = $(this),
        $wrapper = $this.closest('.b-radio');
        $this.removeClass('i-control-mixed');
    if ($wrapper.hasClass('b-radio_mixed_yes')) {
      $wrapper.removeClass('b-radio_mixed_yes');
    }
  }

  function init() {
    EventMgr.on($content(), '.i-textarea-mixed', 'change', textareaHandler);
    EventMgr.on($content(), '.i-input-mixed', 'change', inputHandler);
    EventMgr.on($content(), '.i-checkbox_mixed_yes input', 'change', checkboxHandler);
    EventMgr.on($content(), '.i-select_mixed_yes input', 'change', selectHandler);
    EventMgr.on($content(), '.i-mselect_mixed_yes input', 'change', mSelectHandler);
    EventMgr.on($content(), '.i-radio_mixed_yes input', 'change', radioHandler);
  }
  return {
    init: init
  };
}(window, $, EventMgr, App, doT);