Index: preferences.php
===================================================================
RCS file: /cvsroot/moodle/moodle/blog/preferences.php,v
retrieving revision 1.18
diff -u -r1.18 preferences.php
--- preferences.php	16 Aug 2007 15:01:26 -0000	1.18
+++ preferences.php	2 Jan 2008 07:02:59 -0000
@@ -2,6 +2,7 @@
        // preferences.php - user prefs for blog modeled on calendar
 
     require_once('../config.php');
+    require_once('preferences_form.php');
     require_once($CFG->dirroot.'/blog/lib.php');
 
     $courseid = optional_param('courseid', SITEID, PARAM_INT);
@@ -20,21 +21,29 @@
 
     require_capability('moodle/blog:view', $context);
 
+    //Get data
+    $data = array();
+    $data['courseid'] = $courseid;
+    $data['pagesize'] = get_user_preferences('blogpagesize', 8);
+
+    //create form
+    $form = new blog_preferences_form();
+    $form->set_data($data);
+
 /// If data submitted, then process and store.
 
-    if (data_submitted()) {
-        $pagesize = required_param('pagesize', PARAM_INT);
+    if ($prefs = $form->get_data()) {
 
-        if ($pagesize < 1) {
+        if (($prefs->pagesize < 1) or ($prefs->pagesize > 10)) {
             error('invalid page size');
         }
-        set_user_preference('blogpagesize', $pagesize);
+        set_user_preference('blogpagesize', $prefs->pagesize);
 
         // now try to guess where to go from here ;-)
-        if ($courseid == SITEID) {
+        if ($prefs->courseid == SITEID) {
             redirect($CFG->wwwroot.'/blog/index.php');
         } else {
-            redirect($CFG->wwwroot.'/blog/index.php?filtertype=course&amp;filterselect='.$courseid);
+            redirect($CFG->wwwroot.'/blog/index.php?filtertype=course&amp;filterselect='.$prefs->courseid);
         }
     }
 
@@ -50,7 +59,8 @@
     print_heading($strpreferences);
 
     print_simple_box_start('center', '', '');
-    require('./preferences.html');
+/// Finally display THE form
+    $form->display();
     print_simple_box_end();
 
     print_footer();
