src/cm/views/texts.py
changeset 12 f69ff46d3240
parent 0 40c8f766c9b8
child 24 c8a95e540b79
equal deleted inserted replaced
11:7b8167c4aa6f 12:f69ff46d3240
     1 from cm.activity import register_activity
     1 from cm.activity import register_activity
     2 from cm.client import jsonize, get_filter_datas, edit_comment, remove_comment, \
     2 from cm.client import jsonize, get_filter_datas, edit_comment, remove_comment, \
     3     add_comment, RequestComplexEncoder, comments_thread
     3     add_comment, RequestComplexEncoder, comments_thread, own_notify
     4 from cm.cm_settings import NEW_TEXT_VERSION_ON_EDIT
     4 from cm.cm_settings import NEW_TEXT_VERSION_ON_EDIT
     5 from cm.diff import text_diff as _text_diff, text_history as inner_text_history, \
     5 from cm.diff import text_diff as _text_diff, text_history as inner_text_history, \
     6     get_colors
     6     get_colors
     7 from cm.exception import UnauthorizedException
     7 from cm.exception import UnauthorizedException
     8 from cm.message import *
     8 from cm.message import *
   226         text = Text.objects.get(key=key) ;
   226         text = Text.objects.get(key=key) ;
   227         #TODO: stupid why restrict to latest ? 
   227         #TODO: stupid why restrict to latest ? 
   228         text_version = text.get_latest_version()
   228         text_version = text.get_latest_version()
   229         
   229         
   230         if (text != None) :
   230         if (text != None) :
       
   231             if function_name == 'ownNotify' : 
       
   232                 ret = own_notify(request=request, key=key)
   231             if function_name in ('editComment', 'addComment', 'removeComment',) :
   233             if function_name in ('editComment', 'addComment', 'removeComment',) :
   232                 if function_name == 'editComment' :
   234                 if function_name == 'editComment' :
   233                     ret = edit_comment(request=request, key=key, comment_key=request.POST['comment_key'])
   235                     ret = edit_comment(request=request, key=key, comment_key=request.POST['comment_key'])
   234                 elif function_name == 'addComment' :
   236                 elif function_name == 'addComment' :
   235                     ret = add_comment(request=request, key=key)
   237                     ret = add_comment(request=request, key=key)
   237                     ret = remove_comment(request=request, key=key, comment_key=request.POST['comment_key'])
   239                     ret = remove_comment(request=request, key=key, comment_key=request.POST['comment_key'])
   238                     
   240                     
   239                 ret['filterData'] = get_filter_datas(request, text_version, text)
   241                 ret['filterData'] = get_filter_datas(request, text_version, text)
   240                 #ret['tagCloud'] = get_tagcloud(key)
   242                 #ret['tagCloud'] = get_tagcloud(key)
   241     if ret :
   243     if ret :
   242         if type(ret) != HttpResponseRedirect :
   244         if type(ret) != HttpResponseRedirect and type(ret) != HttpResponse:
   243             ret = HttpResponse(simplejson.dumps(ret, cls=RequestComplexEncoder, request=request))        
   245             ret = HttpResponse(simplejson.dumps(ret, cls=RequestComplexEncoder, request=request))        
   244     else :
   246     else :
   245         ret = HttpResponse(simplejson.dumps({}))
   247         ret = HttpResponse()
   246         ret.status_code = 403
   248         ret.status_code = 403 
   247 
       
   248     return ret 
   249     return ret 
   249 
   250 
   250 
   251 
   251 #NOTE : some arguments like : withcolor = "yes" + format = "markdown" are incompatible
   252 #NOTE : some arguments like : withcolor = "yes" + format = "markdown" are incompatible
   252 #http://localhost:8000/text/text_key_1/export/pdf/1/all/1
   253 #http://localhost:8000/text/text_key_1/export/pdf/1/all/1