Example #1
0
def create(request, p_id):

    user = request.user
    project = get_object_or_404(Project, pk=p_id)
    project.check_user_in_project_or_404(user)
    users_in_project = project.get_users()

    if not checkperm(PERMISSIONS_WIKIBOARD_CREATE, user, project):
        return HttpResponseForbidden(_('Forbidden Access'))

    if request.method == 'POST':
        form = NewWikiEntryForm(project, request.POST)
        if form.is_valid():

            #TODO: put in form save
            wiki = Wiki()
            wiki.project = project
            wiki.creator = user
            wiki.name = form.cleaned_data['wiki_name']
            wiki.save()

            wikientry = WikiEntry()
            wikientry.content = form.cleaned_data['content']
            wikientry.author = user
            wikientry.wiki = wiki
            wikientry.save()
            wiki.last_version = wikientry
            wiki.save()

            events_log(user, 'A', wiki.name, wikientry)
            request.user.message_set.create(
                message=_('Wikiboard "%s" was successfully created.') %
                wiki.name)

            kw = {
                'p_id': project.id,
                'entry_id': wiki.id,
                'entry_version': wikientry.id
            }
            return HttpResponseRedirect(
                urlresolvers.reverse('rancho.wikiboard.views.view_page',
                                     kwargs=kw))
    else:
        form = NewWikiEntryForm(project)

    context = {
        'project': project,
        'users_in_project': users_in_project,
        'form': form
    }
    return render_to_response("wikiboard/create_entry.html",
                              context,
                              context_instance=RequestContext(request))
Example #2
0
def edit(request, p_id,entry_id=None,entry_version=None):

    user = request.user
    project = get_object_or_404(Project, pk=p_id)
    project.check_user_in_project_or_404(user)
    users_in_project = project.get_users()

    if entry_id and entry_version:
        wiki = get_object_or_404(Wiki, pk=entry_id)
        wikicurentry = get_object_or_404(WikiEntry, id=entry_version)

        if not checkperm(PERMISSIONS_WIKIBOARD_CREATE, user, project, wiki ) or wiki.project != project:
            return HttpResponseForbidden(_('Forbidden Access'))


    if request.method=='POST':
        tinyMceForm = TinyMceForm(request.POST)
        if tinyMceForm.is_valid():

            wikientry = WikiEntry()
            wikientry.content = tinyMceForm.cleaned_data['content']
            wikientry.author = user
            wikientry.wiki = wiki
            wikientry.save()
            wiki.last_version = wikientry
            wiki.save()

            events_log(user, 'U', wiki.name, wikientry)

            request.user.message_set.create(message=_('Wikiboard "%s" was successfully updated.') % wiki.name)
            kw = {'p_id': project.id, 'entry_id': wiki.id, 'entry_version': wikientry.id}
            return HttpResponseRedirect(urlresolvers.reverse('rancho.wikiboard.views.view_page', kwargs=kw))

    else:
        if wiki:
            data = {'content': wikicurentry.content}
        else:
            data = {}

        tinyMceForm = TinyMceForm(data)

    context = {'project': project,
               'users_in_project': users_in_project,
               'wiki': wiki,
               'wikicurentry': wikicurentry,
               'wiki_entrys': WikiEntry.objects.filter(wiki=wiki).order_by('-creation_date'),
               'form': tinyMceForm }
    return render_to_response("wikiboard/edit_entry.html", context,
                              context_instance=RequestContext(request))
Example #3
0
def create(request, p_id):

    user = request.user
    project = get_object_or_404(Project, pk=p_id)
    project.check_user_in_project_or_404(user)
    users_in_project = project.get_users()

    if not checkperm(PERMISSIONS_WIKIBOARD_CREATE, user, project ):
        return HttpResponseForbidden(_('Forbidden Access'))


    if request.method=='POST':
        form = NewWikiEntryForm(project, request.POST)
        if form.is_valid():

            #TODO: put in form save
            wiki = Wiki()
            wiki.project = project
            wiki.creator = user
            wiki.name = form.cleaned_data['wiki_name']
            wiki.save()

            wikientry = WikiEntry()
            wikientry.content = form.cleaned_data['content']
            wikientry.author = user
            wikientry.wiki = wiki
            wikientry.save()
            wiki.last_version = wikientry
            wiki.save()

            events_log(user, 'A', wiki.name, wikientry)
            request.user.message_set.create(message=_('Wikiboard "%s" was successfully created.') % wiki.name)

            kw = {'p_id': project.id, 'entry_id': wiki.id, 'entry_version': wikientry.id}
            return HttpResponseRedirect(urlresolvers.reverse('rancho.wikiboard.views.view_page', kwargs=kw))
    else:
        form = NewWikiEntryForm(project)

    context = {'project': project,
               'users_in_project': users_in_project,
               'form': form }
    return render_to_response("wikiboard/create_entry.html", context,
                              context_instance=RequestContext(request))
Example #4
0
def edit(request, p_id, entry_id=None, entry_version=None):

    user = request.user
    project = get_object_or_404(Project, pk=p_id)
    project.check_user_in_project_or_404(user)
    users_in_project = project.get_users()

    if entry_id and entry_version:
        wiki = get_object_or_404(Wiki, pk=entry_id)
        wikicurentry = get_object_or_404(WikiEntry, id=entry_version)

        if not checkperm(PERMISSIONS_WIKIBOARD_CREATE, user, project,
                         wiki) or wiki.project != project:
            return HttpResponseForbidden(_('Forbidden Access'))

    if request.method == 'POST':
        tinyMceForm = TinyMceForm(request.POST)
        if tinyMceForm.is_valid():

            wikientry = WikiEntry()
            wikientry.content = tinyMceForm.cleaned_data['content']
            wikientry.author = user
            wikientry.wiki = wiki
            wikientry.save()
            wiki.last_version = wikientry
            wiki.save()

            events_log(user, 'U', wiki.name, wikientry)

            request.user.message_set.create(
                message=_('Wikiboard "%s" was successfully updated.') %
                wiki.name)
            kw = {
                'p_id': project.id,
                'entry_id': wiki.id,
                'entry_version': wikientry.id
            }
            return HttpResponseRedirect(
                urlresolvers.reverse('rancho.wikiboard.views.view_page',
                                     kwargs=kw))

    else:
        if wiki:
            data = {'content': wikicurentry.content}
        else:
            data = {}

        tinyMceForm = TinyMceForm(data)

    context = {
        'project':
        project,
        'users_in_project':
        users_in_project,
        'wiki':
        wiki,
        'wikicurentry':
        wikicurentry,
        'wiki_entrys':
        WikiEntry.objects.filter(wiki=wiki).order_by('-creation_date'),
        'form':
        tinyMceForm
    }
    return render_to_response("wikiboard/edit_entry.html",
                              context,
                              context_instance=RequestContext(request))