aboutsummaryrefslogtreecommitdiffstats
path: root/src/js
diff options
context:
space:
mode:
authorpzread <netfirewall@gmail.com>2013-07-31 10:04:40 +0800
committerpzread <netfirewall@gmail.com>2013-07-31 10:04:40 +0800
commit02030010c7cef3012a0c733e82a531d83ac9f0ce (patch)
tree2dcb23d420caa81e245bb4a0bebb6baf5256c106 /src/js
parent9dc5cd1914a9ab6821e6835f4215149bb46aa595 (diff)
downloadtaiwan-online-judge-02030010c7cef3012a0c733e82a531d83ac9f0ce.tar
taiwan-online-judge-02030010c7cef3012a0c733e82a531d83ac9f0ce.tar.gz
taiwan-online-judge-02030010c7cef3012a0c733e82a531d83ac9f0ce.tar.bz2
taiwan-online-judge-02030010c7cef3012a0c733e82a531d83ac9f0ce.tar.lz
taiwan-online-judge-02030010c7cef3012a0c733e82a531d83ac9f0ce.tar.xz
taiwan-online-judge-02030010c7cef3012a0c733e82a531d83ac9f0ce.tar.zst
taiwan-online-judge-02030010c7cef3012a0c733e82a531d83ac9f0ce.zip
Upgrade to bootstrap 3.0.0 RC1
Diffstat (limited to 'src/js')
-rw-r--r--src/js/com.js54
-rw-r--r--src/js/imc.js4
-rw-r--r--src/js/index.js10
-rw-r--r--src/js/mail.js29
-rw-r--r--src/js/manage.js30
-rw-r--r--src/js/notice.js6
-rw-r--r--src/js/square.js20
7 files changed, 79 insertions, 74 deletions
diff --git a/src/js/com.js b/src/js/com.js
index 1a6d732..d19c8fd 100644
--- a/src/js/com.js
+++ b/src/js/com.js
@@ -19,11 +19,11 @@ var WebSocketConnection = function(link,ws,file_addr){
that.send_msg = function(data){
ws.send(new Blob([data],{'type':'application/octet-stream'}))
};
- that.send_file = function(filekey,blob,callback){
+ that.send_file = function(filekey,blob,callback,prog_callback){
var i;
- var file_ws = new Array(4);
+ var file_ws = new Array(8);
var filesize = blob.size;
- var partsize = Math.ceil(filesize / 4);
+ var partsize = Math.ceil(filesize / 8);
var count = 0;
function _callback(err){
@@ -33,7 +33,7 @@ var WebSocketConnection = function(link,ws,file_addr){
delete sendfile_filekeymap[filekey];
- for(i = 0;i < 4;i++){
+ for(i = 0;i < 8;i++){
if(file_ws[i] != undefined){
file_ws[i].close();
}
@@ -42,7 +42,7 @@ var WebSocketConnection = function(link,ws,file_addr){
callback(err);
}
- for(i = 0;i < 4;i++){
+ for(i = 0;i < 8;i++){
file_ws[i] = new WebSocket('ws://' + file_addr + '/conn');
file_ws[i].onopen = function(idx){return function(){
var ws = file_ws[idx];
@@ -52,7 +52,7 @@ var WebSocketConnection = function(link,ws,file_addr){
ws.onmessage = function(e){
if(off >= end){
count += 1;
- if(count == 4){
+ if(count == 8){
_callback();
}
}else{
@@ -195,7 +195,7 @@ var com = new function(){
j_e.empty();
j_e.attr('checked',null);
}else{
- j_e.append($('<i class="icon-ok"></i>'));
+ j_e.append($('<i class="glyphicon glyphicon-ok"></i>'));
j_e.attr('checked','checked');
}
@@ -240,6 +240,8 @@ var com = new function(){
$(document).on('click','span.check',function(e){
var j_e = $(e.target);
+ console.log('test');
+
if(!j_e.is('span.check')){
j_e = j_e.parent('span.check');
}
@@ -603,7 +605,7 @@ var com = new function(){
ex($('[exheight="true"]'),'height');
ex($('[exminheight="true"]'),'min-height');
- $('.modal-body').css('max-height',(winheight * 0.9 - 192) + 'px');
+ //$('.modal-body').css('max-height',(winheight * 0.9 - 192) + 'px');
};
that.get_cookie = function(){
var ret;
@@ -690,7 +692,7 @@ var com = new function(){
return codebox;
};
- that.create_pagination = function(j_div,start,end,curr,step){
+ that.create_pagination = function(j_ul,start,end,curr,step){
var i;
var j_ul;
var j_li;
@@ -701,11 +703,8 @@ var com = new function(){
end = Math.floor(Math.max(0,(end - 1)) / step);
curr = Math.floor(curr / step);
- j_div.empty();
-
- j_div.addClass('pagination');
- j_div.append('<ul></ul>');
- j_ul = j_div.find('ul')
+ j_ul.empty();
+ j_ul.addClass('pagination');
j_li = $('<li class="prev"><a href="">←</a></li>');
if(curr == 0){
@@ -783,25 +782,25 @@ var com = new function(){
var left;
var top;
- left = 6;
- top = 4;
+ left = 12;
+ top = 8;
if((j_tag = j_box.find('span.tag:last')).length == 1){
pos = j_tag.position();
- left += pos.left + j_tag.width() + 14;
+ left += pos.left + j_tag.width() + 20;
- top += pos.top + j_tag.height() + 1;
+ top += pos.top + j_tag.height() + 2;
if((inwidth - left) < 70){
- left = 6;
- top += 6;
+ left = 12;
+ top += 8;
}else{
top -= (j_tag.height() + 2);
}
}
- j_input.width(inwidth - left + 6);
j_input.css('padding-left',left);
j_input.css('padding-top',top);
+ j_input.css('height',top + 30);
}
function _match(value){
var i;
@@ -884,12 +883,11 @@ var com = new function(){
}
}
function _init(){
- j_input.css('width','');
- width = j_input.width() + 14;
- inwidth = width - 14;
+ j_div.css('width','100%');
+ width = j_div.width();
+ inwidth = width - 24;
- j_div.width(width);
- j_input.width(inwidth);
+ j_box.width(inwidth);
j_menu.width(width - 2);
}
function _set_words(new_words){
@@ -942,7 +940,7 @@ var com = new function(){
j_div.empty();
j_div.addClass('tagbox');
- j_div.append($('<div></div><input type="text"><ul class="dropdown-menu" role="menu" aria-labelledby="dropdownMenu"></ul>'));
+ j_div.append($('<div></div><input class="form-control" type="text"><ul class="dropdown-menu" role="menu" aria-labelledby="dropdownMenu"></ul>'));
j_box = j_div.find('div');
j_input = j_div.find('input');
@@ -1043,7 +1041,7 @@ var com = new function(){
}
j_span.text(text);
- j_i = $('<i class="icon-remove-circle icon-white"></i>');
+ j_i = $('<i class="glyphicon glyphicon-remove-circle"></i>');
j_span.append(j_i);
j_i.on('click',function(e){
j_span.remove();
diff --git a/src/js/imc.js b/src/js/imc.js
index 05ce6be..103e4cb 100644
--- a/src/js/imc.js
+++ b/src/js/imc.js
@@ -378,13 +378,15 @@ var imc = new function(){
that.sendfile = function(dst_link,
blob,
filekey_callback,
- result_callback){
+ result_callback,
+ prog_callback){
var filekey = self_link + '_' + Math.random();
info_filekeymap[filekey] = {
'blob':blob,
'result_callback':result_callback,
+ 'prog_callback':prog_callback,
'callback':function(err){
if(ret_sendfile(filekey,err) && err != undefined){
that.call(dst_link + 'imc/','abort_sendfile',65536,null,filekey,err);
diff --git a/src/js/index.js b/src/js/index.js
index 1058dc8..c18543a 100644
--- a/src/js/index.js
+++ b/src/js/index.js
@@ -130,8 +130,8 @@ var index = new function(){
j_li = j_menu.find('div.menu li.profile');
j_li.find('a').attr('href','/toj/user:' + user.uid + '/main/');
j_li.show();
- j_menu.find('div.menu li.mail').show();
- j_menu.find('div.menu li.manage').show();
+ j_menu.find('div.menu a.mail').show();
+ j_menu.find('div.menu a.manage').show();
}
});
@@ -150,17 +150,17 @@ var index = new function(){
j_a.text(text);
j_a.attr('href',link);
- j_header.find('ul.tabnav').append(j_li);
+ j_header.find('div.container ul.navbar-nav').append(j_li);
j_li.active = function(){
- j_header.find('ul.tabnav > li.active').removeClass('active');
+ j_header.find('div.container ul.navbar-nav > li.active').removeClass('active');
j_li.addClass('active');
};
return j_li;
};
that.clear_tabnav = function(){
- j_header.find('ul.tabnav').empty();
+ j_header.find('div.container ul.navbar-nav').empty();
};
that.add_alert = function(type,title,content,autofade){
var j_alert;
diff --git a/src/js/mail.js b/src/js/mail.js
index 8b1fc36..f6a9b83 100644
--- a/src/js/mail.js
+++ b/src/js/mail.js
@@ -59,7 +59,7 @@ var mail = new function(){
com.call_backend('core/mail/','get_mail_count',function(result){
var i;
- var j_div = j_index_page.find('div.pagination');
+ var j_ul = j_index_page.find('ul.pagination');
var offs;
var as;
var pfix;
@@ -73,8 +73,8 @@ var mail = new function(){
pfix = '/toj/mail/backup:';
}
- offs = com.create_pagination(j_div,0,result.data.tot_count,maillist_off,20);
- as = j_div.find('a');
+ offs = com.create_pagination(j_ul,0,result.data.tot_count,maillist_off,20);
+ as = j_ul.find('a');
for(i = 0;i < as.length;i++){
$(as[i]).attr('href',pfix + offs[i] + '/');
}
@@ -140,8 +140,10 @@ var mail = new function(){
j_maillist = j_index_page.find('table.maillist > tbody');
j_newmail = j_index_page.find('div.newmail');
j_readmail = j_index_page.find('div.readmail');
- newmail_content = com.create_codebox(j_newmail.find('div.content'),'text/html');
- readmail_content = com.create_codebox(j_readmail.find('div.content'),'text/html',true);
+ newmail_content = j_newmail.find('div.content').codebox(
+ {'mode':'text/html'});
+ readmail_content = j_readmail.find('div.content').codebox(
+ {'mode':'text/html','readonly':true});
inbox_tabnav = index.add_tabnav('收件匣','/toj/mail/inbox/');
backup_tabnav = index.add_tabnav('寄件備份','/toj/mail/backup/');
@@ -177,10 +179,11 @@ var mail = new function(){
}
});
- j_newmail.on('shown',function(e){
+ j_newmail.on('shown.bs.modal',function(e){
+ console.log('test');
newmail_content.refresh();
});
- j_newmail.on('hide',function(e){
+ j_newmail.on('hide.bs.modal',function(e){
j_newmail.find('input').val('');
newmail_content.setValue('');
});
@@ -219,7 +222,7 @@ var mail = new function(){
j_newmail.modal('hide');
});
- j_readmail.on('show',function(e){
+ j_readmail.on('show.bs.modal',function(e){
com.call_backend('core/mail/','recv_mail',function(result){
var data;
@@ -229,24 +232,24 @@ var mail = new function(){
data = result.data;
j_readmail.find('h3.title').text(data.title);
- j_readmail.find('span.username').text(data.from_username);
+ j_readmail.find('input.username').val(data.from_username);
readmail_content.setValue(data.content);
}
},readmail_mailid);
});
- j_readmail.on('shown',function(e){
+ j_readmail.on('shown.bs.modal',function(e){
readmail_content.refresh();
});
- j_readmail.on('hide',function(e){
+ j_readmail.on('hide.bs.modal',function(e){
j_readmail.find('h3.title').text('');
- j_readmail.find('span.from_username').text('');
+ j_readmail.find('input.username').val('');
readmail_content.setValue('');
readmail_mailid = null;
update_maillist();
});
j_readmail.find('button.reply').on('click',function(e){
- j_newmail.find('input.to_username').val(j_readmail.find('span.username').text());
+ j_newmail.find('input.to_username').val(j_readmail.find('input.username').val());
j_newmail.find('input.title').val('Re: ' + j_readmail.find('h3.title').text());
j_readmail.modal('hide');
diff --git a/src/js/manage.js b/src/js/manage.js
index 822b31e..6ebffaf 100644
--- a/src/js/manage.js
+++ b/src/js/manage.js
@@ -156,7 +156,7 @@ var manage = new function(){
});
}
function _item_create(id,title,hidden,start_time,end_time,cateid,intro,logo){
- var j_item = $('<tr class="item"><td class="id"></td><td class="title"><td class="time"><div class="time start"></div><div class="time end"></div></td><td class="hid"></td></td><td class="cate"></td><td class="oper"><div class="btn-group"><button class="btn btn-small set"><i class="icon-cog"></i></button><button class="btn btn-small del"><i class="icon-trash"></i></button></div></td></tr>');
+ var j_item = $('<tr class="item"><td class="id"></td><td class="title"><td class="time"><div class="time start"></div><div class="time end"></div></td><td class="hid"></td></td><td class="cate"></td><td class="oper"><div class="btn-group"><button class="btn btn-default btn-small set"><i class="glyphicon glyphicon-cog"></i></button><button class="btn btn-default btn-small del"><i class="glyphicon glyphicon-trash"></i></button></div></td></tr>');
_item_set(j_item,id,title,hidden,start_time,end_time,cateid,intro,logo);
@@ -346,7 +346,7 @@ var manage = new function(){
j_create.find('button.cancel').on('click',function(e){
j_create.modal('hide');
});
- j_create.on('show',function(e){
+ j_create.on('show.bs.modal',function(e){
_update_sqmod().done(function(sqmod_list){
var i;
var j_sqmod;
@@ -366,7 +366,10 @@ var manage = new function(){
}
});
});
- j_create.on('hide',function(e){
+ j_create.on('shown.bs.modal',function(e){
+ create_tagbox_cate.refresh();
+ });
+ j_create.on('hide.bs.modal',function(e){
j_create.find('input').val('');
j_create.find('img.logo').attr('src',null);
create_tagbox_cate.clear();
@@ -386,7 +389,7 @@ var manage = new function(){
j_logo.attr('src',url);
}
});
- j_set.on('show',function(e){
+ j_set.on('show.bs.modal',function(e){
var i;
var url;
@@ -409,10 +412,9 @@ var manage = new function(){
for(i = 0;i < set_data.cateid.length;i++){
set_tagbox_cate.add_tag(cate_idmap[set_data.cateid[i]]);
}
-
- j_set.on('shown',function(e){
- set_tagbox_cate.refresh();
- });
+ });
+ j_set.on('shown.bs.modal',function(e){
+ set_tagbox_cate.refresh();
});
j_set.find('button.submit').on('click',function(e){
var i;
@@ -470,7 +472,7 @@ var manage = new function(){
j_set.find('button.cancel').on('click',function(e){
j_set.modal('hide');
});
- j_set.on('hide',function(e){
+ j_set.on('hide.bs.modal',function(e){
j_set.find('input').val('');
j_set.find('img.logo').attr('src',null);
set_tagbox_cate.clear();
@@ -524,7 +526,7 @@ var manage = new function(){
});
}
function _item_create(proid,title,hidden,pmodid){
- var j_item = $('<tr class="item"><td class="proid"></td><td class="title"></td><td class="hid"></td><td class="oper"><div class="btn-group"><button class="btn btn-small set"><i class="icon-cog"></i></button><button class="btn btn-small del"><i class="icon-trash"></i></button></div></td></tr>');
+ var j_item = $('<tr class="item"><td class="proid"></td><td class="title"></td><td class="hid"></td><td class="oper"><div class="btn-group"><button class="btn btn-default btn-small set"><i class="glyphicon glyphicon-cog"></i></button><button class="btn btn-default btn-small del"><i class="glyphicon glyphicon-trash"></i></button></div></td></tr>');
_item_set(j_item,proid,title,hidden,pmodid);
@@ -587,7 +589,7 @@ var manage = new function(){
j_create.modal('show');
});
- j_create.on('show',function(e){
+ j_create.on('show.bs.modal',function(e){
_update_pmod().done(function(pmod_list){
var i;
var j_pmod;
@@ -604,7 +606,7 @@ var manage = new function(){
}
});
});
- j_create.on('hide',function(e){
+ j_create.on('hide.bs.modal',function(e){
j_create.find('input').val('');
});
j_create.find('button.submit').on('click',function(e){
@@ -645,7 +647,7 @@ var manage = new function(){
j_create.modal('hide');
});
- j_set.on('show',function(e){
+ j_set.on('show.bs.modal',function(e){
j_set.find('[name="title"]').val(set_data.title);
if(set_data.hidden == false){
j_set.find('[name="hidden"]').val(0);
@@ -653,7 +655,7 @@ var manage = new function(){
j_set.find('[name="hidden"]').val(1);
}
});
- j_set.on('hide',function(e){
+ j_set.on('hide.bs.modal',function(e){
j_set.find('input').val('');
});
j_set.find('button.submit').on('click',function(e){
diff --git a/src/js/notice.js b/src/js/notice.js
index f7a4f41..4389d40 100644
--- a/src/js/notice.js
+++ b/src/js/notice.js
@@ -14,7 +14,7 @@ var notice = new function(){
}
j_noticetag = $('#index_paneltag > div.notice');
- j_noticelist = $('#index_panel > div.notice > ul.nav');
+ j_noticelist = $('#index_panel > div.notice');
j_noticetag.on('click',function(e){
j_noticelist.empty();
@@ -31,12 +31,12 @@ var notice = new function(){
for(i = 0;i < data.length;i++){
notice = data[i];
- j_item = $('<li><a><h5></h5><p></p></a></li>');
+ j_item = $('<a class="list-group-item"><h5></h5><p></p></a>');
j_item.find('h5').text(notice.title);
j_item.find('p').text(notice.content);
if(notice.noticemodid == null){
- j_item.find('a').attr('href','/toj' + notice.metadata);
+ j_item.attr('href','/toj' + notice.metadata);
}
j_noticelist.append(j_item);
diff --git a/src/js/square.js b/src/js/square.js
index e5a75f5..64cc486 100644
--- a/src/js/square.js
+++ b/src/js/square.js
@@ -27,7 +27,7 @@ var square = new function(){
j_oper = j_box.find('div.oper');
j_oper.empty();
if(active == null){
- j_oper.append('<button class="btn btn-primary join" data-loading-text="處理中">加入</button><a class="btn open">開啓</a>');
+ j_oper.append('<button class="btn btn-primary join" data-loading-text="處理中">加入</button><a class="btn btn-default open">開啓</a>');
j_oper.find('button.join').on('click',function(e){
$(this).button('loading');
@@ -48,10 +48,10 @@ var square = new function(){
},id);
});
}else{
- if(active== true){
- j_oper.append('<button class="btn btn-success quit" data-loading-text="處理中">退出</button><a class="btn open">開啓</a>');
+ if(active == true){
+ j_oper.append('<button class="btn btn-success quit" data-loading-text="處理中">退出</button><a class="btn btn-default open">開啓</a>');
}else{
- j_oper.append('<button class="btn btn-warning quit" data-loading-text="處理中">取消申請</button><a class="btn open">開啓</a>');
+ j_oper.append('<button class="btn btn-warning quit" data-loading-text="處理中">取消申請</button><a class="btn btn-default open">開啓</a>');
}
j_oper.find('button.quit').on('click',function(e){
@@ -85,7 +85,7 @@ var square = new function(){
}
}
function box_create(id,logo,title,start_time,end_time,intro,active){
- var j_box = $('<div class="span5 box"><div class="logo"></div><h5 class="title"></h5><div class="time start"></div><div class="time end"></div><p class="intro"></p><div class="btn-group oper"></div></div>');
+ var j_box = $('<div class="col-lg-6 box"><div class="logo"></div><h5 class="title"></h5><div class="time start"></div><div class="time end"></div><p class="intro"></p><div class="btn-group oper"></div></div>');
box_set(j_box,id,logo,title,start_time,end_time,intro,active);
@@ -158,11 +158,11 @@ var square = new function(){
return;
}
- j_cate = $('<li><a href=""></a></li>');
- j_a = j_cate.find('a');
- j_a.text(cateo.catename);
- j_a.on('click',function(e){
+ j_cate = $('<a class="list-group-item" href=""></a>');
+ j_cate.text(cateo.catename);
+ j_cate.on('click',function(e){
$(window).scrollTop(j_indexlist.find('[cateid="' + cateo.cateid + '"]').offset().top - 66);
+
return false;
});
j_catelist.append(j_cate);
@@ -235,7 +235,7 @@ var square = new function(){
square_node.child_delayset('index');
com.loadpage('/toj/html/square.html','/toj/css/square.css').done(function(){
- j_catelist = j_index_page.find('ul.catelist');
+ j_catelist = j_index_page.find('div.catelist');
j_indexlist = j_index_page.find('div.indexlist');
if(user.uid != null){