Beispiel #1
0
def messageList2(request,type=None,channel=None):
    """
        Shows a message list
    """
    info(request, 'messageList', 'Listing messages')
    setLeftMenu(request, messageMenu(request), _('Messages'))
    crumbs = ((_('Home'), reverse('root')),)
    extra_context = {}
    if type:
        extra_context['typeName'] = MESSAGE_TYPES[type]
        typeName = MESSAGE_TYPES[type]

        if typeName == MESSAGE_TYPES[MESSAGE_TYPE_INDIVIDUAL]:
            crumbs += ((_('Individual messages'), reverse('messagelist', args = [MESSAGE_TYPE_INDIVIDUAL])),)
            extra_context['type'] = MESSAGE_TYPE_INDIVIDUAL
        elif typeName == MESSAGE_TYPES[MESSAGE_TYPE_CHANNEL]:
            crumbs += ((_('Channel messages'), reverse('messagelist', args = [MESSAGE_TYPE_CHANNEL])),)
            extra_context['type'] = MESSAGE_TYPE_CHANNEL
        else:
            error(request, 'messageList2', 'Trying to list messages of unknown type')
            raise Http404

    if channel:
        extra_context['channel'] = channel
        
    extra_context['profile'] = request.session['profile']
    extra_context['crumbs'] = crumbs
    kwargs = {'type': type, 'id': request.user.id}
    extra_context['filterForm'] = FilterForm(**kwargs)
    return render_to_response(TEMPLATES['message_list'], extra_context, RequestContext(request))
Beispiel #2
0
def deleteChannel(request, object_id):
    """
        #TODO
    """
    setLeftMenu (request, channelMenu(), _('Channels'))
    crumbs = ( ( _('Home') , reverse('root') ),
               ( _('Channel List') , reverse('showList')  ),
               ( _('Delete Channel %(objectId)s') % {'objectId': object_id} , 
                        reverse('delete_channel',args=[object_id])),
             )
    info (request, 'deleteChannel', 'enter to delete channel %(object)s' % {'object':object_id})
    try:
        object = Channel.objects.get(pk = object_id)
    except Channel.DoesNotExist:
        error (request, 'deleteChannel', 
                        _('Trying to delete a unexisting channel'))
        object = None   
    if request.POST:
        object.destructionDate = datetime.datetime.now()
        object.active = False
        object.save()
        info(request, 'deleteChannel', 
                _("Channel %(object)s have been deleted" % {'object': object}))
        return HttpResponseRedirect(reverse('showList'))
    else:
        return render_to_response(TEMPLATES['delete_channel'], {
                'object': object,
                'profile' : request.session['profile'],
                'crumbs' : crumbs
            }, RequestContext (request))
Beispiel #3
0
def getForm(request, name='', obj=None, editing=False):
    """
        Returns a form according an url
    """
    info (request, 'getForm', 'Getting a form')
    if editing:
        try:
            form = getReadyForm(request, form=ITEM_URL_DICT[name]['editform'],
                                obj=obj, urlname=name)
            return form
        except KeyError:
            pass
    try:
        form = getReadyForm(request, form=ITEM_URL_DICT[name]['form'], obj=obj, urlname=name)         
    except KeyError:
        error(request, 'getForm', "Form not found for this url: %(name)s" % {'name': name} )
        raise Http404    
    return form
Beispiel #4
0
def showItemSummary(request, name, template_name=SUMMARY_ITEM_TEMPLATE):
    """
        Show general information about an item family
    """
    info (request, 'showItemSummary', 'Showing showItemSummary')    
    baseItemMenu(request, name)    
    try:
        list = URL_GROUP_ITEMS[name]    
    except KeyError:
        error(request, 'showItemSummary', "Requested a url group which doesn't exist: %s" % name)
        raise Http404
    item = []    
    for url in list:
        item.append(getObj(request, name=url) )
        
    return render_to_response(template_name,
        { "item": item, "name": name, "fullname": getGroupFullname(name),
        "profile" : request.session['profile']},
        context_instance=RequestContext(request))
Beispiel #5
0
def deleteMessage(request, object_id,type):

    object = None
    msg_object = None
    crumbs = ( ( _('Home') , reverse('root') ),
               ( _('Message List') , reverse('messagelist',args=[type])  ),
               ( _('Delete Message %(objectId)s') % {'objectId': object_id} ,
                        reverse('deletemessage',args=[type,object_id])),
             )
    info (request, 'deleteMessage', 'deleting message')
    setLeftMenu (request, messageMenu (request), _('Message'))
    if type == 'Individual':
        try:
            object = Message.objects.get(pk = object_id)
        except Message.DoesNotExist:
            error (request, 'deleteMessage',
                        _('Trying to delete a unexisting message'))
    elif type == 'Channel':
        try:
            msg_object = Message.objects.get(pk=object_id)
            object = msg_object.channelmessage_set.all()[0]
        except (ChannelMessage.DoesNotExist, Message.DoesNotExist):
            error (request, 'deleteMessage',
                        _('Trying to delete a unexisting message'))
    if request.POST:
        if object.can_be_del():
            object.delete()
            if msg_object: 
                msg_object.delete()
            info (request, 'deleteMessage',
                _('Message %(object)s have been deleted' % {'object': object.__unicode__()}))
            return HttpResponseRedirect(reverse('messagelist',args=[type]))
        else:
            error (request, 'deleteMessage',
                        _('Can not delete message %(objectID)s') %{'objectID':object.id})
            return render_to_response(TEMPLATES['errors'],
                                      {
                                        'profile': request.session['profile'],
                                        'crumbs': crumbs,
                                        'showInfoToUser': _('Can not delete message %(objectID)s') %{'objectID':object.id},
                                        'type': type
                                      },RequestContext (request)
                                      
                    )
    else:
        return render_to_response(TEMPLATES['delete_message'], {
                'object': object,
                'profile' : request.session['profile'],
                'crumbs' : crumbs,
                'type': type
            }, RequestContext (request))