Got the view page of the wiki rendering. Most of it is a styling mess.

This commit is contained in:
Bridger Maxwell
2012-06-29 12:05:55 -04:00
parent 8002644436
commit b69deb698d
8 changed files with 55 additions and 61 deletions

View File

@@ -14,6 +14,7 @@ _FIELDS = ['number', # 6.002x
'path', # /some/absolute/filepath/6.002x --> course.xml is in here.
'instructors', # ['Anant Agarwal']
'institution', # "MIT"
'wiki_namespace',
'grader', # a courseware.graders.CourseGrader object
#'start', # These should be datetime fields

View File

@@ -34,7 +34,7 @@ class ArticleAdminForm(forms.ModelForm):
model = Article
class ArticleAdmin(admin.ModelAdmin):
list_display = ('created_by', 'slug', 'modified_on', 'parent')
list_display = ('created_by', 'slug', 'modified_on', 'namespace')
search_fields = ('slug',)
prepopulated_fields = {'slug': ('title',) }
inlines = [RevisionInline]

View File

@@ -56,15 +56,7 @@ class Article(models.Model):
try:
return Article.objects.filter(slug__exact = "")[0]
except:
raise ShouldHaveExactlyOneRootSlug()
@models.permalink
def get_absolute_url(self):
return ('wiki_view', [self.slug])
def get_full_slug(self):
# TODO: Return namespace : slug
return self.slug
raise ShouldHaveExactlyOneRootSlug()
# @classmethod
# def get_url_reverse(cls, path, article, return_list=[]):

View File

@@ -1,20 +0,0 @@
from django.conf.urls.defaults import *
urlpatterns = patterns('',
url(r'^$', 'simplewiki.views.root_redirect', name='wiki_root'),
url(r'^view(/[a-zA-Z\d/_-]*)/?$', 'simplewiki.views.view', name='wiki_view'),
url(r'^view_revision/([0-9]*)(/[a-zA-Z\d/_-]*)/?$', 'simplewiki.views.view_revision', name='wiki_view_revision'),
url(r'^edit(/[a-zA-Z\d/_-]*)/?$', 'simplewiki.views.edit', name='wiki_edit'),
url(r'^create(/[a-zA-Z\d/_-]*)/?$', 'simplewiki.views.create', name='wiki_create'),
url(r'^history(/[a-zA-Z\d/_-]*)/([0-9]*)/?$', 'simplewiki.views.history', name='wiki_history'),
url(r'^search_related(/[a-zA-Z\d/_-]*)/?$', 'simplewiki.views.search_add_related', name='search_related'),
url(r'^random/?$', 'simplewiki.views.random_article', name='wiki_random'),
url(r'^revision_feed/([0-9]*)/?$', 'simplewiki.views.revision_feed', name='wiki_revision_feed'),
url(r'^search/?$', 'simplewiki.views.search_articles', name='wiki_search_articles'),
url(r'^list/?$', 'simplewiki.views.search_articles', name='wiki_list_articles'), #Just an alias for the search, but you usually don't submit a search term
# url(r'^/?([a-zA-Z\d/_-]*)/_related/add/$', 'simplewiki.views.add_related', name='add_related'),
# url(r'^/?([a-zA-Z\d/_-]*)/_related/remove/(\d+)$', 'simplewiki.views.remove_related', name='wiki_remove_relation'),
# url(r'^/?([a-zA-Z\d/_-]*)/_add_attachment/$', 'simplewiki.views_attachments.add_attachment', name='add_attachment'),
# url(r'^/?([a-zA-Z\d/_-]*)/_view_attachment/(.+)?$', 'simplewiki.views_attachments.view_attachment', name='wiki_view_attachment'),
# url(r'^(.*)$', 'simplewiki.views.encode_err', name='wiki_encode_err')
)

View File

@@ -4,7 +4,7 @@ from django.contrib.auth.decorators import login_required
from django.core.context_processors import csrf
from django.core.urlresolvers import reverse
from django.db.models import Q
from django.http import HttpResponse, HttpResponseRedirect
from django.http import HttpResponse, HttpResponseRedirect, Http404
from django.utils import simplejson
from django.utils.translation import ugettext_lazy as _
from mitxmako.shortcuts import render_to_response
@@ -15,6 +15,14 @@ from models import Revision, Article, CreateArticleForm, RevisionFormWithTitle,
import wiki_settings
def view(request, course_id, slug, namespace=None):
try:
course = settings.COURSES_BY_ID[course_id]
if not namespace:
namespace = course.wiki_namespace
except KeyError:
raise Http404("Course not found")
(article, err) = get_article(request, slug, namespace if namespace else course_id )
if err:
return err
@@ -27,9 +35,11 @@ def view(request, course_id, slug, namespace=None):
'wiki_write': article.can_write_l(request.user),
'wiki_attachments_write': article.can_attach(request.user),
'wiki_current_revision_deleted' : not (article.current_revision.deleted == 0),
'wiki_title' : article.title + " - MITX %s Wiki" % course_number
'wiki_title' : article.title + " - edX %s Wiki" % course.title,
'course' : course,
}
d.update(csrf(request))
print d
return render_to_response('simplewiki/simplewiki_view.html', d)
def view_revision(request, course_id, slug, revision_number, namespace=None):
@@ -445,8 +455,8 @@ def get_article(request, slug, namespace):
article = None
try:
article = Article.objects.get(slug__exact == slug )#, namespace__name__exact = namespace)
except:
article = Article.objects.get( slug__exact = slug )#, namespace__name__exact = namespace)
except Article.DoesNotExist:
#TODO: We need to pass a url for creating the article here
err = not_found(request, slug)