mirror of
https://github.com/lucaspalomodevelop/eventcally.git
synced 2026-03-13 00:07:22 +00:00
Improve date utils #137
This commit is contained in:
parent
77cc047863
commit
d3de35d8ac
@ -9,7 +9,7 @@ from flask.cli import AppGroup, with_appcontext
|
||||
from sqlalchemy.orm import load_only
|
||||
|
||||
from project import app, cache_path, robots_txt_path, sitemap_path
|
||||
from project.dateutils import today
|
||||
from project.dateutils import get_today
|
||||
from project.models import Event, EventDate
|
||||
from project.utils import make_dir
|
||||
|
||||
@ -27,6 +27,7 @@ def generate_sitemap(pinggoogle):
|
||||
buf.write('<?xml version="1.0" encoding="UTF-8"?>')
|
||||
buf.write('<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">')
|
||||
|
||||
today = get_today()
|
||||
events = (
|
||||
Event.query.options(load_only(Event.id, Event.updated_at))
|
||||
.filter(Event.dates.any(EventDate.start >= today))
|
||||
|
||||
@ -5,8 +5,15 @@ from dateutil.relativedelta import relativedelta
|
||||
from dateutil.rrule import rrulestr
|
||||
|
||||
berlin_tz = pytz.timezone("Europe/Berlin")
|
||||
now = datetime.now(tz=berlin_tz)
|
||||
today = datetime(now.year, now.month, now.day, tzinfo=now.tzinfo)
|
||||
|
||||
|
||||
def get_now():
|
||||
return datetime.now(tz=berlin_tz)
|
||||
|
||||
|
||||
def get_today():
|
||||
now = get_now()
|
||||
return datetime(now.year, now.month, now.day, tzinfo=now.tzinfo)
|
||||
|
||||
|
||||
def create_berlin_date(year, month, day, hour, minute=0):
|
||||
|
||||
@ -6,7 +6,7 @@ from sqlalchemy.orm import contains_eager, defaultload, joinedload, lazyload
|
||||
from sqlalchemy.sql import extract
|
||||
|
||||
from project import db
|
||||
from project.dateutils import date_add_time, dates_from_recurrence_rule, today
|
||||
from project.dateutils import date_add_time, dates_from_recurrence_rule, get_today
|
||||
from project.models import (
|
||||
AdminUnit,
|
||||
Event,
|
||||
@ -287,6 +287,7 @@ def update_event(event):
|
||||
|
||||
|
||||
def get_upcoming_event_dates(event_id):
|
||||
today = get_today()
|
||||
return (
|
||||
EventDate.query.options(lazyload(EventDate.event))
|
||||
.filter(and_(EventDate.event_id == event_id, EventDate.start >= today))
|
||||
|
||||
@ -5,7 +5,7 @@ from project.dateutils import (
|
||||
date_set_end_of_day,
|
||||
form_input_from_date,
|
||||
form_input_to_date,
|
||||
today,
|
||||
get_today,
|
||||
)
|
||||
|
||||
|
||||
@ -75,10 +75,12 @@ class EventSearchParams(object):
|
||||
self.longitude = None
|
||||
|
||||
def set_default_date_range(self):
|
||||
today = get_today()
|
||||
self.date_from = today
|
||||
self.date_to = date_set_end_of_day(today + relativedelta(months=12))
|
||||
|
||||
def set_planing_date_range(self):
|
||||
today = get_today()
|
||||
self.date_from = today
|
||||
self.date_to = date_set_end_of_day(today + relativedelta(months=3))
|
||||
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
from flask import jsonify
|
||||
|
||||
from project import app
|
||||
from project.dateutils import today
|
||||
from project.dateutils import get_today
|
||||
from project.jsonld import get_sd_for_event_date
|
||||
from project.models import Event, EventDate
|
||||
from project.services.event import get_event_dates_query
|
||||
@ -10,6 +10,7 @@ from project.services.event_search import EventSearchParams
|
||||
|
||||
@app.route("/api/events")
|
||||
def api_events():
|
||||
today = today = get_today()
|
||||
dates = (
|
||||
EventDate.query.join(Event)
|
||||
.filter(EventDate.start >= today)
|
||||
|
||||
@ -4,7 +4,7 @@ from sqlalchemy.exc import SQLAlchemyError
|
||||
|
||||
from project import app, db
|
||||
from project.access import access_or_401, has_access, has_admin_unit_member_permission
|
||||
from project.dateutils import today
|
||||
from project.dateutils import get_today
|
||||
from project.forms.reference_request import ReferenceRequestReviewForm
|
||||
from project.models import (
|
||||
AdminUnitMember,
|
||||
@ -65,6 +65,7 @@ def event_reference_request_review(id):
|
||||
else:
|
||||
flash_errors(form)
|
||||
|
||||
today = get_today()
|
||||
dates = (
|
||||
EventDate.query.with_parent(request.event)
|
||||
.filter(EventDate.start >= today)
|
||||
|
||||
@ -176,7 +176,7 @@ class Seeder(object):
|
||||
return category.id
|
||||
|
||||
def create_event(self, admin_unit_id, recurrence_rule=None):
|
||||
from project.dateutils import now
|
||||
from project.dateutils import get_now
|
||||
from project.models import Event
|
||||
from project.services.event import insert_event, upsert_event_category
|
||||
|
||||
@ -186,7 +186,7 @@ class Seeder(object):
|
||||
event.categories = [upsert_event_category("Other")]
|
||||
event.name = "Name"
|
||||
event.description = "Beschreibung"
|
||||
event.start = now
|
||||
event.start = get_now()
|
||||
event.event_place_id = self.upsert_default_event_place(admin_unit_id)
|
||||
event.organizer_id = self.upsert_default_event_organizer(admin_unit_id)
|
||||
event.recurrence_rule = recurrence_rule
|
||||
@ -215,7 +215,7 @@ class Seeder(object):
|
||||
return image_id
|
||||
|
||||
def create_event_suggestion(self, admin_unit_id, free_text=False):
|
||||
from project.dateutils import now
|
||||
from project.dateutils import get_now
|
||||
from project.models import EventSuggestion
|
||||
from project.services.event import upsert_event_category
|
||||
from project.services.event_suggestion import insert_event_suggestion
|
||||
@ -228,7 +228,7 @@ class Seeder(object):
|
||||
suggestion.contact_email_notice = True
|
||||
suggestion.name = "Vorschlag"
|
||||
suggestion.description = "Beschreibung"
|
||||
suggestion.start = now
|
||||
suggestion.start = get_now()
|
||||
suggestion.photo_id = self.upsert_default_image()
|
||||
suggestion.categories = [upsert_event_category("Other")]
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user