forked from openlp/openlp
Fix service name when set time selected
bzr-revno: 2064
This commit is contained in:
commit
68611de2d2
@ -612,18 +612,18 @@ class AdvancedTab(SettingsTab):
|
|||||||
def generateServiceNameExample(self):
|
def generateServiceNameExample(self):
|
||||||
preset_is_valid = True
|
preset_is_valid = True
|
||||||
if self.serviceNameDay.currentIndex() == 7:
|
if self.serviceNameDay.currentIndex() == 7:
|
||||||
time = datetime.now()
|
local_time = datetime.now()
|
||||||
else:
|
else:
|
||||||
now = datetime.now()
|
now = datetime.now()
|
||||||
day_delta = self.serviceNameDay.currentIndex() - now.weekday()
|
day_delta = self.serviceNameDay.currentIndex() - now.weekday()
|
||||||
if day_delta < 0:
|
if day_delta < 0:
|
||||||
day_delta += 7
|
day_delta += 7
|
||||||
time = now + timedelta(days=day_delta)
|
time = now + timedelta(days=day_delta)
|
||||||
time = time.replace(hour = self.serviceNameTime.time().hour(),
|
local_time = time.replace(hour = self.serviceNameTime.time().hour(),
|
||||||
minute = self.serviceNameTime.time().minute())
|
minute = self.serviceNameTime.time().minute())
|
||||||
try:
|
try:
|
||||||
service_name_example = format_time(unicode(
|
service_name_example = format_time(unicode(
|
||||||
self.serviceNameEdit.text()))
|
self.serviceNameEdit.text()), local_time)
|
||||||
except ValueError:
|
except ValueError:
|
||||||
preset_is_valid = False
|
preset_is_valid = False
|
||||||
service_name_example = translate('OpenLP.AdvancedTab',
|
service_name_example = translate('OpenLP.AdvancedTab',
|
||||||
|
@ -603,7 +603,7 @@ class ServiceManager(QtGui.QWidget):
|
|||||||
service_day = Settings().value(
|
service_day = Settings().value(
|
||||||
u'advanced/default service day', 7).toInt()[0]
|
u'advanced/default service day', 7).toInt()[0]
|
||||||
if service_day == 7:
|
if service_day == 7:
|
||||||
time = datetime.now()
|
local_time = datetime.now()
|
||||||
else:
|
else:
|
||||||
service_hour = Settings().value(
|
service_hour = Settings().value(
|
||||||
u'advanced/default service hour', 11).toInt()[0]
|
u'advanced/default service hour', 11).toInt()[0]
|
||||||
@ -614,7 +614,7 @@ class ServiceManager(QtGui.QWidget):
|
|||||||
if day_delta < 0:
|
if day_delta < 0:
|
||||||
day_delta += 7
|
day_delta += 7
|
||||||
time = now + timedelta(days=day_delta)
|
time = now + timedelta(days=day_delta)
|
||||||
time = time.replace(hour=service_hour, minute=service_minute)
|
local_time = time.replace(hour=service_hour, minute=service_minute)
|
||||||
default_pattern = unicode(Settings().value(
|
default_pattern = unicode(Settings().value(
|
||||||
u'advanced/default service name',
|
u'advanced/default service name',
|
||||||
translate('OpenLP.AdvancedTab', 'Service %Y-%m-%d %H-%M',
|
translate('OpenLP.AdvancedTab', 'Service %Y-%m-%d %H-%M',
|
||||||
@ -622,7 +622,7 @@ class ServiceManager(QtGui.QWidget):
|
|||||||
'/\\?*|<>\[\]":+\nSee http://docs.python.org/library/'
|
'/\\?*|<>\[\]":+\nSee http://docs.python.org/library/'
|
||||||
'datetime.html#strftime-strptime-behavior for more '
|
'datetime.html#strftime-strptime-behavior for more '
|
||||||
'information.')).toString())
|
'information.')).toString())
|
||||||
default_filename = format_time(default_pattern)
|
default_filename = format_time(default_pattern, local_time)
|
||||||
else:
|
else:
|
||||||
default_filename = u''
|
default_filename = u''
|
||||||
directory = unicode(SettingsManager.get_last_dir(
|
directory = unicode(SettingsManager.get_last_dir(
|
||||||
|
@ -35,7 +35,6 @@ import os
|
|||||||
import re
|
import re
|
||||||
from subprocess import Popen, PIPE
|
from subprocess import Popen, PIPE
|
||||||
import sys
|
import sys
|
||||||
import time
|
|
||||||
import urllib2
|
import urllib2
|
||||||
|
|
||||||
from openlp.core.lib.settings import Settings
|
from openlp.core.lib.settings import Settings
|
||||||
@ -471,16 +470,21 @@ def get_uno_instance(resolver):
|
|||||||
+ u'urp;StarOffice.ComponentContext')
|
+ u'urp;StarOffice.ComponentContext')
|
||||||
|
|
||||||
|
|
||||||
def format_time(text):
|
def format_time(text, local_time):
|
||||||
"""
|
"""
|
||||||
Workaround for Python built-in time formatting fuction time.strftime().
|
Workaround for Python built-in time formatting fuction time.strftime().
|
||||||
|
|
||||||
time.strftime() accepts only ascii characters. This function accepts
|
time.strftime() accepts only ascii characters. This function accepts
|
||||||
unicode string and passes individual % placeholders to time.strftime().
|
unicode string and passes individual % placeholders to time.strftime().
|
||||||
This ensures only ascii characters are passed to time.strftime().
|
This ensures only ascii characters are passed to time.strftime().
|
||||||
|
|
||||||
|
``text``
|
||||||
|
The text to be processed.
|
||||||
|
``local_time``
|
||||||
|
The time to be used to add to the string. This is a time object
|
||||||
"""
|
"""
|
||||||
def match_formatting(match):
|
def match_formatting(match):
|
||||||
return time.strftime(match.group())
|
return local_time.strftime(match.group())
|
||||||
return re.sub('\%[a-zA-Z]', match_formatting, text)
|
return re.sub('\%[a-zA-Z]', match_formatting, text)
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user