diff options
Diffstat (limited to 'js/codeq')
-rw-r--r-- | js/codeq/profile.js | 170 |
1 files changed, 85 insertions, 85 deletions
diff --git a/js/codeq/profile.js b/js/codeq/profile.js index cb9ad07..09a0e05 100644 --- a/js/codeq/profile.js +++ b/js/codeq/profile.js @@ -1,85 +1,85 @@ -/* CodeQ: an online programming tutor.
- Copyright (C) 2015 UL FRI
-
-This program is free software: you can redistribute it and/or modify it under
-the terms of the GNU Affero General Public License as published by the Free
-Software Foundation, either version 3 of the License, or (at your option) any
-later version.
-
-This program is distributed in the hope that it will be useful, but WITHOUT
-ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
-FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more
-details.
-
-You should have received a copy of the GNU Affero General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>. */
-
-/**
- * Created by markop on 9/29/15.
- */
-
-(function(){
-
- var jqBtnChangePass = $("#change_pass_profile"),
- jqBtnGoBack = $("#btnProfileGoBack");
-
- codeq.profile = {
- };
-
- codeq.globalStateMachine.register('profile',{
- 'enter': function(){
- jqBtnChangePass.on('click',function(){
- codeq.globalStateMachine.transition('changePassword');
- });
- jqBtnGoBack.on('click',function(){
- history.back();//forces a transition to the previous state
- });
- if(codeq.samlLogin) $('#loggedInViaSamlSpan').css("display","");//show the span if we actually logged in with SAML
- $("#screen_profile").css('display', '');
- $('#disabled').css('display', 'none');
- codeq.comms.getUserStat()
- .then(function (data) {
- if (data.code !== 0) throw new Error('GetUserStat failed, code: ' + data.code + ', message: ' + data.message);
- data = data.stat;
-
- var columns = ['language', 'problem_group', 'problems_count', 'done', 'in_progress'],
- items='<thead><tr>',
- tr_gui = codeq.tr.getDictionary('gui');
-
- $.each(columns, function( key, val ) {
- items+='<th data-tkey="'+ val + '">'+tr_gui[val][codeq.settings['gui_lang']]+'</th>';
- });
- items+='</tr></thead>';
-
- $.each( data, function( object, row ) {
- items+='<tr>';
- if(row['problem_group']) {
- $.each( columns, function( key, val ) {
- items+='<td style="white-space: nowrap">'+row[val]||""+'</td>';
- });
- }
- else {
- $.each( columns, function( key, val ) {
- items+='<td style="white-space: nowrap"><strong>'+(row[val]==null?'(all)':row[val])+'</strong></td>';
- });
- }
- items+='</td>';
- });
-
- $('#table1').html(items)
-
- })
- .fail(function (reason) {
- codeq.log.error('GetUserStat failed: ' + reason, reason);
- alert('GetUserStat failed: ' + reason);
- })
- .done();
- },
- 'exit' : function(){
- jqBtnChangePass.off('click');
- jqBtnGoBack.off('click');
- $("#screen_profile").css('display', 'none');
- $('#loggedInViaSamlSpan').css("display","none");
- }
- });
-})();
+/* CodeQ: an online programming tutor. + Copyright (C) 2015 UL FRI + +This program is free software: you can redistribute it and/or modify it under +the terms of the GNU Affero General Public License as published by the Free +Software Foundation, either version 3 of the License, or (at your option) any +later version. + +This program is distributed in the hope that it will be useful, but WITHOUT +ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS +FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more +details. + +You should have received a copy of the GNU Affero General Public License +along with this program. If not, see <http://www.gnu.org/licenses/>. */ + +/** + * Created by markop on 9/29/15. + */ + +(function(){ + + var jqBtnChangePass = $("#change_pass_profile"), + jqBtnGoBack = $("#btnProfileGoBack"); + + codeq.profile = { + }; + + codeq.globalStateMachine.register('profile',{ + 'enter': function(){ + jqBtnChangePass.on('click',function(){ + codeq.globalStateMachine.transition('changePassword'); + }); + jqBtnGoBack.on('click',function(){ + history.back();//forces a transition to the previous state + }); + if(codeq.samlLogin) $('#loggedInViaSamlSpan').css("display","");//show the span if we actually logged in with SAML + $("#screen_profile").css('display', ''); + $('#disabled').css('display', 'none'); + codeq.comms.getUserStat() + .then(function (data) { + if (data.code !== 0) throw new Error('GetUserStat failed, code: ' + data.code + ', message: ' + data.message); + data = data.stat; + + var columns = ['language', 'problem_group', 'problems_count', 'done', 'in_progress'], + items='<thead><tr>', + tr_gui = codeq.tr.getDictionary('gui'); + + $.each(columns, function( key, val ) { + items+='<th data-tkey="'+ val + '">'+tr_gui[val][codeq.settings['gui_lang']]+'</th>'; + }); + items+='</tr></thead>'; + + $.each( data, function( object, row ) { + items+='<tr>'; + if(row['problem_group']) { + $.each( columns, function( key, val ) { + items+='<td style="white-space: nowrap">'+row[val]||""+'</td>'; + }); + } + else { + $.each( columns, function( key, val ) { + items+='<td style="white-space: nowrap"><strong>'+(row[val]==null?'(all)':row[val])+'</strong></td>'; + }); + } + items+='</td>'; + }); + + $('#table1').html(items) + + }) + .fail(function (reason) { + codeq.log.error('GetUserStat failed: ' + reason, reason); + alert('GetUserStat failed: ' + reason); + }) + .done(); + }, + 'exit' : function(){ + jqBtnChangePass.off('click'); + jqBtnGoBack.off('click'); + $("#screen_profile").css('display', 'none'); + $('#loggedInViaSamlSpan').css("display","none"); + } + }); +})(); |