Changeset 668 for plugins/lifestream/trunk/lifestream.plugin.php
- Timestamp:
- 07/04/08 21:33:47 (5 months ago)
- Files:
-
- 1 modified
-
plugins/lifestream/trunk/lifestream.plugin.php (modified) (6 diffs)
Legend:
- Unmodified
- Added
- Removed
-
plugins/lifestream/trunk/lifestream.plugin.php
r667 r668 61 61 $rules[] = new RewriteRule(array( 62 62 'name' => 'lifestream', 63 'parse_regex' => ' /^' . Options::get('lifestream__lifeurl') . '[\/]{0,1}$/i',64 'build_str' => Options::get('lifestream__lifeurl') ,63 'parse_regex' => '%^' . Options::get('lifestream__lifeurl') . '(/type/(?P<type>[^/]*))?(?:/page/(?P<page>\d+))?/?$%i', 64 'build_str' => Options::get('lifestream__lifeurl') . '(/{$type})(/page/{$page})', 65 65 'handler' => 'LifeStreamHandler', 66 66 'action' => 'display_lifestream', … … 121 121 $rewritebase->add_validator('validate_required'); 122 122 123 // Add a text control for the entries per page 124 $perpage= $ui->append('text', 'perpage', 'lifestream__perpage', _t('Items Per Page')); 125 // Mark the field as required 126 $perpage->add_validator('validate_required'); 127 123 128 $submit= $ui->append( 'submit', 'submit', _t('Save') ); 124 129 … … 136 141 } 137 142 138 public function get_entries($type = 'any', $offset = 0, $number = 20 ) {143 public function get_entries($type = 'any', $offset = 0, $number = 20, $format = 'object') { 139 144 $query= ''; 140 145 $query.= 'SELECT * FROM ' . DB::table('l_data'); … … 147 152 $query.= ' LIMIT ' . $offset . ', ' . $number; 148 153 $results = DB::get_results( $query ); 149 150 return $results; 154 155 if($format == 'object') { 156 return $results; 157 } elseif($format == 'array') { 158 $return = array(); 159 foreach($results as $result) { 160 $return[] = $result->to_array(); 161 } 162 return $return; 163 } else { 164 return $results; 165 } 166 167 } 168 169 public function json_entries($type = 'any', $offset = 0, $number = 20) { 170 return json_encode($this->get_entries($type, $offset, $number, 'array')); 151 171 } 152 172 … … 157 177 private $stream_contents; 158 178 private $config; 179 private $streams; 159 180 private $theme= null; 160 181 … … 165 186 166 187 public function act_display_lifestream() { 167 168 $this->fetch_fields(); 169 170 $this->theme->assign( 'lifestream', LifeStream::get_entries() ); 188 $vars = Controller::get_handler_vars(); 189 190 if(!isset($vars['type'])) { 191 $vars['type'] = 'any'; 192 } 193 194 if(!isset($vars['page'])) { 195 $vars['page'] = 0; 196 } 197 198 $offset = $vars['page'] * Options::get('lifestream__perpage'); 199 200 $this->theme->assign( 'lifestream', LifeStream::get_entries($vars['type'], $offset, Options::get('lifestream__perpage')) ); 171 201 $this->theme->assign( 'title', 'Lifestream - ' . Options::get( 'title' ) ); 172 202 $this->theme->assign( 'streams', $this->config->stream ); 173 203 $this->theme->display( 'lifestream' ); 174 204 } 175 176 177 205 178 206 public function fetch_feeds() {
