diff options
| author | mensonge <mensonge@b3834d28-1941-0410-a4f8-b48e95affb8f> | 2008-11-25 15:57:29 +0000 | 
|---|---|---|
| committer | mensonge <mensonge@b3834d28-1941-0410-a4f8-b48e95affb8f> | 2008-11-25 15:57:29 +0000 | 
| commit | 15b91c7e661d928d8b125ec9cfbda1702319c8b4 (patch) | |
| tree | 092d474c05e414bb04a8c428b8ff6cb9ccab765d /rss.php | |
| parent | 9aafe7551eb5a73739709e72465031db7a1531b4 (diff) | |
| download | semanticscuttle-15b91c7e661d928d8b125ec9cfbda1702319c8b4.tar.gz semanticscuttle-15b91c7e661d928d8b125ec9cfbda1702319c8b4.tar.bz2 | |
Major refactoring: transform user into object, define parameters used into each file, ...
git-svn-id: https://semanticscuttle.svn.sourceforge.net/svnroot/semanticscuttle/trunk@173 b3834d28-1941-0410-a4f8-b48e95affb8f
Diffstat (limited to 'rss.php')
| -rw-r--r-- | rss.php | 136 | 
1 files changed, 74 insertions, 62 deletions
| @@ -1,77 +1,88 @@  <?php  /*************************************************************************** -Copyright (C) 2004 - 2006 Scuttle project -http://sourceforge.net/projects/scuttle/ -http://scuttle.org/ + Copyright (C) 2004 - 2006 Scuttle project + http://sourceforge.net/projects/scuttle/ + http://scuttle.org/ -This program is free software; you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation; either version 2 of the License, or -(at your option) any later version. + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the -GNU General Public License for more details. + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the + GNU General Public License for more details. -You should have received a copy of the GNU General Public License -along with this program; if not, write to the Free Software -Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA -***************************************************************************/ + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA + ***************************************************************************/  require_once('header.inc.php'); + +/* Service creation: only useful services are created */  $bookmarkservice =& ServiceFactory::getServiceInstance('BookmarkService');  $cacheservice =& ServiceFactory::getServiceInstance('CacheService');  $templateservice =& ServiceFactory::getServiceInstance('TemplateService');  $userservice =& ServiceFactory::getServiceInstance('UserService'); + +  $tplVars = array();  header('Content-Type: application/xml'); -list($url, $user, $cat) = explode('/', $_SERVER['PATH_INFO']); +if(isset($_SERVER['PATH_INFO']) && strlen($_SERVER['PATH_INFO']) >1) { +	list($url, $user, $cat) = explode('/', $_SERVER['PATH_INFO']); +} else { +	$url = ''; +	$user = ''; +	$cat = NULL; +}  if ($usecache) { -    // Generate hash for caching on -    $hashtext = $_SERVER['REQUEST_URI']; -    if ($userservice->isLoggedOn()) { -        $hashtext .= $userservice->getCurrentUserID(); -        $currentUser = $userservice->getCurrentUser(); -        $currentUsername = $currentUser[$userservice->getFieldName('username')]; -        if ($currentUsername == $user) { -            $hashtext .= $user; -        } -    } -    $hash = md5($hashtext); - -    // Cache for an hour -    $cacheservice->Start($hash, 3600); +	// Generate hash for caching on +	$hashtext = $_SERVER['REQUEST_URI']; +	if ($userservice->isLoggedOn()) { +		$hashtext .= $userservice->getCurrentUserID(); +		$currentUser = $userservice->getCurrentUser(); +		$currentUsername = $currentUser[$userservice->getFieldName('username')]; +		if ($currentUsername == $user) { +			$hashtext .= $user; +		} +	} +	$hash = md5($hashtext); + +	// Cache for an hour +	$cacheservice->Start($hash, 3600);  }  $watchlist = null; +$pagetitle = '';  if ($user && $user != 'all') { -    if ($user == 'watchlist') { -        $user = $cat; -        $cat = null; -        $watchlist = true; -    } -    if (is_int($user)) { -        $userid = intval($user); -    } else { -        if ($userinfo = $userservice->getUserByUsername($user)) { -            $userid =& $userinfo[$userservice->getFieldName('primary')]; -        } else { -            $tplVars['error'] = sprintf(T_('User with username %s was not found'), $user); -            $templateservice->loadTemplate('error.404.tpl', $tplVars); -            //throw a 404 error -            exit(); -        } -    } -    $pagetitle .= ": ". $user; +	if ($user == 'watchlist') { +		$user = $cat; +		$cat = null; +		$watchlist = true; +	} +	if (is_int($user)) { +		$userid = intval($user); +	} else { +		if ($userinfo = $userservice->getUserByUsername($user)) { +			$userid =& $userinfo[$userservice->getFieldName('primary')]; +		} else { +			$tplVars['error'] = sprintf(T_('User with username %s was not found'), $user); +			$templateservice->loadTemplate('error.404.tpl', $tplVars); +			//throw a 404 error +			exit(); +		} +	} +	$pagetitle .= ": ". $user;  } else { -    $userid = NULL; +	$userid = NULL;  }  if ($cat) { -    $pagetitle .= ": ". str_replace('+', ' + ', $cat); +	$pagetitle .= ": ". str_replace('+', ' + ', $cat);  }  $tplVars['feedtitle'] = filter($GLOBALS['sitename'] . (isset($pagetitle) ? $pagetitle : '')); @@ -79,28 +90,29 @@ $tplVars['feedlink'] = ROOT;  $tplVars['feeddescription'] = sprintf(T_('Recent bookmarks posted to %s'), $GLOBALS['sitename']);  $bookmarks =& $bookmarkservice->getBookmarks(0, 15, $userid, $cat, NULL, getSortOrder(), $watchlist); +  $bookmarks_tmp =& filter($bookmarks['bookmarks']);  $bookmarks_tpl = array();  foreach(array_keys($bookmarks_tmp) as $key) { -    $row =& $bookmarks_tmp[$key]; +	$row =& $bookmarks_tmp[$key]; -    $_link = $row['bAddress']; -    // Redirection option -    if ($GLOBALS['useredir']) { -        $_link = $GLOBALS['url_redir'] . $_link; -    } -    $_pubdate = gmdate("r", strtotime($row['bDatetime'])); -    // array_walk($row['tags'], 'filter'); +	$_link = $row['bAddress']; +	// Redirection option +	if ($GLOBALS['useredir']) { +		$_link = $GLOBALS['url_redir'] . $_link; +	} +	$_pubdate = gmdate("r", strtotime($row['bDatetime'])); +	// array_walk($row['tags'], 'filter'); -    $bookmarks_tpl[] = array( +	$bookmarks_tpl[] = array(          'title' => $row['bTitle'],          'link'  => $_link,          'description' => $row['bDescription'],          'creator' => $row['username'],          'pubdate' => $_pubdate,          'tags' => $row['tags'] -    ); +	);  }  unset($bookmarks_tmp);  unset($bookmarks); @@ -109,7 +121,7 @@ $tplVars['bookmarks'] =& $bookmarks_tpl;  $templateservice->loadTemplate('rss.tpl', $tplVars);  if ($usecache) { -    // Cache output if existing copy has expired -    $cacheservice->End($hash); +	// Cache output if existing copy has expired +	$cacheservice->End($hash);  }  ?> | 
