重新初始化
This commit is contained in:
File diff suppressed because it is too large
Load Diff
-13
File diff suppressed because one or more lines are too long
@@ -1,14 +0,0 @@
|
||||
$(function(){
|
||||
|
||||
})
|
||||
|
||||
function submitHandler(index, layero){
|
||||
var url = '';
|
||||
var data = {};
|
||||
$.each($('form').serializeArray(), function(i, field) {
|
||||
data[field.name] = field.value;
|
||||
});
|
||||
$.operate.submit(url, 'post', 'json', data, function(){
|
||||
layer.close(index);
|
||||
});
|
||||
}
|
||||
@@ -1,354 +0,0 @@
|
||||
/**
|
||||
* AdminLTE Demo Menu
|
||||
* ------------------
|
||||
* You should not use this file in production.
|
||||
* This file is for demo purposes only.
|
||||
*/
|
||||
$(function () {
|
||||
'use strict'
|
||||
|
||||
/**
|
||||
* Get access to plugins
|
||||
*/
|
||||
|
||||
$('[data-toggle="control-sidebar"]').controlSidebar()
|
||||
$('[data-toggle="push-menu"]').pushMenu()
|
||||
var $pushMenu = $('[data-toggle="push-menu"]').data('lte.pushmenu')
|
||||
var $controlSidebar = $('[data-toggle="control-sidebar"]').data('lte.controlsidebar')
|
||||
var $layout = $('body').data('lte.layout')
|
||||
$(window).on('load', function() {
|
||||
// Reinitialize variables on load
|
||||
$pushMenu = $('[data-toggle="push-menu"]').data('lte.pushmenu')
|
||||
$controlSidebar = $('[data-toggle="control-sidebar"]').data('lte.controlsidebar')
|
||||
$layout = $('body').data('lte.layout')
|
||||
})
|
||||
|
||||
/**
|
||||
* List of all the available skins
|
||||
*
|
||||
* @type Array
|
||||
*/
|
||||
var mySkins = [
|
||||
'skin-blue',
|
||||
'skin-black',
|
||||
'skin-red',
|
||||
'skin-yellow',
|
||||
'skin-purple',
|
||||
'skin-green',
|
||||
'skin-blue-light',
|
||||
'skin-black-light',
|
||||
'skin-red-light',
|
||||
'skin-yellow-light',
|
||||
'skin-purple-light',
|
||||
'skin-green-light'
|
||||
]
|
||||
|
||||
/**
|
||||
* Get a prestored setting
|
||||
*
|
||||
* @param String name Name of of the setting
|
||||
* @returns String The value of the setting | null
|
||||
*/
|
||||
function get(name) {
|
||||
if (typeof (Storage) !== 'undefined') {
|
||||
return localStorage.getItem(name)
|
||||
} else {
|
||||
window.alert('Please use a modern browser to properly view this template!')
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Store a new settings in the browser
|
||||
*
|
||||
* @param String name Name of the setting
|
||||
* @param String val Value of the setting
|
||||
* @returns void
|
||||
*/
|
||||
function store(name, val) {
|
||||
if (typeof (Storage) !== 'undefined') {
|
||||
localStorage.setItem(name, val)
|
||||
} else {
|
||||
window.alert('Please use a modern browser to properly view this template!')
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Toggles layout classes
|
||||
*
|
||||
* @param String cls the layout class to toggle
|
||||
* @returns void
|
||||
*/
|
||||
function changeLayout(cls) {
|
||||
$('body').toggleClass(cls)
|
||||
$layout.fixSidebar()
|
||||
if ($('body').hasClass('fixed') && cls == 'fixed') {
|
||||
$pushMenu.expandOnHover()
|
||||
$layout.activate()
|
||||
}
|
||||
$controlSidebar.fix()
|
||||
}
|
||||
|
||||
/**
|
||||
* Replaces the old skin with the new skin
|
||||
* @param String cls the new skin class
|
||||
* @returns Boolean false to prevent link's default action
|
||||
*/
|
||||
function changeSkin(cls) {
|
||||
$.each(mySkins, function (i) {
|
||||
$('body').removeClass(mySkins[i])
|
||||
})
|
||||
|
||||
$('body').addClass(cls)
|
||||
store('skin', cls)
|
||||
return false
|
||||
}
|
||||
|
||||
/**
|
||||
* Retrieve default settings and apply them to the template
|
||||
*
|
||||
* @returns void
|
||||
*/
|
||||
function setup() {
|
||||
var tmp = get('skin')
|
||||
if (tmp && $.inArray(tmp, mySkins))
|
||||
changeSkin(tmp)
|
||||
|
||||
// Add the change skin listener
|
||||
$('[data-skin]').on('click', function (e) {
|
||||
if ($(this).hasClass('knob'))
|
||||
return
|
||||
e.preventDefault()
|
||||
changeSkin($(this).data('skin'))
|
||||
})
|
||||
|
||||
// Add the layout manager
|
||||
$('[data-layout]').on('click', function () {
|
||||
changeLayout($(this).data('layout'))
|
||||
})
|
||||
|
||||
$('[data-controlsidebar]').on('click', function () {
|
||||
changeLayout($(this).data('controlsidebar'))
|
||||
var slide = !$controlSidebar.options.slide
|
||||
|
||||
$controlSidebar.options.slide = slide
|
||||
if (!slide)
|
||||
$('.control-sidebar').removeClass('control-sidebar-open')
|
||||
})
|
||||
|
||||
$('[data-sidebarskin="toggle"]').on('click', function () {
|
||||
var $sidebar = $('.control-sidebar')
|
||||
if ($sidebar.hasClass('control-sidebar-dark')) {
|
||||
$sidebar.removeClass('control-sidebar-dark')
|
||||
$sidebar.addClass('control-sidebar-light')
|
||||
} else {
|
||||
$sidebar.removeClass('control-sidebar-light')
|
||||
$sidebar.addClass('control-sidebar-dark')
|
||||
}
|
||||
})
|
||||
|
||||
$('[data-enable="expandOnHover"]').on('click', function () {
|
||||
$(this).attr('disabled', true)
|
||||
$pushMenu.expandOnHover()
|
||||
if (!$('body').hasClass('sidebar-collapse'))
|
||||
$('[data-layout="sidebar-collapse"]').click()
|
||||
})
|
||||
|
||||
// Reset options
|
||||
if ($('body').hasClass('fixed')) {
|
||||
$('[data-layout="fixed"]').attr('checked', 'checked')
|
||||
}
|
||||
if ($('body').hasClass('layout-boxed')) {
|
||||
$('[data-layout="layout-boxed"]').attr('checked', 'checked')
|
||||
}
|
||||
if ($('body').hasClass('sidebar-collapse')) {
|
||||
$('[data-layout="sidebar-collapse"]').attr('checked', 'checked')
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
// Create the new tab
|
||||
var $tabPane = $('<div />', {
|
||||
'id': 'control-sidebar-theme-demo-options-tab',
|
||||
'class': 'tab-pane active'
|
||||
})
|
||||
|
||||
// Create the tab button
|
||||
var $tabButton = $('<li />', {'class': 'active'})
|
||||
.html('<a href=\'#control-sidebar-theme-demo-options-tab\' data-toggle=\'tab\'>'
|
||||
+ '<i class="fa fa-wrench"></i>'
|
||||
+ '</a>')
|
||||
|
||||
// Add the tab button to the right sidebar tabs
|
||||
$('[href="#control-sidebar-home-tab"]')
|
||||
.parent()
|
||||
.before($tabButton)
|
||||
|
||||
// Create the menu
|
||||
var $demoSettings = $('<div />')
|
||||
|
||||
// Layout options
|
||||
$demoSettings.append(
|
||||
'<h4 class="control-sidebar-heading">'
|
||||
+ 'Layout Options'
|
||||
+ '</h4>'
|
||||
// Fixed layout
|
||||
+ '<div class="form-group">'
|
||||
+ '<label class="control-sidebar-subheading">'
|
||||
+ '<input type="checkbox"data-layout="fixed"class="pull-right"/> '
|
||||
+ 'Fixed layout'
|
||||
+ '</label>'
|
||||
+ '<p>Activate the fixed layout. You can\'t use fixed and boxed layouts together</p>'
|
||||
+ '</div>'
|
||||
// Boxed layout
|
||||
+ '<div class="form-group">'
|
||||
+ '<label class="control-sidebar-subheading">'
|
||||
+ '<input type="checkbox"data-layout="layout-boxed" class="pull-right"/> '
|
||||
+ 'Boxed Layout'
|
||||
+ '</label>'
|
||||
+ '<p>Activate the boxed layout</p>'
|
||||
+ '</div>'
|
||||
// Sidebar Toggle
|
||||
+ '<div class="form-group">'
|
||||
+ '<label class="control-sidebar-subheading">'
|
||||
+ '<input type="checkbox"data-layout="sidebar-collapse"class="pull-right"/> '
|
||||
+ 'Toggle Sidebar'
|
||||
+ '</label>'
|
||||
+ '<p>Toggle the left sidebar\'s state (open or collapse)</p>'
|
||||
+ '</div>'
|
||||
// Sidebar mini expand on hover toggle
|
||||
+ '<div class="form-group">'
|
||||
+ '<label class="control-sidebar-subheading">'
|
||||
+ '<input type="checkbox"data-enable="expandOnHover"class="pull-right"/> '
|
||||
+ 'Sidebar Expand on Hover'
|
||||
+ '</label>'
|
||||
+ '<p>Let the sidebar mini expand on hover</p>'
|
||||
+ '</div>'
|
||||
// Control Sidebar Toggle
|
||||
+ '<div class="form-group">'
|
||||
+ '<label class="control-sidebar-subheading">'
|
||||
+ '<input type="checkbox"data-controlsidebar="control-sidebar-open"class="pull-right"/> '
|
||||
+ 'Toggle Right Sidebar Slide'
|
||||
+ '</label>'
|
||||
+ '<p>Toggle between slide over content and push content effects</p>'
|
||||
+ '</div>'
|
||||
// Control Sidebar Skin Toggle
|
||||
+ '<div class="form-group">'
|
||||
+ '<label class="control-sidebar-subheading">'
|
||||
+ '<input type="checkbox"data-sidebarskin="toggle"class="pull-right"/> '
|
||||
+ 'Toggle Right Sidebar Skin'
|
||||
+ '</label>'
|
||||
+ '<p>Toggle between dark and light skins for the right sidebar</p>'
|
||||
+ '</div>'
|
||||
)
|
||||
var $skinsList = $('<ul />', {'class': 'list-unstyled clearfix'})
|
||||
|
||||
// Dark sidebar skins
|
||||
var $skinBlue =
|
||||
$('<li />', {style: 'float:left; width: 33.33333%; padding: 5px;'})
|
||||
.append('<a href="javascript:void(0)" data-skin="skin-blue" style="display: block; box-shadow: 0 0 3px rgba(0,0,0,0.4)" class="clearfix full-opacity-hover">'
|
||||
+ '<div><span style="display:block; width: 20%; float: left; height: 7px; background: #367fa9"></span><span class="bg-light-blue" style="display:block; width: 80%; float: left; height: 7px;"></span></div>'
|
||||
+ '<div><span style="display:block; width: 20%; float: left; height: 20px; background: #222d32"></span><span style="display:block; width: 80%; float: left; height: 20px; background: #f4f5f7"></span></div>'
|
||||
+ '</a>'
|
||||
+ '<p class="text-center no-margin">Blue</p>')
|
||||
$skinsList.append($skinBlue)
|
||||
var $skinBlack =
|
||||
$('<li />', {style: 'float:left; width: 33.33333%; padding: 5px;'})
|
||||
.append('<a href="javascript:void(0)" data-skin="skin-black" style="display: block; box-shadow: 0 0 3px rgba(0,0,0,0.4)" class="clearfix full-opacity-hover">'
|
||||
+ '<div style="box-shadow: 0 0 2px rgba(0,0,0,0.1)" class="clearfix"><span style="display:block; width: 20%; float: left; height: 7px; background: #fefefe"></span><span style="display:block; width: 80%; float: left; height: 7px; background: #fefefe"></span></div>'
|
||||
+ '<div><span style="display:block; width: 20%; float: left; height: 20px; background: #222"></span><span style="display:block; width: 80%; float: left; height: 20px; background: #f4f5f7"></span></div>'
|
||||
+ '</a>'
|
||||
+ '<p class="text-center no-margin">Black</p>')
|
||||
$skinsList.append($skinBlack)
|
||||
var $skinPurple =
|
||||
$('<li />', {style: 'float:left; width: 33.33333%; padding: 5px;'})
|
||||
.append('<a href="javascript:void(0)" data-skin="skin-purple" style="display: block; box-shadow: 0 0 3px rgba(0,0,0,0.4)" class="clearfix full-opacity-hover">'
|
||||
+ '<div><span style="display:block; width: 20%; float: left; height: 7px;" class="bg-purple-active"></span><span class="bg-purple" style="display:block; width: 80%; float: left; height: 7px;"></span></div>'
|
||||
+ '<div><span style="display:block; width: 20%; float: left; height: 20px; background: #222d32"></span><span style="display:block; width: 80%; float: left; height: 20px; background: #f4f5f7"></span></div>'
|
||||
+ '</a>'
|
||||
+ '<p class="text-center no-margin">Purple</p>')
|
||||
$skinsList.append($skinPurple)
|
||||
var $skinGreen =
|
||||
$('<li />', {style: 'float:left; width: 33.33333%; padding: 5px;'})
|
||||
.append('<a href="javascript:void(0)" data-skin="skin-green" style="display: block; box-shadow: 0 0 3px rgba(0,0,0,0.4)" class="clearfix full-opacity-hover">'
|
||||
+ '<div><span style="display:block; width: 20%; float: left; height: 7px;" class="bg-green-active"></span><span class="bg-green" style="display:block; width: 80%; float: left; height: 7px;"></span></div>'
|
||||
+ '<div><span style="display:block; width: 20%; float: left; height: 20px; background: #222d32"></span><span style="display:block; width: 80%; float: left; height: 20px; background: #f4f5f7"></span></div>'
|
||||
+ '</a>'
|
||||
+ '<p class="text-center no-margin">Green</p>')
|
||||
$skinsList.append($skinGreen)
|
||||
var $skinRed =
|
||||
$('<li />', {style: 'float:left; width: 33.33333%; padding: 5px;'})
|
||||
.append('<a href="javascript:void(0)" data-skin="skin-red" style="display: block; box-shadow: 0 0 3px rgba(0,0,0,0.4)" class="clearfix full-opacity-hover">'
|
||||
+ '<div><span style="display:block; width: 20%; float: left; height: 7px;" class="bg-red-active"></span><span class="bg-red" style="display:block; width: 80%; float: left; height: 7px;"></span></div>'
|
||||
+ '<div><span style="display:block; width: 20%; float: left; height: 20px; background: #222d32"></span><span style="display:block; width: 80%; float: left; height: 20px; background: #f4f5f7"></span></div>'
|
||||
+ '</a>'
|
||||
+ '<p class="text-center no-margin">Red</p>')
|
||||
$skinsList.append($skinRed)
|
||||
var $skinYellow =
|
||||
$('<li />', {style: 'float:left; width: 33.33333%; padding: 5px;'})
|
||||
.append('<a href="javascript:void(0)" data-skin="skin-yellow" style="display: block; box-shadow: 0 0 3px rgba(0,0,0,0.4)" class="clearfix full-opacity-hover">'
|
||||
+ '<div><span style="display:block; width: 20%; float: left; height: 7px;" class="bg-yellow-active"></span><span class="bg-yellow" style="display:block; width: 80%; float: left; height: 7px;"></span></div>'
|
||||
+ '<div><span style="display:block; width: 20%; float: left; height: 20px; background: #222d32"></span><span style="display:block; width: 80%; float: left; height: 20px; background: #f4f5f7"></span></div>'
|
||||
+ '</a>'
|
||||
+ '<p class="text-center no-margin">Yellow</p>')
|
||||
$skinsList.append($skinYellow)
|
||||
|
||||
// Light sidebar skins
|
||||
var $skinBlueLight =
|
||||
$('<li />', {style: 'float:left; width: 33.33333%; padding: 5px;'})
|
||||
.append('<a href="javascript:void(0)" data-skin="skin-blue-light" style="display: block; box-shadow: 0 0 3px rgba(0,0,0,0.4)" class="clearfix full-opacity-hover">'
|
||||
+ '<div><span style="display:block; width: 20%; float: left; height: 7px; background: #367fa9"></span><span class="bg-light-blue" style="display:block; width: 80%; float: left; height: 7px;"></span></div>'
|
||||
+ '<div><span style="display:block; width: 20%; float: left; height: 20px; background: #f9fafc"></span><span style="display:block; width: 80%; float: left; height: 20px; background: #f4f5f7"></span></div>'
|
||||
+ '</a>'
|
||||
+ '<p class="text-center no-margin" style="font-size: 12px">Blue Light</p>')
|
||||
$skinsList.append($skinBlueLight)
|
||||
var $skinBlackLight =
|
||||
$('<li />', {style: 'float:left; width: 33.33333%; padding: 5px;'})
|
||||
.append('<a href="javascript:void(0)" data-skin="skin-black-light" style="display: block; box-shadow: 0 0 3px rgba(0,0,0,0.4)" class="clearfix full-opacity-hover">'
|
||||
+ '<div style="box-shadow: 0 0 2px rgba(0,0,0,0.1)" class="clearfix"><span style="display:block; width: 20%; float: left; height: 7px; background: #fefefe"></span><span style="display:block; width: 80%; float: left; height: 7px; background: #fefefe"></span></div>'
|
||||
+ '<div><span style="display:block; width: 20%; float: left; height: 20px; background: #f9fafc"></span><span style="display:block; width: 80%; float: left; height: 20px; background: #f4f5f7"></span></div>'
|
||||
+ '</a>'
|
||||
+ '<p class="text-center no-margin" style="font-size: 12px">Black Light</p>')
|
||||
$skinsList.append($skinBlackLight)
|
||||
var $skinPurpleLight =
|
||||
$('<li />', {style: 'float:left; width: 33.33333%; padding: 5px;'})
|
||||
.append('<a href="javascript:void(0)" data-skin="skin-purple-light" style="display: block; box-shadow: 0 0 3px rgba(0,0,0,0.4)" class="clearfix full-opacity-hover">'
|
||||
+ '<div><span style="display:block; width: 20%; float: left; height: 7px;" class="bg-purple-active"></span><span class="bg-purple" style="display:block; width: 80%; float: left; height: 7px;"></span></div>'
|
||||
+ '<div><span style="display:block; width: 20%; float: left; height: 20px; background: #f9fafc"></span><span style="display:block; width: 80%; float: left; height: 20px; background: #f4f5f7"></span></div>'
|
||||
+ '</a>'
|
||||
+ '<p class="text-center no-margin" style="font-size: 12px">Purple Light</p>')
|
||||
$skinsList.append($skinPurpleLight)
|
||||
var $skinGreenLight =
|
||||
$('<li />', {style: 'float:left; width: 33.33333%; padding: 5px;'})
|
||||
.append('<a href="javascript:void(0)" data-skin="skin-green-light" style="display: block; box-shadow: 0 0 3px rgba(0,0,0,0.4)" class="clearfix full-opacity-hover">'
|
||||
+ '<div><span style="display:block; width: 20%; float: left; height: 7px;" class="bg-green-active"></span><span class="bg-green" style="display:block; width: 80%; float: left; height: 7px;"></span></div>'
|
||||
+ '<div><span style="display:block; width: 20%; float: left; height: 20px; background: #f9fafc"></span><span style="display:block; width: 80%; float: left; height: 20px; background: #f4f5f7"></span></div>'
|
||||
+ '</a>'
|
||||
+ '<p class="text-center no-margin" style="font-size: 12px">Green Light</p>')
|
||||
$skinsList.append($skinGreenLight)
|
||||
var $skinRedLight =
|
||||
$('<li />', {style: 'float:left; width: 33.33333%; padding: 5px;'})
|
||||
.append('<a href="javascript:void(0)" data-skin="skin-red-light" style="display: block; box-shadow: 0 0 3px rgba(0,0,0,0.4)" class="clearfix full-opacity-hover">'
|
||||
+ '<div><span style="display:block; width: 20%; float: left; height: 7px;" class="bg-red-active"></span><span class="bg-red" style="display:block; width: 80%; float: left; height: 7px;"></span></div>'
|
||||
+ '<div><span style="display:block; width: 20%; float: left; height: 20px; background: #f9fafc"></span><span style="display:block; width: 80%; float: left; height: 20px; background: #f4f5f7"></span></div>'
|
||||
+ '</a>'
|
||||
+ '<p class="text-center no-margin" style="font-size: 12px">Red Light</p>')
|
||||
$skinsList.append($skinRedLight)
|
||||
var $skinYellowLight =
|
||||
$('<li />', {style: 'float:left; width: 33.33333%; padding: 5px;'})
|
||||
.append('<a href="javascript:void(0)" data-skin="skin-yellow-light" style="display: block; box-shadow: 0 0 3px rgba(0,0,0,0.4)" class="clearfix full-opacity-hover">'
|
||||
+ '<div><span style="display:block; width: 20%; float: left; height: 7px;" class="bg-yellow-active"></span><span class="bg-yellow" style="display:block; width: 80%; float: left; height: 7px;"></span></div>'
|
||||
+ '<div><span style="display:block; width: 20%; float: left; height: 20px; background: #f9fafc"></span><span style="display:block; width: 80%; float: left; height: 20px; background: #f4f5f7"></span></div>'
|
||||
+ '</a>'
|
||||
+ '<p class="text-center no-margin" style="font-size: 12px">Yellow Light</p>')
|
||||
$skinsList.append($skinYellowLight)
|
||||
|
||||
$demoSettings.append('<h4 class="control-sidebar-heading">Skins</h4>')
|
||||
$demoSettings.append($skinsList)
|
||||
|
||||
$tabPane.append($demoSettings)
|
||||
$('#control-sidebar-home-tab').after($tabPane)
|
||||
|
||||
setup()
|
||||
|
||||
$('[data-toggle="tooltip"]').tooltip()
|
||||
})
|
||||
@@ -1,258 +0,0 @@
|
||||
$(function () {
|
||||
'use strict'
|
||||
|
||||
/**
|
||||
* List of all the available skins
|
||||
*
|
||||
* @type Array
|
||||
*/
|
||||
var mySkins = [
|
||||
'skin-blue',
|
||||
'skin-black',
|
||||
'skin-red',
|
||||
'skin-yellow',
|
||||
'skin-purple',
|
||||
'skin-green',
|
||||
'skin-blue-light',
|
||||
'skin-black-light',
|
||||
'skin-red-light',
|
||||
'skin-yellow-light',
|
||||
'skin-purple-light',
|
||||
'skin-green-light'
|
||||
]
|
||||
|
||||
var $skinsList = $('<ul />', {'class': 'list-unstyled clearfix'})
|
||||
|
||||
// Dark sidebar skins
|
||||
var $skinBlue =
|
||||
$('<li />', {style: 'float:left; width: 33.33333%; padding: 5px;'})
|
||||
.append('<a href="javascript:void(0)" data-skin="skin-blue" style="display: block; box-shadow: 0 0 3px rgba(0,0,0,0.4)" class="clearfix full-opacity-hover">'
|
||||
+ '<div><span style="display:block; width: 20%; float: left; height: 7px; background: #367fa9"></span><span class="bg-light-blue" style="display:block; width: 80%; float: left; height: 7px;"></span></div>'
|
||||
+ '<div><span style="display:block; width: 20%; float: left; height: 20px; background: #222d32"></span><span style="display:block; width: 80%; float: left; height: 20px; background: #f4f5f7"></span></div>'
|
||||
+ '</a>'
|
||||
+ '<p class="text-center no-margin">蓝黑</p>')
|
||||
$skinsList.append($skinBlue)
|
||||
var $skinBlack =
|
||||
$('<li />', {style: 'float:left; width: 33.33333%; padding: 5px;'})
|
||||
.append('<a href="javascript:void(0)" data-skin="skin-black" style="display: block; box-shadow: 0 0 3px rgba(0,0,0,0.4)" class="clearfix full-opacity-hover">'
|
||||
+ '<div style="box-shadow: 0 0 2px rgba(0,0,0,0.1)" class="clearfix"><span style="display:block; width: 20%; float: left; height: 7px; background: #fefefe"></span><span style="display:block; width: 80%; float: left; height: 7px; background: #fefefe"></span></div>'
|
||||
+ '<div><span style="display:block; width: 20%; float: left; height: 20px; background: #222"></span><span style="display:block; width: 80%; float: left; height: 20px; background: #f4f5f7"></span></div>'
|
||||
+ '</a>'
|
||||
+ '<p class="text-center no-margin">白黑</p>')
|
||||
$skinsList.append($skinBlack)
|
||||
var $skinPurple =
|
||||
$('<li />', {style: 'float:left; width: 33.33333%; padding: 5px;'})
|
||||
.append('<a href="javascript:void(0)" data-skin="skin-purple" style="display: block; box-shadow: 0 0 3px rgba(0,0,0,0.4)" class="clearfix full-opacity-hover">'
|
||||
+ '<div><span style="display:block; width: 20%; float: left; height: 7px;" class="bg-purple-active"></span><span class="bg-purple" style="display:block; width: 80%; float: left; height: 7px;"></span></div>'
|
||||
+ '<div><span style="display:block; width: 20%; float: left; height: 20px; background: #222d32"></span><span style="display:block; width: 80%; float: left; height: 20px; background: #f4f5f7"></span></div>'
|
||||
+ '</a>'
|
||||
+ '<p class="text-center no-margin">紫黑</p>')
|
||||
$skinsList.append($skinPurple)
|
||||
var $skinGreen =
|
||||
$('<li />', {style: 'float:left; width: 33.33333%; padding: 5px;'})
|
||||
.append('<a href="javascript:void(0)" data-skin="skin-green" style="display: block; box-shadow: 0 0 3px rgba(0,0,0,0.4)" class="clearfix full-opacity-hover">'
|
||||
+ '<div><span style="display:block; width: 20%; float: left; height: 7px;" class="bg-green-active"></span><span class="bg-green" style="display:block; width: 80%; float: left; height: 7px;"></span></div>'
|
||||
+ '<div><span style="display:block; width: 20%; float: left; height: 20px; background: #222d32"></span><span style="display:block; width: 80%; float: left; height: 20px; background: #f4f5f7"></span></div>'
|
||||
+ '</a>'
|
||||
+ '<p class="text-center no-margin">绿黑</p>')
|
||||
$skinsList.append($skinGreen)
|
||||
var $skinRed =
|
||||
$('<li />', {style: 'float:left; width: 33.33333%; padding: 5px;'})
|
||||
.append('<a href="javascript:void(0)" data-skin="skin-red" style="display: block; box-shadow: 0 0 3px rgba(0,0,0,0.4)" class="clearfix full-opacity-hover">'
|
||||
+ '<div><span style="display:block; width: 20%; float: left; height: 7px;" class="bg-red-active"></span><span class="bg-red" style="display:block; width: 80%; float: left; height: 7px;"></span></div>'
|
||||
+ '<div><span style="display:block; width: 20%; float: left; height: 20px; background: #222d32"></span><span style="display:block; width: 80%; float: left; height: 20px; background: #f4f5f7"></span></div>'
|
||||
+ '</a>'
|
||||
+ '<p class="text-center no-margin">红黑</p>')
|
||||
$skinsList.append($skinRed)
|
||||
var $skinYellow =
|
||||
$('<li />', {style: 'float:left; width: 33.33333%; padding: 5px;'})
|
||||
.append('<a href="javascript:void(0)" data-skin="skin-yellow" style="display: block; box-shadow: 0 0 3px rgba(0,0,0,0.4)" class="clearfix full-opacity-hover">'
|
||||
+ '<div><span style="display:block; width: 20%; float: left; height: 7px;" class="bg-yellow-active"></span><span class="bg-yellow" style="display:block; width: 80%; float: left; height: 7px;"></span></div>'
|
||||
+ '<div><span style="display:block; width: 20%; float: left; height: 20px; background: #222d32"></span><span style="display:block; width: 80%; float: left; height: 20px; background: #f4f5f7"></span></div>'
|
||||
+ '</a>'
|
||||
+ '<p class="text-center no-margin">黄黑</p>')
|
||||
$skinsList.append($skinYellow)
|
||||
|
||||
// Light sidebar skins
|
||||
var $skinBlueLight =
|
||||
$('<li />', {style: 'float:left; width: 33.33333%; padding: 5px;'})
|
||||
.append('<a href="javascript:void(0)" data-skin="skin-blue-light" style="display: block; box-shadow: 0 0 3px rgba(0,0,0,0.4)" class="clearfix full-opacity-hover">'
|
||||
+ '<div><span style="display:block; width: 20%; float: left; height: 7px; background: #367fa9"></span><span class="bg-light-blue" style="display:block; width: 80%; float: left; height: 7px;"></span></div>'
|
||||
+ '<div><span style="display:block; width: 20%; float: left; height: 20px; background: #f9fafc"></span><span style="display:block; width: 80%; float: left; height: 20px; background: #f4f5f7"></span></div>'
|
||||
+ '</a>'
|
||||
+ '<p class="text-center no-margin" style="font-size: 12px">亮蓝</p>')
|
||||
$skinsList.append($skinBlueLight)
|
||||
var $skinBlackLight =
|
||||
$('<li />', {style: 'float:left; width: 33.33333%; padding: 5px;'})
|
||||
.append('<a href="javascript:void(0)" data-skin="skin-black-light" style="display: block; box-shadow: 0 0 3px rgba(0,0,0,0.4)" class="clearfix full-opacity-hover">'
|
||||
+ '<div style="box-shadow: 0 0 2px rgba(0,0,0,0.1)" class="clearfix"><span style="display:block; width: 20%; float: left; height: 7px; background: #fefefe"></span><span style="display:block; width: 80%; float: left; height: 7px; background: #fefefe"></span></div>'
|
||||
+ '<div><span style="display:block; width: 20%; float: left; height: 20px; background: #f9fafc"></span><span style="display:block; width: 80%; float: left; height: 20px; background: #f4f5f7"></span></div>'
|
||||
+ '</a>'
|
||||
+ '<p class="text-center no-margin" style="font-size: 12px">亮</p>')
|
||||
$skinsList.append($skinBlackLight)
|
||||
var $skinPurpleLight =
|
||||
$('<li />', {style: 'float:left; width: 33.33333%; padding: 5px;'})
|
||||
.append('<a href="javascript:void(0)" data-skin="skin-purple-light" style="display: block; box-shadow: 0 0 3px rgba(0,0,0,0.4)" class="clearfix full-opacity-hover">'
|
||||
+ '<div><span style="display:block; width: 20%; float: left; height: 7px;" class="bg-purple-active"></span><span class="bg-purple" style="display:block; width: 80%; float: left; height: 7px;"></span></div>'
|
||||
+ '<div><span style="display:block; width: 20%; float: left; height: 20px; background: #f9fafc"></span><span style="display:block; width: 80%; float: left; height: 20px; background: #f4f5f7"></span></div>'
|
||||
+ '</a>'
|
||||
+ '<p class="text-center no-margin" style="font-size: 12px">亮紫</p>')
|
||||
$skinsList.append($skinPurpleLight)
|
||||
var $skinGreenLight =
|
||||
$('<li />', {style: 'float:left; width: 33.33333%; padding: 5px;'})
|
||||
.append('<a href="javascript:void(0)" data-skin="skin-green-light" style="display: block; box-shadow: 0 0 3px rgba(0,0,0,0.4)" class="clearfix full-opacity-hover">'
|
||||
+ '<div><span style="display:block; width: 20%; float: left; height: 7px;" class="bg-green-active"></span><span class="bg-green" style="display:block; width: 80%; float: left; height: 7px;"></span></div>'
|
||||
+ '<div><span style="display:block; width: 20%; float: left; height: 20px; background: #f9fafc"></span><span style="display:block; width: 80%; float: left; height: 20px; background: #f4f5f7"></span></div>'
|
||||
+ '</a>'
|
||||
+ '<p class="text-center no-margin" style="font-size: 12px">亮绿</p>')
|
||||
$skinsList.append($skinGreenLight)
|
||||
var $skinRedLight =
|
||||
$('<li />', {style: 'float:left; width: 33.33333%; padding: 5px;'})
|
||||
.append('<a href="javascript:void(0)" data-skin="skin-red-light" style="display: block; box-shadow: 0 0 3px rgba(0,0,0,0.4)" class="clearfix full-opacity-hover">'
|
||||
+ '<div><span style="display:block; width: 20%; float: left; height: 7px;" class="bg-red-active"></span><span class="bg-red" style="display:block; width: 80%; float: left; height: 7px;"></span></div>'
|
||||
+ '<div><span style="display:block; width: 20%; float: left; height: 20px; background: #f9fafc"></span><span style="display:block; width: 80%; float: left; height: 20px; background: #f4f5f7"></span></div>'
|
||||
+ '</a>'
|
||||
+ '<p class="text-center no-margin" style="font-size: 12px">亮红</p>')
|
||||
$skinsList.append($skinRedLight)
|
||||
var $skinYellowLight =
|
||||
$('<li />', {style: 'float:left; width: 33.33333%; padding: 5px;'})
|
||||
.append('<a href="javascript:void(0)" data-skin="skin-yellow-light" style="display: block; box-shadow: 0 0 3px rgba(0,0,0,0.4)" class="clearfix full-opacity-hover">'
|
||||
+ '<div><span style="display:block; width: 20%; float: left; height: 7px;" class="bg-yellow-active"></span><span class="bg-yellow" style="display:block; width: 80%; float: left; height: 7px;"></span></div>'
|
||||
+ '<div><span style="display:block; width: 20%; float: left; height: 20px; background: #f9fafc"></span><span style="display:block; width: 80%; float: left; height: 20px; background: #f4f5f7"></span></div>'
|
||||
+ '</a>'
|
||||
+ '<p class="text-center no-margin" style="font-size: 12px">亮黄</p>')
|
||||
$skinsList.append($skinYellowLight)
|
||||
|
||||
$('[data-skin-box] > .content').append($skinsList);
|
||||
|
||||
setup();
|
||||
|
||||
/**
|
||||
* Replaces the old skin with the new skin
|
||||
* @param String cls the new skin class
|
||||
* @returns Boolean false to prevent link's default action
|
||||
*/
|
||||
function changeSkin(cls) {
|
||||
$.each(mySkins, function (i) {
|
||||
$('body').removeClass(mySkins[i])
|
||||
})
|
||||
|
||||
$('body').addClass(cls)
|
||||
store('skin', cls)
|
||||
return false
|
||||
}
|
||||
|
||||
/**
|
||||
* Retrieve default settings and apply them to the template
|
||||
*
|
||||
* @returns void
|
||||
*/
|
||||
function setup() {
|
||||
var tmp = get('skin') || 'skin-blue';
|
||||
if (tmp && $.inArray(tmp, mySkins) >= 0){
|
||||
changeSkin(tmp)
|
||||
}
|
||||
|
||||
// Add the change skin listener
|
||||
$('[data-skin]').on('click', function (e) {
|
||||
if ($(this).hasClass('knob'))
|
||||
return
|
||||
e.preventDefault()
|
||||
changeSkin($(this).data('skin'))
|
||||
})
|
||||
|
||||
$('[data-toggle="control-sidebar"]').click(function(){
|
||||
$("[data-skin-box]").animate({right:"0"}, 500);
|
||||
})
|
||||
|
||||
$('.tool-bar').click(function(){
|
||||
$("[data-skin-box]").animate({right:"-280px"}, 500);
|
||||
})
|
||||
|
||||
$('[data-tab-action]').hover(function(){
|
||||
$(this).find('.dropdown-menu').show();
|
||||
}, function(){
|
||||
$(this).find('.dropdown-menu').hide();
|
||||
})
|
||||
|
||||
$('a[data-action=close]').click(function(e){
|
||||
e.preventDefault();
|
||||
var type = $(this).data('type');
|
||||
if (type == 'current') {
|
||||
$.page.closeMenuItem($('.page-tabs-content a.active').data('id'));
|
||||
}else if(type == 'other'){
|
||||
$('.page-tabs-content a').each(function(){
|
||||
if (!$(this).hasClass('home') && !$(this).hasClass('active')) {
|
||||
$('.mainContent .sent_iframe[data-id="' + $(this).data('id') + '"]').remove();
|
||||
$(this).remove();
|
||||
}
|
||||
})
|
||||
}else if(type == 'right'){
|
||||
$('.page-tabs-content a.active').nextAll('.menuTab').each(function(){
|
||||
if (!$(this).hasClass('home')) {
|
||||
$('.mainContent .sent_iframe[data-id="' + $(this).data('id') + '"]').remove();
|
||||
$(this).remove();
|
||||
}
|
||||
})
|
||||
}else if(type == 'left'){
|
||||
$('.page-tabs-content a.active').prevAll('.menuTab').each(function(){
|
||||
if (!$(this).hasClass('home')) {
|
||||
$('.mainContent .sent_iframe[data-id="' + $(this).data('id') + '"]').remove();
|
||||
$(this).remove();
|
||||
}
|
||||
})
|
||||
}else if(type == 'all'){
|
||||
$('.page-tabs-content a').each(function(){
|
||||
if (!$(this).hasClass('home')) {
|
||||
$('.mainContent .sent_iframe[data-id="' + $(this).data('id') + '"]').remove();
|
||||
$(this).remove();
|
||||
//激活首页
|
||||
$.page.setActiveTab($('.page-tabs-content a.home'));
|
||||
}
|
||||
})
|
||||
}
|
||||
})
|
||||
|
||||
$('a[data-action=url]').click(function(e){
|
||||
e.preventDefault();
|
||||
var type = $(this).data('type');
|
||||
if (type == 'tab') {
|
||||
$.page.createMenuItem($(this).attr('href'), $(this).html());
|
||||
}else if(type == 'open'){
|
||||
$.model.open($(this).text(), $(this).attr('href'));
|
||||
}else if(type == 'msg'){
|
||||
$.operate.get($(this).attr('href'))
|
||||
}
|
||||
})
|
||||
|
||||
$('span[data-action=scroll]').click(function(e){
|
||||
e.preventDefault();
|
||||
var type = $(this).data('type');
|
||||
if (type == 'left') {
|
||||
$.page.scrollToLeft();
|
||||
}else if(type == 'right'){
|
||||
$.page.scrollToRight();
|
||||
}
|
||||
})
|
||||
|
||||
$('.refresh').click(function(){
|
||||
$.page.refreshTab();
|
||||
})
|
||||
|
||||
$('.sidebar-menu a').click(function(e){
|
||||
if($(this).attr('href') != '#'){
|
||||
e.preventDefault();
|
||||
var data = {};
|
||||
if ($(this).attr('target') == 'main-body') {
|
||||
$.page.createMenuItem($(this).attr('href'), $(this).html());
|
||||
}else{
|
||||
$.model.open($(this).text(), $(this).attr('href'));
|
||||
}
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
if (self != top) {
|
||||
parent.location.reload();
|
||||
}
|
||||
})
|
||||
@@ -1,216 +0,0 @@
|
||||
;(function($){
|
||||
$.extend({
|
||||
page : {
|
||||
//计算元素集合的总宽度
|
||||
calSumWidth: function(elements) {
|
||||
var width = 0;
|
||||
$(elements).each(function() {
|
||||
width += $(this).outerWidth(true);
|
||||
});
|
||||
return width;
|
||||
},
|
||||
|
||||
// 激活指定选项卡
|
||||
setActiveTab: function(element) {
|
||||
if (!$(element).hasClass('active')) {
|
||||
var currentId = $(element).data('id');
|
||||
// 显示tab对应的内容区
|
||||
$('.sent_iframe').each(function() {
|
||||
if ($(this).data('id') == currentId) {
|
||||
$(this).show().siblings('.sent_iframe').hide();
|
||||
}
|
||||
});
|
||||
$(element).addClass('active').siblings('.menuTab').removeClass('active');
|
||||
this.scrollToTab(element);
|
||||
}
|
||||
},
|
||||
scrollToTab: function(element){
|
||||
var marginLeftVal = this.calSumWidth($(element).prevAll()),
|
||||
marginRightVal = this.calSumWidth($(element).nextAll()),
|
||||
tabItemVal = this.calSumWidth($('.page-tabs-content .menuTab')),
|
||||
visibleWidth = $(".tab-list").outerWidth(true);
|
||||
|
||||
//实际滚动宽度
|
||||
var scrollVal = 0;
|
||||
if (tabItemVal < visibleWidth || (tabItemVal > visibleWidth && marginLeftVal < visibleWidth)) {
|
||||
scrollVal = 0;
|
||||
}else if(tabItemVal > visibleWidth && marginLeftVal > visibleWidth){
|
||||
scrollVal = marginLeftVal - visibleWidth + $(element).outerWidth(true);
|
||||
}
|
||||
$('.page-tabs-content').animate({
|
||||
marginLeft: 0 - scrollVal + 'px'
|
||||
},
|
||||
"fast");
|
||||
|
||||
$('.page-tab .page-tabs-content a i').click(function(e){
|
||||
e.preventDefault();
|
||||
$.page.closeMenuItem($(this).parent('a').data('id'));
|
||||
})
|
||||
|
||||
$('.page-tab .page-tabs-content a span').click(function(e){
|
||||
e.preventDefault();
|
||||
$.page.setActiveTab($(this).parent('a'));
|
||||
})
|
||||
},
|
||||
|
||||
scrollToLeft: function(){
|
||||
var marginLeftVal = Math.abs(parseInt($('.page-tabs-content').css('margin-left')));
|
||||
// 可视区域非tab宽度
|
||||
var tabOuterWidth = calSumWidth($(".content-tabs").children().not(".menuTabs"));
|
||||
//可视区域tab宽度
|
||||
var visibleWidth = $(".content-tabs").outerWidth(true) - tabOuterWidth;
|
||||
//实际滚动宽度
|
||||
var scrollVal = 0;
|
||||
if (($(".page-tabs-content").width()) < visibleWidth) {
|
||||
return false;
|
||||
} else {
|
||||
var tabElement = $(".menuTab:first");
|
||||
var offsetVal = 0;
|
||||
while ((offsetVal + $(tabElement).outerWidth(true)) <= marginLeftVal) { //找到离当前tab最近的元素
|
||||
offsetVal += $(tabElement).outerWidth(true);
|
||||
tabElement = $(tabElement).next();
|
||||
}
|
||||
offsetVal = 0;
|
||||
if (calSumWidth($(tabElement).prevAll()) > visibleWidth) {
|
||||
while ((offsetVal + $(tabElement).outerWidth(true)) < (visibleWidth) && tabElement.length > 0) {
|
||||
offsetVal += $(tabElement).outerWidth(true);
|
||||
tabElement = $(tabElement).prev();
|
||||
}
|
||||
scrollVal = calSumWidth($(tabElement).prevAll());
|
||||
}
|
||||
}
|
||||
$('.page-tabs-content').animate({
|
||||
marginLeft: 0 - scrollVal + 'px'
|
||||
},
|
||||
"fast");
|
||||
},
|
||||
|
||||
scrollToRight: function(){
|
||||
var marginLeftVal = Math.abs(parseInt($('.page-tabs-content').css('margin-left')));
|
||||
// 可视区域非tab宽度
|
||||
var tabOuterWidth = calSumWidth($(".content-tabs").children().not(".menuTabs"));
|
||||
//可视区域tab宽度
|
||||
var visibleWidth = $(".content-tabs").outerWidth(true) - tabOuterWidth;
|
||||
//实际滚动宽度
|
||||
var scrollVal = 0;
|
||||
if ($(".page-tabs-content").width() < visibleWidth) {
|
||||
return false;
|
||||
} else {
|
||||
var tabElement = $(".menuTab:first");
|
||||
var offsetVal = 0;
|
||||
while ((offsetVal + $(tabElement).outerWidth(true)) <= marginLeftVal) { //找到离当前tab最近的元素
|
||||
offsetVal += $(tabElement).outerWidth(true);
|
||||
tabElement = $(tabElement).next();
|
||||
}
|
||||
offsetVal = 0;
|
||||
while ((offsetVal + $(tabElement).outerWidth(true)) < (visibleWidth) && tabElement.length > 0) {
|
||||
offsetVal += $(tabElement).outerWidth(true);
|
||||
tabElement = $(tabElement).next();
|
||||
}
|
||||
scrollVal = calSumWidth($(tabElement).prevAll());
|
||||
if (scrollVal > 0) {
|
||||
$('.page-tabs-content').animate({
|
||||
marginLeft: 0 - scrollVal + 'px'
|
||||
},
|
||||
"fast");
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
createMenuItem: function(dataUrl, menuName) {
|
||||
if ($(window.parent.document)) {
|
||||
var topWindow = $(window.parent.document);
|
||||
}else{
|
||||
var topWindow = $(window.document);
|
||||
}
|
||||
var flag = true;
|
||||
|
||||
// 选项卡菜单已存在
|
||||
$('.menuTab', topWindow).each(function() {
|
||||
if ($(this).data('id') == dataUrl) {
|
||||
if (!$(this).hasClass('active')) {
|
||||
$(this).addClass('active').siblings('.menuTab').removeClass('active');
|
||||
$('.page-tabs-content').animate({ marginLeft: ""}, "fast");
|
||||
// 显示tab对应的内容区
|
||||
$('.mainContent .sent_iframe', topWindow).each(function() {
|
||||
if ($(this).data('id') == dataUrl) {
|
||||
$(this).show().siblings('.sent_iframe').hide();
|
||||
return false;
|
||||
}
|
||||
});
|
||||
}else{
|
||||
$.page.refreshTab();
|
||||
}
|
||||
flag = false;
|
||||
return false;
|
||||
}
|
||||
});
|
||||
dataIndex = $.common.random(1,100);
|
||||
|
||||
// 选项卡菜单不存在
|
||||
if (flag) {
|
||||
var tabHtml = '<a href="javascript:;" class="active menuTab" data-id="' + dataUrl + '" data-panel="' + dataUrl + '"><span>' + menuName + '</span> <i class="fa fa-times-circle"></i></a>';
|
||||
$('.menuTab', topWindow).removeClass('active');
|
||||
|
||||
// 添加选项卡
|
||||
$('.page-tab .page-tabs-content', topWindow).append(tabHtml);
|
||||
|
||||
// 添加选项卡对应的iframe
|
||||
var iframeHtml = $('<iframe/>', {
|
||||
'class':'sent_iframe',
|
||||
'name' : 'iframe_'+dataIndex,
|
||||
'width' : '100%',
|
||||
'src' : dataUrl,
|
||||
'frameborder' : 0,
|
||||
'data-id': dataUrl,
|
||||
'height':$(window).height() - 148,
|
||||
})
|
||||
$('.mainContent', topWindow).find('iframe.sent_iframe').hide();
|
||||
$('.mainContent', topWindow).append(iframeHtml);
|
||||
}
|
||||
this.scrollToTab($('.menuTab.active'));
|
||||
return false;
|
||||
},
|
||||
|
||||
closeMenuItem: function(dataId){
|
||||
if ($(window.parent.document)) {
|
||||
var topWindow = $(window.parent.document);
|
||||
}else{
|
||||
var topWindow = $(window.document);
|
||||
}
|
||||
if($('.menuTab[data-id="' + dataId + '"]', topWindow).hasClass('home')){
|
||||
$.model.msg('首页不能被关闭!');
|
||||
return;
|
||||
}
|
||||
if($.common.isNotEmpty(dataId)){
|
||||
if ($('.menuTab[data-id="' + dataId + '"]', topWindow).hasClass('active')) {
|
||||
if ($('.menuTab[data-id="' + dataId + '"]', topWindow).next('.menuTab').length > 0) {
|
||||
var activeId = $('.menuTab[data-id="' + dataId + '"]', topWindow).next('.menuTab:eq(0)').data('id');
|
||||
}else{
|
||||
var activeId = $('.menuTab[data-id="' + dataId + '"]', topWindow).prev('.menuTab:last').data('id');
|
||||
}
|
||||
$('.menuTab', topWindow).removeClass('active');
|
||||
$('.mainContent .sent_iframe', topWindow).hide();
|
||||
$('.menuTab[data-id="' + activeId + '"]', topWindow).addClass('active');
|
||||
$('.mainContent .sent_iframe[data-id="' + activeId + '"]', topWindow).show();
|
||||
};
|
||||
//window.parent.$.modal.closeLoading();
|
||||
// 根据dataId关闭指定选项卡
|
||||
$('.menuTab[data-id="' + dataId + '"]', topWindow).remove();
|
||||
// 移除相应tab对应的内容区
|
||||
$('.mainContent .sent_iframe[data-id="' + dataId + '"]', topWindow).remove();
|
||||
return;
|
||||
}
|
||||
},
|
||||
|
||||
// 刷新iframe
|
||||
refreshTab: function() {
|
||||
var currentId = $('.page-tabs-content').find('.active').attr('data-id');
|
||||
var target = $('.sent_iframe[data-id="' + currentId + '"]');
|
||||
var url = target.attr('src');
|
||||
target.attr('src', url).ready();
|
||||
}
|
||||
}
|
||||
})
|
||||
|
||||
})(jQuery)
|
||||
@@ -1,512 +0,0 @@
|
||||
/* PushMenu()
|
||||
* ==========
|
||||
* Adds the push menu functionality to the sidebar.
|
||||
*
|
||||
* @usage: $('.btn').pushMenu(options)
|
||||
* or add [data-toggle="push-menu"] to any button
|
||||
* Pass any option as data-option="value"
|
||||
*/
|
||||
+function ($) {
|
||||
'use strict';
|
||||
|
||||
var DataKey = 'lte.pushmenu';
|
||||
|
||||
var Default = {
|
||||
collapseScreenSize : 767,
|
||||
expandOnHover : false,
|
||||
expandTransitionDelay: 200
|
||||
};
|
||||
|
||||
var Selector = {
|
||||
collapsed : '.sidebar-collapse',
|
||||
open : '.sidebar-open',
|
||||
mainSidebar : '.main-sidebar',
|
||||
contentWrapper: '.content-wrapper',
|
||||
searchInput : '.sidebar-form .form-control',
|
||||
button : '[data-toggle="push-menu"]',
|
||||
mini : '.sidebar-mini',
|
||||
expanded : '.sidebar-expanded-on-hover',
|
||||
layoutFixed : '.fixed',
|
||||
sidebar : '.sidebar'
|
||||
};
|
||||
|
||||
var ClassName = {
|
||||
collapsed : 'sidebar-collapse',
|
||||
open : 'sidebar-open',
|
||||
mini : 'sidebar-mini',
|
||||
expanded : 'sidebar-expanded-on-hover',
|
||||
expandFeature: 'sidebar-mini-expand-feature',
|
||||
layoutFixed : 'fixed'
|
||||
};
|
||||
|
||||
var Event = {
|
||||
expanded : 'expanded.pushMenu',
|
||||
collapsed: 'collapsed.pushMenu'
|
||||
};
|
||||
|
||||
// PushMenu Class Definition
|
||||
// =========================
|
||||
var PushMenu = function (options) {
|
||||
this.options = options;
|
||||
this.init();
|
||||
};
|
||||
|
||||
PushMenu.prototype.init = function () {
|
||||
// if (this.options.expandOnHover
|
||||
// || ($('body').is(Selector.mini + Selector.layoutFixed))) {
|
||||
// this.expandOnHover();
|
||||
// $('body').addClass(ClassName.expandFeature);
|
||||
// }
|
||||
|
||||
$(Selector.contentWrapper).click(function () {
|
||||
// Enable hide menu when clicking on the content-wrapper on small screens
|
||||
if ($(window).width() <= this.options.collapseScreenSize && $('body').hasClass(ClassName.open)) {
|
||||
this.close();
|
||||
}
|
||||
}.bind(this));
|
||||
|
||||
// __Fix for android devices
|
||||
$(Selector.searchInput).click(function (e) {
|
||||
e.stopPropagation();
|
||||
});
|
||||
};
|
||||
|
||||
PushMenu.prototype.toggle = function () {
|
||||
var windowWidth = $(window).width();
|
||||
var isOpen = !$('body').hasClass(ClassName.collapsed);
|
||||
|
||||
if (windowWidth <= this.options.collapseScreenSize) {
|
||||
isOpen = $('body').hasClass(ClassName.open);
|
||||
}
|
||||
|
||||
if (!isOpen) {
|
||||
this.open();
|
||||
} else {
|
||||
this.close();
|
||||
}
|
||||
};
|
||||
|
||||
PushMenu.prototype.open = function () {
|
||||
var windowWidth = $(window).width();
|
||||
|
||||
if (windowWidth > this.options.collapseScreenSize) {
|
||||
$('body').removeClass(ClassName.collapsed)
|
||||
.trigger($.Event(Event.expanded));
|
||||
}
|
||||
else {
|
||||
$('body').addClass(ClassName.open)
|
||||
.trigger($.Event(Event.expanded));
|
||||
}
|
||||
};
|
||||
|
||||
PushMenu.prototype.close = function () {
|
||||
$(Selector.sidebar).slimScroll({ destroy: true }).height('auto').css({overflow:'visible'});
|
||||
var windowWidth = $(window).width();
|
||||
if (windowWidth > this.options.collapseScreenSize) {
|
||||
$('body').addClass(ClassName.collapsed)
|
||||
.trigger($.Event(Event.collapsed));
|
||||
} else {
|
||||
$('body').removeClass(ClassName.open + ' ' + ClassName.collapsed)
|
||||
.trigger($.Event(Event.collapsed));
|
||||
}
|
||||
};
|
||||
|
||||
PushMenu.prototype.expandOnHover = function () {
|
||||
$(Selector.mainSidebar).hover(function () {
|
||||
if ($('body').is(Selector.mini + Selector.collapsed)
|
||||
&& $(window).width() > this.options.collapseScreenSize) {
|
||||
this.expand();
|
||||
}
|
||||
}.bind(this), function () {
|
||||
if ($('body').is(Selector.expanded)) {
|
||||
this.collapse();
|
||||
}
|
||||
}.bind(this));
|
||||
};
|
||||
|
||||
PushMenu.prototype.expand = function () {
|
||||
setTimeout(function () {
|
||||
$('body').removeClass(ClassName.collapsed)
|
||||
.addClass(ClassName.expanded);
|
||||
}, this.options.expandTransitionDelay);
|
||||
};
|
||||
|
||||
PushMenu.prototype.collapse = function () {
|
||||
setTimeout(function () {
|
||||
$('body').removeClass(ClassName.expanded)
|
||||
.addClass(ClassName.collapsed);
|
||||
}, this.options.expandTransitionDelay);
|
||||
};
|
||||
|
||||
// PushMenu Plugin Definition
|
||||
// ==========================
|
||||
function Plugin(option) {
|
||||
return this.each(function () {
|
||||
var $this = $(this);
|
||||
var data = $this.data(DataKey);
|
||||
|
||||
if (!data) {
|
||||
var options = $.extend({}, Default, $this.data(), typeof option == 'object' && option);
|
||||
$this.data(DataKey, (data = new PushMenu(options)));
|
||||
}
|
||||
|
||||
if (option === 'toggle') data.toggle();
|
||||
});
|
||||
}
|
||||
|
||||
var old = $.fn.pushMenu;
|
||||
|
||||
$.fn.pushMenu = Plugin;
|
||||
$.fn.pushMenu.Constructor = PushMenu;
|
||||
|
||||
// No Conflict Mode
|
||||
// ================
|
||||
$.fn.pushMenu.noConflict = function () {
|
||||
$.fn.pushMenu = old;
|
||||
return this;
|
||||
};
|
||||
|
||||
// Data API
|
||||
// ========
|
||||
$(document).on('click', Selector.button, function (e) {
|
||||
e.preventDefault();
|
||||
Plugin.call($(this), 'toggle');
|
||||
});
|
||||
$(window).on('load', function () {
|
||||
Plugin.call($(Selector.button));
|
||||
});
|
||||
}(jQuery);
|
||||
|
||||
/* Tree()
|
||||
* ======
|
||||
* Converts a nested list into a multilevel
|
||||
* tree view menu.
|
||||
*
|
||||
* @Usage: $('.my-menu').tree(options)
|
||||
* or add [data-widget="tree"] to the ul element
|
||||
* Pass any option as data-option="value"
|
||||
*/
|
||||
+function ($) {
|
||||
'use strict';
|
||||
|
||||
var DataKey = 'lte.tree';
|
||||
|
||||
var Default = {
|
||||
animationSpeed: 500,
|
||||
accordion : true,
|
||||
followLink : false,
|
||||
trigger : '.treeview a'
|
||||
};
|
||||
|
||||
var Selector = {
|
||||
tree : '.tree',
|
||||
treeview : '.treeview',
|
||||
treeviewMenu: '.treeview-menu',
|
||||
open : '.menu-open, .active',
|
||||
li : 'li',
|
||||
data : '[data-widget="tree"]',
|
||||
active : '.active'
|
||||
};
|
||||
|
||||
var ClassName = {
|
||||
open: 'menu-open',
|
||||
tree: 'tree'
|
||||
};
|
||||
|
||||
var Event = {
|
||||
collapsed: 'collapsed.tree',
|
||||
expanded : 'expanded.tree'
|
||||
};
|
||||
|
||||
// Tree Class Definition
|
||||
// =====================
|
||||
var Tree = function (element, options) {
|
||||
this.element = element;
|
||||
this.options = options;
|
||||
|
||||
$(this.element).addClass(ClassName.tree);
|
||||
|
||||
$(Selector.treeview + Selector.active, this.element).addClass(ClassName.open);
|
||||
|
||||
this._setUpListeners();
|
||||
};
|
||||
|
||||
Tree.prototype.toggle = function (link, event) {
|
||||
var treeviewMenu = link.next(Selector.treeviewMenu);
|
||||
var parentLi = link.parent();
|
||||
var isOpen = parentLi.hasClass(ClassName.open);
|
||||
|
||||
if (!parentLi.is(Selector.treeview)) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (!this.options.followLink || link.attr('href') === '#') {
|
||||
event.preventDefault();
|
||||
}
|
||||
|
||||
if (isOpen) {
|
||||
this.collapse(treeviewMenu, parentLi);
|
||||
} else {
|
||||
this.expand(treeviewMenu, parentLi);
|
||||
}
|
||||
};
|
||||
|
||||
Tree.prototype.expand = function (tree, parent) {
|
||||
var expandedEvent = $.Event(Event.expanded);
|
||||
|
||||
if (this.options.accordion) {
|
||||
var openMenuLi = parent.siblings(Selector.open);
|
||||
var openTree = openMenuLi.children(Selector.treeviewMenu);
|
||||
this.collapse(openTree, openMenuLi);
|
||||
}
|
||||
|
||||
parent.addClass(ClassName.open);
|
||||
tree.stop().slideDown(this.options.animationSpeed, function () {
|
||||
$(this.element).trigger(expandedEvent);
|
||||
parent.height('auto');
|
||||
}.bind(this));
|
||||
};
|
||||
|
||||
Tree.prototype.collapse = function (tree, parentLi) {
|
||||
var collapsedEvent = $.Event(Event.collapsed);
|
||||
|
||||
//tree.find(Selector.open).removeClass(ClassName.open);
|
||||
parentLi.removeClass(ClassName.open);
|
||||
tree.stop().slideUp(this.options.animationSpeed, function () {
|
||||
//tree.find(Selector.open + ' > ' + Selector.treeview).slideUp();
|
||||
$(this.element).trigger(collapsedEvent);
|
||||
|
||||
// Collapse child items
|
||||
parentLi.find(Selector.treeview).removeClass(ClassName.open).find(Selector.treeviewMenu).hide();
|
||||
}.bind(this));
|
||||
};
|
||||
|
||||
// Private
|
||||
|
||||
Tree.prototype._setUpListeners = function () {
|
||||
var that = this;
|
||||
|
||||
$(this.element).on('click', this.options.trigger, function (event) {
|
||||
that.toggle($(this), event);
|
||||
});
|
||||
};
|
||||
|
||||
// Plugin Definition
|
||||
// =================
|
||||
function Plugin(option) {
|
||||
return this.each(function () {
|
||||
var $this = $(this);
|
||||
var data = $this.data(DataKey);
|
||||
|
||||
if (!data) {
|
||||
var options = $.extend({}, Default, $this.data(), typeof option == 'object' && option);
|
||||
$this.data(DataKey, new Tree($this, options));
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
var old = $.fn.tree;
|
||||
|
||||
$.fn.tree = Plugin;
|
||||
$.fn.tree.Constructor = Tree;
|
||||
|
||||
// No Conflict Mode
|
||||
// ================
|
||||
$.fn.tree.noConflict = function () {
|
||||
$.fn.tree = old;
|
||||
return this;
|
||||
};
|
||||
|
||||
// Tree Data API
|
||||
// =============
|
||||
$(window).on('load', function () {
|
||||
$(Selector.data).each(function () {
|
||||
Plugin.call($(this));
|
||||
});
|
||||
});
|
||||
|
||||
}(jQuery);
|
||||
|
||||
/* Layout()
|
||||
* ========
|
||||
* Implements AdminLTE layout.
|
||||
* Fixes the layout height in case min-height fails.
|
||||
*
|
||||
* @usage activated automatically upon window load.
|
||||
* Configure any options by passing data-option="value"
|
||||
* to the body tag.
|
||||
*/
|
||||
+function ($) {
|
||||
'use strict';
|
||||
|
||||
var DataKey = 'lte.layout';
|
||||
|
||||
var Default = {
|
||||
slimscroll : true,
|
||||
resetHeight: true
|
||||
};
|
||||
|
||||
var Selector = {
|
||||
wrapper : '.wrapper',
|
||||
contentWrapper: '.content-wrapper',
|
||||
layoutBoxed : '.layout-boxed',
|
||||
mainFooter : '.main-footer',
|
||||
mainHeader : '.main-header',
|
||||
mainSidebar : '.main-sidebar',
|
||||
slimScrollDiv : 'slimScrollDiv',
|
||||
sidebar : '.sidebar',
|
||||
controlSidebar: '.control-sidebar',
|
||||
fixed : '.fixed',
|
||||
sidebarMenu : '.sidebar-menu',
|
||||
logo : '.main-header .logo'
|
||||
};
|
||||
|
||||
var ClassName = {
|
||||
fixed : 'fixed',
|
||||
holdTransition: 'hold-transition',
|
||||
sidebarCollapse: 'sidebar-collapse'
|
||||
};
|
||||
|
||||
var Layout = function (options) {
|
||||
this.options = options;
|
||||
this.bindedResize = false;
|
||||
this.activate();
|
||||
};
|
||||
|
||||
Layout.prototype.activate = function () {
|
||||
this.fix();
|
||||
this.fixSidebar();
|
||||
|
||||
$('body').removeClass(ClassName.holdTransition);
|
||||
|
||||
if (this.options.resetHeight) {
|
||||
$('body, html, ' + Selector.wrapper).css({
|
||||
'height' : 'auto',
|
||||
'min-height': '100%'
|
||||
});
|
||||
}
|
||||
|
||||
if (!this.bindedResize) {
|
||||
$(window).resize(function () {
|
||||
this.fix();
|
||||
this.fixSidebar();
|
||||
|
||||
$(Selector.logo + ', ' + Selector.sidebar).one('webkitTransitionEnd otransitionend oTransitionEnd msTransitionEnd transitionend', function () {
|
||||
this.fix();
|
||||
this.fixSidebar();
|
||||
}.bind(this));
|
||||
}.bind(this));
|
||||
|
||||
this.bindedResize = true;
|
||||
}
|
||||
|
||||
$(Selector.sidebarMenu).on('expanded.tree', function () {
|
||||
this.fix();
|
||||
this.fixSidebar();
|
||||
}.bind(this));
|
||||
|
||||
$(Selector.sidebarMenu).on('collapsed.tree', function () {
|
||||
this.fix();
|
||||
this.fixSidebar();
|
||||
}.bind(this));
|
||||
};
|
||||
|
||||
Layout.prototype.fix = function () {
|
||||
// Remove overflow from .wrapper if layout-boxed exists
|
||||
$(Selector.layoutBoxed + ' > ' + Selector.wrapper).css('overflow', 'hidden');
|
||||
|
||||
// Get window height and the wrapper height
|
||||
var footerHeight = $(Selector.mainFooter).outerHeight() || 0;
|
||||
var headerHeight = $(Selector.mainHeader).outerHeight() || 0;
|
||||
var neg = headerHeight + footerHeight;
|
||||
var windowHeight = $(window).height();
|
||||
var sidebarHeight = $(Selector.sidebar).outerHeight() || 0;
|
||||
|
||||
// Set the min-height of the content and sidebar based on
|
||||
// the height of the document.
|
||||
if ($('body').hasClass(ClassName.fixed)) {
|
||||
$(Selector.contentWrapper).css('min-height', windowHeight - footerHeight);
|
||||
$('iframe[class="sent_iframe"]').css('min-height', windowHeight - footerHeight - 100);
|
||||
} else {
|
||||
var postSetHeight;
|
||||
|
||||
if (windowHeight >= sidebarHeight + headerHeight) {
|
||||
$(Selector.contentWrapper).css('min-height', windowHeight - neg);
|
||||
postSetHeight = windowHeight - neg;
|
||||
} else {
|
||||
$(Selector.contentWrapper).css('min-height', sidebarHeight);
|
||||
postSetHeight = sidebarHeight;
|
||||
}
|
||||
|
||||
// Fix for the control sidebar height
|
||||
var $controlSidebar = $(Selector.controlSidebar);
|
||||
if (typeof $controlSidebar !== 'undefined') {
|
||||
if ($controlSidebar.height() > postSetHeight)
|
||||
$(Selector.contentWrapper).css('min-height', $controlSidebar.height());
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
Layout.prototype.fixSidebar = function () {
|
||||
if (!$('body').hasClass(ClassName.sidebarCollapse)) {
|
||||
// Enable slimscroll for fixed layout
|
||||
if (this.options.slimscroll) {
|
||||
if (typeof $.fn.slimScroll !== 'undefined') {
|
||||
// Destroy if it exists
|
||||
$(Selector.sidebar).slimScroll({ destroy: true }).height('auto')
|
||||
|
||||
// Add slimscroll
|
||||
if ($(Selector.mainSidebar).find(Selector.slimScrollDiv).length === 0) {
|
||||
$(Selector.sidebar).slimScroll({
|
||||
height: ($(window).height() - $(Selector.mainHeader).height()) + 'px'
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
}else{
|
||||
if (typeof $.fn.slimScroll !== 'undefined') {
|
||||
$(Selector.sidebar).slimScroll({ destroy: true }).height('auto');
|
||||
}
|
||||
return;
|
||||
}
|
||||
};
|
||||
|
||||
// Plugin Definition
|
||||
// =================
|
||||
function Plugin(option) {
|
||||
return this.each(function () {
|
||||
var $this = $(this);
|
||||
var data = $this.data(DataKey);
|
||||
|
||||
if (!data) {
|
||||
var options = $.extend({}, Default, $this.data(), typeof option === 'object' && option);
|
||||
$this.data(DataKey, (data = new Layout(options)));
|
||||
}
|
||||
|
||||
if (typeof option === 'string') {
|
||||
if (typeof data[option] === 'undefined') {
|
||||
throw new Error('No method named ' + option);
|
||||
}
|
||||
data[option]();
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
var old = $.fn.layout;
|
||||
|
||||
$.fn.layout = Plugin;
|
||||
$.fn.layout.Constuctor = Layout;
|
||||
|
||||
// No conflict mode
|
||||
// ================
|
||||
$.fn.layout.noConflict = function () {
|
||||
$.fn.layout = old;
|
||||
return this;
|
||||
};
|
||||
|
||||
// Layout DATA-API
|
||||
// ===============
|
||||
$(window).on('load', function () {
|
||||
Plugin.call($('body'));
|
||||
});
|
||||
}(jQuery);
|
||||
Reference in New Issue
Block a user