84 lines
2.4 KiB
JavaScript
84 lines
2.4 KiB
JavaScript
|
$(function() {
|
||
|
// var mixedMode = [{
|
||
|
// name: "htmlmixed"
|
||
|
// }, {
|
||
|
// name: "css"
|
||
|
// }, {
|
||
|
// name: "javascript"
|
||
|
// }];
|
||
|
if(/MSIE 8.0/g.test($ua) || /MSIE 9.0/g.test($ua)) {
|
||
|
$('#code-theme').closest('.btn-group').hide();
|
||
|
}
|
||
|
if(!window.localStorage.getItem('code-theme')) {
|
||
|
window.localStorage.setItem('code-theme', 'default')
|
||
|
};
|
||
|
$(window).resize(function() {
|
||
|
getH();
|
||
|
})
|
||
|
getH = function() {
|
||
|
H = $(window).height();
|
||
|
H = H-$('#orbit-bar').height();
|
||
|
H = H-parseInt($('.wrap-inner').css('padding-top'))-parseInt($('.wrap-inner').css('padding-bottom'));
|
||
|
H = H-$('.wrap-inner > h3').outerHeight()-$('#code-tab').outerHeight()-28;
|
||
|
setH();
|
||
|
};
|
||
|
setH = function() {
|
||
|
$('.CodeMirror').css('height',H);
|
||
|
};
|
||
|
codeEditor = [];
|
||
|
$(".code").each(function(i) {
|
||
|
var cE = "cE"+i;
|
||
|
var cE = $(this).codemirror({
|
||
|
mode: $(this).data('mode'),
|
||
|
styleActiveLine: true,
|
||
|
lineNumbers: true,
|
||
|
lineWrapping: true,
|
||
|
autoCloseBrackets: true,
|
||
|
autoCloseTags: true,
|
||
|
tabMode: "indent",
|
||
|
tabSize: 4,
|
||
|
indentUnit: 4,
|
||
|
indentWithTabs: true,
|
||
|
});
|
||
|
cE.setOption("theme", window.localStorage.getItem('code-theme'));
|
||
|
CodeMirror.commands["selectAll"](cE);
|
||
|
var range = { from: cE.getCursor(true), to: cE.getCursor(false) };
|
||
|
cE.autoFormatRange(range.from, range.to);
|
||
|
codeEditor.push(cE);
|
||
|
$('#code-theme > li').eq(window.localStorage.getItem('lidx')).addClass('active')
|
||
|
});
|
||
|
getH();
|
||
|
$('.CodeMirror-sizer').each(function(i) {
|
||
|
if($(this).height() < H ) {
|
||
|
$(this).siblings('.CodeMirror-gutters').css('height',H-30);
|
||
|
}
|
||
|
});
|
||
|
$('#code-theme').delegate('a', clickEvent, function(e) {
|
||
|
theme = $(this).attr('href');
|
||
|
lidx = $(this).parent('li').index();
|
||
|
window.localStorage.setItem('code-theme', theme);
|
||
|
window.localStorage.setItem('lidx', lidx);
|
||
|
var j = null;
|
||
|
$('.tab-pane').each(function() {
|
||
|
if($(this).hasClass('in')) {
|
||
|
j = $(this).index()
|
||
|
}
|
||
|
});
|
||
|
codeEditor[j].setOption("theme", theme);
|
||
|
$(this).parent('li').addClass('active').siblings('li').removeClass('active')
|
||
|
e.preventDefault();
|
||
|
});
|
||
|
$('a[data-toggle="tab"]').on('shown', function (e) {
|
||
|
var j = null;
|
||
|
$('.tab-pane').each(function() {
|
||
|
if($(this).hasClass('in')) {
|
||
|
j = $(this).index()
|
||
|
}
|
||
|
});
|
||
|
codeEditor[j].setOption("theme", window.localStorage.getItem('code-theme'));
|
||
|
});
|
||
|
setTimeout(sethide, 1);
|
||
|
function sethide(){
|
||
|
$(".tab-pane:eq(0)").nextAll(".tab-pane").removeClass("active in");
|
||
|
};
|
||
|
});
|