Anonymous avatar Anonymous committed 4f44519 Draft

fixed error when default mileseon is undefined.

Comments (0)

Files changed (1)

tracsteinschartplugin/tracsteinschart/chart/web_ui.py

         cursor = db.cursor()
 
         # マイルストーンとコンポーネントを取得
-        milestone = req.args.get('milestone', self.config.get('ticket','default_milestone'))
+        milestone_name = req.args.get('milestone', self.config.get('ticket','default_milestone'))
         component = req.args.get('component', '-')
 
         if req.args.has_key('start'):
 
         milestones = dbhelper.get_milestones(db)
         components = dbhelper.get_components(db)
-
+        milestone = None
         for m in milestones:
-           if m['name'] == milestone:
+           if m['name'] == milestone_name:
                milestone = m
                self.log.info(milestone)
            if m.has_key('started') and m['started'] != 0 and m['started'] != None:
                m['due_date'] = to_datetime(m['due'],req.tz)
 
 
-        if not milestone.has_key('started_date') or not milestone.has_key('due_date'):
-            if not milestone.has_key('started_date'):
+        if not (milestone and milestone.has_key('started_date') and milestone.has_key('due_date')):
+            if not milestone:
+                add_warning(req, 'メニューの「管理」>「チケットシステム」>「マイスルトーン」からデフォルトのマイルストーンを設定してください。')
+            elif not milestone.has_key('due_date'):
+                add_warning(req, 'マイスルトーン「%s」に期日が設定されていません。期日を設定してください。' % milestone['name'])
+            elif not milestone.has_key('started_date'):
                 add_warning(req, 'マイルストーン「%s」は開始されていません。チャートを表示するには、マイルストーンを開始してください。' % milestone['name'])
-            if not milestone.has_key('due_date'):
-                add_warning(req, 'マイスルトーン「%s」に期日が設定されていません。期日を設定してください。' % milestone['name'])
             data = {'actual_chart': None,
                     'estimate_chart': None,
                     'worktime': None,
-                    'milestone':milestone,
+                    'milestone':milestones[0],
                     'milestones': milestones,
                     'components': components,
                     'component': component,
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.