示例#1
0
 def edit_layers(self, visiting_group_id):
     vgroup = common_couch.getVisitingGroup(holly_couch,  visiting_group_id)
     vgroup_layers = vgroup.get('layers',  list())
     
     #...make map of layers from list of layers, keyed on id
     vgroup_layers_map = dict()
     for tmp_vgroup_layer in vgroup_layers:
         vgroup_layers_map[tmp_vgroup_layer['layer_id']] = tmp_vgroup_layer
     
     #...get all visiting group that possibly could be mapped
     vgroups_in_daterange = getVisitingGroupsInDatePeriod(holly_couch,  vgroup['from_date'],  vgroup['to_date'])
     
     #...build data struct for dojo spreadsheet / grid
     grid_items= list()
     for tmp_vgroup_row in vgroups_in_daterange:
         tmp_vgroup = tmp_vgroup_row.doc
         if tmp_vgroup['_id'] != vgroup['_id']:
             if tmp_vgroup['_id'] in vgroup_layers_map.keys():
                 grid_items.append(dict(layer_id=tmp_vgroup['_id'],  name=tmp_vgroup['name'],  connect=True, colour=vgroup_layers_map[tmp_vgroup['_id']]['colour'] )) # change colours
             else:
                 grid_items.append(dict(layer_id=tmp_vgroup['_id'],  name=tmp_vgroup['name'],  connect=False, colour="#fff" ))
     
     grid_data = dict(identifier='layer_id', items=grid_items)
     layer_data = json.dumps(grid_data)
     return dict(visiting_group=vgroup,  layer_data=layer_data,  reFormatDate=reFormatDate)
示例#2
0
    def upcoming(self):
        """Show an overview of all booking days"""

        today_date_str = datetime.date.today().strftime('%Y-%m-%d')
        end_date_str = (datetime.date.today()+datetime.timedelta(5)).strftime('%Y-%m-%d')

        #today_date_str = '2017-06-10'
        #end_date_str = '2017-06-20'

        booking_days = getBookingDays(holly_couch, from_date=today_date_str,  to_date=end_date_str)

        log.debug(str(booking_days))
        print '####', booking_days
        vgroups = getVisitingGroupsInDatePeriod(holly_couch, today_date_str, end_date_str) # TODO: fix view later.  get_visiting_groups(from_date=today_date_str,  to_date=end_date_str)

        group_info = dict()
        bdays = list()
        for tmp in booking_days:
            b_day = tmp.doc
            tmp_date_today_str = b_day['date']
            bdays.append(b_day)

            group_info[tmp_date_today_str] = dict(arrives=[v.doc for v in vgroups if v.doc.get('from_date','') == tmp_date_today_str], leaves=[v.doc for v in vgroups if v.doc.get('to_date','') == tmp_date_today_str], stays=[v.doc for v in vgroups if v.doc.get('to_date','') > tmp_date_today_str and v.doc.get('from_date','') < tmp_date_today_str])

        return dict(booking_days=bdays, group_info=group_info, makeDate=getDateObject)
示例#3
0
    def view_period(self,  period=None):

        # TODO: refactor so we only show visiting groups in time span given by daterange document.
        if period == '1an':
            from_date='2011-01-01'
            to_date='2011-07-16'

            visiting_groups = [v.doc for v in getVisitingGroupsInDatePeriod(holly_couch, from_date,  to_date)]
        elif period == '2an':
            from_date='2011-07-17'
            to_date='2011-08-24'
            visiting_groups = [v.doc for v in getVisitingGroupsInDatePeriod(holly_couch, from_date,  to_date)]

        else:
            from_date=''
            to_date=''
            visiting_groups = [v.doc for v in getAllVisitingGroups(holly_couch, from_date,  to_date)]

        v_group_map = dict() #self.makeRemainingVisitingGroupsMap(visiting_groups,  from_date=from_date,  to_date=to_date)
        has_notes_map = getTargetNumberOfNotesMap(holly_couch)
        return dict(visiting_groups=visiting_groups,  remaining_visiting_group_names=v_group_map.keys(), bokn_status_map=bokn_status_map,  reFormatDate=reFormatDate, all_tags=[t.key for t in getAllTags(holly_couch)], has_notes_map=has_notes_map)
示例#4
0
 def view_date_range(self,  from_date=None,  to_date=None):
     visiting_groups = [v.doc for v in getVisitingGroupsInDatePeriod(holly_couch, from_date,  to_date)]
     v_group_map = dict() #self.makeRemainingVisitingGroupsMap(visiting_groups,  from_date=fromdate,  to_date=todate)
     has_notes_map = getTargetNumberOfNotesMap(holly_couch)
     return dict(visiting_groups=visiting_groups,  remaining_visiting_group_names=v_group_map.keys(), bokn_status_map=bokn_status_map,  reFormatDate=reFormatDate, all_tags=[t.key for t in getAllTags(holly_couch)], has_notes_map=has_notes_map, visiting_group_types=getVisitingGroupTypes(holly_couch))