Update location automatically
Set location (if none was manually provided) based on the schedule. Change-Id: Idfa7ddb6e6fcb1d26356f591e294913a19bb8f4f
This commit is contained in:
parent
750bcebbd4
commit
9046cbe463
18
ptgbot/db.py
18
ptgbot/db.py
|
@ -14,6 +14,7 @@
|
||||||
# See the License for the specific language governing permissions and
|
# See the License for the specific language governing permissions and
|
||||||
# limitations under the License.
|
# limitations under the License.
|
||||||
|
|
||||||
|
import calendar
|
||||||
import json
|
import json
|
||||||
import os
|
import os
|
||||||
import datetime
|
import datetime
|
||||||
|
@ -58,6 +59,10 @@ class PTGDataBase():
|
||||||
|
|
||||||
def add_now(self, track, session):
|
def add_now(self, track, session):
|
||||||
self.data['now'][track] = session
|
self.data['now'][track] = session
|
||||||
|
# Update location if none manually provided yet
|
||||||
|
room = self.get_track_room(track)
|
||||||
|
if room and track not in self.data['location']:
|
||||||
|
self.add_location(track, room)
|
||||||
if track in self.data['next']:
|
if track in self.data['next']:
|
||||||
del self.data['next'][track]
|
del self.data['next'][track]
|
||||||
self.save()
|
self.save()
|
||||||
|
@ -66,9 +71,18 @@ class PTGDataBase():
|
||||||
self.data['colors'][track] = color
|
self.data['colors'][track] = color
|
||||||
self.save()
|
self.save()
|
||||||
|
|
||||||
|
def get_track_room(self, track):
|
||||||
|
# This simplified version returns the first room the track is
|
||||||
|
# scheduled in for the day
|
||||||
|
today = calendar.day_name[datetime.date.today().weekday()]
|
||||||
|
for room, bookings in self.data['scheduled'].items():
|
||||||
|
for btime, btrack in bookings.items():
|
||||||
|
for slot in self.data['slots'].get(today, []):
|
||||||
|
if btrack == track and btime == slot['name']:
|
||||||
|
return room
|
||||||
|
return None
|
||||||
|
|
||||||
def add_location(self, track, location):
|
def add_location(self, track, location):
|
||||||
if 'location' not in self.data:
|
|
||||||
self.data['location'] = {}
|
|
||||||
self.data['location'][track] = location
|
self.data['location'][track] = location
|
||||||
self.save()
|
self.save()
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue