Mercurial > kallithea
changeset 3066:5d580e9bc730 beta
JS cleanup
author | Marcin Kuzminski <marcin@python-works.com> |
---|---|
date | Thu, 06 Dec 2012 01:20:57 +0100 |
parents | 09e8623362ef |
children | 9b0636e9b16b |
files | rhodecode/public/js/rhodecode.js rhodecode/templates/base/root.html |
diffstat | 2 files changed, 61 insertions(+), 62 deletions(-) [+] |
line wrap: on
line diff
--- a/rhodecode/public/js/rhodecode.js Thu Dec 06 00:53:49 2012 +0100 +++ b/rhodecode/public/js/rhodecode.js Thu Dec 06 01:20:57 2012 +0100 @@ -339,6 +339,58 @@ }); }; +var onSuccessFollow = function(target){ + var f = YUD.get(target.id); + var f_cnt = YUD.get('current_followers_count'); + + if(YUD.hasClass(f, 'follow')){ + f.setAttribute('class','following'); + f.setAttribute('title',_TM['Stop following this repository']); + + if(f_cnt){ + var cnt = Number(f_cnt.innerHTML)+1; + f_cnt.innerHTML = cnt; + } + } + else{ + f.setAttribute('class','follow'); + f.setAttribute('title',_TM['Start following this repository']); + if(f_cnt){ + var cnt = Number(f_cnt.innerHTML)-1; + f_cnt.innerHTML = cnt; + } + } +} + +var toggleFollowingUser = function(target,fallows_user_id,token,user_id){ + args = 'follows_user_id='+fallows_user_id; + args+= '&auth_token='+token; + if(user_id != undefined){ + args+="&user_id="+user_id; + } + YUC.asyncRequest('POST',TOGGLE_FOLLOW_URL,{ + success:function(o){ + onSuccessFollow(target); + } + },args); + return false; +} + +var toggleFollowingRepo = function(target,fallows_repo_id,token,user_id){ + + args = 'follows_repo_id='+fallows_repo_id; + args+= '&auth_token='+token; + if(user_id != undefined){ + args+="&user_id="+user_id; + } + YUC.asyncRequest('POST',TOGGLE_FOLLOW_URL,{ + success:function(o){ + onSuccessFollow(target); + } + },args); + return false; +} + /** * TOOLTIP IMPL.
--- a/rhodecode/templates/base/root.html Thu Dec 06 00:53:49 2012 +0100 +++ b/rhodecode/templates/base/root.html Thu Dec 06 01:20:57 2012 +0100 @@ -53,6 +53,7 @@ 'Selection link': "${_('Selection link')}", }; var _TM = TRANSLATION_MAP; + var TOGGLE_FOLLOW_URL = "${h.url('toggle_following')}"; </script> <script type="text/javascript" src="${h.url('/js/yui.2.9.js', ver=c.rhodecode_version)}"></script> <!--[if lt IE 9]> @@ -63,10 +64,8 @@ <script type="text/javascript" src="${h.url('/js/rhodecode.js', ver=c.rhodecode_version)}"></script> ## EXTRA FOR JS ${self.js_extra()} - <script type="text/javascript"> (function(window,undefined){ - // Prepare var History = window.History; // Note: We are using a capital H instead of a lower h if ( !History.enabled ) { @@ -75,68 +74,16 @@ return false; } })(window); - var follow_base_url = "${h.url('toggle_following')}"; - - var onSuccessFollow = function(target){ - var f = YUD.get(target.id); - var f_cnt = YUD.get('current_followers_count'); - - if(f.getAttribute('class')=='follow'){ - f.setAttribute('class','following'); - f.setAttribute('title',_TM['Stop following this repository']); - - if(f_cnt){ - var cnt = Number(f_cnt.innerHTML)+1; - f_cnt.innerHTML = cnt; - } - } - else{ - f.setAttribute('class','follow'); - f.setAttribute('title',_TM['Start following this repository']); - if(f_cnt){ - var cnt = Number(f_cnt.innerHTML)-1; - f_cnt.innerHTML = cnt; - } - } - } + + YUE.onDOMReady(function(){ + tooltip_activate(); + show_more_event(); + show_changeset_tooltip(); - var toggleFollowingUser = function(target,fallows_user_id,token,user_id){ - args = 'follows_user_id='+fallows_user_id; - args+= '&auth_token='+token; - if(user_id != undefined){ - args+="&user_id="+user_id; - } - YUC.asyncRequest('POST',follow_base_url,{ - success:function(o){ - onSuccessFollow(target); - } - },args); - return false; - } - - var toggleFollowingRepo = function(target,fallows_repo_id,token,user_id){ - - args = 'follows_repo_id='+fallows_repo_id; - args+= '&auth_token='+token; - if(user_id != undefined){ - args+="&user_id="+user_id; - } - YUC.asyncRequest('POST',follow_base_url,{ - success:function(o){ - onSuccessFollow(target); - } - },args); - return false; - } - YUE.onDOMReady(function(){ - tooltip_activate(); - show_more_event(); - show_changeset_tooltip(); - - YUE.on('quick_login_link','click',function(e){ + YUE.on('quick_login_link','click',function(e){ // make sure we don't redirect YUE.preventDefault(e); - + if(YUD.hasClass('quick_login_link','enabled')){ YUD.setStyle('quick_login','display','none'); YUD.removeClass('quick_login_link','enabled'); @@ -149,7 +96,7 @@ usr.focus(); } } - }); + }); }) </script> </%def>