Changeset 2106 for trunk/loreality/loreality/controllers/mission.py
- Timestamp:
- 07/06/10 12:38:59 (23 months ago)
- File:
-
- 1 edited
-
trunk/loreality/loreality/controllers/mission.py (modified) (6 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/loreality/loreality/controllers/mission.py
r2105 r2106 21 21 import uuid 22 22 from pylons.i18n.translation import _, ungettext 23 class MisField: 24 name = "" 25 formtype = "" 26 def __init__( self, **kwargs): 27 self.__dict__.update( kwargs ) 28 23 29 24 30 class MissionController(BaseController): 31 misfields = [ 32 MisField(name="name" ,t_name=_("name") ,formtype="text"), 33 MisField(name="description" ,t_name=_("description") ,formtype="text"), 34 MisField(name="date" ,t_name=_("date") ,formtype="text"), 35 MisField(name="situation" ,t_name=_("situation") ,formtype="textarea"), 36 MisField(name="objectives" ,t_name=_("objectives") ,formtype="textarea"), 37 MisField(name="flightplan" ,t_name=_("flight plan") ,formtype="textarea"), 38 MisField(name="threat" ,t_name=_("threat") ,formtype="textarea"), 39 MisField(name="others" ,t_name=_("others") ,formtype="textarea") 40 ] 25 41 #-------------------------------------------------------------- 26 42 def _get_pilots(self, already_pilots): … … 29 45 for p in pilots: 30 46 if p not in already_pilots: 31 names.append( p.name)47 names.append( [p.id, p.name] ) 32 48 return names 33 49 … … 44 60 c.heading = mission.name 45 61 c.mission = mission 62 c.misfields = self.misfields 46 63 c.available_pilots = self._get_pilots(mission.pilots) 47 64 … … 75 92 abort(404) 76 93 77 mission.name = result["name"]78 mission.description = result["description"]79 mission.date = result["date"] 94 for f in self.misfields: 95 setattr(mission, f.name, result[f.name] ) 96 80 97 meta.Session.commit() 81 98 return self.view(id=id) … … 95 112 c.heading = "Edit %s"%mission.name 96 113 c.mission = mission 114 c.misfields = self.misfields 97 115 c.available_pilots = self._get_pilots(mission.pilots) 98 116 99 117 if not values: values = {} 100 values["name"] = mission.name 101 values["description"] = mission.description102 values["date"] = mission.date118 119 for f in self.misfields: 120 values[f.name] = getattr(mission, f.name ) 103 121 104 122 html = render('/derived/page/mission_edit.html') … … 119 137 abort(404) 120 138 pilot_q = meta.Session.query(model.Pilot) 121 pilot = pilot_q.filter_by( name=pilotid).first()139 pilot = pilot_q.filter_by(id=uuid.UUID(pilotid)).first() 122 140 if pilot is None: 123 141 abort(404)
Note: See TracChangeset
for help on using the changeset viewer.
