Browse Source

Merge pull request #117 from litnimax/master

Recent Topics setting - #116
Peter Justin 10 years ago
parent
commit
a65aca1685
3 changed files with 15 additions and 5 deletions
  1. 7 0
      flaskbb/plugins/portal/__init__.py
  2. 2 1
      flaskbb/plugins/portal/views.py
  3. 6 4
      flaskbb/utils/populate.py

+ 7 - 0
flaskbb/plugins/portal/__init__.py

@@ -27,6 +27,13 @@ fixture = (
                 'description':  "The forum ids from which forums the posts should be displayed on the portal.",
                 'extra': {"choices": available_forums, "coerce": int}
             }),
+            ('plugin_portal_recent_topics', {
+                'value':        10,
+                'value_type':   "integer",
+                'name':         "Number of Recent Topics",
+                'description':  "The number of topics in Recent Topics portlet.",
+                'extra': {"min": 1},
+            }),
         ),
     }),
 )

+ 2 - 1
flaskbb/plugins/portal/views.py

@@ -30,7 +30,8 @@ def index():
         order_by(Topic.id.desc()).\
         paginate(page, flaskbb_config["TOPICS_PER_PAGE"], True)
 
-    recent_topics = Topic.query.order_by(Topic.last_updated.desc()).limit(5)
+    recent_topics = Topic.query.order_by(Topic.last_updated.desc()).limit(
+                            flaskbb_config.get("PLUGIN_PORTAL_RECENT_TOPICS", 10))
 
     user_count = User.query.count()
     topic_count = Topic.query.count()

+ 6 - 4
flaskbb/utils/populate.py

@@ -27,8 +27,9 @@ def delete_settings_from_fixture(fixture):
 
         for settings in settingsgroup[1]["settings"]:
             setting = Setting.query.filter_by(key=settings[0]).first()
-            deleted_settings[group].append(setting)
-            setting.delete()
+            if setting:
+                deleted_settings[group].append(setting)
+                setting.delete()
 
         group.delete()
 
@@ -62,8 +63,9 @@ def create_settings_from_fixture(fixture):
 
                 settingsgroup=group.key
             )
-            setting.save()
-            created_settings[group].append(setting)
+            if setting:
+                setting.save()
+                created_settings[group].append(setting)
 
     return created_settings