Ejemplo n.º 1
0
# Copyright 2011, hast. All rights reserved.
#
# This program is free software: you can redistribute it and/or modify it
# under the terms of the GNU Affero General Public License as published by
# the Free Software Foundation, either version 3 of the License, or (at
# your option) any later version.

from django.conf.urls.defaults import patterns, url
from django.views.generic.simple import direct_to_template
from django.contrib.auth.views import login, logout
from django.contrib.auth.decorators import login_required
from django.views.decorators.http import require_POST
from utils.decorators import AR, chk_perm, enforce_post
from users.views import mask_welcome, get_courses, follow, add_perm, rm_perm
from users.views import new_user, unfollow

urlpatterns = patterns(
    "users.views",
    url(r"^$", AR(login_required(direct_to_template)), {"template": "user_show.tpl"}, name="profile"),
    url(r"^mask_welcome$", AR(login_required(mask_welcome)), name="mask_welcome"),
    url(r"^courses$", login_required(get_courses), name="user_courses"),
    url(r"^follow$", require_POST(login_required(follow)), name="user_follow"),
    url(r"^unfollow$", require_POST(login_required(unfollow)), name="user_unfollow"),
    url(r"^login/$", login, {"template_name": "user_login.tpl"}, name="user_login"),
    url(r"^logout/$", logout, {"next_page": "/"}, name="user_logout"),
    url(r"^new$", enforce_post(chk_perm(login_required(new_user), "user_manage")), name="user_new"),
    url(r"^add_perm$", enforce_post(chk_perm(login_required(add_perm), "user_manage")), name="user_add_perm"),
    url(r"^remove_perm$", enforce_post(chk_perm(login_required(rm_perm), "user_manage")), name="user_remove_perm"),
)
Ejemplo n.º 2
0
# your option) any later version.

from django.conf.urls.defaults import patterns, url
from django.views.generic.list_detail import object_detail
from django.contrib.auth.decorators import login_required
from documents.models import EditForm, Document
from documents.views import upload_file, upload_http, download_file, description
from documents.views import download_page, download_mpage, edit_post, remove 
from documents.views import doc_by_course, doc_pending
from utils.decorators import AR, chk_perm, enforce_post
from utils.json import json_sublist_send
from messages.models import NewThreadForm

urlpatterns = patterns('documents.views',
    url(r'^remove/(?P<object_id>[^/]+)$',
        chk_perm(login_required(remove), 'document_manage'),
        name="document_remove"),

    url(r'^all$',
        login_required(json_sublist_send),
        {'queryset': Document.objects.all,
         'fields': ['id', 'name', 'description', 'size', 'done', 'refer.name', 
                    'refer.id', 'date', 'points.score', 'owner.get_profile.real_name', 
                         'points.full_category', 'points.category']},
        name="document_all"),

    url(r'^all/(?P<slug>[^/]+)$',
        login_required(doc_by_course),
        name="document_by_course"),

    url(r'^pending/(?P<slug>[^/]+)$',
Ejemplo n.º 3
0
from django.conf.urls.defaults import patterns, url
from django.contrib.auth.decorators import login_required
from django.views.generic.list_detail import object_detail, object_list
from documents.models import UploadFileForm, UploadHttpForm
from courses.models import Course
from messages.models import NewThreadForm
from upvotes.models import CAT_DOCUMENTS
from utils.json import json_sublist_send, json_select_send
from courses.views import new_course
from utils.decorators import AR, enforce_post, chk_perm

urlpatterns = patterns(
    'courses.views',
    url(r'^new',
        enforce_post(chk_perm(login_required(new_course), 'structure_manage')),
        name="course_new"),
    url(r'^all$',
        login_required(json_sublist_send), {
            'queryset': Course.objects.all,
            'fields': ['id', 'slug', 'name', 'description']
        },
        name='courses_all'),
    url(r'get/(?P<slug>[^/]+)',
        login_required(json_select_send), {
            'queryset': Course.objects.all,
            'fields': ['id', 'slug', 'name', 'description']
        },
        name='course_get'),
    url(r'^s/(?P<slug>[^/]+)',
        AR(login_required(object_detail)), {
Ejemplo n.º 4
0
from users.views import mask_welcome, get_courses, follow, add_perm, rm_perm
from users.views import new_user, unfollow

urlpatterns = patterns(
    'users.views',
    url(r'^$',
        AR(login_required(direct_to_template)), {'template': 'user_show.tpl'},
        name='profile'),
    url(r'^mask_welcome$',
        AR(login_required(mask_welcome)),
        name='mask_welcome'),
    url(r'^courses$', login_required(get_courses), name="user_courses"),
    url(r'^follow$', require_POST(login_required(follow)), name="user_follow"),
    url(r'^unfollow$',
        require_POST(login_required(unfollow)),
        name="user_unfollow"),
    url(r'^login/$',
        login, {'template_name': 'user_login.tpl'},
        name="user_login"),
    url(r'^logout/$', logout, {'next_page': '/'}, name="user_logout"),
    url(r'^new$',
        enforce_post(chk_perm(login_required(new_user), 'user_manage')),
        name='user_new'),
    url(r'^add_perm$',
        enforce_post(chk_perm(login_required(add_perm), 'user_manage')),
        name='user_add_perm'),
    url(r'^remove_perm$',
        enforce_post(chk_perm(login_required(rm_perm), 'user_manage')),
        name='user_remove_perm'),
)
Ejemplo n.º 5
0
# under the terms of the GNU Affero General Public License as published by 
# the Free Software Foundation, either version 3 of the License, or (at 
# your option) any later version.

from django.conf.urls.defaults import patterns, url
from django.contrib.auth.decorators import login_required
from categories.views import sub_categories, attach_category, detach_category
from categories.views import del_category, new_category, attach_course
from categories.views import detach_course, sub_courses, edit_category
from categories.models import Category
from utils.decorators import enforce_post, chk_perm
from utils.json import json_sublist_send

urlpatterns = patterns('categories.views',
    url(r'^new',
        enforce_post(chk_perm(login_required(new_category), 'structure_manage')),
        name="category_new"),

    url(r'^edit$',
        enforce_post(chk_perm(login_required(edit_category), 'structure_manage')),
        name="category_edit"),

    url(r'^attach/(?P<category>[^/]+)/(?P<subcategory>[^/]+)$', 
        chk_perm(login_required(attach_category), 'structure_manage'),
        name="category_attach"),

    url(r'^detach/(?P<category>[^/]+)/(?P<parent>[^/]+)$',
        chk_perm(login_required(detach_category), 'structure_manage'),
        name="category_detach"),

    url(r'^add_course/(?P<category>[^/]+)/(?P<slug>[^/]+)$',
Ejemplo n.º 6
0
from django.conf.urls.defaults import patterns, url
from django.views.generic.list_detail import object_detail
from django.contrib.auth.decorators import login_required
from documents.models import EditForm, Document
from documents.views import upload_file, upload_http, download_file, description
from documents.views import download_page, download_mpage, edit_post, remove
from documents.views import doc_by_course, doc_pending
from utils.decorators import AR, chk_perm, enforce_post
from utils.json import json_sublist_send
from messages.models import NewThreadForm

urlpatterns = patterns(
    'documents.views',
    url(r'^remove/(?P<object_id>[^/]+)$',
        chk_perm(login_required(remove), 'document_manage'),
        name="document_remove"),
    url(r'^all$',
        login_required(json_sublist_send), {
            'queryset':
            Document.objects.all,
            'fields': [
                'id', 'name', 'description', 'size', 'done', 'refer.name',
                'refer.id', 'date', 'points.score',
                'owner.get_profile.real_name', 'points.full_category',
                'points.category'
            ]
        },
        name="document_all"),
    url(r'^all/(?P<slug>[^/]+)$',
        login_required(doc_by_course),
Ejemplo n.º 7
0
        name="thread_list"),
    
    url(r'^view_thread/(?P<object_id>[^/]+)$', 
        AR(login_required(object_detail)), 
        {'queryset': Thread.objects.all(), 
         'template_name': 'thread_view.tpl',
         'extra_context': {'mform': NewPostForm(),
                           'eform': EditPostForm()}},
        name="thread_view"),

    url(r'^post_thread$', 
        enforce_post(login_required(post_thread)), 
        name="thread_post"),
    
    url(r'^post_msg$', 
        enforce_post(login_required(post_msg)), 
        name="message_post"),
    
    url(r'^edit$',
        enforce_post(chk_perm(login_required(edit_msg), 'message_edit')),
        name="message_edit"),
    
    url(r'^remove$',
        enforce_post(chk_perm(login_required(remove_msg), 'message_remove')),
        name="message_remove"),
    
    url(r'^markdown$',
        enforce_post(login_required(markdown)),
        name="markdown"),
)
Ejemplo n.º 8
0
# your option) any later version.

from django.conf.urls.defaults import patterns, url
from django.contrib.auth.decorators import login_required
from django.views.generic.list_detail import object_detail, object_list
from documents.models import UploadFileForm, UploadHttpForm
from courses.models import Course
from messages.models import NewThreadForm
from upvotes.models import CAT_DOCUMENTS
from utils.json import json_sublist_send, json_select_send
from courses.views import new_course
from utils.decorators import AR, enforce_post, chk_perm

urlpatterns = patterns('courses.views',
    url(r'^new',
        enforce_post(chk_perm(login_required(new_course), 'structure_manage')),
        name="course_new"),

    url(r'^all$', login_required(json_sublist_send), 
        {'queryset': Course.objects.all,
         'fields': ['id', 'slug', 'name', 'description']},
        name='courses_all'),

    url(r'get/(?P<slug>[^/]+)',
        login_required(json_select_send),
        {'queryset': Course.objects.all,
         'fields': ['id', 'slug', 'name', 'description']},
        name='course_get'),

    url(r'^s/(?P<slug>[^/]+)', AR(login_required(object_detail)),
        {'queryset': Course.objects.all(), 
Ejemplo n.º 9
0
        },
        name="general_boards"),
    url(r'^list/(?P<courseid>[^/]+)/(?P<docid>[^/]+)/(?P<pageid>[^/]+)$',
        login_required(list_thread),
        name="thread_list"),
    url(r'^view_thread/(?P<object_id>[^/]+)$',
        AR(login_required(object_detail)), {
            'queryset': Thread.objects.all(),
            'template_name': 'thread_view.tpl',
            'extra_context': {
                'mform': NewPostForm(),
                'eform': EditPostForm()
            }
        },
        name="thread_view"),
    url(r'^post_thread$',
        enforce_post(login_required(post_thread)),
        name="thread_post"),
    url(r'^post_msg$',
        enforce_post(login_required(post_msg)),
        name="message_post"),
    url(r'^edit$',
        enforce_post(chk_perm(login_required(edit_msg), 'message_edit')),
        name="message_edit"),
    url(r'^remove$',
        enforce_post(chk_perm(login_required(remove_msg), 'message_remove')),
        name="message_remove"),
    url(r'^markdown$', enforce_post(login_required(markdown)),
        name="markdown"),
)
Ejemplo n.º 10
0
# your option) any later version.

from django.conf.urls.defaults import patterns, url
from django.views.generic.simple import direct_to_template
from django.views.generic.list_detail import object_list
from django.contrib.auth.decorators import login_required
from django.contrib.auth.models import User
from utils.decorators import AR, chk_perm
from courses.models import NewCourseForm
from categories.models import NewCategoryForm, EditCategoryForm
from documents.models import Document
from users.models import CreateUserForm, PERM_LIST

urlpatterns = patterns('admin.views',
    url(r'^tree$',
        AR(chk_perm(login_required(direct_to_template), 'structure_manage')), 
        {'template': 'adm_tree.tpl',
         'extra_context': {'nform': NewCourseForm(),
                           'cform': NewCategoryForm(),
                           'ceform': EditCategoryForm()}}, 
        name="category_tree"),

    url(r'^users$',
        AR(chk_perm(login_required(object_list), 'user_manage')), 
        {'template_name': 'adm_users.tpl',
         'queryset': User.objects.all(),
         'extra_context': {'uform': CreateUserForm(),
                           'perms': PERM_LIST}}, 
        name="admin_users"),

    url(r'^documents$',