1
0
mirror of https://github.com/haiwen/seahub.git synced 2025-07-15 07:52:14 +00:00

[system repo view] bugfix & improvement; rm unused files

This commit is contained in:
llj 2016-02-22 15:44:23 +08:00
parent 8124fa4a79
commit 262fae0590
8 changed files with 10 additions and 410 deletions

View File

@ -1,161 +0,0 @@
{% load i18n %}
{% load url from future %}
// set 'side toolbar' & 'groups' popup position
function setToolbarPos() {
var toolbar = $('#side-toolbar');
// set toolbar pos
toolbar.css({'top': ($(window).height() - toolbar.outerHeight())/2});
// set 'groups' popup position
$('#to-group').css({'top': parseInt(toolbar.css('top')) + 59});
}
$(window).load(function() {
var to_top = $('<ul class="side-toolbar hide" style="margin-top:3px;"><li class="item" title="{% trans "Back to top" %}"><img src="{{MEDIA_URL}}img/top.png" alt="{% trans "top" %}" /></li></ul>');
to_top.click(function() {
$(window).scrollTop(0);
}).appendTo($('#side-toolbar'));
$(window).scroll(function() {
if ($(window).scrollTop() > 0) {
to_top.show();
} else {
to_top.hide();
}
});
setToolbarPos();
}).resize(setToolbarPos);
{% if groups %}
function getAndHandleDiscussions(data_html) {
$('#discussions-to-grp').html(data_html).css({'max-height': parseInt($(window).height() * 0.8 - $('#discuss-to-group-form').outerHeight())}).removeClass('hide'); // 'parseInt' to fix '.msg-main top border missing when the ul's max-height is xxx.5px'
var popup = $('#discuss-to-group');
popup.css({'top':($(window).height() - popup.outerHeight())/2});
{% include 'group/msg_js.html' %}
}
$('#discuss').click(function() {
var popup = $('#discuss-to-group'),
form = $('#discuss-to-group-form'),
path = '{{ path }}';
// for repo.html: when get dir data with ajax
if ($('#repo-file-list').length > 0) {
path = cur_path;
$('[name="path"]', form).val(path);
// modify attachment dir name
$('.att-name', form).html($('#cur-dir-name').html());
}
if (popup.hasClass('hide')) {
$.ajax({
url: form.attr('action'),
dataType: 'json',
data: {
'repo_id': '{{ repo.id }}',
'path': path
},
success: function(data) {
getAndHandleDiscussions(data['html']);
popup.removeClass('hide');
},
error: function(jqXHR, textStatus, errorThrown) {
var err_str = '';
if (jqXHR.responseText) {
err_str = $.parseJSON(jqXHR.responseText).error;
feedback(err_str, 'error');
}
}
});
} else {
popup.addClass('hide');
}
});
// click 'close' to close discuss popup
$('#discuss-to-group .close').click(function () {
$('#discuss-to-group').addClass('hide');
});
$(document).click(function(e) {
var target = e.target || event.srcElement;
if (!$('#discuss, #discuss-to-group').is(target) && !($('#discuss, #discuss-to-group').find('*').is(target))) {
$('#discuss-to-group').addClass('hide');
}
});
$('#discuss-submit').click(function() {
var form = $('#discuss-to-group-form'),
form_id = form.attr('id');
if (form.find('.checkbox-checked').length == 0) {
apply_form_error(form_id, "{% trans "Please select at least 1 group." %}");
return false;
}
if (!$.trim($('#discuss-to-group-form .input').val())) {
apply_form_error(form_id, "{% trans "Please input a discussion." %}");
return false;
}
form.find('.error').addClass('hide');
var groups = [];
form.find('.checkbox-checked .checkbox-orig').each(function() {
groups.push($(this).val());
});
$.ajax({
url: form.attr('action'),
type: 'POST',
dataType: 'json',
beforeSend: prepareCSRFToken,
traditional: true,
data: {
'groups': groups,
'message': $('[name="message"]', form).val(),
'repo_id': '{{ repo.id }}',
'path': $('[name="path"]', form).val(),
'attach_type': $('[name="attach_type"]', form).val()
},
success: function(data) {
if(data['success']) {
feedback(data['success'], 'success');
getAndHandleDiscussions(data['html']);
form.find('.input').val('');
}
if(data['error']) {
feedback(data['error'], 'error');
}
},
error: function(jqXHR, textStatus, errorThrown) {
var err_str = '';
if (jqXHR.responseText) {
err_str = $.parseJSON(jqXHR.responseText).error;
} else {
err_str = "{% trans "Failed. Please check the network." %}";
}
apply_form_error(form_id, err_str);
}
});
return false;
});
$('#click-into-group').click(function() {
{% if groups|length == 1 %}
// only one group, just turn to group page
{% for group in groups %}
location.href= "{% url 'group_info' group.id %}";
{% endfor %}
{% else %}
// more than one group, then let user choose
$('#to-group').toggleClass('hide');
{% endif %}
});
$(document).click(function(e) {
var target = e.target || event.srcElement;
if (!$('#click-into-group, #to-group').is(target) && !($('#click-into-group, #to-group').find('*').is(target))) {
$('#to-group').addClass('hide');
}
});
{% endif %}

View File

@ -1,15 +0,0 @@
{% load seahub_tags avatar_tags i18n %}
<span class="commit-msg vam" data-cmtid="{{ current_commit.id }}">
{{ info_commit.props.desc|translate_commit_desc }}
<a class="lsch" href="#" data-url="{% url 'repo_history_changes' repo.id %}?commit_id={{ info_commit.id }}" data-time="{{ info_commit.props.ctime|tsstr_sec }}">{% trans "Details"%}</a>
</span>
<span class="meta-info split">
{% if info_commit.props.creator_name %}
{% avatar info_commit.props.creator_name 20 %}
<a class="vam" href="{% url 'user_profile' info_commit.creator_name %}">{{ info_commit.creator_name|email2nickname }}</a>
{% else %}
<span class="vam">{% trans "Unknown"%}</span>
{% endif %}
<span class="time vam">{{ info_commit.props.ctime|translate_seahub_time }}</span>
</span>
<a href="{% url 'seahub.views.repo_history' repo.id %}" class="more vam split">{% trans "History"%}</a>

View File

@ -1,37 +0,0 @@
{% load seahub_tags i18n %}
{% load url from future %}
<div id="discuss-to-group" class="hide">
<form action="{% url 'group_recommend' %}" method="post" id="discuss-to-group-form">{% csrf_token %}
<h3>{% trans "Post a discussion to group" %}</h3>
<div class="groups">
{% for group in groups %}
<label for="{{ group.id }}" class="checkbox-label">
<span class="checkbox{% if forloop.first and forloop.last %} checkbox-checked{% endif %}"><input type="checkbox" name="groups" value="{{ group.id }}" id="{{ group.id }}" {% if forloop.first and forloop.last %}checked="checked"{% endif %} class="checkbox-orig"></span>
<span class="checkbox-option">{{ group.group_name }}</span>
</label>
{% endfor %}
</div>
<textarea name="message" placeholder="{% trans 'discussion' %}" class="input"></textarea>
<input type="hidden" name="repo_id" value="{{ repo.id }}" />
<input type="hidden" name="path" value="{{ path }}" />
<input type="hidden" name="attach_type" value="{{ attach_type }}" />
<p class="error hide"></p>
<input type="submit" id="discuss-submit" class="submit" value="{% trans "Submit"%}" />
<span class="attachment">
{% if attach_type == 'dir' %}
<img src="{{ MEDIA_URL }}img/folder-icon-24.png" alt="{% trans 'Directory icon' %}" height="20" class="vam" />
{% endif %}
{% for name,link in zipped %}
{% if forloop.last %}
{% if attach_type == 'file' %}
<img src="{{ MEDIA_URL }}img/file/{{ name|file_icon_filter }}" alt="{% trans 'File' %}" height="18" class="vam" />
{% endif %}
<span class="att-name vam">{{ name }}</span>
{% endif %}
{% endfor %}
</span>
</form>
<ul id="discussions-to-grp" class="hide"></ul>
<img src="{{MEDIA_URL}}img/del.png" alt="{% trans "close" %}" class="close" />
</div>

View File

@ -1,73 +0,0 @@
{% load seahub_tags i18n %}
<div class="repo-file-list-topbar">
<p class="path fleft">
{% for name, link in zipped %}
{% if forloop.first or not forloop.last %}
<a href="{{ SITE_ROOT }}repo/{{ repo.id }}/?p={{ link|urlencode }}" class="dir-link normal">{{ name }}</a> /
{% else %}
<span id="cur-dir-name" data-name="{{ name }}">{{ name }}</span> /
{% endif %}
{% endfor %}
</p>
<div class="repo-op fright">
{% if user_perm == 'rw' %}
{% if repo.encrypted and repo.enc_version == 2 and not server_crypto %}
<button id="upload-file" class="op-btn"><span class="icon-upload-alt"></span>{% trans "Upload"%}</button>
{% else %}
{% if no_quota %}
<button id="upload-file" class="op-btn"><span class="icon-upload-alt"></span>{% trans "Upload"%}</button>
{% else %}
<div id="upload-file" class="op-btn upload-file-btn">
<span class="icon-upload-alt"></span><span>{% trans "Upload"%}</span>
<input type="file" name="file" multiple />
</div>
{% if enable_upload_folder %}
<ul id="upload-menu" class="hide">
<li class="item">
<span>{% trans "Upload Files" %}</span>
<input type="file" name="file" multiple />
</li>
<li class="item">
<span>{% trans "Upload Folder" %}</span>
<input type="file" name="file" multiple directory webkitdirectory />
</li>
</ul>
{% endif %}
{% endif %}
{% endif %}
<button id="add-new-dir" class="op-btn"><span class="icon-plus-sign-alt"></span>{% trans "New Directory"%}</button>
{% if repo.encrypted and repo.enc_version == 2 and not server_crypto %}
{% else %}
<button id="add-new-file" class="op-btn"><span class="icon-plus-sign-alt"></span>{% trans "New File"%}</button>
{% endif %}
{% endif %}
{% if path != '/' %}
{% if not repo.encrypted %}
<button data-link="{{ dir_shared_link }}" data-token="{{fileshare.token}}" data-upload-link="{{ dir_shared_upload_link }}" data-upload-token="{{ uploadlink.token }}" class="op-btn" id="share-cur-dir"><span class="sf-icon-share"></span>{% trans "Share"%}</button>
{% endif %}
{% endif %}
</div>
<div id="repo-latest-commit" class="clear">
{% include 'snippets/current_commit.html' %}
</div>
</div>
<table class="repo-file-list">
<tr>
<th class="select">
<span class="checkbox"><input type="checkbox" class="checkbox-orig" /></span>
</th>
<th class="star"></th>
<th class="dirent-icon"></th>
<th><span class="dirent-name">{% trans "Name"%} <span id="name-down" class="icon-caret-up cspt"></span> <span id="name-up" class="icon-caret-down cspt hide"></span></span></th>
<th class="dirent-size">{% trans "Size"%}</th>
<th class="dirent-update">{% trans "Last Update" %} <span id="time-up" class="icon-caret-up cspt hide"></span> <span id="time-down" class="icon-caret-down cspt"></span></th>
<th class="dirent-op">{% trans "Operations"%}</th>
</tr>
{% include 'snippets/repo_dirents.html' %}
</table>
{% if dirent_more %}
<span class="dirent-more loading-icon loading-tip" data-start="{{more_start}}"></span>
{% endif %}

View File

@ -1,98 +0,0 @@
{% load seahub_tags i18n %}
{% for dirent in dir_list %}
<tr class="dir-item" data-name="{{dirent.obj_name}}" data-time="{% if dirent.last_modified %}{{ dirent.last_modified }}{%else %}0{% endif %}">
<td class="select">
<span class="checkbox"><input type="checkbox" class="checkbox-orig" /></span>
</td>
<td class="star"></td>
{% if dirent.permission = 'r' %}
<td class="dirent-icon"><img src="{{ MEDIA_URL }}img/folder-read-only-24.png" alt="{% trans "Directory icon"%}" /></td>
{% else %}
<td class="dirent-icon"><img src="{{ MEDIA_URL }}img/folder-24.png" alt="{% trans "Directory icon"%}" /></td>
{% endif %}
<td>
<span class="dirent-name"><a href="{{dirent.view_link}}" class="dir-link">{{ dirent.obj_name }}</a></span>
</td>
<td class="dirent-size"></td>
<td class="dirent-update">
{{ dirent.last_modified|translate_seahub_time }}
</td>
<td class="dirent-op">
<div class="repo-file-op vh">
<div class="displayed-op">
<a class="op dir-download" href="{{dirent.dl_link}}" title="{% trans "Download" %}">
<img src="{{MEDIA_URL}}img/download.png" alt="" />
</a>
{% if not repo.encrypted %}
<a class="op dir-share" href="#" data-link="{{ dirent.sharelink }}" data-token="{{ dirent.sharetoken }}" data-upload-link="{{ dirent.uploadlink }}" data-upload-token="{{ dirent.uploadtoken }}" title="{% trans "Share" %}">
<img src="{{MEDIA_URL}}img/share_20.png" alt="" />
</a>
{% endif %}
</div>
{% if user_perm == 'rw' %}
<img src="{{ MEDIA_URL }}img/dropdown-arrow.png" title="{% trans 'More operations'%}" alt="{% trans 'More operations'%}" class="more-op-icon cspt" data="no-popup" />
<ul class="hidden-op hide">
<li><a class="op dir-del" href="#">{% trans "Delete"%}</a></li>
<li><a class="op dir-rename" href="#">{% trans "Rename"%}</a></li>
<li><a class="op dir-mv" href="#">{% trans "Move"%}</a></li>
<li><a class="op dir-cp" href="#">{% trans "Copy"%}</a></li>
</ul>
{% endif %}
</div>
</td>
</tr>
{% endfor %}
{% for dirent in file_list %}
<tr class="file-item" data-name="{{dirent.obj_name}}" data-time="{% if dirent.last_modified %}{{ dirent.last_modified }}{% else %}0{% endif %}">
<td class="select">
<span class="checkbox"><input type="checkbox" class="checkbox-orig" /></span>
</td>
<td class="star alc">
{% if dirent.starred %}
<span title="{% trans 'starred' %}" class="icon-star file-star" data-status="starred"></span>
{% else %}
<span title="{% trans 'unstarred' %}" class="icon-star-empty file-star" data-status="unstarred"></span>
{% endif %}
</td>
<td class="dirent-icon">
<img src="{{ MEDIA_URL }}img/file/{{ dirent.obj_name|file_icon_filter }}" alt="{% trans "File"%}" />
</td>
<td>
{% if repo.encrypted and repo.enc_version == 2 and not server_crypto %}
<span class="dirent-name">{{ dirent.obj_name }}</span>
{% else %}
<span class="dirent-name"><a class="normal" href="{{dirent.view_link}}" target="_blank">{{ dirent.obj_name }}</a></span>
{% endif %}
</td>
<td class="dirent-size">{{ dirent.file_size|filesizeformat }}</td>
<td class="dirent-update">
{{ dirent.last_modified|translate_seahub_time }}
</td>
<td class="dirent-op">
<div class="repo-file-op vh">
<div class="displayed-op">
<a class="op file-download" href="{{dirent.dl_link}}" data-fileid="{{ dirent.props.obj_id }}" title="{% trans "Download"%}">
<img src="{{MEDIA_URL}}img/download.png" alt="" />
</a>
{% if not repo.encrypted %}
<a class="op file-share" href="#" data-link="{{ dirent.sharelink }}" data-token="{{ dirent.sharetoken }}" title="{% trans "Share" %}">
<img src="{{MEDIA_URL}}img/share_20.png" alt="" />
</a>
{% endif %}
</div>
{% if user_perm == 'rw' %}
<img src="{{ MEDIA_URL }}img/dropdown-arrow.png" title="{% trans "More Operations"%}" alt="{% trans "More Operations"%}" class="more-op-icon cspt" data="no-popup" />
<ul class="hidden-op hide">
<li><a class="op file-del" href="#">{% trans "Delete"%}</a></li>
<li><a class="op file-update" href="#">{% trans "Update"%}</a></li>
<li><a class="op file-rename" href="#">{% trans "Rename" %}</a></li>
<li><a class="op file-mv" href="#">{% trans "Move" %}</a></li>
<li><a class="op file-cp" href="#">{% trans "Copy" %}</a></li>
<li><a class="op file-history" href="{{dirent.history_link}}" target="_blank">{% trans "History" %}</a></li>
</ul>
{% endif %}
</div>
</td>
</tr>
{% endfor %}

View File

@ -1,9 +0,0 @@
{% load url from future %}
{% autoescape off %}
<ul>
{% for group in groups %}
<li><a href="{% url 'group_info' group.id %}">{{ group.group_name }}</a></li>
{% endfor %}
</ul>
{% endautoescape %}

View File

@ -34,7 +34,7 @@
<button id="add-new-dir" class="op-btn"><span class="icon-plus-sign-alt"></span>{% trans "New Directory"%}</button>
</div>
{% endif %}
<div id="repo-latest-commit" class="clear"></div>
<div class="clear"></div>
</div>
<table class="repo-file-list">
@ -106,7 +106,7 @@
<label>{% trans "Directory Name" %}</label><br /><!-- <br/> for ie 7 -->
<input type="text" name="name" value="" class="input" maxlength="{{max_file_name}}"/><br />
<p class="error hide"></p>
<input type="submit" value="{% trans "Submit" %}" class="submit" />
<button type="submit" class="submit">{% trans "Submit" %}</button>
<button class="simplemodal-close">{% trans "Cancel" %}</button>
</form>
@ -224,12 +224,14 @@ $(function() {
}
})
.bind('fileuploadstop', function() {
location.reload(true);
setTimeout(function() { location.reload(true); }, 1000);
})
// after tpl has rendered
.bind('fileuploadcompleted', function() { // 'done'
if ($('.files .cancel', popup).length == 0) {
location.reload(true);
saving_tip.hide();
total_progress.addClass('hide');
fu_status.html(fu_status_.complete);
}
})
.bind('fileuploadfailed', function(e, data) { // 'fail'
@ -301,10 +303,8 @@ $('#add-new-dir').click(function () {
$('#add-new-dir-form').submit(function() {
var form = $(this),
form_id = form.attr('id'),
dirent_name = $.trim(form.find('input[name="name"]').val()),
submit_btn = form.children('input[type="submit"]'),
post_data = {'dirent_name': dirent_name},
path = '{{path}}';
dirent_name = $.trim($('[name="name"]', form).val()),
submit_btn = $('[type="submit"]', form);
if (!dirent_name) {
apply_form_error(form_id, "{% trans "It is required." %}");
@ -314,11 +314,11 @@ $('#add-new-dir-form').submit(function() {
disable(submit_btn);
$.ajax({
url: '{% url 'new_dir' repo.id %}?parent_dir=' + e(path),
url: '{% url 'new_dir' repo.id %}?parent_dir=' + e(cur_path),
type: 'POST',
dataType: 'json',
beforeSend: prepareCSRFToken,
data: post_data,
data: {'dirent_name': dirent_name},
success: function(data) {
location.reload(true);
},

View File

@ -2,12 +2,6 @@
{% load i18n %}
{% block cur_repo %}tab-cur{% endblock %}
{% block left_panel %}{{block.super}}
<form action="{% url 'sys_repo_search' %}" method="get" class="side-search-form">
<input type="text" name="name" class="input" value="" placeholder="{% trans "Search libraries by name..." %}" />
</form>
{% endblock %}
{% block right_panel %}
<div class="tabnav">
<ul class="tabnav-tabs">
@ -36,5 +30,4 @@
<p>{% trans "None" %}</p>
{% endif %}
{% include "sysadmin/repo_transfer_form.html" %}
{% endblock %}