|
|
## -*- coding: utf-8 -*-
|
|
|
<!DOCTYPE html>
|
|
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
|
|
<head>
|
|
|
<title>${self.title()}</title>
|
|
|
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
|
|
|
<meta name="robots" content="index, nofollow"/>
|
|
|
<link rel="icon" href="${h.url('/images/icons/database_gear.png')}" type="image/png" />
|
|
|
|
|
|
## CSS ###
|
|
|
<%def name="css()">
|
|
|
<link rel="stylesheet" type="text/css" href="${h.url('/css/style.css')}" media="screen"/>
|
|
|
<link rel="stylesheet" type="text/css" href="${h.url('/css/pygments.css')}"/>
|
|
|
## EXTRA FOR CSS
|
|
|
${self.css_extra()}
|
|
|
</%def>
|
|
|
<%def name="css_extra()">
|
|
|
</%def>
|
|
|
|
|
|
${self.css()}
|
|
|
|
|
|
%if c.ga_code:
|
|
|
<!-- Analytics -->
|
|
|
<script type="text/javascript">
|
|
|
var _gaq = _gaq || [];
|
|
|
_gaq.push(['_setAccount', '${c.ga_code}']);
|
|
|
_gaq.push(['_trackPageview']);
|
|
|
|
|
|
(function() {
|
|
|
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
|
|
|
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
|
|
|
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
|
|
|
})();
|
|
|
</script>
|
|
|
%endif
|
|
|
|
|
|
## JAVASCRIPT ##
|
|
|
<%def name="js()">
|
|
|
<script type="text/javascript">
|
|
|
//JS translations map
|
|
|
var TRANSLATION_MAP = {
|
|
|
'add another comment':'${_("add another comment")}',
|
|
|
'Stop following this repository':"${_('Stop following this repository')}",
|
|
|
'Start following this repository':"${_('Start following this repository')}",
|
|
|
'Group':"${_('Group')}",
|
|
|
'members':"${_('members')}",
|
|
|
'search truncated': "${_('search truncated')}",
|
|
|
'no matching files': "${_('no matching files')}"
|
|
|
|
|
|
};
|
|
|
var _TM = TRANSLATION_MAP;
|
|
|
</script>
|
|
|
<script type="text/javascript" src="${h.url('/js/yui.2.9.js')}"></script>
|
|
|
<!--[if lt IE 9]>
|
|
|
<script language="javascript" type="text/javascript" src="${h.url('/js/excanvas.min.js')}"></script>
|
|
|
<![endif]-->
|
|
|
<script type="text/javascript" src="${h.url('/js/yui.flot.js')}"></script>
|
|
|
<script type="text/javascript" src="${h.url('/js/native.history.js')}"></script>
|
|
|
<script type="text/javascript" src="${h.url('/js/rhodecode.js')}"></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 ) {
|
|
|
// History.js is disabled for this browser.
|
|
|
// This is because we can optionally choose to support HTML4 browsers or not.
|
|
|
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;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
|
|
|
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();
|
|
|
|
|
|
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');
|
|
|
}
|
|
|
else{
|
|
|
YUD.setStyle('quick_login','display','');
|
|
|
YUD.addClass('quick_login_link','enabled');
|
|
|
var usr = YUD.get('username');
|
|
|
if(usr){
|
|
|
usr.focus();
|
|
|
}
|
|
|
}
|
|
|
});
|
|
|
})
|
|
|
</script>
|
|
|
</%def>
|
|
|
<%def name="js_extra()"></%def>
|
|
|
${self.js()}
|
|
|
<%def name="head_extra()"></%def>
|
|
|
${self.head_extra()}
|
|
|
</head>
|
|
|
<body id="body">
|
|
|
## IE hacks
|
|
|
<!--[if IE 7]>
|
|
|
<script>YUD.addClass(document.body,'ie7')</script>
|
|
|
<![endif]-->
|
|
|
<!--[if IE 8]>
|
|
|
<script>YUD.addClass(document.body,'ie8')</script>
|
|
|
<![endif]-->
|
|
|
<!--[if IE 9]>
|
|
|
<script>YUD.addClass(document.body,'ie9')</script>
|
|
|
<![endif]-->
|
|
|
|
|
|
${next.body()}
|
|
|
</body>
|
|
|
</html>
|
|
|
|