[Mpuls-commits] r3075 - jmd/trunk/jmdstrukturweb/controllers

scm-commit@wald.intevation.org scm-commit at wald.intevation.org
Wed Jun 23 14:50:38 CEST 2010


Author: torsten
Date: 2010-06-23 14:50:37 +0200 (Wed, 23 Jun 2010)
New Revision: 3075

Modified:
   jmd/trunk/jmdstrukturweb/controllers/case.py
Log:
* jmdstrukturweb/controllers/case.py (CaseController): Overwrite delete and restore methods to be able to get the correct translation. Translation ist hardcoded here! TODO: Fix translation in controllers.


Modified: jmd/trunk/jmdstrukturweb/controllers/case.py
===================================================================
--- jmd/trunk/jmdstrukturweb/controllers/case.py	2010-06-23 12:48:48 UTC (rev 3074)
+++ jmd/trunk/jmdstrukturweb/controllers/case.py	2010-06-23 12:50:37 UTC (rev 3075)
@@ -33,8 +33,9 @@
 
 import formencode
 
-from mpulsweb.lib.base import c, g, render, request, session
+from mpulsweb.lib.base import c, g, h, render, request, session
 from mpulsweb.lib.security import checkRole
+from mpulsweb.lib.translation import _, ungettext
 
 from mpulsweb.model.case import SessionCase, Agency
 from mpulsweb.model.statement import PrivacyStatement
@@ -46,8 +47,82 @@
 
 log = logging.getLogger(__name__)
 
+DELETE_CONFIRM = "JMD-Statistik löschen"
+DELETE_CONFIRM_TEXT = "Achtung, beim Löschen der JMD-Statistik gehen alle Daten unwiederbringlich verloren!<br>Löschen Sie die Statistik nur, wenn diese tatsächlich <b>nicht</b> mehr für Auswertungszwecke hinzugezogen werden soll.<br><br>Die Statistik jetzt vom Server löschen?"
+MARKDELETE_CONFIRM_TEXT = "Wollen Sie wirklich die JMD-Statistik zum Löschen freigeben? Die JMD-Statistik steht Ihnen danach nicht mehr zur Bearbeitung zur Verfügung und wird der Administration zum Löschen vorgelegt." 
+RESTORE_CONFIRM = "JMD-Statistik wiederherstellen?" 
+RESTORE_CONFIRM_TEXT = "Wollen Sie wirklich die JMD-Statistik wiederherstellen? Die JMD-Statistik ist danach wieder für die Nutzer bearbeitbar."
+
+COPY_SUCCESS = "Case copied!"
+COPY_SUCCESS_TEXT = "Die JMD-Statistik wurde erfolgreich kopiert, und steht in der Übersicht zur Verfügung. Klicken Sie auf \"OK\", um die Übersicht zu öffnen." 
+COPY_CONFIRM = "Copy case?"
+COPY_CONFIRM_TEXT = "Wollen Sie wirklich die JMD-Statistik kopieren? Sämtliche Daten der JMD-Statistik werden dann in einer neuen JMD-Statistik übernommen." 
+
 class CaseController(MpulsCaseController):
 
+    @checkRole('admin')
+    def restore(self, id, confirmed):
+        id = self._checkInt(id)
+        confirmed = self._checkBool(confirmed)
+        case = self._loadCase(id)
+        if confirmed == 1:
+            case.restore()
+            c.dialog_title = u'JMD-Statistik wiederhergestellt!'
+            c.dialog_text = u'Bitte klicken Sie "OK", um fortzufahren.'
+            c.url_ok = h.url_for(controller="/case_overview")
+            return render('/casemanagement/dialogs/success_restore.mako')
+        else:
+            c.context = "../main.mako"
+            c.dialog_title = RESTORE_CONFIRM
+            c.dialog_text = RESTORE_CONFIRM_TEXT
+            c.url_yes = h.url_for(controller='/case', action='restore', id=id,
+                                  confirmed=1)
+            c.url_no = h.url_for(controller='/case_overview')
+            return render('/casemanagement/dialogs/confirm_restore.mako')
+
+    @checkRole('cm')
+    def markForDelete(self, id, confirmed):
+        id = self._checkInt(id)
+        confirmed = self._checkBool(confirmed)
+        if confirmed == 1:
+            case = self._loadCase(id)
+            case.setState(3)
+            c.dialog_title = u'JMD-Statistik gelöscht!'
+            c.dialog_text = (u"Die JMD-Statistik wurde zum Löschen an die"
+                             u" Administration weitergeleitet.")
+            c.url_ok = h.url_for(controller="/case_overview")
+            session['render_mode'] = 'ro'
+            session.save()
+            return render('/casemanagement/dialogs/success_delete_cm.mako')
+        else:
+            c.context = "../main.mako"
+            c.dialog_title = DELETE_CONFIRM
+            c.dialog_text = MARKDELETE_CONFIRM_TEXT
+            c.url_yes = h.url_for(controller='/case', action='markForDelete',
+                                  id=id, confirmed=1)
+            c.url_no = h.url_for(controller='/case_overview')
+            return render('/casemanagement/dialogs/confirm.mako')
+
+    @checkRole('admin')
+    def delete(self, id, confirmed):
+        id = self._checkInt(id)
+        confirmed = self._checkBool(confirmed)
+        if confirmed == 1:
+            case = self._loadCase(id)
+            case.delete()
+            c.dialog_title = u'JMD-Statistik gelöscht!'
+            c.dialog_text = u'Bitte klicken Sie "OK", um fortzufahren.'
+            c.url_ok = h.url_for(controller="/case_overview")
+            return render('/casemanagement/dialogs/success_delete.mako')
+        else:
+            c.context = "../main.mako"
+            c.dialog_title = DELETE_CONFIRM
+            c.dialog_text = DELETE_CONFIRM_TEXT
+            c.url_yes = h.url_for(controller='/case', action='delete',
+                                  id=id, confirmed=1)
+            c.url_no = h.url_for(controller='/case_overview')
+            return render('/casemanagement/dialogs/confirm_delete.mako')
+
     @checkRole('cm_ka')
     def newAction(self):
         # TODO: Use htmlfill here!



More information about the Mpuls-commits mailing list