Changeset - a991e5c57a8d
[Not reviewed]
Andrew Shadura - 11 years ago 2014-05-24 00:03:16
andrew@shadura.me
rhodecode.js: Get rid of some more YUI
1 file changed with 35 insertions and 40 deletions:
0 comments (0 inline, 0 general)
rhodecode/public/js/rhodecode.js
Show inline comments
 
@@ -451,44 +451,40 @@ var onSuccessFollow = function(target){
 
            var cnt = Number(f_cnt.innerHTML)-1;
 
            f_cnt.innerHTML = cnt;
 
        }
 
    }
 
}
 

	
 
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){
 
    $.post(TOGGLE_FOLLOW_URL, args, function(data){
 
            onSuccessFollow(target);
 
        }
 
    },args);
 
        });
 
    return false;
 
}
 

	
 
var showRepoSize = function(target, repo_name, token){
 
    var args= 'auth_token='+token;
 

	
 
    if(!YUD.hasClass(target, 'loaded')){
 
        YUD.get(target).innerHTML = _TM['Loading ...'];
 
    if(!$("#" + target).hasClass('loaded')){
 
        $("#" + target).html(_TM['Loading ...']);
 
        var url = pyroutes.url('repo_size', {"repo_name":repo_name});
 
        YUC.asyncRequest('POST',url,{
 
            success:function(o){
 
                YUD.get(target).innerHTML = JSON.parse(o.responseText);
 
                YUD.addClass(target, 'loaded');
 
            }
 
        },args);
 
        $.post(url, args, function(data) {
 
            $("#" + target).html(data);
 
            $("#" + target).addClass('loaded');
 
        });
 
    }
 
    return false;
 
}
 

	
 
/**
 
 * TOOLTIP IMPL.
 
 */
 
YAHOO.namespace('yuitip');
 
YAHOO.yuitip.main = {
 

	
 
    $:          YAHOO.util.Dom.get,
 

	
 
@@ -657,25 +653,25 @@ var tableTr = function(cls, body){
 
    var comment_id = fromHTML(body).children[0].id.split('comment-')[1];
 
    var id = 'comment-tr-{0}'.format(comment_id);
 
    var _html = ('<table><tbody><tr id="{0}" class="{1}">'+
 
                  '<td class="lineno-inline new-inline"></td>'+
 
                  '<td class="lineno-inline old-inline"></td>'+
 
                  '<td>{2}</td>'+
 
                 '</tr></tbody></table>').format(id, cls, body);
 
    _el.innerHTML = _html;
 
    return _el.children[0].children[0].children[0];
 
};
 

	
 
var createInlineForm = function(parent_tr, f_path, line) {
 
    var tmpl = YUD.get('comment-inline-form-template').innerHTML;
 
    var tmpl = $('#comment-inline-form-template').html();
 
    tmpl = tmpl.format(f_path, line);
 
    var form = tableTr('comment-form-inline',tmpl)
 

	
 
    // create event for hide button
 
    form = new YAHOO.util.Element(form);
 
    var form_hide_button = new YAHOO.util.Element(YUD.getElementsByClassName('hide-inline-form',null,form)[0]);
 
    form_hide_button.on('click', function(e) {
 
        var newtr = e.currentTarget.parentNode.parentNode.parentNode.parentNode.parentNode;
 
        if(YUD.hasClass(newtr.nextElementSibling,'inline-comments-button')){
 
            YUD.setStyle(newtr.nextElementSibling,'display','');
 
        }
 
        removeInlineForm(newtr);
 
@@ -684,44 +680,43 @@ var createInlineForm = function(parent_t
 

	
 
    });
 

	
 
    return form
 
};
 

	
 
/**
 
 * Inject inline comment for on given TR this tr should be always an .line
 
 * tr containing the line. Code will detect comment, and always put the comment
 
 * block at the very bottom
 
 */
 
var injectInlineForm = function(tr){
 
    if(!YUD.hasClass(tr, 'line')){
 
    if(!$(tr).hasClass('line')){
 
        return
 
    }
 
    var submit_url = AJAX_COMMENT_URL;
 
    var _td = YUD.getElementsByClassName('code',null,tr)[0];
 
    if(YUD.hasClass(tr,'form-open') || YUD.hasClass(tr,'context') || YUD.hasClass(_td,'no-comment')){
 
    if($(tr).hasClass('form-open') || $(tr).hasClass('context') || $(_td).hasClass('no-comment')){
 
        return
 
    }
 
    YUD.addClass(tr,'form-open');
 
    YUD.addClass(tr,'hl-comment');
 
    $(tr).addClass('form-open hl-comment');
 
    var node = YUD.getElementsByClassName('full_f_path',null,tr.parentNode.parentNode.parentNode)[0];
 
    var f_path = YUD.getAttribute(node,'path');
 
    var lineno = getLineNo(tr);
 
    var form = createInlineForm(tr, f_path, lineno, submit_url);
 

	
 
    var parent = tr;
 
    while (1){
 
        var n = parent.nextElementSibling;
 
        // next element are comments !
 
        if(YUD.hasClass(n,'inline-comments')){
 
        if($(n).hasClass('inline-comments')){
 
            parent = n;
 
        }
 
        else{
 
            break;
 
        }
 
    }
 
    YUD.insertAfter(form,parent);
 
    var f = YUD.get(form);
 
    var overlay = YUD.getElementsByClassName('overlay',null,f)[0];
 
    var _form = YUD.getElementsByClassName('inline-form',null,f)[0];
 

	
 
    YUE.on(YUD.get(_form), 'submit',function(e){
 
@@ -846,25 +841,25 @@ var getLineNo = function(tr) {
 
    return line
 
};
 

	
 
var placeAddButton = function(target_tr){
 
    if(!target_tr){
 
        return
 
    }
 
    var last_node = target_tr;
 
    //scann
 
    while (1){
 
        var n = last_node.nextElementSibling;
 
        // next element are comments !
 
        if(YUD.hasClass(n,'inline-comments')){
 
        if($(n).hasClass('inline-comments')){
 
            last_node = n;
 
            //also remove the comment button from previous
 
            var comment_add_buttons = YUD.getElementsByClassName('add-comment',null,last_node);
 
            for(var i=0;i<comment_add_buttons.length;i++){
 
                var b = comment_add_buttons[i];
 
                b.parentNode.removeChild(b);
 
            }
 
        }
 
        else{
 
            break;
 
        }
 
    }
 
@@ -881,25 +876,25 @@ var placeAddButton = function(target_tr)
 
 */
 
var placeInline = function(target_container,lineno,html){
 
    var lineid = "{0}_{1}".format(target_container,lineno);
 
    var target_line = YUD.get(lineid);
 
    var comment = new YAHOO.util.Element(tableTr('inline-comments',html))
 

	
 
    // check if there are comments already !
 
    var parent = target_line.parentNode;
 
    var root_parent = parent;
 
    while (1){
 
        var n = parent.nextElementSibling;
 
        // next element are comments !
 
        if(YUD.hasClass(n,'inline-comments')){
 
        if($(n).hasClass('inline-comments')){
 
            parent = n;
 
        }
 
        else{
 
            break;
 
        }
 
    }
 
    // put in the comment at the bottom
 
    YUD.insertAfter(comment,parent);
 

	
 
    // scann nodes, and attach add button to last one
 
    placeAddButton(root_parent);
 

	
 
@@ -936,51 +931,51 @@ var renderInlineComments = function(file
 
                'rendered_text': comments[i].outerHTML,
 
                'line_no': YUD.getAttribute(comments[i],'line'),
 
                'target_id': target_id
 
            }
 
            renderInlineComment(data);
 
        }
 
    }
 
}
 

	
 
var fileBrowserListeners = function(current_url, node_list_url, url_base){
 
    var current_url_branch = +"?branch=__BRANCH__";
 

	
 
    YUE.on('stay_at_branch','click',function(e){
 
    $('#stay_at_branch').on('click',function(e){
 
        if(e.target.checked){
 
            var uri = current_url_branch;
 
            uri = uri.replace('__BRANCH__',e.target.value);
 
            window.location = uri;
 
        }
 
        else{
 
            window.location = current_url;
 
        }
 
    })
 

	
 
    var n_filter = YUD.get('node_filter');
 
    var F = YAHOO.namespace('node_filter');
 

	
 
    F.filterTimeout = null;
 
    var nodes = null;
 

	
 
    F.initFilter = function(){
 
        YUD.setStyle('node_filter_box_loading','display','');
 
        YUD.setStyle('search_activate_id','display','none');
 
        YUD.setStyle('add_node_id','display','none');
 
        $('#node_filter_box_loading').css('display','');
 
        $('#search_activate_id').css('display','none');
 
        $('#add_node_id').css('display','none');
 
        YUC.initHeader('X-PARTIAL-XHR',true);
 
        YUC.asyncRequest('GET', node_list_url, {
 
            success:function(o){
 
                nodes = JSON.parse(o.responseText).nodes;
 
                YUD.setStyle('node_filter_box_loading','display','none');
 
                YUD.setStyle('node_filter_box','display','');
 
                $('#node_filter_box_loading').css('display','none');
 
                $('#node_filter_box').css('display','');
 
                n_filter.focus();
 
                if(YUD.hasClass(n_filter,'init')){
 
                    n_filter.value = '';
 
                    YUD.removeClass(n_filter,'init');
 
                }
 
            },
 
            failure:function(o){
 
                console.log('failed to load');
 
            }
 
        },null);
 
    }
 

	
 
@@ -1007,36 +1002,36 @@ var fileBrowserListeners = function(curr
 
                        var n_hl = n.substring(0,pos)
 
                          +"<b>{0}</b>".format(n.substring(pos,pos+query.length))
 
                          +n.substring(pos+query.length)
 
                        var new_url = url_base.replace('__FPATH__',n);
 
                        match.push('<tr><td><a class="browser-{0}" href="{1}">{2}</a></td><td colspan="5"></td></tr>'.format(t,new_url,n_hl));
 
                    }
 
                    if(match.length >= matches_max){
 
                        match.push('<tr><td>{0}</td><td colspan="5"></td></tr>'.format(_TM['Search truncated']));
 
                    }
 
                }
 
            }
 
            if(query != ""){
 
                YUD.setStyle('tbody','display','none');
 
                YUD.setStyle('tbody_filtered','display','');
 
                $('#tbody').css('display','none');
 
                $('#tbody_filtered').css('display','');
 

	
 
                if (match.length==0){
 
                  match.push('<tr><td>{0}</td><td colspan="5"></td></tr>'.format(_TM['No matching files']));
 
                }
 

	
 
                YUD.get('tbody_filtered').innerHTML = match.join("");
 
            }
 
            else{
 
                YUD.setStyle('tbody','display','');
 
                YUD.setStyle('tbody_filtered','display','none');
 
                $('#tbody').css('display','');
 
                $('#tbody_filtered').css('display','none');
 
            }
 
        }
 
    };
 

	
 
    YUE.on(YUD.get('filter_activate'),'click',function(){
 
            F.initFilter();
 
        })
 
    YUE.on(n_filter,'click',function(){
 
            if(YUD.hasClass(n_filter,'init')){
 
                n_filter.value = '';
 
                YUD.removeClass(n_filter,'init');
 
            }
 
@@ -1050,33 +1045,33 @@ var fileBrowserListeners = function(curr
 

	
 
var initCodeMirror = function(textAreadId,resetUrl){
 
    var myCodeMirror = CodeMirror.fromTextArea(YUD.get(textAreadId),{
 
            mode:  "null",
 
            lineNumbers:true,
 
            indentUnit: 4
 
        });
 
    YUE.on('reset','click',function(e){
 
            window.location=resetUrl
 
        });
 

	
 
    YUE.on('file_enable','click',function(){
 
            YUD.setStyle('editor_container','display','');
 
            YUD.setStyle('upload_file_container','display','none');
 
            YUD.setStyle('filename_container','display','');
 
            $('#editor_container').css('display','');
 
            $('#upload_file_container').css('display','none');
 
            $('#filename_container').css('display','');
 
        });
 

	
 
    YUE.on('upload_file_enable','click',function(){
 
            YUD.setStyle('editor_container','display','none');
 
            YUD.setStyle('upload_file_container','display','');
 
            YUD.setStyle('filename_container','display','none');
 
            $('#editor_container').css('display','none');
 
            $('#upload_file_container').css('display','');
 
            $('#filename_container').css('display','none');
 
        });
 

	
 
    return myCodeMirror
 
};
 

	
 
var setCodeMirrorMode = function(codeMirrorInstance, mode) {
 
    codeMirrorInstance.setOption("mode", mode);
 
    CodeMirror.autoLoadMode(codeMirrorInstance, mode);
 
}
 

	
 

	
 
var getIdentNode = function(n){
 
@@ -1125,31 +1120,31 @@ var getSelectionLink = function(e) {
 
            hl_div.innerHTML = '';
 

	
 
            anchor = '#L'+ranges[0]+'-'+ranges[1];
 
            var link = document.createElement('a');
 
            link.href = location.href.substring(0,location.href.indexOf('#'))+anchor;
 
            link.innerHTML = _TM['Selection link'];
 
            hl_div.appendChild(link);
 
            YUD.get('body').appendChild(hl_div);
 

	
 
            xy = YUD.getXY(till.id);
 

	
 
            YUD.addClass('linktt', 'hl-tip-box');
 
            YUD.setStyle('linktt','top',xy[1]+offset+'px');
 
            YUD.setStyle('linktt','left',xy[0]+'px');
 
            YUD.setStyle('linktt','visibility','visible');
 
            $('#linktt').css('top',xy[1]+offset+'px');
 
            $('#linktt').css('left',xy[0]+'px');
 
            $('#linktt').css('visibility','visible');
 

	
 
        }
 
        else{
 
            YUD.setStyle('linktt','visibility','hidden');
 
            $('#linktt').css('visibility','hidden');
 
        }
 
    }
 
};
 

	
 
var deleteNotification = function(url, notification_id,callbacks){
 
    var callback = {
 
        success:function(o){
 
            var obj = YUD.get(String("notification_"+notification_id));
 
            if(obj.parentNode !== undefined){
 
                obj.parentNode.removeChild(obj);
 
            }
 
            _run_callbacks(callbacks);
0 comments (0 inline, 0 general)