summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/common.py2
-rw-r--r--src/tabs.py12
2 files changed, 12 insertions, 2 deletions
diff --git a/src/common.py b/src/common.py
index 23912411..647454cb 100644
--- a/src/common.py
+++ b/src/common.py
@@ -210,7 +210,7 @@ def parse_str_to_secs(duration=''):
result += tmp_i * values[char]
tmp = '0'
else:
- result += int(tmp)
+ return 0
if tmp != '0':
result += int(tmp)
return result
diff --git a/src/tabs.py b/src/tabs.py
index 74475779..d6369a9d 100644
--- a/src/tabs.py
+++ b/src/tabs.py
@@ -1350,7 +1350,17 @@ class MucTab(ChatTab):
self.core.doupdate()
# try to auto-rejoin
if config.get_by_tabname('autorejoin', 'false', self.general_jid, True) == 'true':
- muc.join_groupchat(self.core.xmpp, self.name, self.own_nick)
+ delay = config.get_by_tabname('autorejoin_delay', "5", self.general_jid, True)
+ delay = common.parse_str_to_secs(delay)
+ if delay <= 0:
+ muc.join_groupchat(self.core.xmpp, self.name, self.own_nick)
+ else:
+ self.core.add_timed_event(timed_events.DelayedEvent(
+ delay,
+ muc.join_groupchat,
+ self.core.xmpp,
+ self.name,
+ self.own_nick))
else:
color = user.color[0] if config.get_by_tabname('display_user_color_in_join_part', '', self.general_jid, True) == 'true' else 3
if by: