From 82d4453e8393c1bf38cb8ca1f6e3d88b49cddfca Mon Sep 17 00:00:00 2001
From: Denis Fomin <fominde@gmail.com>
Date: Sun, 18 Sep 2011 20:33:32 +0300
Subject: [PATCH] juick. Update avatars who are older(days) variable. updated
 ru.po

---
 juick/config_dialog.ui     |  38 +++++++++++++++++++++++++++++++++++++
 juick/manifest.ini         |   2 +-
 juick/plugin.py            |  23 +++++++++++++++-------
 plugins_translations/ru.mo | Bin 17729 -> 18014 bytes
 4 files changed, 55 insertions(+), 8 deletions(-)

diff --git a/juick/config_dialog.ui b/juick/config_dialog.ui
index d331ec81..25587fad 100644
--- a/juick/config_dialog.ui
+++ b/juick/config_dialog.ui
@@ -81,6 +81,44 @@
                 <property name="position">1</property>
               </packing>
             </child>
+            <child>
+              <object class="GtkHBox" id="hbox4">
+                <property name="visible">True</property>
+                <child>
+                  <object class="GtkLabel" id="avatars_old_lebel">
+                    <property name="visible">True</property>
+                    <property name="xalign">0.029999999329447746</property>
+                    <property name="label" translatable="yes">Update avatars who are older(days)</property>
+                    <property name="ellipsize">start</property>
+                    <property name="track_visited_links">False</property>
+                  </object>
+                  <packing>
+                    <property name="position">0</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkSpinButton" id="avatars_old">
+                    <property name="visible">True</property>
+                    <property name="can_focus">True</property>
+                    <property name="invisible_char">&#x25CF;</property>
+                    <property name="width_chars">6</property>
+                    <property name="snap_to_ticks">True</property>
+                    <property name="numeric">True</property>
+                    <signal name="value_changed" handler="on_avatars_old_value_changed"/>
+                  </object>
+                  <packing>
+                    <property name="expand">False</property>
+                    <property name="fill">False</property>
+                    <property name="position">1</property>
+                  </packing>
+                </child>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">False</property>
+                <property name="position">2</property>
+              </packing>
+            </child>
           </object>
           <packing>
             <property name="position">1</property>
diff --git a/juick/manifest.ini b/juick/manifest.ini
index 87ddb820..4e1070f8 100644
--- a/juick/manifest.ini
+++ b/juick/manifest.ini
@@ -1,7 +1,7 @@
 [info]
 name: Juick
 short_name: Juick
-version: 0.2
+version: 0.3
 description: Clickable juick links , juick nics, preview juick picturs.
  The key combination alt + up in the textbox allow insert the number of last message (comment or topic).
 authors: Denis Fomin <fominde@gmail.com>, evgen <drujebober@gmail.com>
diff --git a/juick/plugin.py b/juick/plugin.py
index cf7c982c..b8405bb0 100644
--- a/juick/plugin.py
+++ b/juick/plugin.py
@@ -33,6 +33,8 @@ class JuickPlugin(GajimPlugin):
                                        self.disconnect_from_chat_control)}
         self.config_default_values = {'SHOW_AVATARS': (False, ''),
                     'AVATAR_SIZE': (20, 'Avatar size(10-32)'),
+                    'avatars_old': (2419200, 'Update avatars '
+                        'who are older 28 days'),
                     'SHOW_PREVIEW': (False, ''),
                     'PREVIEW_SIZE': (150, 'Preview size(10-512)'),
                     'LINK_COLOR': ('#B8833E', 'Juick link color'),
@@ -380,11 +382,12 @@ class Base(object):
         pic_path = pic_path.decode(locale.getpreferredencoding())
         if os.path.isfile(pic_path):
             pixbuf = gtk.gdk.pixbuf_new_from_file(pic_path)
-            if (time.time() - os.stat(pic_path).st_mtime) < 2419200:
+            max_old = self.plugin.config['avatars_old']
+            if (time.time() - os.stat(pic_path).st_mtime) < max_old:
                 return pixbuf
         url = 'http://i.juick.com/as/%s.png' % uid
-        pixbuf = self.get_pixbuf_from_url(
-                                        url, self.plugin.config['AVATAR_SIZE'])
+        pixbuf = self.get_pixbuf_from_url(url,self.plugin.config[
+            'AVATAR_SIZE'])
         if pixbuf:
             # save to cache
             pixbuf.save(pic_path, 'png')
@@ -554,12 +557,14 @@ class JuickPluginConfigDialog(GajimPluginConfigDialog):
                 ['vbox1'])
         self.checkbutton = self.xml.get_object('checkbutton')
         self.avatar_size_spinbutton = self.xml.get_object('avatar_size')
-        self.avatar_size_spinbutton.get_adjustment().set_all(
-                                                        20, 10, 32, 1, 10, 0)
+        self.avatar_size_spinbutton.get_adjustment().set_all(20, 10, 32, 1,
+            10, 0)
+        self.avatars_old = self.xml.get_object('avatars_old')
+        self.avatars_old.get_adjustment().set_all(20, 1, 3650, 1, 10, 0)
         self.show_pic = self.xml.get_object('show_pic')
         self.preview_size_spinbutton = self.xml.get_object('preview_size')
-        self.preview_size_spinbutton.get_adjustment().set_all(
-                                                        20, 10, 512, 1, 10, 0)
+        self.preview_size_spinbutton.get_adjustment().set_all(20, 10, 512, 1,
+            10, 0)
         self.link_colorbutton = self.xml.get_object('link_colorbutton')
         vbox = self.xml.get_object('vbox1')
         self.child.pack_start(vbox)
@@ -571,6 +576,7 @@ class JuickPluginConfigDialog(GajimPluginConfigDialog):
         self.xml.get_object('only_author_avatar').set_active(
                                     self.plugin.config['ONLY_AUTHOR_AVATAR'])
         self.avatar_size_spinbutton.set_value(self.plugin.config['AVATAR_SIZE'])
+        self.avatars_old.set_value(self.plugin.config['avatars_old'] / 86400)
         self.show_pic.set_active(self.plugin.config['SHOW_PREVIEW'])
         self.preview_size_spinbutton.set_value(
                                             self.plugin.config['PREVIEW_SIZE'])
@@ -595,6 +601,9 @@ class JuickPluginConfigDialog(GajimPluginConfigDialog):
     def avatar_size_value_changed(self, spinbutton):
         self.plugin.config['AVATAR_SIZE'] = spinbutton.get_value()
 
+    def on_avatars_old_value_changed(self, spinbutton):
+        self.plugin.config['avatars_old'] = spinbutton.get_value() * 86400
+
     def on_show_pic_toggled(self, checkbutton):
         self.plugin.config['SHOW_PREVIEW'] = checkbutton.get_active()
 
diff --git a/plugins_translations/ru.mo b/plugins_translations/ru.mo
index ed4a7dc951bc4bdc9d8c33107d2f0d93c3b2f3a4..d4840410b57fb78f245d6a2179c85bf98a1a5242 100644
GIT binary patch
delta 3381
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

delta 3137
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

-- 
GitLab