1
0
mirror of https://github.com/haiwen/seahub.git synced 2025-07-19 01:29:05 +00:00

added 'help' app

This commit is contained in:
llj 2013-12-17 17:49:11 +08:00
parent fc0ce8ec14
commit 649fd02173
27 changed files with 275 additions and 19 deletions

View File

@ -388,7 +388,8 @@ textarea:-moz-placeholder {/* for FF */
color:#000;
}
/**** side-tabnav ****/
.side-tabnav .hd {
.side-tabnav .hd,
.side-textnav .hd {
padding-bottom:4px;
border-bottom:1px solid #ddd;
margin-bottom:1em;
@ -435,6 +436,23 @@ textarea:-moz-placeholder {/* for FF */
font-weight:bold;
color:#fff;
}
.side-textnav .hd {
margin:2em 0 .5em;
}
.side-textnav-tabs .tab a {
display:block;
padding:10px 0;
font-weight:normal;
color:#999;
border-bottom:1px solid #eee;
margin-bottom:3px;
}
.side-textnav-tabs .tab-cur a,
.side-textnav-tabs .tab a:hover {
color:#de3f1c;
text-decoration:none;
}
/**** checkbox ****/
.checkbox-orig {
font-size:0;
@ -2606,3 +2624,6 @@ textarea:-moz-placeholder {/* for FF */
font-weight:normal;
color:#888;
}
.help-con {
padding:0 0 0 60px;
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 45 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 29 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

0
seahub/help/__init__.py Normal file
View File

3
seahub/help/models.py Normal file
View File

@ -0,0 +1,3 @@
from django.db import models
# Create your models here.

Binary file not shown.

View File

@ -0,0 +1,33 @@
{% extends "myhome_base.html" %}
{% load i18n %}
{% block nav_help_class %}class="cur"{% endblock %}
{% block left_panel %}
<div class="side-textnav">
<h3 class="hd">{% trans "Client Program" %}</h2>
<ul class="side-textnav-tabs">
<li class="tab {%block install %}{% endblock %}"><a href="{{ SITE_ROOT }}help/install/">{% trans "Install and Sync Files" %}</a></li>
<li class="tab {%block del %}{% endblock %}"><a href="{{ SITE_ROOT }}help/delete/">{% trans "Deleting a library" %}</a></li>
<li class="tab {%block security %}{% endblock %}"><a href="{{ SITE_ROOT }}help/security/">{% trans "Encrypting a library" %}</a></li>
<li class="tab {%block colab %}{% endblock %}"><a href="{{ SITE_ROOT }}help/colab/">{% trans "File conflicts" %}</a></li>
<li class="tab {%block ignore %}{% endblock %}"><a href="{{ SITE_ROOT }}help/ignore/">{% trans "Excluding files" %}</a></li>
</ul>
<h3 class="hd">{% trans "Web Site" %}</h2>
<ul class="side-textnav-tabs">
<li class="tab {%block grp_share %}{% endblock %}"><a href="{{ SITE_ROOT }}help/group_share/">{% trans "Sharing to a group" %}</a></li>
<li class="tab {%block view_enc %}{% endblock %}"><a href="{{ SITE_ROOT }}help/view_encrypted/">{% trans "Viewing an encrypted library" %}</a></li>
<li class="tab {%block quota %}{% endblock %}"><a href="{{ SITE_ROOT }}help/quota/">{% trans "Storage quota usage" %}</a></li>
</ul>
</div>
{% endblock %}
{% block right_panel %}
<div class="help-con article">{% block help_con %}{% endblock %}</div>
{% endblock %}
{% block extra_script %}
<script type="text/javascript">
$('.help-con :first-child').css('margin-top', 0);
$('.help-con img').css('max-width', $('.help-con').width() - 2);
</script>
{% endblock %}

View File

@ -0,0 +1,15 @@
{% extends "help/help_base.html" %}
{% load i18n %}
{% block colab %}tab-cur{% endblock %}
{% block help_con %}
<h3 class="hd">{% trans "File conflicts" %}</h3>
<p>{% trans "Once you and your friends sync a shared file library onto your computers, you may add, delete or edit files in the library together. Every change you make to the library would be automatically synced to others' computers." %}</p>
<p>{% blocktrans %}
Sometimes you and your friends may edit the same file at the same time. Your changes may conflict with each other's. In this case, Seafile would keep your
version unchanged, while rename your friends' versions to "conflict files". A conflict file's name ends with it's author's email address, plus the
current time, e.g. test.txt (name@example.com 2011-11-11-11-11-11).
{% endblocktrans %}</p>
{% endblock %}

View File

@ -0,0 +1,14 @@
{% extends "help/help_base.html" %}
{% load i18n %}
{% block del %}tab-cur{% endblock %}
{% block help_con %}
<h3 class="hd">{% trans "Deleting a file library" %}</h3>
<p>{% blocktrans %}To maximize your data security, deletion of file libraries on the website and on your computer are not "synced" automatically. {% endblocktrans %}</p>
<ul>
<li>{% trans "After a file library is deleted on the website, the library downloaded to your computer won't be deleted. But it won't be synced with the website any more." %}</li>
<li>{% trans "After a file library is deleted on your computer, the library on the website won't be deleted. You may download and sync it again later." %}</li>
</ul>
{% endblock %}

View File

@ -0,0 +1,14 @@
{% extends "help/help_base.html" %}
{% load i18n %}
{% block grp_share %}tab-cur{% endblock %}
{% block help_con %}
<h3 class="hd">{% trans "Sharing a library to a group" %}</h3>
<p>{% trans "You have two ways to share a library to a group" %}</p>
<ul>
<li>{% trans "Create a file library directly inside the group workspace." %}</li>
<li>{% blocktrans %}On "My Home" page, click the "share" button besides a library, then enter the group's name.{% endblocktrans %}</li>
</ul>
{% endblock %}

View File

@ -0,0 +1,48 @@
{% extends "help/help_base.html" %}
{% load i18n %}
{% block ignore %}tab-cur{% endblock %}
{% block help_con %}
<h3 class="hd">{% trans "Excluding files/folders from syncing" %}</h3>
<p>{% trans "Sometimes you don't want to sync some files or folders inside a library. To achieve this, create a seafile-ignore.txt file in the root folder of a library. This special file specifies the files and folders that Seafile should not sync. Each line in a ignore.txt file specifies a pattern. The following pattern format are supported." %}</p>
<ol>
<li>{% trans "A blank line matches no files." %}</li>
<li>{% trans "A line starting with # serves as a comment." %}</li>
<li>{% blocktrans %}Seafile supports wildcards in the pattern. For example, "foo/*" matches "foo/1" and "foo/hello". "foo/?" matches "foo/1" but not "foo/hello". Note that the wildcard character * recursively matches all the paths under a folder. For instance, "foo/*.html" matches "foo/a.html" and "foo/templates/b.html".{% endblocktrans %}</li>
<li>{% blocktrans %}If the pattern ends with a slash, it would only match a folder. In other words, foo/ will match a folder "foo" and paths underneath it, but will not match a regular file or a symbolic link "foo".{% endblocktrans %}</li>
<li>{% blocktrans %}If a pattern doesn't end with a slash or a wildcard, it would not match a folder. For example, "foo" can only match regular file "foo" or a symbolic link; while "foo/" and "foo*" match a folder and paths under it.{% endblocktrans %}</li>
</ol>
<h4>{% trans "Example" %}</h4>
<pre>
# a regular file
test-file
# a dir
test-dir/
# wildcard *
test-star1/*
test-star2/*.html
# wildcard ?
test-qu1/?.html
test-qu2/?/
</pre>
<h4>{% trans "Notes" %}</h4>
<p>{% trans "The seafile-ignore.txt file only controls which files to exclude on the client side. You can still create a file from seahub web interface that's excluded on the client. In this case," %}</p>
<ul>
<li>{% trans "The created file will still be synced back to clients. But any later local changes to those files will be ignored." %}</li>
<li>{% trans "If the file is modified on seahub, the new version will also be synced back to clients; If the file on the client is also modified, a conflict file will be generated on the client." %}</li>
</ul>
<p>{% trans "seafile-ignore.txt only ignores files that are not synced yet. If a file is already synced, and some time later you add it to the ignore list, its existing versions won't be removed." %}</p>
{% endblock %}

View File

@ -0,0 +1,40 @@
{% extends "help/help_base.html" %}
{% load i18n %}
{% block install %}tab-cur{% endblock %}
{% block help_con %}
<h3 class="hd">{% trans "Installing Seafile Client Program Version 2.0+" %}</h3>
<p>{% trans "After downloading Seafile client program, you have 3 steps left to get it up and running." %}</p>
<h4>{% trans "1. Select a disk partition to store local Seafile data" %}</h4>
<img src="{{ MEDIA_URL }}img/help/help-client/seafile-init-choose-folder.png" alt="Selecting a folder to store Seafile data" />
<h4>{% trans "2. Add an account" %}</h4>
<p>{% trans "Add an account on your private Seafile server or our public server." %}</p>
<img src="{{ MEDIA_URL }}img/help/help-client/seafile-add-account.png" />
<h4>{% trans "3. Download a library and syncing files" %}</h4>
<ul>
<li>{% blocktrans %}Click the "Download" button to download a library to a local folder.{% endblocktrans %}</li>
<li>{% trans "Then you add some files into the library. They will be automatically synced with cloud platform." %}</li>
</ul>
<img src="{{ MEDIA_URL }}img/help/help-client/seafile-download-library.png" />
<h4>{% trans "4. (Optional) Create a library" %}</h4>
<p>{% trans "You can also create a library from a local folder." %}</p>
<img src="{{ MEDIA_URL }}img/help/help-client/seafile-create-library.png" />
<img src="{{ MEDIA_URL }}img/help/help-client/seafile-create-library-02.png" />
{% endblock %}

View File

@ -0,0 +1,13 @@
{% extends "help/help_base.html" %}
{% load i18n %}
{% block quota %}tab-cur{% endblock %}
{% block help_con %}
<p>{% trans "On the official server for Seafile (seacloud.cc), the storage space used by a user is divided into two parts:" %} <span class="bold">{% trans "space used by the user + space the user shared to others." %}</span></p>
<p>{% trans "The space used by the user himself/herself is simply the total size of the libraries that this user owns." %}</p>
<p>{% trans "Whenever a user shares a library to others, it takes up a portion of his/her space, but not the space of the other users. Sharing a library consumes:" %} <span class="bold">{% trans "size of the library * the number of people you share to." %}</span> {% trans "Sharing to a group is the same as sharing to all the group members. If you share to two groups, and some members in these groups are the same, those members will only be counted once." %}</p>
{% endblock %}

View File

@ -0,0 +1,15 @@
{% extends "help/help_base.html" %}
{% load i18n %}
{% block security %}tab-cur{% endblock %}
{% block help_con %}
<h3 class="hd">{% trans "Encrypting a file library" %}</h3>
<p>{% trans "Seafile supports encryption of file libraries to strengthen your data security. To encrypt a file library, you need to set a password when you create a library." %}</p>
<p><span class="italic bold">{% trans "The password won't be stored on Seafile cloud platform." %}</span> {% trans "So even the adminastrator of the servers cannot view your encrypted data without the password." %}</p>
<p>{% trans "To download and sync an encrypted library to your computer, you need to provide the password. Seafile client program will download the encrypted data and decrypt it on your computer." %}</p>
<p>{% trans "The password can only be set when you create the library."%} <span class="itatic bold">{% trans "It cannot be changed since then." %}</span></p>
<p>{% trans "To share an encrypted library with your friends, you also need to tell them the password." %}</p>
{% endblock %}

View File

@ -0,0 +1,14 @@
{% extends "help/help_base.html" %}
{% load i18n %}
{% block view_enc %}tab-cur{% endblock %}
{% block help_con %}
<h3 class="hd">{% trans "Viewing an encrypted library" %}</h3>
<p>{% trans "Seafile servers don't store the password for an encrypted library. To view an encrypted library online, you need to temporarily provide the password to the server." %}</p>
<p>{% trans "Your password is only recorded in the server's encrypted memory. It would be cleared from the memory in an hour. After that, if you want to view the library, you'll have to enter password again." %}</p>
{% endblock %}

16
seahub/help/tests.py Normal file
View File

@ -0,0 +1,16 @@
"""
This file demonstrates writing tests using the unittest module. These will pass
when you run "manage.py test".
Replace this with more appropriate tests for your application.
"""
from django.test import TestCase
class SimpleTest(TestCase):
def test_basic_addition(self):
"""
Tests that 1 + 1 always equals 2.
"""
self.assertEqual(1 + 1, 2)

19
seahub/help/urls.py Normal file
View File

@ -0,0 +1,19 @@
from django.conf.urls.defaults import *
from django.views.generic import TemplateView
urlpatterns = patterns('',
(r'^$', TemplateView.as_view(template_name="help/help_install_v2.html") ),
(r'^install/$', TemplateView.as_view(template_name="help/help_install_v2.html") ),
(r'^delete/$', TemplateView.as_view(template_name="help/help_delete.html") ),
(r'^security/$', TemplateView.as_view(template_name="help/help_security.html") ),
(r'^colab/$', TemplateView.as_view(template_name="help/help_colab.html") ),
(r'^ignore/$', TemplateView.as_view(template_name="help/help_ignore.html") ),
(r'^group_share/$', TemplateView.as_view(template_name="help/help_group_share.html") ),
(r'^view_encrypted/$', TemplateView.as_view(template_name="help/help_view_encrypted.html") ),
(r'^quota/$', TemplateView.as_view(template_name="help/help_quota.html") ),
(r'^traffic/$', TemplateView.as_view(template_name="help/help_traffic.html") ),
(r'^seaf/$', TemplateView.as_view(template_name="help/help_seaf.html") ),
(r'^markdown/$', TemplateView.as_view(template_name="help/help_markdown.html") ),
)

1
seahub/help/views.py Normal file
View File

@ -0,0 +1 @@
# Create your views here.

View File

@ -4,24 +4,9 @@
{% block sub_title %}{% trans "Profile Setting" %} - {% endblock %}
{% block extra_style %}
<style type="text/css">
.side-tabnav-tabs .tab a {
color:#999;
padding:10px 0;
border-bottom:1px solid #eee;
margin-bottom:3px;
}
.side-tabnav-tabs .tab a:hover {
color:#de3f1c;
background:none;
}
</style>
{% endblock %}
{% block left_panel %}
<div class="side-tabnav">
<ul class="side-tabnav-tabs">
<div class="side-textnav">
<ul class="side-textnav-tabs">
<li class="tab"><a href="#user-basic-info">{% trans "Profile" %}</a></li>
{% if not force_server_crypto %}
<li class="tab"><a href="#enc-lib-setting">{% trans "Encrypted Libraries" %}</a></li>

View File

@ -174,6 +174,7 @@ INSTALLED_APPS = (
'seahub.options',
'seahub.profile',
'seahub.share',
'seahub.help',
)

View File

@ -14,5 +14,8 @@
<a href="{% url 'pubrepo' %}" {% block nav_pubinfo_class %}{% endblock %}>{% trans "Organization" %}</a>
</li>
{% endif %}
<li>
<a href="{{ SITE_ROOT }}help/" {% block nav_help_class %}{% endblock %}>{% trans "Help" %}</a>
</li>
</ul>
{% endblock %}

View File

@ -3,7 +3,7 @@
<h4>{% trans "Documents" %}</h4>
<ul>
<li><a href="http://seafile.com/{% if LANGUAGE_CODE != 'zh-cn' %}en/{% endif %}home/" target="_blank">{% trans "Introduction" %}</a></li>
<li><a href="http://www.seafile.com/{% if LANGUAGE_CODE != 'zh-cn' %}en/{% endif %}help/" target="_blank">{% trans "Help" %}</a></li>
<li><a href="{{SITE_ROOT}}help/" target="_blank">{% trans "Help" %}</a></li>
</ul>
</div>
<div class="item">

View File

@ -155,6 +155,7 @@ urlpatterns = patterns('',
(r'^options/', include('seahub.options.urls')),
(r'^profile/', include('seahub.profile.urls')),
(r'^share/', include('seahub.share.urls')),
(r'^help/', include('seahub.help.urls')),
url(r'^captcha/', include('captcha.urls')),
### system admin ###