refactored and translated 404-errorpage
This commit is contained in:
15
htdocs/404/index.php → htdocs/404.php
Executable file → Normal file
15
htdocs/404/index.php → htdocs/404.php
Executable file → Normal file
@ -4,25 +4,24 @@
|
||||
*
|
||||
* Unicode Reminder メモ
|
||||
***************************************************************************/
|
||||
|
||||
$opt['rootpath'] = '../';
|
||||
|
||||
require($opt['rootpath'].'lib2/web.inc.php');
|
||||
require($opt['rootpath'].'lib2/logic/logpics.inc.php');
|
||||
$sUserCountry = $login->getUserCountry();
|
||||
|
||||
|
||||
// create object for "newest" information
|
||||
$getNew = new getNew($sUserCountry);
|
||||
|
||||
|
||||
$tpl->main_template = 'sys_oc404';
|
||||
$tpl->name = 'sys_oc404';
|
||||
|
||||
$tpl->caching = false;
|
||||
$tpl->cache_lifetime = 300;
|
||||
$tpl->cache_id = $sUserCountry;
|
||||
|
||||
|
||||
// rootpath
|
||||
$tpl->assign('rootpath',$opt['rootpath']);
|
||||
|
||||
|
||||
// website
|
||||
// check length
|
||||
$uril = 70;
|
||||
@ -36,7 +35,7 @@
|
||||
// get newest blog entries
|
||||
$tpl->assign('blog', $getNew->feedForSmarty('blog',3));
|
||||
|
||||
// get newest forum posts
|
||||
// get newest forum posts
|
||||
$tpl->assign('forum',$getNew->feedForSmarty('forum',3));
|
||||
|
||||
// get newest wiki
|
||||
@ -45,5 +44,7 @@
|
||||
// get newest caches
|
||||
$tpl->assign_rs('newcaches', $getNew->rsForSmarty('cache',array($sUserCountry, $opt['template']['locale'],3)));
|
||||
|
||||
$tpl->assign('contact', $opt['mail']['contact']);
|
||||
|
||||
$tpl->display();
|
||||
?>
|
@ -2420,6 +2420,21 @@ INSERT INTO `sys_trans` (`id`, `text`, `last_modified`) VALUES ('1978', 'only fo
|
||||
INSERT INTO `sys_trans` (`id`, `text`, `last_modified`) VALUES ('1979', 'Contact reporter', '2013-02-23 19:00:04');
|
||||
INSERT INTO `sys_trans` (`id`, `text`, `last_modified`) VALUES ('1980', 'For \'Found\' and \'Not found\' logs: Date and (optional) time of the cache search.', '2013-02-23 19:00:04');
|
||||
INSERT INTO `sys_trans` (`id`, `text`, `last_modified`) VALUES ('1981', 'The following cache listings have been reset to the state before %1', '2013-04-14 01:13:07');
|
||||
INSERT INTO `sys_trans` (`id`, `text`, `last_modified`) VALUES ('1982', 'Page not found', '2013-04-25 23:00:00');
|
||||
INSERT INTO `sys_trans` (`id`, `text`, `last_modified`) VALUES ('1983', 'Cache database', '2013-04-25 23:00:00');
|
||||
INSERT INTO `sys_trans` (`id`, `text`, `last_modified`) VALUES ('1984', 'Here you can find a lot of individual caches.', '2013-04-25 23:00:00');
|
||||
INSERT INTO `sys_trans` (`id`, `text`, `last_modified`) VALUES ('1985', 'The newest caches:', '2013-04-25 23:00:00');
|
||||
INSERT INTO `sys_trans` (`id`, `text`, `last_modified`) VALUES ('1986', 'Here you can discuss, improve or ask questions.', '2013-04-25 23:00:00');
|
||||
INSERT INTO `sys_trans` (`id`, `text`, `last_modified`) VALUES ('1987', 'The newest forumposts:', '2013-04-25 23:00:00');
|
||||
INSERT INTO `sys_trans` (`id`, `text`, `last_modified`) VALUES ('1988', 'Any time there are news to post, you\'ll find them here.', '2013-04-25 23:00:00');
|
||||
INSERT INTO `sys_trans` (`id`, `text`, `last_modified`) VALUES ('1989', 'The newest blogposts:', '2013-04-25 23:00:00');
|
||||
INSERT INTO `sys_trans` (`id`, `text`, `last_modified`) VALUES ('1990', 'Here you get tutorials, howtos and any information about Geocaching and Opencaching.', '2013-04-25 23:00:00');
|
||||
INSERT INTO `sys_trans` (`id`, `text`, `last_modified`) VALUES ('1991', 'The newest wiki articles:', '2013-04-25 23:00:00');
|
||||
INSERT INTO `sys_trans` (`id`, `text`, `last_modified`) VALUES ('1992', 'Not found? Contact us using', '2013-04-25 23:00:00');
|
||||
INSERT INTO `sys_trans` (`id`, `text`, `last_modified`) VALUES ('1993', 'Opencaching at Facebook', '2013-04-25 23:00:00');
|
||||
INSERT INTO `sys_trans` (`id`, `text`, `last_modified`) VALUES ('1994', 'Opencaching at Google+', '2013-04-25 23:00:00');
|
||||
INSERT INTO `sys_trans` (`id`, `text`, `last_modified`) VALUES ('1995', 'Opencaching at Twitter', '2013-04-25 23:00:00');
|
||||
INSERT INTO `sys_trans` (`id`, `text`, `last_modified`) VALUES ('1996', 'The visited website <b>%1</b> does not exists, we found the following suitable pages:', '2013-04-25 23:00:00');
|
||||
|
||||
-- Table sys_trans_ref
|
||||
SET NAMES 'utf8';
|
||||
@ -6172,6 +6187,21 @@ INSERT INTO `sys_trans_text` (`trans_id`, `lang`, `text`, `last_modified`) VALUE
|
||||
INSERT INTO `sys_trans_text` (`trans_id`, `lang`, `text`, `last_modified`) VALUES ('1979', 'DE', 'Email an Melder', '2013-02-19 05:48:07');
|
||||
INSERT INTO `sys_trans_text` (`trans_id`, `lang`, `text`, `last_modified`) VALUES ('1980', 'DE', 'Zeitpunkt des Funds, der erfolglosen Suche oder eines Hinweislogs', '2013-02-19 05:48:07');
|
||||
INSERT INTO `sys_trans_text` (`trans_id`, `lang`, `text`, `last_modified`) VALUES ('1981', 'DE', 'The following cache listings have been reset to the state before %1', '2013-02-19 05:48:07');
|
||||
INSERT INTO `sys_trans_text` (`trans_id`, `lang`, `text`, `last_modified`) VALUES ('1982', 'DE', 'Seite nicht gefunden', '2013-04-25 23:00:00');
|
||||
INSERT INTO `sys_trans_text` (`trans_id`, `lang`, `text`, `last_modified`) VALUES ('1983', 'DE', 'Cache-Datenbank', '2013-04-25 23:00:00');
|
||||
INSERT INTO `sys_trans_text` (`trans_id`, `lang`, `text`, `last_modified`) VALUES ('1984', 'DE', 'Hier findest du viele interessante Geocaches.', '2013-04-25 23:00:00');
|
||||
INSERT INTO `sys_trans_text` (`trans_id`, `lang`, `text`, `last_modified`) VALUES ('1985', 'DE', 'Die neuesten Caches:', '2013-04-25 23:00:00');
|
||||
INSERT INTO `sys_trans_text` (`trans_id`, `lang`, `text`, `last_modified`) VALUES ('1986', 'DE', 'Hier kannst du diskutieren, mitmachen oder Fragen stellen.', '2013-04-25 23:00:00');
|
||||
INSERT INTO `sys_trans_text` (`trans_id`, `lang`, `text`, `last_modified`) VALUES ('1987', 'DE', 'Die neuesten Forenbeiträge:', '2013-04-25 23:00:00');
|
||||
INSERT INTO `sys_trans_text` (`trans_id`, `lang`, `text`, `last_modified`) VALUES ('1988', 'DE', 'Es gibt immer wieder Neuigkeiten – hier findest du sie.', '2013-04-25 23:00:00');
|
||||
INSERT INTO `sys_trans_text` (`trans_id`, `lang`, `text`, `last_modified`) VALUES ('1989', 'DE', 'Die neuesten Blog-Artikel:', '2013-04-25 23:00:00');
|
||||
INSERT INTO `sys_trans_text` (`trans_id`, `lang`, `text`, `last_modified`) VALUES ('1990', 'DE', 'Hier findest du Anleitungen und Informationen über Geocaching und Opencaching.', '2013-04-25 23:00:00');
|
||||
INSERT INTO `sys_trans_text` (`trans_id`, `lang`, `text`, `last_modified`) VALUES ('1991', 'DE', 'Die neuesten Wiki-Artikel:', '2013-04-25 23:00:00');
|
||||
INSERT INTO `sys_trans_text` (`trans_id`, `lang`, `text`, `last_modified`) VALUES ('1992', 'DE', 'Nichts gefunden? Kontaktiere uns unter', '2013-04-25 23:00:00');
|
||||
INSERT INTO `sys_trans_text` (`trans_id`, `lang`, `text`, `last_modified`) VALUES ('1993', 'DE', 'Opencaching bei Facebook', '2013-04-25 23:00:00');
|
||||
INSERT INTO `sys_trans_text` (`trans_id`, `lang`, `text`, `last_modified`) VALUES ('1994', 'DE', 'Opencaching bei Google+', '2013-04-25 23:00:00');
|
||||
INSERT INTO `sys_trans_text` (`trans_id`, `lang`, `text`, `last_modified`) VALUES ('1995', 'DE', 'Opencaching bei Twitter', '2013-04-25 23:00:00');
|
||||
INSERT INTO `sys_trans_text` (`trans_id`, `lang`, `text`, `last_modified`) VALUES ('1996', 'DE', 'Die gesuchte Webseite <b>%1</b> existiert nicht, aber wir haben folgende geeignete Seiten gefunden:', '2013-04-25 23:00:00');
|
||||
INSERT INTO `sys_trans_text` (`trans_id`, `lang`, `text`, `last_modified`) VALUES ('1', 'EN', 'Reorder IDs \r', '2010-09-02 00:15:30');
|
||||
INSERT INTO `sys_trans_text` (`trans_id`, `lang`, `text`, `last_modified`) VALUES ('2', 'EN', 'The database could not be reconnected.', '2010-08-28 11:48:07');
|
||||
INSERT INTO `sys_trans_text` (`trans_id`, `lang`, `text`, `last_modified`) VALUES ('3', 'EN', 'Testing – please do not login', '2010-08-28 11:48:07');
|
||||
|
@ -13,7 +13,7 @@
|
||||
|
||||
// create object for "newest" information
|
||||
$getNew = new getNew($sUserCountry);
|
||||
|
||||
|
||||
$tpl->name = 'start';
|
||||
$tpl->menuitem = MNU_START;
|
||||
|
||||
|
@ -10,10 +10,10 @@ class RSSParser {
|
||||
* @param string $url url of the feed to parse
|
||||
* @return string $item feeditems as HTML-string
|
||||
*/
|
||||
public static function parse($items,$url,$includetext) {
|
||||
|
||||
public static function parse($items,$url,$includetext)
|
||||
{
|
||||
global $tpl;
|
||||
|
||||
|
||||
if ($items <= 0)
|
||||
return '';
|
||||
|
||||
@ -89,7 +89,7 @@ class RSSParser {
|
||||
|
||||
// assign to template
|
||||
$tpl->assign('rsserror',$error);
|
||||
|
||||
|
||||
// return
|
||||
return $rss;
|
||||
}
|
||||
|
@ -22,11 +22,13 @@ function __autoload($class_name)
|
||||
|
||||
$file = $opt['rootpath'] . '../lib/classes/' . $class_name . '.php';
|
||||
$file2 = $opt['rootpath'] . 'lib2/' . $class_name2 . '.class.php';
|
||||
if (file_exists($file)) {
|
||||
$file3 = $opt['rootpath'] . 'lib2/logic/' . $class_name2 . '.class.php';
|
||||
if (file_exists($file))
|
||||
require_once($file);
|
||||
} elseif(file_exists($file2)) {
|
||||
elseif (file_exists($file2))
|
||||
require_once($file2);
|
||||
}
|
||||
elseif (file_exists($file3))
|
||||
require_once($file3);
|
||||
}
|
||||
|
||||
|
||||
|
@ -1,328 +0,0 @@
|
||||
<?php
|
||||
/***************************************************************************
|
||||
* For license information see doc/license.txt
|
||||
*
|
||||
* Unicode Reminder メモ
|
||||
*
|
||||
* summarize methods to get new events, caches, ratings, etc.
|
||||
***************************************************************************/
|
||||
|
||||
|
||||
|
||||
class getNew {
|
||||
|
||||
// class variables
|
||||
private $userCountry;
|
||||
|
||||
|
||||
// getter/setter
|
||||
public function get_userCountry() {
|
||||
return $this->userCountry;
|
||||
}
|
||||
public function set_userCountry($userCountry) {
|
||||
$this->userCountry = $userCountry;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* constructor
|
||||
* creates the object
|
||||
*
|
||||
* @param string $userCountry country of the loggedin user as parameter for the sql statements
|
||||
* @return void
|
||||
*/
|
||||
public function __construct($userCountry) {
|
||||
|
||||
// set userCountry
|
||||
$this->set_userCountry($userCountry);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* rsForSmarty creates the result from database to use with smarty assign-rs method
|
||||
* based on $this->type
|
||||
*
|
||||
* @param string $type type of the "new"-information, i.e. cache, event, rating, etc
|
||||
* @param array $args numeric array containing the parameter for "sql_slave"
|
||||
* @return object mysql result used by smarty assign_rs
|
||||
*/
|
||||
public function rsForSmarty($type,$args=null) {
|
||||
|
||||
// check type
|
||||
if(method_exists($this,strtolower($type).'Rs')) {
|
||||
return call_user_func(array($this,$type.'Rs'),$args);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* feedForSmarty creates a HTML string to use with smarty assign method
|
||||
* based on $this->type by using RSSParser class
|
||||
*
|
||||
* @param string $type type of the "new"-information, i.e. cache, event, rating, etc
|
||||
* @param int $items number of feeditems to parse from feed (RSSParser)
|
||||
* @param string $url url of the feed to parse (RSSParser)
|
||||
* @param boolean $includetext ???following??? add table-tag?
|
||||
* @return string HTML string used for smarty assign method
|
||||
*/
|
||||
public function feedForSmarty($type,$items=null,$url=null,$includetext=null) {
|
||||
|
||||
// check type
|
||||
if(method_exists($this,strtolower($type).'Feed')) {
|
||||
return call_user_func(array($this,$type.'Feed'),$items,$url,$includetext);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* cacheRs executes the database statements for type "cache"
|
||||
*
|
||||
* @param array $args numeric array containing the parameter for "sql_slave"
|
||||
* @return object mysql result used by smarty assign_rs
|
||||
*/
|
||||
private function cacheRs($args=null) {
|
||||
|
||||
// global
|
||||
global $opt;
|
||||
|
||||
// check $args and set defaults
|
||||
if(is_null($args) || !is_array($args)) {
|
||||
$args = array($this->get_userCountry(), $opt['template']['locale'],10);
|
||||
}
|
||||
|
||||
// execute sql
|
||||
return sql_slave("SELECT `user`.`user_id` `user_id`,
|
||||
`user`.`username` `username`,
|
||||
`caches`.`cache_id` `cache_id`,
|
||||
`caches`.`name` `name`,
|
||||
`caches`.`date_created` `date_created`,
|
||||
`caches`.`type`,
|
||||
IFNULL(`sys_trans_text`.`text`,`cache_location`.`adm1`) AS `adm1`,
|
||||
`cache_location`.`adm2`,
|
||||
`cache_location`.`adm3`,
|
||||
`cache_location`.`adm4`
|
||||
FROM `caches`
|
||||
INNER JOIN `user` ON `user`.`user_id`=`caches`.`user_id`
|
||||
LEFT JOIN `cache_location` ON `caches`.`cache_id`=`cache_location`.`cache_id`
|
||||
LEFT JOIN `countries` ON `countries`.`short`=`cache_location`.`code1`
|
||||
LEFT JOIN `sys_trans_text` ON `sys_trans_text`.`trans_id`=`countries`.`trans_id` AND `sys_trans_text`.`lang`='&2'
|
||||
WHERE `caches`.`country`='&1' AND
|
||||
`caches`.`type` != 6 AND
|
||||
`caches`.`status` = 1
|
||||
ORDER BY `caches`.`date_created` DESC
|
||||
LIMIT 0, &3",
|
||||
$args);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* eventRs executes the database statements for type "event"
|
||||
*
|
||||
* @param array $args numeric array containing the parameter for "sql_slave"
|
||||
* @return object mysql result used by smarty assign_rs
|
||||
*/
|
||||
private function eventRs($args=null) {
|
||||
|
||||
// global
|
||||
global $opt;
|
||||
|
||||
// check $args and set defaults
|
||||
if(is_null($args) || !is_array($args)) {
|
||||
$args = array($this->get_userCountry(), $opt['template']['locale'],10);
|
||||
}
|
||||
|
||||
// execute sql
|
||||
return sql_slave("SELECT `user`.`user_id` `user_id`,
|
||||
`user`.`username` `username`,
|
||||
`caches`.`cache_id` `cache_id`,
|
||||
`caches`.`name` `name`,
|
||||
`caches`.`date_hidden`,
|
||||
IFNULL(`sys_trans_text`.`text`,`cache_location`.`adm1`) AS `adm1`,
|
||||
`cache_location`.`adm2`,
|
||||
`cache_location`.`adm3`,
|
||||
`cache_location`.`adm4`
|
||||
FROM `caches`
|
||||
INNER JOIN `user` ON `user`.`user_id`=`caches`.`user_id`
|
||||
LEFT JOIN `cache_location` ON `caches`.`cache_id`=`cache_location`.`cache_id`
|
||||
LEFT JOIN `countries` ON `countries`.`short`=`cache_location`.`code1`
|
||||
LEFT JOIN `sys_trans_text` ON `sys_trans_text`.`trans_id`=`countries`.`trans_id` AND `sys_trans_text`.`lang`='&2'
|
||||
WHERE `caches`.`country`='&1' AND
|
||||
`caches`.`date_hidden` >= curdate() AND
|
||||
`caches`.`type` = 6 AND
|
||||
`caches`.`status`=1
|
||||
ORDER BY `date_hidden` ASC
|
||||
LIMIT 0, &3",
|
||||
$args);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* ratingRs executes the database statements for type "rating"
|
||||
*
|
||||
* @param array $args numeric array containing the parameter for "sql_slave"
|
||||
* @return object mysql result used by smarty assign_rs
|
||||
*/
|
||||
private function ratingRs($args=null) {
|
||||
|
||||
// global
|
||||
global $opt;
|
||||
|
||||
// check $args and set defaults
|
||||
if(is_null($args) || !is_array($args)) {
|
||||
$args = array($this->get_userCountry(), $opt['template']['locale'],10);
|
||||
}
|
||||
|
||||
// execute sql
|
||||
// 2012-08-24 following
|
||||
// optimized by adding rating_date field to cache_rating, so we don't need the log table.
|
||||
return sql_slave("SELECT COUNT(`cache_rating`.`user_id`) AS `cRatings`,
|
||||
MAX(`cache_rating`.`rating_date`) AS `dLastLog`,
|
||||
`user`.`user_id` AS `user_id`,
|
||||
`user`.`username` AS `username`,
|
||||
`caches`.`cache_id` AS `cache_id`,
|
||||
`caches`.`name` AS `name`,
|
||||
`caches`.`type`,
|
||||
IFNULL(`sys_trans_text`.`text`,`cache_location`.`adm1`) AS `adm1`,
|
||||
`cache_location`.`adm2`,
|
||||
`cache_location`.`adm3`,
|
||||
`cache_location`.`adm4`
|
||||
FROM `cache_rating`
|
||||
INNER JOIN `caches` ON `caches`.`cache_id`=`cache_rating`.`cache_id`
|
||||
INNER JOIN `user` ON `user`.`user_id`=`caches`.`user_id`
|
||||
LEFT JOIN `cache_location` ON `cache_rating`.`cache_id`=`cache_location`.`cache_id`
|
||||
LEFT JOIN `countries` ON `countries`.`short`=`cache_location`.`code1`
|
||||
LEFT JOIN `sys_trans_text` ON `sys_trans_text`.`trans_id`=`countries`.`trans_id` AND `sys_trans_text`.`lang`='&2'
|
||||
WHERE `caches`.`country`='&1' AND
|
||||
`cache_rating`.`rating_date`>DATE_SUB(NOW(), INTERVAL 30 DAY) AND
|
||||
`caches`.`type`!=6 AND
|
||||
`caches`.`status`=1
|
||||
GROUP BY `cache_rating`.`cache_id`
|
||||
ORDER BY `cRatings` DESC,
|
||||
`dLastLog` DESC,
|
||||
`cache_id` DESC
|
||||
LIMIT 0, &3",
|
||||
$args);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* blogFeed executes the RSSParser for type "blog"
|
||||
*
|
||||
* @param int $items number of feeditems to parse from feed (RSSParser)
|
||||
* @param string $url url of the feed to parse (RSSParser)
|
||||
* @param boolean $includetext ???following??? add table-tag?
|
||||
* @return string HTML string used for smarty assign method
|
||||
*/
|
||||
private function blogFeed($items=null,$url=null,$includetext=null) {
|
||||
|
||||
// global
|
||||
global $opt;
|
||||
|
||||
// check $items and set defaults
|
||||
if(is_null($items) || !is_numeric($items)) {
|
||||
$items = $opt['news']['count'];
|
||||
}
|
||||
// check $url and set defaults
|
||||
if(is_null($url) || !is_string($url)) {
|
||||
$url = $opt['news']['include'];
|
||||
}
|
||||
// check $includetext and set defaults
|
||||
if(is_null($includetext) || !is_bool($includetext)) {
|
||||
$includetext = false;
|
||||
}
|
||||
|
||||
// execute RSSParser
|
||||
return RSSParser::parse($items,$url,$includetext);
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* forumFeed executes the RSSParser for type "forum"
|
||||
*
|
||||
* @param int $items number of feeditems to parse from feed (RSSParser)
|
||||
* @param string $url url of the feed to parse (RSSParser)
|
||||
* @param boolean $includetext ???following??? add table-tag?
|
||||
* @return string HTML string used for smarty assign method
|
||||
*/
|
||||
private function forumFeed($items=null,$url=null,$includetext=null) {
|
||||
|
||||
// global
|
||||
global $opt;
|
||||
|
||||
// check $items and set defaults
|
||||
if(is_null($items) || !is_numeric($items)) {
|
||||
$items = $opt['forum']['count'];
|
||||
}
|
||||
// check $url and set defaults
|
||||
if(is_null($url) || !is_string($url)) {
|
||||
$url = $opt['forum']['url'];
|
||||
}
|
||||
// check $includetext and set defaults
|
||||
if(is_null($includetext) || !is_bool($includetext)) {
|
||||
$includetext = false;
|
||||
}
|
||||
|
||||
// execute RSSParser
|
||||
return RSSParser::parse($items,$url,$includetext);
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* wikiFeed executes the RSSParser for type "wiki"
|
||||
*
|
||||
* @param int $items number of feeditems to parse from feed (RSSParser)
|
||||
* @param string $url url of the feed to parse (RSSParser)
|
||||
* @param boolean $includetext ???following??? add table-tag?
|
||||
* @return string HTML string used for smarty assign method
|
||||
*/
|
||||
private function wikiFeed($items=null,$url=null,$includetext=null) {
|
||||
|
||||
// global
|
||||
global $opt;
|
||||
|
||||
// check $items and set defaults
|
||||
if(is_null($items) || !is_numeric($items)) {
|
||||
$items = 10;
|
||||
}
|
||||
// check $url and set defaults
|
||||
if(is_null($url) || !is_string($url)) {
|
||||
$url = 'http://wiki.opencaching.de/index.php/Spezial:Neue_Seiten?feed=rss';
|
||||
}
|
||||
// check $includetext and set defaults
|
||||
if(is_null($includetext) || !is_bool($includetext)) {
|
||||
$includetext = false;
|
||||
}
|
||||
|
||||
// execute RSSParser
|
||||
return RSSParser::parse($items,$url,$includetext);
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
?>
|
327
htdocs/lib2/logic/getNew.class.php
Normal file
327
htdocs/lib2/logic/getNew.class.php
Normal file
@ -0,0 +1,327 @@
|
||||
<?php
|
||||
/***************************************************************************
|
||||
* For license information see doc/license.txt
|
||||
*
|
||||
* Unicode Reminder メモ
|
||||
*
|
||||
* summarize methods to get new events, caches, ratings, etc.
|
||||
***************************************************************************/
|
||||
|
||||
|
||||
class getNew
|
||||
{
|
||||
// class variables
|
||||
private $userCountry;
|
||||
|
||||
|
||||
// getter/setter
|
||||
public function get_userCountry()
|
||||
{
|
||||
return $this->userCountry;
|
||||
}
|
||||
|
||||
public function set_userCountry($userCountry)
|
||||
{
|
||||
$this->userCountry = $userCountry;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* constructor
|
||||
* creates the object
|
||||
*
|
||||
* @param string $userCountry country of the loggedin user as parameter for the sql statements
|
||||
* @return void
|
||||
*/
|
||||
public function __construct($userCountry)
|
||||
{
|
||||
// set userCountry
|
||||
$this->set_userCountry($userCountry);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* rsForSmarty creates the result from database to use with smarty assign-rs method
|
||||
* based on $this->type
|
||||
*
|
||||
* @param string $type type of the "new"-information, i.e. cache, event, rating, etc
|
||||
* @param array $args numeric array containing the parameter for "sql_slave"
|
||||
* @return object mysql result used by smarty assign_rs
|
||||
*/
|
||||
public function rsForSmarty($type,$args=null)
|
||||
{
|
||||
// check type
|
||||
if(method_exists($this,strtolower($type).'Rs'))
|
||||
{
|
||||
return call_user_func(array($this,$type.'Rs'),$args);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* feedForSmarty creates a HTML string to use with smarty assign method
|
||||
* based on $this->type by using RSSParser class
|
||||
*
|
||||
* @param string $type type of the "new"-information, i.e. cache, event, rating, etc
|
||||
* @param int $items number of feeditems to parse from feed (RSSParser)
|
||||
* @param string $url url of the feed to parse (RSSParser)
|
||||
* @param boolean $includetext ???following??? add table-tag?
|
||||
* @return string HTML string used for smarty assign method
|
||||
*/
|
||||
public function feedForSmarty($type,$items=null,$url=null,$includetext=null)
|
||||
{
|
||||
// check type
|
||||
if (method_exists($this,strtolower($type).'Feed'))
|
||||
{
|
||||
return call_user_func(array($this,$type.'Feed'),$items,$url,$includetext);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* cacheRs executes the database statements for type "cache"
|
||||
*
|
||||
* @param array $args numeric array containing the parameter for "sql_slave"
|
||||
* @return object mysql result used by smarty assign_rs
|
||||
*/
|
||||
private function cacheRs($args=null)
|
||||
{
|
||||
// global
|
||||
global $opt;
|
||||
|
||||
// check $args and set defaults
|
||||
if (is_null($args) || !is_array($args))
|
||||
{
|
||||
$args = array($this->get_userCountry(), $opt['template']['locale'],10);
|
||||
}
|
||||
|
||||
// execute sql
|
||||
return sql_slave(
|
||||
"SELECT `user`.`user_id` `user_id`,
|
||||
`user`.`username` `username`,
|
||||
`caches`.`cache_id` `cache_id`,
|
||||
`caches`.`name` `name`,
|
||||
`caches`.`date_created` `date_created`,
|
||||
`caches`.`type`,
|
||||
IFNULL(`sys_trans_text`.`text`,`cache_location`.`adm1`) AS `adm1`,
|
||||
`cache_location`.`adm2`,
|
||||
`cache_location`.`adm3`,
|
||||
`cache_location`.`adm4`
|
||||
FROM `caches`
|
||||
INNER JOIN `user` ON `user`.`user_id`=`caches`.`user_id`
|
||||
LEFT JOIN `cache_location` ON `caches`.`cache_id`=`cache_location`.`cache_id`
|
||||
LEFT JOIN `countries` ON `countries`.`short`=`cache_location`.`code1`
|
||||
LEFT JOIN `sys_trans_text` ON `sys_trans_text`.`trans_id`=`countries`.`trans_id` AND `sys_trans_text`.`lang`='&2'
|
||||
WHERE `caches`.`country`='&1' AND
|
||||
`caches`.`type` != 6 AND
|
||||
`caches`.`status` = 1
|
||||
ORDER BY `caches`.`date_created` DESC
|
||||
LIMIT 0, &3",
|
||||
$args);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* eventRs executes the database statements for type "event"
|
||||
*
|
||||
* @param array $args numeric array containing the parameter for "sql_slave"
|
||||
* @return object mysql result used by smarty assign_rs
|
||||
*/
|
||||
private function eventRs($args=null)
|
||||
{
|
||||
// global
|
||||
global $opt;
|
||||
|
||||
// check $args and set defaults
|
||||
if (is_null($args) || !is_array($args))
|
||||
{
|
||||
$args = array($this->get_userCountry(), $opt['template']['locale'],10);
|
||||
}
|
||||
|
||||
// execute sql
|
||||
return sql_slave(
|
||||
"SELECT `user`.`user_id` `user_id`,
|
||||
`user`.`username` `username`,
|
||||
`caches`.`cache_id` `cache_id`,
|
||||
`caches`.`name` `name`,
|
||||
`caches`.`date_hidden`,
|
||||
IFNULL(`sys_trans_text`.`text`,`cache_location`.`adm1`) AS `adm1`,
|
||||
`cache_location`.`adm2`,
|
||||
`cache_location`.`adm3`,
|
||||
`cache_location`.`adm4`
|
||||
FROM `caches`
|
||||
INNER JOIN `user` ON `user`.`user_id`=`caches`.`user_id`
|
||||
LEFT JOIN `cache_location` ON `caches`.`cache_id`=`cache_location`.`cache_id`
|
||||
LEFT JOIN `countries` ON `countries`.`short`=`cache_location`.`code1`
|
||||
LEFT JOIN `sys_trans_text` ON `sys_trans_text`.`trans_id`=`countries`.`trans_id` AND `sys_trans_text`.`lang`='&2'
|
||||
WHERE `caches`.`country`='&1' AND
|
||||
`caches`.`date_hidden` >= curdate() AND
|
||||
`caches`.`type` = 6 AND
|
||||
`caches`.`status`=1
|
||||
ORDER BY `date_hidden` ASC
|
||||
LIMIT 0, &3",
|
||||
$args);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* ratingRs executes the database statements for type "rating"
|
||||
*
|
||||
* @param array $args numeric array containing the parameter for "sql_slave"
|
||||
* @return object mysql result used by smarty assign_rs
|
||||
*/
|
||||
private function ratingRs($args=null)
|
||||
{
|
||||
// global
|
||||
global $opt;
|
||||
|
||||
// check $args and set defaults
|
||||
if (is_null($args) || !is_array($args))
|
||||
{
|
||||
$args = array($this->get_userCountry(), $opt['template']['locale'],10);
|
||||
}
|
||||
|
||||
// execute sql
|
||||
// 2012-08-24 following
|
||||
// optimized by adding rating_date field to cache_rating, so we don't need the log table.
|
||||
return sql_slave(
|
||||
"SELECT COUNT(`cache_rating`.`user_id`) AS `cRatings`,
|
||||
MAX(`cache_rating`.`rating_date`) AS `dLastLog`,
|
||||
`user`.`user_id` AS `user_id`,
|
||||
`user`.`username` AS `username`,
|
||||
`caches`.`cache_id` AS `cache_id`,
|
||||
`caches`.`name` AS `name`,
|
||||
`caches`.`type`,
|
||||
IFNULL(`sys_trans_text`.`text`,`cache_location`.`adm1`) AS `adm1`,
|
||||
`cache_location`.`adm2`,
|
||||
`cache_location`.`adm3`,
|
||||
`cache_location`.`adm4`
|
||||
FROM `cache_rating`
|
||||
INNER JOIN `caches` ON `caches`.`cache_id`=`cache_rating`.`cache_id`
|
||||
INNER JOIN `user` ON `user`.`user_id`=`caches`.`user_id`
|
||||
LEFT JOIN `cache_location` ON `cache_rating`.`cache_id`=`cache_location`.`cache_id`
|
||||
LEFT JOIN `countries` ON `countries`.`short`=`cache_location`.`code1`
|
||||
LEFT JOIN `sys_trans_text` ON `sys_trans_text`.`trans_id`=`countries`.`trans_id` AND `sys_trans_text`.`lang`='&2'
|
||||
WHERE `caches`.`country`='&1' AND
|
||||
`cache_rating`.`rating_date`>DATE_SUB(NOW(), INTERVAL 30 DAY) AND
|
||||
`caches`.`type`!=6 AND
|
||||
`caches`.`status`=1
|
||||
GROUP BY `cache_rating`.`cache_id`
|
||||
ORDER BY `cRatings` DESC,
|
||||
`dLastLog` DESC,
|
||||
`cache_id` DESC
|
||||
LIMIT 0, &3",
|
||||
$args);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* blogFeed executes the RSSParser for type "blog"
|
||||
*
|
||||
* @param int $items number of feeditems to parse from feed (RSSParser)
|
||||
* @param string $url url of the feed to parse (RSSParser)
|
||||
* @param boolean $includetext ???following??? add table-tag?
|
||||
* @return string HTML string used for smarty assign method
|
||||
*/
|
||||
private function blogFeed($items=null,$url=null,$includetext=null)
|
||||
{
|
||||
// global
|
||||
global $opt;
|
||||
|
||||
// check $items and set defaults
|
||||
if (is_null($items) || !is_numeric($items))
|
||||
{
|
||||
$items = $opt['news']['count'];
|
||||
}
|
||||
|
||||
// check $url and set defaults
|
||||
if (is_null($url) || !is_string($url))
|
||||
{
|
||||
$url = $opt['news']['include'];
|
||||
}
|
||||
|
||||
// check $includetext and set defaults
|
||||
if (is_null($includetext) || !is_bool($includetext))
|
||||
{
|
||||
$includetext = false;
|
||||
}
|
||||
|
||||
// execute RSSParser
|
||||
return RSSParser::parse($items,$url,$includetext);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* forumFeed executes the RSSParser for type "forum"
|
||||
*
|
||||
* @param int $items number of feeditems to parse from feed (RSSParser)
|
||||
* @param string $url url of the feed to parse (RSSParser)
|
||||
* @param boolean $includetext ???following??? add table-tag?
|
||||
* @return string HTML string used for smarty assign method
|
||||
*/
|
||||
private function forumFeed($items=null,$url=null,$includetext=null)
|
||||
{
|
||||
// global
|
||||
global $opt;
|
||||
|
||||
// check $items and set defaults
|
||||
if (is_null($items) || !is_numeric($items))
|
||||
{
|
||||
$items = $opt['forum']['count'];
|
||||
}
|
||||
|
||||
// check $url and set defaults
|
||||
if (is_null($url) || !is_string($url))
|
||||
{
|
||||
$url = $opt['forum']['url'];
|
||||
}
|
||||
|
||||
// check $includetext and set defaults
|
||||
if (is_null($includetext) || !is_bool($includetext))
|
||||
{
|
||||
$includetext = false;
|
||||
}
|
||||
|
||||
// execute RSSParser
|
||||
return RSSParser::parse($items,$url,$includetext);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* wikiFeed executes the RSSParser for type "wiki"
|
||||
*
|
||||
* @param int $items number of feeditems to parse from feed (RSSParser)
|
||||
* @param string $url url of the feed to parse (RSSParser)
|
||||
* @param boolean $includetext ???following??? add table-tag?
|
||||
* @return string HTML string used for smarty assign method
|
||||
*/
|
||||
private function wikiFeed($items=null,$url=null,$includetext=null)
|
||||
{
|
||||
// global
|
||||
global $opt;
|
||||
|
||||
// check $items and set defaults
|
||||
if (is_null($items) || !is_numeric($items))
|
||||
{
|
||||
$items = 10;
|
||||
}
|
||||
|
||||
// check $url and set defaults
|
||||
if (is_null($url) || !is_string($url))
|
||||
{
|
||||
$url = 'http://wiki.opencaching.de/index.php/Spezial:Neue_Seiten?feed=rss';
|
||||
}
|
||||
|
||||
// check $includetext and set defaults
|
||||
if (is_null($includetext) || !is_bool($includetext))
|
||||
{
|
||||
$includetext = false;
|
||||
}
|
||||
|
||||
// execute RSSParser
|
||||
return RSSParser::parse($items,$url,$includetext);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
?>
|
@ -7,25 +7,25 @@
|
||||
{*cachetype=1 status=1 logtype=0 owner=false small=false*}
|
||||
|
||||
{if $cachetype==1}
|
||||
<img src="{$rootpath}resource2/{$opt.template.style}/images/cacheicon/unknown.gif" alt="{t}Unknown Geocache{/t}" title="{t}Unknown Geocache{/t}" border="0" width="32" height="32" class="icon32" id="viewcache-cacheicon" />
|
||||
<img src="resource2/{$opt.template.style}/images/cacheicon/unknown.gif" alt="{t}Unknown Geocache{/t}" title="{t}Unknown Geocache{/t}" border="0" width="32" height="32" class="icon32" id="viewcache-cacheicon" />
|
||||
{elseif $cachetype==2}
|
||||
<img src="{$rootpath}resource2/{$opt.template.style}/images/cacheicon/traditional.gif" alt="{t}Traditional Geocache{/t}" title="{t}Traditional Geocache{/t}" border="0" width="32" height="32" class="icon32" id="viewcache-cacheicon" />
|
||||
<img src="resource2/{$opt.template.style}/images/cacheicon/traditional.gif" alt="{t}Traditional Geocache{/t}" title="{t}Traditional Geocache{/t}" border="0" width="32" height="32" class="icon32" id="viewcache-cacheicon" />
|
||||
{elseif $cachetype==3} {* Ocprop: \/cacheicon\/multi\.gif"\s+alt="Multicache" *}
|
||||
<img src="{$rootpath}resource2/{$opt.template.style}/images/cacheicon/multi.gif" alt="{t}Multicache{/t}" title="{t}Multicache{/t}" border="0" width="32" height="32" class="icon32" id="viewcache-cacheicon" />
|
||||
<img src="resource2/{$opt.template.style}/images/cacheicon/multi.gif" alt="{t}Multicache{/t}" title="{t}Multicache{/t}" border="0" width="32" height="32" class="icon32" id="viewcache-cacheicon" />
|
||||
{elseif $cachetype==4}
|
||||
<img src="{$rootpath}resource2/{$opt.template.style}/images/cacheicon/virtual.gif" alt="{t}Virtual Geocache{/t}" title="{t}Virtual Geocache{/t}" border="0" width="32" height="32" class="icon32" id="viewcache-cacheicon" />
|
||||
<img src="resource2/{$opt.template.style}/images/cacheicon/virtual.gif" alt="{t}Virtual Geocache{/t}" title="{t}Virtual Geocache{/t}" border="0" width="32" height="32" class="icon32" id="viewcache-cacheicon" />
|
||||
{elseif $cachetype==5}
|
||||
<img src="{$rootpath}resource2/{$opt.template.style}/images/cacheicon/webcam.gif" alt="{t}Webcam Geocache{/t}" title="{t}Webcam Geocache{/t}" border="0" width="32" height="32" class="icon32" id="viewcache-cacheicon" />
|
||||
<img src="resource2/{$opt.template.style}/images/cacheicon/webcam.gif" alt="{t}Webcam Geocache{/t}" title="{t}Webcam Geocache{/t}" border="0" width="32" height="32" class="icon32" id="viewcache-cacheicon" />
|
||||
{elseif $cachetype==6}
|
||||
<img src="{$rootpath}resource2/{$opt.template.style}/images/cacheicon/event.gif" alt="{t}Event Geocache{/t}" title="{t}Event Geocache{/t}" border="0" width="32" height="32" class="icon32" id="viewcache-cacheicon" />
|
||||
<img src="resource2/{$opt.template.style}/images/cacheicon/event.gif" alt="{t}Event Geocache{/t}" title="{t}Event Geocache{/t}" border="0" width="32" height="32" class="icon32" id="viewcache-cacheicon" />
|
||||
{elseif $cachetype==7}
|
||||
<img src="{$rootpath}resource2/{$opt.template.style}/images/cacheicon/mystery.gif" alt="{t}Quizcache{/t}" title="{t}Quizcache{/t}" border="0" width="32" height="32" class="icon32" id="viewcache-cacheicon" />
|
||||
<img src="resource2/{$opt.template.style}/images/cacheicon/mystery.gif" alt="{t}Quizcache{/t}" title="{t}Quizcache{/t}" border="0" width="32" height="32" class="icon32" id="viewcache-cacheicon" />
|
||||
{elseif $cachetype==8}
|
||||
<img src="{$rootpath}resource2/{$opt.template.style}/images/cacheicon/mathe.gif" alt="{t}Math/Physics Geocache{/t}" title="{t}Math/Physics Geocache{/t}" border="0" width="32" height="32" class="icon32" id="viewcache-cacheicon" />
|
||||
<img src="resource2/{$opt.template.style}/images/cacheicon/mathe.gif" alt="{t}Math/Physics Geocache{/t}" title="{t}Math/Physics Geocache{/t}" border="0" width="32" height="32" class="icon32" id="viewcache-cacheicon" />
|
||||
{elseif $cachetype==9}
|
||||
<img src="{$rootpath}resource2/{$opt.template.style}/images/cacheicon/moving.gif" alt="{t}Moving Geocache{/t}" title="{t}Moving Geocache{/t}" border="0" width="32" height="32" class="icon32" id="viewcache-cacheicon" />
|
||||
<img src="resource2/{$opt.template.style}/images/cacheicon/moving.gif" alt="{t}Moving Geocache{/t}" title="{t}Moving Geocache{/t}" border="0" width="32" height="32" class="icon32" id="viewcache-cacheicon" />
|
||||
{elseif $cachetype==10}
|
||||
<img src="{$rootpath}resource2/{$opt.template.style}/images/cacheicon/drivein.gif" alt="{t}Drive-In Geocache{/t}" title="{t}Drive-In Geocache{/t}" border="0" width="32" height="32" class="icon32" id="viewcache-cacheicon" />
|
||||
<img src="resource2/{$opt.template.style}/images/cacheicon/drivein.gif" alt="{t}Drive-In Geocache{/t}" title="{t}Drive-In Geocache{/t}" border="0" width="32" height="32" class="icon32" id="viewcache-cacheicon" />
|
||||
{else}
|
||||
|
||||
{/if}
|
||||
|
@ -7,25 +7,25 @@
|
||||
{*cachetype=1 status=1 logtype=0 owner=false small=false*}
|
||||
|
||||
{if $cachetype==1}
|
||||
<img src="{$rootpath}resource2/{$opt.template.style}/images/cacheicon/unknown.gif" alt="{t}Unknown Geocache{/t}" border="0" width="15" height="15" align="left" style="margin-right: 5px; padding-left: 25px;" />
|
||||
<img src="resource2/{$opt.template.style}/images/cacheicon/unknown.gif" alt="{t}Unknown Geocache{/t}" border="0" width="15" height="15" align="left" style="margin-right: 5px; padding-left: 25px;" />
|
||||
{elseif $cachetype==2}
|
||||
<img src="{$rootpath}resource2/{$opt.template.style}/images/cacheicon/traditional.gif" alt="{t}Traditional Geocache{/t}" border="0" width="15" height="15" align="left" style="margin-right: 5px; padding-left: 25px;" />
|
||||
<img src="resource2/{$opt.template.style}/images/cacheicon/traditional.gif" alt="{t}Traditional Geocache{/t}" border="0" width="15" height="15" align="left" style="margin-right: 5px; padding-left: 25px;" />
|
||||
{elseif $cachetype==3}
|
||||
<img src="{$rootpath}resource2/{$opt.template.style}/images/cacheicon/multi.gif" alt="{t}Multicache{/t}" border="0" width="15" height="15" align="left" style="margin-right: 5px; padding-left: 25px;" />
|
||||
<img src="resource2/{$opt.template.style}/images/cacheicon/multi.gif" alt="{t}Multicache{/t}" border="0" width="15" height="15" align="left" style="margin-right: 5px; padding-left: 25px;" />
|
||||
{elseif $cachetype==4}
|
||||
<img src="{$rootpath}resource2/{$opt.template.style}/images/cacheicon/virtual.gif" alt="{t}Virtual Geocache{/t}" border="0" width="15" height="15" align="left" style="margin-right: 5px; padding-left: 25px;" />
|
||||
<img src="resource2/{$opt.template.style}/images/cacheicon/virtual.gif" alt="{t}Virtual Geocache{/t}" border="0" width="15" height="15" align="left" style="margin-right: 5px; padding-left: 25px;" />
|
||||
{elseif $cachetype==5}
|
||||
<img src="{$rootpath}resource2/{$opt.template.style}/images/cacheicon/webcam.gif" alt="{t}Webcam Geocache{/t}" border="0" width="15" height="15" align="left" style="margin-right: 5px; padding-left: 25px;" />
|
||||
<img src="resource2/{$opt.template.style}/images/cacheicon/webcam.gif" alt="{t}Webcam Geocache{/t}" border="0" width="15" height="15" align="left" style="margin-right: 5px; padding-left: 25px;" />
|
||||
{elseif $cachetype==6}
|
||||
<img src="{$rootpath}resource2/{$opt.template.style}/images/cacheicon/event.gif" alt="{t}Event Geocache{/t}" border="0" width="15" height="15" align="left" style="margin-right: 5px; padding-left: 25px;" />
|
||||
<img src="resource2/{$opt.template.style}/images/cacheicon/event.gif" alt="{t}Event Geocache{/t}" border="0" width="15" height="15" align="left" style="margin-right: 5px; padding-left: 25px;" />
|
||||
{elseif $cachetype==7}
|
||||
<img src="{$rootpath}resource2/{$opt.template.style}/images/cacheicon/mystery.gif" alt="{t}Quizcache{/t}" border="0" width="15" height="15" align="left" style="margin-right: 5px; padding-left: 25px;" />
|
||||
<img src="resource2/{$opt.template.style}/images/cacheicon/mystery.gif" alt="{t}Quizcache{/t}" border="0" width="15" height="15" align="left" style="margin-right: 5px; padding-left: 25px;" />
|
||||
{elseif $cachetype==8}
|
||||
<img src="{$rootpath}resource2/{$opt.template.style}/images/cacheicon/mathe.gif" alt="{t}Math/Physics Geocache{/t}" border="0" width="15" height="15" align="left" style="margin-right: 5px; padding-left: 25px;" />
|
||||
<img src="resource2/{$opt.template.style}/images/cacheicon/mathe.gif" alt="{t}Math/Physics Geocache{/t}" border="0" width="15" height="15" align="left" style="margin-right: 5px; padding-left: 25px;" />
|
||||
{elseif $cachetype==9}
|
||||
<img src="{$rootpath}resource2/{$opt.template.style}/images/cacheicon/moving.gif" alt="{t}Moving Geocache{/t}" border="0" width="15" height="15" align="left" style="margin-right: 5px; padding-left: 25px;" />
|
||||
<img src="resource2/{$opt.template.style}/images/cacheicon/moving.gif" alt="{t}Moving Geocache{/t}" border="0" width="15" height="15" align="left" style="margin-right: 5px; padding-left: 25px;" />
|
||||
{elseif $cachetype==10}
|
||||
<img src="{$rootpath}resource2/{$opt.template.style}/images/cacheicon/drivein.gif" alt="{t}Drive-In Geocache{/t}" border="0" width="15" height="15" align="left" style="margin-right: 5px; padding-left: 25px;" />
|
||||
<img src="resource2/{$opt.template.style}/images/cacheicon/drivein.gif" alt="{t}Drive-In Geocache{/t}" border="0" width="15" height="15" align="left" style="margin-right: 5px; padding-left: 25px;" />
|
||||
{else}
|
||||
|
||||
{/if}
|
||||
|
@ -7,25 +7,25 @@
|
||||
{*cachetype=1 status=1 logtype=0 owner=false small=false*}
|
||||
|
||||
{if $cachetype==1}
|
||||
<img src="{$rootpath}resource2/{$opt.template.style}/images/cacheicon/unknown.gif" alt="{t}Unknown Geocache{/t}" border="0" width="22" height="22" align="left" style="margin-right: 5px;" />
|
||||
<img src="resource2/{$opt.template.style}/images/cacheicon/unknown.gif" alt="{t}Unknown Geocache{/t}" border="0" width="22" height="22" align="left" style="margin-right: 5px;" />
|
||||
{elseif $cachetype==2}
|
||||
<img src="{$rootpath}resource2/{$opt.template.style}/images/cacheicon/traditional.gif" alt="{t}Traditional Geocache{/t}" border="0" width="22" height="22" align="left" style="margin-right: 5px;" />
|
||||
<img src="resource2/{$opt.template.style}/images/cacheicon/traditional.gif" alt="{t}Traditional Geocache{/t}" border="0" width="22" height="22" align="left" style="margin-right: 5px;" />
|
||||
{elseif $cachetype==3}
|
||||
<img src="{$rootpath}resource2/{$opt.template.style}/images/cacheicon/multi.gif" alt="{t}Multicache{/t}" border="0" width="22" height="22" align="left" style="margin-right: 5px;" />
|
||||
<img src="resource2/{$opt.template.style}/images/cacheicon/multi.gif" alt="{t}Multicache{/t}" border="0" width="22" height="22" align="left" style="margin-right: 5px;" />
|
||||
{elseif $cachetype==4}
|
||||
<img src="{$rootpath}resource2/{$opt.template.style}/images/cacheicon/virtual.gif" alt="{t}Virtual Geocache{/t}" border="0" width="22" height="22" align="left" style="margin-right: 5px;" />
|
||||
<img src="resource2/{$opt.template.style}/images/cacheicon/virtual.gif" alt="{t}Virtual Geocache{/t}" border="0" width="22" height="22" align="left" style="margin-right: 5px;" />
|
||||
{elseif $cachetype==5}
|
||||
<img src="{$rootpath}resource2/{$opt.template.style}/images/cacheicon/webcam.gif" alt="{t}Webcam Geocache{/t}" border="0" width="22" height="22" align="left" style="margin-right: 5px;" />
|
||||
<img src="resource2/{$opt.template.style}/images/cacheicon/webcam.gif" alt="{t}Webcam Geocache{/t}" border="0" width="22" height="22" align="left" style="margin-right: 5px;" />
|
||||
{elseif $cachetype==6}
|
||||
<img src="{$rootpath}resource2/{$opt.template.style}/images/cacheicon/event.gif" alt="{t}Event Geocache{/t}" border="0" width="22" height="22" align="left" style="margin-right: 5px;" />
|
||||
<img src="resource2/{$opt.template.style}/images/cacheicon/event.gif" alt="{t}Event Geocache{/t}" border="0" width="22" height="22" align="left" style="margin-right: 5px;" />
|
||||
{elseif $cachetype==7}
|
||||
<img src="{$rootpath}resource2/{$opt.template.style}/images/cacheicon/mystery.gif" alt="{t}Quizcache{/t}" border="0" width="22" height="22" align="left" style="margin-right: 5px;" />
|
||||
<img src="resource2/{$opt.template.style}/images/cacheicon/mystery.gif" alt="{t}Quizcache{/t}" border="0" width="22" height="22" align="left" style="margin-right: 5px;" />
|
||||
{elseif $cachetype==8}
|
||||
<img src="{$rootpath}resource2/{$opt.template.style}/images/cacheicon/mathe.gif" alt="{t}Math/Physics Geocache{/t}" border="0" width="22" height="22" align="left" style="margin-right: 5px;" />
|
||||
<img src="resource2/{$opt.template.style}/images/cacheicon/mathe.gif" alt="{t}Math/Physics Geocache{/t}" border="0" width="22" height="22" align="left" style="margin-right: 5px;" />
|
||||
{elseif $cachetype==9}
|
||||
<img src="{$rootpath}resource2/{$opt.template.style}/images/cacheicon/moving.gif" alt="{t}Moving Geocache{/t}" border="0" width="22" height="22" align="left" style="margin-right: 5px;" />
|
||||
<img src="resource2/{$opt.template.style}/images/cacheicon/moving.gif" alt="{t}Moving Geocache{/t}" border="0" width="22" height="22" align="left" style="margin-right: 5px;" />
|
||||
{elseif $cachetype==10}
|
||||
<img src="{$rootpath}resource2/{$opt.template.style}/images/cacheicon/drivein.gif" alt="{t}Drive-In Geocache{/t}" border="0" width="22" height="22" align="left" style="margin-right: 5px;" />
|
||||
<img src="resource2/{$opt.template.style}/images/cacheicon/drivein.gif" alt="{t}Drive-In Geocache{/t}" border="0" width="22" height="22" align="left" style="margin-right: 5px;" />
|
||||
{else}
|
||||
|
||||
{/if}
|
||||
|
@ -3,10 +3,10 @@
|
||||
*
|
||||
* Unicode Reminder メモ
|
||||
***************************************************************************}
|
||||
<ul class="nodot">
|
||||
<ul class="nodot">
|
||||
{foreach name=newcaches from=$newcaches item=cacheitem}
|
||||
<li class="newcache_list_multi" style="margin-bottom: 8px;">
|
||||
{include file="res_cacheicon_22.tpl" cachetype=$cacheitem.type rootpath=$rootpath}
|
||||
{include file="res_cacheicon_22.tpl" cachetype=$cacheitem.type}
|
||||
{$cacheitem.date_created|date_format:$opt.format.date}
|
||||
<b><a class="links" href="viewcache.php?cacheid={$cacheitem.cache_id}">{$cacheitem.name|escape}</a></b>
|
||||
{t}by{/t}
|
||||
@ -19,5 +19,5 @@
|
||||
</p>
|
||||
</strong>
|
||||
</li>
|
||||
{/foreach}
|
||||
{/foreach}
|
||||
</ul>
|
@ -8,8 +8,8 @@
|
||||
<li class="newcache_list_multi" style="margin-bottom: 8px;">
|
||||
<img src="resource2/{$opt.template.style}/images/cacheicon/event-rand{rand min=1 max=4}.gif" alt="{t}Event Geocache{/t}" border="0" width="22" height="22" align="left" style="margin-right: 5px;" />
|
||||
{$eventitem.date_hidden|date_format:$opt.format.date}
|
||||
<b><a class="links" href="viewcache.php?cacheid={$eventitem.cache_id}">{$eventitem.name|escape}</a></b>
|
||||
{t}by{/t}
|
||||
<b><a class="links" href="viewcache.php?cacheid={$eventitem.cache_id}">{$eventitem.name|escape}</a></b>
|
||||
{t}by{/t}
|
||||
<b><a class="links" href="viewprofile.php?userid={$eventitem.user_id}">{$eventitem.username|escape}</a></b><br />
|
||||
<strong>
|
||||
<p class="content-title-noshade">
|
||||
@ -19,5 +19,5 @@
|
||||
</p>
|
||||
</strong>
|
||||
</li>
|
||||
{/foreach}
|
||||
{/foreach}
|
||||
</ul>
|
@ -3,7 +3,7 @@
|
||||
*
|
||||
* Unicode Reminder メモ
|
||||
***************************************************************************}
|
||||
<ul class="nodot">
|
||||
<ul class="nodot">
|
||||
{foreach name=topratings from=$topratings item=cacheitem}
|
||||
<li class="newcache_list_multi" style="margin-bottom: 8px;">
|
||||
{include file="res_cacheicon_22.tpl" cachetype=$cacheitem.type}
|
||||
@ -23,6 +23,6 @@
|
||||
</p>
|
||||
</strong>
|
||||
</li>
|
||||
{/foreach}
|
||||
{/foreach}
|
||||
</ul>
|
||||
<p style="line-height: 1.6em;">{t}You can find more recommendations ><a href="tops.php">here</a><.{/t}</p>
|
@ -3,11 +3,16 @@
|
||||
*
|
||||
* Unicode Reminder メモ
|
||||
***************************************************************************}
|
||||
{*
|
||||
{*
|
||||
* Template for opencaching.de "page not found" and entry page
|
||||
* for nonexisting subdomains
|
||||
* for nonexisting subdomains
|
||||
*
|
||||
* This page is currently used only for external sites, e.g. invalid .opencaching.de
|
||||
* subdomains. If it shall be used for unknown www.opencaching.de/... pages,
|
||||
* id needs to be adapted for www.opencaching.it, www.opencachingspain.es etc.
|
||||
* (e.g. output the correct local domains, and omit Germany-specific things).
|
||||
*}
|
||||
|
||||
|
||||
{* OCSTYLE *}
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
@ -15,7 +20,6 @@
|
||||
<title>
|
||||
404 opencaching.de - DNF
|
||||
</title>
|
||||
<meta name="KEYWORDS" content="geocaching, opencaching, geocashing, longitude, latitude, utm, coordinates, treasure hunting, treasure, GPS, global positioning system, garmin, magellan, mapping, geo, hiking, outdoors, sport, hunt, stash, cache, geocaching, geocache, cache, treasure, hunting, satellite, navigation, tracking, bugs, travel bugs" />
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" />
|
||||
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
|
||||
<meta http-equiv="Content-Style-Type" content="text/css" />
|
||||
@ -23,37 +27,37 @@
|
||||
<meta http-equiv="gallerimg" content="no" />
|
||||
<meta http-equiv="cache-control" content="no-cache" />
|
||||
<link rel="SHORTCUT ICON" href="favicon.ico">
|
||||
<link rel="apple-touch-icon" href="{$rootpath}resource2/{$opt.template.style}/images/oclogo/apple-touch-icon-iphone.png" />
|
||||
<link rel="apple-touch-icon" sizes="72x72" href="{$rootpath}resource2/{$opt.template.style}/images/oclogo/apple-touch-icon-ipad.png" />
|
||||
<link rel="apple-touch-icon" sizes="114x114" href="{$rootpath}resource2/{$opt.template.style}/images/oclogo/apple-touch-icon-iphone-retina.png" />
|
||||
<link rel="apple-touch-icon" sizes="144x144" href="{$rootpath}resource2/{$opt.template.style}/images/oclogo/apple-touch-icon-ipad-retina.png" />
|
||||
<link rel="stylesheet" type="text/css" href="{$rootpath}resource2/{$opt.template.style}/css/style_screen.css" />
|
||||
<link rel="stylesheet" type="text/css" href="{$rootpath}resource2/{$opt.template.style}/css/style_oc404.css" />
|
||||
<link rel="apple-touch-icon" href="resource2/{$opt.template.style}/images/oclogo/apple-touch-icon-iphone.png" />
|
||||
<link rel="apple-touch-icon" sizes="72x72" href="resource2/{$opt.template.style}/images/oclogo/apple-touch-icon-ipad.png" />
|
||||
<link rel="apple-touch-icon" sizes="114x114" href="resource2/{$opt.template.style}/images/oclogo/apple-touch-icon-iphone-retina.png" />
|
||||
<link rel="apple-touch-icon" sizes="144x144" href="resource2/{$opt.template.style}/images/oclogo/apple-touch-icon-ipad-retina.png" />
|
||||
<link rel="stylesheet" type="text/css" href="resource2/{$opt.template.style}/css/style_screen.css" />
|
||||
<link rel="stylesheet" type="text/css" href="resource2/{$opt.template.style}/css/style_oc404.css" />
|
||||
</head>
|
||||
<body>
|
||||
<div id="frame">
|
||||
<div class="header">
|
||||
<div class="headerimage">
|
||||
<img src="{$rootpath}resource2/{$opt.template.style}/images/head/rotator.php?path={$opt.page.headimagepath}" class="headerimagecontent" />
|
||||
<img src="resource2/{$opt.template.style}/images/head/rotator.php?path={$opt.page.headimagepath}" class="headerimagecontent" />
|
||||
</div>
|
||||
<div class="headerlogo">
|
||||
<img src="{$rootpath}resource2/{$opt.template.style}/images/oclogo/oc_head_alpha3.png" class="headerimagecontent" />
|
||||
<img src="resource2/{$opt.template.style}/images/oclogo/oc_head_alpha3.png" class="headerimagecontent" />
|
||||
</div>
|
||||
</div>
|
||||
<div id="head">
|
||||
<p>
|
||||
<img id="oc404" src="{$rootpath}resource2/{$opt.template.style}/images/oc_404.png" title="opencaching.de 404" alt="opencaching.de 404" />
|
||||
<p>
|
||||
<img id="oc404" src="resource2/{$opt.template.style}/images/oc_404.png" title="opencaching.de 404" alt="opencaching.de 404" />
|
||||
<span class="dnf">- {t}Page not found{/t} - DNF</span>
|
||||
</p>
|
||||
</p>
|
||||
</div>
|
||||
<div id="content">
|
||||
<p class="text">{t 1=$website|escape}The visited website <b>%1</b> does not exists, we found the following suitable pages:{/t}</p>
|
||||
<div class="sresult">
|
||||
<p class="content-title-noshade-size2"><a class="links" href="http://www.opencaching.de" title="{t}Cachedatabase{/t}">www.opencaching.de</a> {t}Here you can find a lot of individual caches.{/t}</p>
|
||||
<p class="content-title-noshade-size2"><a class="links" href="http://www.opencaching.de" title="{t}Cache database{/t}">www.opencaching.de</a> {t}Here you can find a lot of individual caches.{/t}</p>
|
||||
<div>
|
||||
<p>{t}The newest caches:{/t}</p>
|
||||
{* newest cache template *}
|
||||
{include file="res_newcaches.tpl" newcaches=$newcaches rootpath=$rootpath}
|
||||
{include file="res_newcaches.tpl" newcaches=$newcaches}
|
||||
</div>
|
||||
</div>
|
||||
<div class="sresult">
|
||||
@ -73,19 +77,19 @@
|
||||
</div>
|
||||
</div>
|
||||
<div class="sresult">
|
||||
<p class="content-title-noshade-size2"><a class="links" href="http://wiki.opencaching.de" title="Opencaching Wiki">wiki.opencaching.de</a> {t}Here you get tutorials, howtos and any information about opencaching.{/t}</p>
|
||||
<p class="content-title-noshade-size2"><a class="links" href="http://wiki.opencaching.de" title="Opencaching Wiki">wiki.opencaching.de</a> {t}Here you get tutorials, howtos and any information about Geocaching and Opencaching.{/t}</p>
|
||||
<div>
|
||||
<p>{t}The newest wikiarticles:{/t}</p>
|
||||
<p>{t}The newest wiki articles:{/t}</p>
|
||||
{* newest wiki article template (RSSParser) *}
|
||||
{include file="res_rssparser.tpl" rss=$wiki}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="foot">
|
||||
<p class="text">{t}Not found? Contact us using{/t} <a class="links" href="mailto:contact@opencaching.de" title="{t}Contact{/t}">contact@opencaching.de</a>.</p>
|
||||
<p class="text">{t}Not found? Contact us using{/t} <a class="links" href="mailto:contact@opencaching.de" title="{t}Contact{/t}">{$contact}</a>.</p>
|
||||
<p> </p>
|
||||
<p class="center"><a class="links" href="/articles.php?page=impressum" title="{t}Impressum{/t}">{t}Imprint{/t}</a> - <a class="links" href="/articles.php?page=verein" title="{t}Nonprofit organization{/t}">Opencaching Deutschland e.V.</a> - <a class="links" href="/articles.php?page=contact" title="{t}Contact{/t}">{t}Contact{/t}</a></p>
|
||||
<p class="center"><a class="links" href="/fb" title="{t}Opencaching on Facebook{/t}">Facebook</a> - <a class="links" href="/+" title="{t}Opencaching on Google+{/t}">Google+</a> - <a class="links" href="/t" title="{t}Opencaching on Twitter{/t}">Twitter</a></p>
|
||||
<p class="center"><a class="links" href="/articles.php?page=impressum" title="{t}Imprint{/t}">{t}Imprint{/t}</a> - <a class="links" href="/articles.php?page=verein" title="{t}Operator Association{/t}">Opencaching Deutschland e.V.</a> - <a class="links" href="/articles.php?page=contact" title="{t}Contact{/t}">{t}Contact{/t}</a></p>
|
||||
<p class="center"><a class="links" href="/fb" title="{t}Opencaching at Facebook{/t}">Facebook</a> - <a class="links" href="/+" title="{t}Opencaching at Google+{/t}">Google+</a> - <a class="links" href="/t" title="{t}Opencaching at Twitter{/t}">Twitter</a></p>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
|
Reference in New Issue
Block a user