Compare commits

..

4 commits

Author SHA1 Message Date
2ce42038de Create a update precedure from 1.1.3 to 1.2.0 2020-04-05 20:36:09 +02:00
5de6785f99 Change version number to 1.2.0 2020-04-05 18:04:00 +02:00
23c3d3b65b Update log and admin to work with PHP v 7.2
Mostly changing mysql_ to mysqli_ but also some OOP fixes it classes,
especially the bbcode parser which doesn't have a new version working
with PHP 7.
2020-04-05 17:42:46 +02:00
7af86452ff Update setup to run under PHP7
Mostly mysql_ to mysqli_ changes.
2020-04-05 15:31:29 +02:00
32 changed files with 159 additions and 153 deletions

View file

@ -179,7 +179,8 @@ global $l, $plugins;
'".$form_input['allowpingback']."' );"; '".$form_input['allowpingback']."' );";
$writeblog = new Query($sql); $writeblog = new Query($sql);
$id = mysql_insert_id(); global $mysql;
$id = mysqli_insert_id($mysql);
if($writeblog->error()) { if($writeblog->error()) {
echo "<pre>\n"; echo "<pre>\n";
echo $writeblog->getError(); echo $writeblog->getError();

View file

@ -25,7 +25,7 @@
$c['main'] .= $categories->output_form($form_input, 'new', $l['admin']['cat_new']); $c['main'] .= $categories->output_form($form_input, 'new', $l['admin']['cat_new']);
} }
} }
else $c['main'] .= $categories->output_form(array('id' => NULL, 'name' => NULL, 'url' => NULL, 'description' => NULL), 'new', $l['admin']['cat_new']); else $c['main'] .= $categories->output_form('', 'new', $l['admin']['cat_new']);
break; break;
case 'change': case 'change':

View file

@ -63,7 +63,7 @@ $c['main'] = '
<input class="userdata" id="password" type="password" name="password" /> <input class="userdata" id="password" type="password" name="password" />
<input style="display: none;" name="username" type="text" value="do-not-change" /></p> <input style="display: none;" name="username" type="text" value="do-not-change" /></p>
<p><input type="hidden" name="url" value="' . htmlspecialchars(!empty($get['url']) ? $get['url'] : '') . '" /> <p><input type="hidden" name="url" value="' . htmlspecialchars(!empty($get['url']) ? $get['url'] : '') . '" />
<button value="' . $l['admin']['login_send'] . '">' . htmlspecialchars($l['admin']['login_send']) . '</button></p> <input type="submit" value="' . $l['admin']['login_send'] . '" /></p>
</form> </form>
'; ';

View file

@ -25,7 +25,7 @@ if($_GET['p']) { ?>
<input id="class" type="text" size="20"></p> <input id="class" type="text" size="20"></p>
<p><?php echo $l['admin']['pic_alt'] ?><br /> <p><?php echo $l['admin']['pic_alt'] ?><br />
<input id="alt" type="text" size="20"></p> <input id="alt" type="text" size="20"></p>
<p><button value="<?php echo $l['admin']['pic_insert'] ?>"><?php echo htmlspecialchars($l['admin']['pic_insert']) ?></button></p> <p><input type="submit" value="<?php echo $l['admin']['pic_insert'] ?>"></p>
</form> </form>
<?php <?php
} }

View file

@ -63,7 +63,7 @@
<input id="class" type="text" size="20"></p> <input id="class" type="text" size="20"></p>
<p><?php echo $l['admin']['pic_alt'] ?><br /> <p><?php echo $l['admin']['pic_alt'] ?><br />
<input id="alt" type="text" size="20"></p> <input id="alt" type="text" size="20"></p>
<p><button value="<?php echo $l['admin']['pic_insert'] ?>"><?php echo htmlspecialchars($l['admin']['pic_insert']) ?></button></p> <p><input type="submit" value="<?php echo $l['admin']['pic_insert'] ?>"></p>
</form> </form>
<?php <?php
} }
@ -79,7 +79,7 @@ if (empty($_FILES['probe']) or isset($errors))
<input type="hidden" name="MAX_FILE_SIZE" value="<?php echo $max_file_size ?>"> <input type="hidden" name="MAX_FILE_SIZE" value="<?php echo $max_file_size ?>">
<?php echo add_session_id_input_tag() ?> <?php echo add_session_id_input_tag() ?>
<input type="file" name="probe" /><br><br> <input type="file" name="probe" /><br><br>
<button value="<?php echo $l['admin']['pic_upload'] ?>"><?php echo htmlspecialchars($l['admin']['pic_upload']) ?></button> <input type="submit" value="<?php echo $l['admin']['pic_upload'] ?>">
</form> </form>
<?php <?php
} }

View file

@ -83,7 +83,7 @@ if (empty($_FILES['probe']) or isset($errors))
<input type="hidden" name="MAX_FILE_SIZE" value="<?php echo $max_file_size ?>"> <input type="hidden" name="MAX_FILE_SIZE" value="<?php echo $max_file_size ?>">
<?php echo add_session_id_input_tag() ?> <?php echo add_session_id_input_tag() ?>
<input type="file" name="probe" /><br><br> <input type="file" name="probe" /><br><br>
<button value="<?php echo $l['admin']['pic_upload'] ?>"><?php echo htmlspecialchars($l['admin']['pic_upload']) ?></button> <input type="submit" value="<?php echo $l['admin']['pic_upload'] ?>">
</form> </form>
<?php <?php
} }

View file

@ -7,7 +7,7 @@
$c['main'] = "<h2>".$l['err404_topic']."</h2>\n<p>".$l['err404_message']."</p>"; $c['main'] = "<h2>".$l['err404_topic']."</h2>\n<p>".$l['err404_message']."</p>";
$c['main'] .= ' <form id="searchform" action="'.JLOG_PATH.'/search.php" accept-charset="UTF-8"> $c['main'] .= ' <form id="searchform" action="'.JLOG_PATH.'/search.php" accept-charset="UTF-8">
<p><input class="userdata" type="text" name="q" size="30" value="'.htmlspecialchars($get['url']).'" /> <p><input class="userdata" type="text" name="q" size="30" value="'.htmlspecialchars($get['url']).'" />
<button class="send" value="'.$l['content_search'].'">'.htmlspecialchars($l['content_search']).'</button></p> <input class="send" type="submit" value="'.$l['content_search'].'" /></p>
</form>'; </form>';
require(JLOG_BASEPATH.'scripts'.DIRECTORY_SEPARATOR.'do_template.php'); require(JLOG_BASEPATH.'scripts'.DIRECTORY_SEPARATOR.'do_template.php');

View file

@ -29,10 +29,9 @@
} }
require_once('.'.DIRECTORY_SEPARATOR.'scripts'.DIRECTORY_SEPARATOR.'prepend.inc.php'); require_once('.'.DIRECTORY_SEPARATOR.'scripts'.DIRECTORY_SEPARATOR.'prepend.inc.php');
$c['meta']['robots'] = "noindex, follow"; $c['meta']['robots'] = "noindex, follow";
$c['meta']['description'] = htmlspecialchars(strip_tags(str_replace("\n", '', JLOG_DESCRIPTION)), ENT_QUOTES); $c['meta']['description'] = htmlspecialchars(strip_tags(str_replace("\n", '', JLOG_DESCRIPTION)), ENT_QUOTES);
$c['meta']['title'] = $l['index_topic']; $c['meta']['title'] = $l['index_topic'];
$c['meta']['html_language'] = $l['html_language'];
$c['main'] = ""; $c['main'] = "";
$cc = array(); $cc = array();

View file

@ -86,7 +86,6 @@
"err404_message" => "Diese Seite existiert leider nicht. Versuchen Sie sie über die Suchfunktion zu finden.", "err404_message" => "Diese Seite existiert leider nicht. Versuchen Sie sie über die Suchfunktion zu finden.",
"language" => "de-de", "language" => "de-de",
"html_language" => "de",
"locale" => array('de_DE.UTF-8', 'de_DE.UTF-8@euro', 'de_DE'), "locale" => array('de_DE.UTF-8', 'de_DE.UTF-8@euro', 'de_DE'),
"date_format" => "%d. %B %Y um %H:%M Uhr", "date_format" => "%d. %B %Y um %H:%M Uhr",
"date_format_comment" => "%d.%m.%Y", "date_format_comment" => "%d.%m.%Y",

View file

@ -86,7 +86,6 @@
"err404_message" => "There is no such page. Please try the search engine on this page.", "err404_message" => "There is no such page. Please try the search engine on this page.",
"language" => "en-gb", "language" => "en-gb",
"html_language" => "en",
"locale" => array( "en_US", "us", "verUS" ), "locale" => array( "en_US", "us", "verUS" ),
"date_format" => "%d. %B %Y um %H:%M Uhr", "date_format" => "%d. %B %Y um %H:%M Uhr",
"date_format_comment" => "%d.%m.%Y", "date_format_comment" => "%d.%m.%Y",

View file

@ -86,7 +86,6 @@
"err404_message" => "Non ci sono file riguardanti la ricerca in questa pagina. Perfavore prova a usare il motore di ricerca di questa pagina.", "err404_message" => "Non ci sono file riguardanti la ricerca in questa pagina. Perfavore prova a usare il motore di ricerca di questa pagina.",
"language" => "it-it", "language" => "it-it",
"html_language" => "it",
"locale" => array( "it_IT", "it" ), "locale" => array( "it_IT", "it" ),
"date_format" => "%d. %B %Y alle %H:%M", "date_format" => "%d. %B %Y alle %H:%M",
"date_format_comment" => "%d.%m.%Y", "date_format_comment" => "%d.%m.%Y",

View file

@ -85,7 +85,6 @@
"err404_message" => "Nie ma takiej strony. Prosze użyć przeglądarki na tej stronie.", "err404_message" => "Nie ma takiej strony. Prosze użyć przeglądarki na tej stronie.",
"language" => "en-gb", "language" => "en-gb",
"html_language" => "pl",
"locale" => array( "en_US", "us", "verUS" ), "locale" => array( "en_US", "us", "verUS" ),
"date_format" => "%d. %B %Y um %H:%M Uhr", "date_format" => "%d. %B %Y um %H:%M Uhr",
"date_format_comment" => "%d.%m.%Y", "date_format_comment" => "%d.%m.%Y",

View file

@ -85,8 +85,7 @@
"err404_topic" => "Error 404 - Sidan hittades inte", "err404_topic" => "Error 404 - Sidan hittades inte",
"err404_message" => "Denna sida existerar tyvärr inte. Försök hitta den genom sökfunktionen.", "err404_message" => "Denna sida existerar tyvärr inte. Försök hitta den genom sökfunktionen.",
"language" => "sv-se", "language" => "sv-se",
"html_language" => "sv",
"locale" => array('sv_SE', 'sve_sve'), "locale" => array('sv_SE', 'sve_sve'),
"date_format" => "%Y-%B-%d kl %H:%M", "date_format" => "%Y-%B-%d kl %H:%M",
"date_format_comment" => "%Y-%m-%d", "date_format_comment" => "%Y-%m-%d",

View file

@ -149,7 +149,8 @@ elseif(isset($com_form['form_submitted']) AND $com_form['form_submitted'] == $l[
)"; )";
$newcomment = new Query($sql); $newcomment = new Query($sql);
$cid = mysql_insert_id(); global $mysql;
$cid = mysqli_insert_id($mysql);
if($newcomment->error()) { if($newcomment->error()) {
if($newcomment->getErrno() == 1062) { if($newcomment->getErrno() == 1062) {
$errors[] = $l['comments_duplicate']; $errors[] = $l['comments_duplicate'];

View file

@ -3,7 +3,7 @@
*/ */
/* -- hide -- */ /* -- hide -- */
aside, #subnav, .skip, .entryform, .hidecomments, #entryform, hr { display: none; } #subnav, .skip, .entryform, .hidecomments, #entryform, hr { display: none; }
/* -- main settings -- */ /* -- main settings -- */
body { font-family: Georgia, "Times New Roman", Times, serif; } body { font-family: Georgia, "Times New Roman", Times, serif; }
@ -12,8 +12,8 @@
/* -- links -- */ /* -- links -- */
a { text-decoration: none; } a { text-decoration: none; }
main a:after { font-size: 70%; content:" <"attr(href)">"; } #main a:after { font-size: 70%; content:" <"attr(href)">"; }
main .meta a:after, main h2 a:after { content:""; } #main .meta a:after, #main h2 a:after { content:""; }
/* -- comments -- */ /* -- comments -- */
ul#commentslist { list-style-type: none; } ul#commentslist { list-style-type: none; }

View file

@ -26,7 +26,7 @@
border-top: 0; border-top: 0;
position: relative; position: relative;
} }
main { #main {
margin: 0 0 0 25px; margin: 0 0 0 25px;
padding: 190px 0 2em 0; padding: 190px 0 2em 0;
width: 64.5%; width: 64.5%;
@ -34,7 +34,7 @@
} }
/* Clearfix-Hack */ /* Clearfix-Hack */
main:after { #main:after {
content: "."; content: ".";
display: block; display: block;
height: 0; height: 0;
@ -42,11 +42,11 @@
visibility: hidden; visibility: hidden;
} }
main {display: inline-table;} #main {display: inline-table;}
/* Hides from IE-mac \*/ /* Hides from IE-mac \*/
* html main {height: 1%;} * html #main {height: 1%;}
main {display: block;} #main {display: block;}
/* End hide from IE-mac */ /* End hide from IE-mac */
/* -- logo -- */ /* -- logo -- */
@ -98,7 +98,7 @@
.rss img { vertical-align: middle; border: 0; width: 94px; height: 15px; } .rss img { vertical-align: middle; border: 0; width: 94px; height: 15px; }
/* -- footer -- */ /* -- footer -- */
footer { #footer {
clear: both; clear: both;
height: 60px; height: 60px;
background: url(img/footer.png) no-repeat top center; background: url(img/footer.png) no-repeat top center;
@ -132,13 +132,13 @@
/* -- pictures -- */ /* -- pictures -- */
.fl { float: left; margin: 0 1em 1em 0; } .fl { float: left; margin: 0 1em 1em 0; }
.fr { float: right; margin: 0 0 1em 1em; } .fr { float: right; margin: 0 0 1em 1em; }
main img, dl.img { #main img, dl.img {
border: 1px solid #aaa; border: 1px solid #aaa;
padding: 2px; padding: 2px;
max-width: 95%; max-width: 95%;
} }
dl.img dt { padding: 0; margin: 0;} dl.img dt { padding: 0; margin: 0;}
main dl.img dt img { margin: 0; padding: 0; max-width: 100%; border: none; } #main dl.img dt img { margin: 0; padding: 0; max-width: 100%; border: none; }
dl.img dd { margin: 0; padding: 0 0.3em; font-size: 90%; } dl.img dd { margin: 0; padding: 0 0.3em; font-size: 90%; }
.teaser { clear: both; } .teaser { clear: both; }

View file

@ -1,45 +1,40 @@
<!DOCTYPE html> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html lang="<jlog:html-language />"> <html xmlns="http://www.w3.org/1999/xhtml">
<head> <head>
<title><jlog:title /> - <jlog:website /></title> <title><jlog:title /> - <jlog:website /></title>
<meta name="viewport" content="width=device-width, initial-scale=1.0" /> <jlog:aditional-header />
<jlog:aditional-header /> <link rel="stylesheet" href="<jlog:homelink />/personal/css/print.css" type="text/css" media="print" />
<link rel="stylesheet" href="<jlog:homelink />/personal/css/print.css" type="text/css" media="print" /> <link rel="stylesheet" href="<jlog:homelink />/personal/css/screen.css" type="text/css" media="screen, projection" />
<link rel="stylesheet" href="<jlog:homelink />/personal/css/screen.css" type="text/css" media="screen, projection" /> <!--[if lte IE 6]><link rel="stylesheet" href="<jlog:homelink />/personal/css/ielte6.css" type="text/css" media="screen" /><![endif]-->
</head> </head>
<body> <body>
<p class="skip"><a href="#main"><jlog:skipcontent /></a></p> <p class="skip"><a href="#main"><jlog:skipcontent /></a></p>
<div id="container"> <div id="container"><span id="pokal"></span>
<span id="pokal"></span> <h1><a title="<jlog:home />" href="<jlog:homelink />/"><jlog:website /></a></h1>
<header> <dl id="subnav">
<h1><a title="<jlog:home />" href="<jlog:homelink />/"><jlog:website /></a></h1> <dt class="first"><jlog:slogan-h /></dt>
</header> <dd><jlog:slogan /></dd>
<aside> <dt><jlog:search-h /></dt>
<dl id="subnav"> <dd>
<dt class="first"><jlog:slogan-h /></dt> <form action="<jlog:homelink />/search.php">
<dd><jlog:slogan /></dd> <p><input class="userdata" type="text" name="q" size="15" value="" />
<dt><jlog:search-h /></dt> <input class="send" type="submit" value="<jlog:search />" /></p>
<dd> </form>
<form action="<jlog:homelink />/search.php"> </dd>
<p><input class="userdata" type="search" name="q" size="15" value="" /> <dt><jlog:categorieslist-h /></dt>
<button class="send" value="<jlog:search />"><jlog:search /></button></p> <dd><jlog:categorieslist /></dd>
</form> <dt><jlog:current-h /></dt>
</dd> <dd><jlog:subcurrent /></dd>
<dt><jlog:categorieslist-h /></dt> <dd><jlog:archive-more /> <a href="<jlog:archivelink />"><jlog:archive /></a>.</dd>
<dd><jlog:categorieslist /></dd> <dt><jlog:sub-info /></dt>
<dt><jlog:current-h /></dt> <dd class="rss"><jlog:rss-link /><br /> <jlog:rss-info /></dd>
<dd><jlog:subcurrent /></dd> <dd><jlog:copyright /></dd>
<dd><jlog:archive-more /> <a href="<jlog:archivelink />"><jlog:archive /></a>.</dd> <dd><jlog:powered /></dd>
<dt><jlog:sub-info /></dt> </dl>
<dd class="rss"><jlog:rss-link /><br /> <jlog:rss-info /></dd> <div id="main">
<dd><jlog:copyright /></dd> <jlog:content />
<dd><jlog:powered /></dd>
</dl>
</aside>
<main id="main">
<jlog:content />
</main>
<footer>&nbsp;</footer>
</div> </div>
</body> <div id="footer">&nbsp;</div>
</div>
</body>
</html> </html>

View file

@ -91,7 +91,7 @@ EOT;
$output .= <<<EOT $output .= <<<EOT
automatisch</label> automatisch</label>
<button name="commclose_do" value="schlie&#223;en">schlie&#223;en</button></p> <input type="submit" name="commclose_do" value="schlie&#223;en" />.</p>
<p>Nach der angegeben Zeit k&#246;nnen Beitr&#228;ge nicht mehr kommentiert werden.</p> <p>Nach der angegeben Zeit k&#246;nnen Beitr&#228;ge nicht mehr kommentiert werden.</p>
</form> </form>
EOT; EOT;

View file

@ -13,7 +13,8 @@ class JlogUpdater
'1.0.2' => '1.1.0', '1.0.2' => '1.1.0',
'1.1.0' => '1.1.1', '1.1.0' => '1.1.1',
'1.1.1' => '1.1.2', '1.1.1' => '1.1.2',
'1.1.2' => '1.1.3' '1.1.2' => '1.1.3',
'1.1.3' => '1.2.0'
); );
function JlogUpdater() function JlogUpdater()
@ -52,7 +53,7 @@ class JlogUpdater
$html .= $class->getForm($l); $html .= $class->getForm($l);
$version = $this->versions[$version]; $version = $this->versions[$version];
} }
$html .= '<p><button name="update" value="' . $l['admin']['update_start'] . '">' . htmlspecialchars($l['admin']['update_start']) . '</button></p>'; $html .= '<p><input type="submit" name="update" value="' . $l['admin']['update_start'] . '" /></p>';
$html .= '</form>'; $html .= '</form>';
return $html; return $html;
} }

View file

@ -6,7 +6,7 @@ class Categories {
var $categories = array(); var $categories = array();
var $l = array(); var $l = array();
function Categories($l) { function __construct($l) {
$this->l = $l; $this->l = $l;

View file

@ -8,15 +8,16 @@
var $_error = ""; var $_error = "";
//Konstruktor //Konstruktor
function Query($sql) function __construct($sql)
{ {
// Query in der Klasse speichern global $mysql;
$this->_sql = trim($sql); // Query in der Klasse speichern
$this->_result = mysql_query($this->_sql); $this->_sql = trim($sql);
$this->_result = mysqli_query($mysql, $this->_sql);
if(!$this->_result) { if(!$this->_result) {
$this->_errno = mysql_errno(); $this->_errno = mysqli_errno($mysql);
$this->_error = mysql_error(); $this->_error = mysqli_error($mysql);
} }
} }
//Methoden //Methoden
@ -46,11 +47,12 @@
} }
function fetch() { function fetch() {
global $mysql;
if($this->error()) { if($this->error()) {
echo "An Error has occurred, please check your MySQL-Query."; echo "An Error has occurred, please check your MySQL-Query.";
$return = null; $return = null;
} }
else $return = mysql_fetch_assoc($this->_result); else $return = mysqli_fetch_assoc($this->_result);
return $return; return $return;
} }
@ -58,13 +60,13 @@
if($this->error()) { if($this->error()) {
$return = -1; $return = -1;
} }
else $return = mysql_num_rows($this->_result); else $return = mysqli_num_rows($this->_result);
return $return; return $return;
} }
function free() { function free() {
// Speicher freimachen // Speicher freimachen
mysql_free_result($this->_result); mysqli_free_result($this->_result);
} }
} }

View file

@ -54,7 +54,6 @@ if(defined('JLOG_ADMIN')) {
$_search = array ( $_search = array (
"<jlog:language />", "<jlog:language />",
"<jlog:html-language />",
"<jlog:website />", "<jlog:website />",
"<jlog:title />", "<jlog:title />",
"<jlog:aditional-header />", "<jlog:aditional-header />",
@ -82,7 +81,6 @@ $_search = array (
$_replace = array ( $_replace = array (
$l['language'], $l['language'],
$l['html_language'],
htmlspecialchars(JLOG_WEBSITE, ENT_QUOTES), htmlspecialchars(JLOG_WEBSITE, ENT_QUOTES),
htmlspecialchars($c['meta']['title']), htmlspecialchars($c['meta']['title']),
$c['meta']['aditionalheader'], $c['meta']['aditionalheader'],

View file

@ -27,7 +27,7 @@ function archive() {
// get year links // get year links
class Year_Links { class Year_Links {
function Year_Links($get, $start, $page, $l, $cat="") { function __construct($get, $start, $page, $l, $cat="") {
$date = getdate(); $date = getdate();
$this->_now = $date['year']; $this->_now = $date['year'];
$this->_start = $start; $this->_start = $start;
@ -88,10 +88,11 @@ function strip($_data) {
} }
// escape input for mysql // escape input for mysql
function escape_for_mysql($_data) { function escape_for_mysql($_data) {
global $mysql;
if (is_array($_data)) if (is_array($_data))
foreach($_data as $key => $val) $_data[$key] = escape_for_mysql($val); foreach($_data as $key => $val) $_data[$key] = escape_for_mysql($val);
else else
$_data = mysql_real_escape_string($_data); $_data = mysqli_real_escape_string($mysql, $_data);
// uses last opened MySQL link implicitly // uses last opened MySQL link implicitly
// assumption is valid because this function is never called // assumption is valid because this function is never called
// before mysql_connect // before mysql_connect
@ -295,7 +296,7 @@ function my_serialize_cfg($arg) {
class JLOG_Tags { class JLOG_Tags {
var $tree = array(); var $tree = array();
function JLOG_Tags($body) { function __construct($body) {
preg_match_all('/<jlog:([a-z]\w+)\s?([^>]*)\/?>(<\/(\1):(\2)>)?/ims', $body, $this->tree); preg_match_all('/<jlog:([a-z]\w+)\s?([^>]*)\/?>(<\/(\1):(\2)>)?/ims', $body, $this->tree);
} }

View file

@ -4,38 +4,38 @@
class JlogPlugin { class JlogPlugin {
/* Hooks */ /* Hooks */
function hook_body ($t) { return $t; } // string body function hook_body ($t, $a = null, $b = null, $c = null, $d = null, $e = null, $f = null) { return $t; } // string body
function hook_commentForm ($t) { return $t; } // string with comment form output + array with form data function hook_commentForm ($t, $a = null, $b = null, $c = null, $d = null, $e = null, $f = null) { return $t; } // string with comment form output + array with form data
function hook_adminContent ($t) { return $t; } // string content function hook_adminContent ($t, $a = null, $b = null, $c = null, $d = null, $e = null, $f = null) { return $t; } // string content
function hook_newComment ($t) { return $t; } // array form data function hook_newComment ($t, $a = null, $b = null, $c = null, $d = null, $e = null, $f = null) { return $t; } // array form data
function hook_updateComment ($t) { return $t; } // array form data function hook_updateComment ($t, $a = null, $b = null, $c = null, $d = null, $e = null, $f = null) { return $t; } // array form data
function hook_deleteComment ($t) { return $t; } // string comment id function hook_deleteComment ($t, $a = null, $b = null, $c = null, $d = null, $e = null, $f = null) { return $t; } // string comment id
function hook_showComment ($t) { return $t; } // string comment output function hook_showComment ($t, $a = null, $b = null, $c = null, $d = null, $e = null, $f = null) { return $t; } // string comment output
function hook_onUpdate ($t) { return $t; } // array with all rss feeds and sub function hook_onUpdate ($t, $a = null, $b = null, $c = null, $d = null, $e = null, $f = null) { return $t; } // array with all rss feeds and sub
function hook_doEntry ($t) { return $t; } // string with entry + array with data from database + string count comments + string section function hook_doEntry ($t, $a = null, $b = null, $c = null, $d = null, $e = null, $f = null) { return $t; } // string with entry + array with data from database + string count comments + string section
function hook_doTeaser ($t) { return $t; } // string with entry + array with data from database + string count comments + string pre + string post function hook_doTeaser ($t, $a = null, $b = null, $c = null, $d = null, $e = null, $f = null) { return $t; } // string with entry + array with data from database + string count comments + string pre + string post
function hook_bbcode ($t) { return $t; } // bbcode object function hook_bbcode ($t, $a = null, $b = null, $c = null, $d = null, $e = null, $f = null) { return $t; } // bbcode object
function hook_bbcomments ($t) { return $t; } // bbcomments object function hook_bbcomments ($t, $a = null, $b = null, $c = null, $d = null, $e = null, $f = null) { return $t; } // bbcomments object
function hook_adminForm ($t) { return $t; } // admin formular function hook_adminForm ($t, $a = null, $b = null, $c = null, $d = null, $e = null, $f = null) { return $t; } // admin formular
function hook_insertEntry ($t) { return $t; } // int id + array with form data function hook_insertEntry ($t, $a = null, $b = null, $c = null, $d = null, $e = null, $f = null) { return $t; } // int id + array with form data
function hook_updateEntry ($t) { return $t; } // int id + array with form data function hook_updateEntry ($t, $a = null, $b = null, $c = null, $d = null, $e = null, $f = null) { return $t; } // int id + array with form data
function hook_permalink ($t) { return $t; } // string permalink + string date + string url + string section function hook_permalink ($t, $a = null, $b = null, $c = null, $d = null, $e = null, $f = null) { return $t; } // string permalink + string date + string url + string section
function hook_xmlrpcPermalink ($t) { return $t; } // string url function hook_xmlrpcPermalink ($t, $a = null, $b = null, $c = null, $d = null, $e = null, $f = null) { return $t; } // string url
function hook_countComments ($t) { return $t; } // array with id and count function hook_countComments ($t, $a = null, $b = null, $c = null, $d = null, $e = null, $f = null) { return $t; } // array with id and count
function hook_adminMail ($t) { return $t; } // array with mail + array blogentry function hook_adminMail ($t, $a = null, $b = null, $c = null, $d = null, $e = null, $f = null) { return $t; } // array with mail + array blogentry
function hook_commentorMail ($t) { return $t; } // array with mail + array blogentry function hook_commentorMail ($t, $a = null, $b = null, $c = null, $d = null, $e = null, $f = null) { return $t; } // array with mail + array blogentry
function hook_commentAdminList($t) { return $t; } // string with actual tr + array with comment data function hook_commentAdminList($t, $a = null, $b = null, $c = null, $d = null, $e = null, $f = null) { return $t; } // string with actual tr + array with comment data
function hook_previewComment ($t) { return $t; } // same as newComment function hook_previewComment ($t, $a = null, $b = null, $c = null, $d = null, $e = null, $f = null) { return $t; } // same as newComment
function hook_dispatchLogin ($t) { return $t; } // function hook_dispatchLogin ($t, $a = null, $b = null, $c = null, $d = null, $e = null, $f = null) { return $t; } //
function hook_loginForm ($t) { return $t; } // function hook_loginForm ($t, $a = null, $b = null, $c = null, $d = null, $e = null, $f = null) { return $t; } //
function hook_adminMenu ($t) { return $t; } // string with the admin menu html function hook_adminMenu ($t, $a = null, $b = null, $c = null, $d = null, $e = null, $f = null) { return $t; } // string with the admin menu html
function hook_adminList ($t) { return $t; } // function hook_adminList ($t, $a = null, $b = null, $c = null, $d = null, $e = null, $f = null) { return $t; } //
} }
class JlogPluginManager { class JlogPluginManager {
var $plugins = array(); var $plugins = array();
function JlogPluginManager($plugindirectory) { function __construct($plugindirectory) {
$handle = ""; $handle = "";
$file = ""; $file = "";
$this->get = strip($_GET); $this->get = strip($_GET);

View file

@ -63,7 +63,7 @@ class Jlog_Mail
* Jlog_Mail() - constructor * Jlog_Mail() - constructor
* *
*/ */
function Jlog_Mail() function __construct()
{ {
# XXX don't know if needed # XXX don't know if needed
mb_internal_encoding('UTF-8'); mb_internal_encoding('UTF-8');

View file

@ -25,6 +25,8 @@
// load settings and version information // load settings and version information
error_reporting(E_ALL ^ E_NOTICE); error_reporting(E_ALL ^ E_NOTICE);
ini_set('display_errors', 1);
require_once(dirname(__FILE__).DIRECTORY_SEPARATOR."..".DIRECTORY_SEPARATOR."personal".DIRECTORY_SEPARATOR."settings.inc.php"); require_once(dirname(__FILE__).DIRECTORY_SEPARATOR."..".DIRECTORY_SEPARATOR."personal".DIRECTORY_SEPARATOR."settings.inc.php");
require_once(JLOG_BASEPATH."scripts".DIRECTORY_SEPARATOR."version.inc.php"); require_once(JLOG_BASEPATH."scripts".DIRECTORY_SEPARATOR."version.inc.php");
@ -62,20 +64,15 @@ require_once(JLOG_BASEPATH.'scripts'.DIRECTORY_SEPARATOR.'comments.php');
if(defined('JLOG_ADMIN')) require_once(JLOG_BASEPATH.'lang'.DIRECTORY_SEPARATOR.'lang-admin.'.JLOG_LANGUAGE.'.inc.php'); if(defined('JLOG_ADMIN')) require_once(JLOG_BASEPATH.'lang'.DIRECTORY_SEPARATOR.'lang-admin.'.JLOG_LANGUAGE.'.inc.php');
// connect to database // connect to database
$connect = @mysql_connect(JLOG_DB_URL, JLOG_DB_USER, JLOG_DB_PWD); $mysql = @mysqli_connect(JLOG_DB_URL, JLOG_DB_USER, JLOG_DB_PWD, JLOG_DB);
if ($connect == FALSE) { if ($mysql == FALSE) {
mail(JLOG_EMAIL, $l['admin']['e_db'], $l['admin']['e_db_is']."\n".mysql_error()); mail(JLOG_EMAIL, $l['admin']['e_db'], $l['admin']['e_db_is']."\n".mysqli_connect_error());
die("<strong>".$l['db_error']."</strong><br />".$l['plz_try_again'].".");
}
// select our database
$select = @mysql_select_db(JLOG_DB);
if ($connect == FALSE) {
mail(JLOG_EMAIL, $l['admin']['e_db'], $l['admin']['e_db_is']."\n".mysql_error());
die("<strong>".$l['db_error']."</strong><br />".$l['plz_try_again']."."); die("<strong>".$l['db_error']."</strong><br />".$l['plz_try_again'].".");
} }
// do some settings // do some settings
@mysql_query("SET NAMES utf8"); @mysqli_query($mysql, "SET NAMES utf8");
@mysql_query("SET sql_mode=''"); @mysqli_query($mysql, "SET sql_mode=''");
// some more code that needs to run for every page - however, this // some more code that needs to run for every page - however, this
// code requires an established connection to the database // code requires an established connection to the database
@ -88,4 +85,4 @@ $plugins = new JlogPluginManager(JLOG_BASEPATH.'plugins'.DIRECTORY_SEPARATOR);
$bbcode = $plugins->callHook('bbcode', $bbcode); $bbcode = $plugins->callHook('bbcode', $bbcode);
$bbcomments = $plugins->callHook('bbcomments', $bbcomments); $bbcomments = $plugins->callHook('bbcomments', $bbcomments);
// eof // eof

View file

@ -199,7 +199,7 @@ class StringParser {
* *
* @access public * @access public
*/ */
function StringParser () { function __construct () {
} }
/** /**
@ -910,7 +910,7 @@ class StringParser_Node {
* occurred at. If not determinable, it is -1. * occurred at. If not determinable, it is -1.
* @global __STRINGPARSER_NODE_ID * @global __STRINGPARSER_NODE_ID
*/ */
function StringParser_Node ($occurredAt = -1) { function __constructor ($occurredAt = -1) {
$this->_id = $GLOBALS['__STRINGPARSER_NODE_ID']++; $this->_id = $GLOBALS['__STRINGPARSER_NODE_ID']++;
$this->occurredAt = $occurredAt; $this->occurredAt = $occurredAt;
} }
@ -1248,7 +1248,7 @@ class StringParser_Node {
* @param object $node The node to destroy * @param object $node The node to destroy
* @return bool True on success, else false. * @return bool True on success, else false.
*/ */
function destroyNode (&$node) { static function destroyNode (&$node) {
if ($node === null) { if ($node === null) {
return false; return false;
} }
@ -1486,8 +1486,8 @@ class StringParser_Node_Text extends StringParser_Node {
* occurred at. If not determinable, it is -1. * occurred at. If not determinable, it is -1.
* @see StringParser_Node_Text::content * @see StringParser_Node_Text::content
*/ */
function StringParser_Node_Text ($content, $occurredAt = -1) { function __construct ($content, $occurredAt = -1) {
parent::StringParser_Node ($occurredAt); # parent::__construct ($occurredAt);
$this->content = $content; $this->content = $content;
} }

View file

@ -1,6 +1,6 @@
<?php <?php
$now_date = getdate(); $now_date = getdate();
$errors = array();
$data['rss'] = ""; $data['rss'] = "";
$data['rss_full'] = ""; $data['rss_full'] = "";
$data['sub'] = ""; $data['sub'] = "";

View file

@ -0,0 +1,15 @@
<?php
class JlogUpdate_113To120
{
function getForm($l)
{
return '<p>Bitte beachten Sie, dass nach Durchführung dieses Updates eventuell einzelne Plugins nicht mehr funktionieren.<br />'
. 'Kontaktieren Sie in einem solchen Fall den Plugin-Autor bzzgl. eines Updates für das Plugin.</p>';
}
function performUpdate($l, $settings)
{
return true;
}
}

View file

@ -23,9 +23,9 @@
* $Date: 2009-01-13 21:58:12 +0100 (Tis, 13 Jan 2009) $ * $Date: 2009-01-13 21:58:12 +0100 (Tis, 13 Jan 2009) $
*/ */
define('JLOG_SOFTWARE_VERSION', '1.1.3'); define('JLOG_SOFTWARE_VERSION', '1.2.0');
define('JLOG_SOFTWARE_URL', 'http://jeenaparadies.net/projects/jlog'); define('JLOG_SOFTWARE_URL', 'https://github.com/jeena/jlog/');
define('JLOG_SOFTWARE_PHPV', '4.1.1'); define('JLOG_SOFTWARE_PHPV', '4.1.1');
define('JLOG_SOFTWARE_MYSQLV', '4.1.0'); define('JLOG_SOFTWARE_MYSQLV', '4.1.0');
// eof // eof

View file

@ -9,7 +9,7 @@
$c['main'] .= ' <form id="searchform" action="'.JLOG_PATH.'/search.php" accept-charset="UTF-8"> $c['main'] .= ' <form id="searchform" action="'.JLOG_PATH.'/search.php" accept-charset="UTF-8">
<p><input class="userdata" type="text" name="q" size="30" value="'.htmlspecialchars($searchstring, ENT_QUOTES).'" /> <p><input class="userdata" type="text" name="q" size="30" value="'.htmlspecialchars($searchstring, ENT_QUOTES).'" />
<button class="send" value="'.$l['content_search'].'">'.htmlspecialchars($l['content_search']).'</button></p> <input class="send" type="submit" value="'.$l['content_search'].'" /></p>
</form> </form>
<script type="text/javascript">jlog_searchpage = true;</script> <script type="text/javascript">jlog_searchpage = true;</script>
'; ';

View file

@ -12,7 +12,6 @@
header("Content-Type: text/html; charset=UTF-8"); header("Content-Type: text/html; charset=UTF-8");
define("JLOG_NEW_VERSION", '1.1.0');
define("JLOG_SETUP", true); define("JLOG_SETUP", true);
define("JLOG_ADMIN", false); define("JLOG_ADMIN", false);
$basepath = dirname( __FILE__ ).DIRECTORY_SEPARATOR; $basepath = dirname( __FILE__ ).DIRECTORY_SEPARATOR;
@ -50,6 +49,7 @@
define("JLOG_MYSQLV", JLOG_SOFTWARE_MYSQLV); define("JLOG_MYSQLV", JLOG_SOFTWARE_MYSQLV);
$errors = array(); $errors = array();
$mysql = null;
$l['admin']['submit'] = $l['admin']['s_install']; $l['admin']['submit'] = $l['admin']['s_install'];
$setup = new Settings($l); $setup = new Settings($l);
@ -111,6 +111,7 @@
function create_mysql_tables($data) { function create_mysql_tables($data) {
# returns false if all tables were created, if not returns the $errors array # returns false if all tables were created, if not returns the $errors array
$errors = array();
$sql['content'] = ' $sql['content'] = '
CREATE TABLE `'.$data['jlog_db_prefix'].'content` ( CREATE TABLE `'.$data['jlog_db_prefix'].'content` (
@ -128,7 +129,7 @@
section varchar(10) default \'weblog\', section varchar(10) default \'weblog\',
UNIQUE KEY id (id), UNIQUE KEY id (id),
FULLTEXT KEY content_index (content, topic, teaser, keywords) FULLTEXT KEY content_index (content, topic, teaser, keywords)
) TYPE=MyISAM CHARACTER SET utf8;'; ) CHARACTER SET utf8;';
$sql['comments'] = ' $sql['comments'] = '
CREATE TABLE `'.$data["jlog_db_prefix"].'comments` ( CREATE TABLE `'.$data["jlog_db_prefix"].'comments` (
@ -146,7 +147,7 @@
PRIMARY KEY (id), PRIMARY KEY (id),
UNIQUE KEY sid (sid), UNIQUE KEY sid (sid),
FULLTEXT KEY comments_index ( name, city, email, homepage, content ) FULLTEXT KEY comments_index ( name, city, email, homepage, content )
) TYPE=MyISAM CHARACTER SET utf8;'; ) CHARACTER SET utf8;';
$sql['categories'] = ' $sql['categories'] = '
CREATE TABLE `'.$data["jlog_db_prefix"].'categories` ( CREATE TABLE `'.$data["jlog_db_prefix"].'categories` (
@ -156,13 +157,13 @@
description text, description text,
UNIQUE KEY id (id), UNIQUE KEY id (id),
UNIQUE KEY url (url) UNIQUE KEY url (url)
) TYPE=MyISAM CHARACTER SET utf8;'; ) CHARACTER SET utf8;';
$sql['catassign'] = ' $sql['catassign'] = '
CREATE TABLE `'.$data["jlog_db_prefix"].'catassign` ( CREATE TABLE `'.$data["jlog_db_prefix"].'catassign` (
content_id int(11), content_id int(11),
cat_id tinyint(4) cat_id tinyint(4)
) TYPE=MyISAM CHARACTER SET utf8;'; ) CHARACTER SET utf8;';
$sql['attributes'] = ' $sql['attributes'] = '
CREATE TABLE `'.$data["jlog_db_prefix"].'attributes` ( CREATE TABLE `'.$data["jlog_db_prefix"].'attributes` (
@ -172,13 +173,13 @@
value varchar(250) NOT NULL default \'\', value varchar(250) NOT NULL default \'\',
PRIMARY KEY (id), PRIMARY KEY (id),
KEY entry_id (entry_id) KEY entry_id (entry_id)
) TYPE=MyISAM CHARACTER SET utf8;'; ) CHARACTER SET utf8;';
global $l; global $l;
global $mysql;
if(!@mysql_connect($data['jlog_db_url'], $data['jlog_db_user'], $data['jlog_db_pwd'])) $errors[] = "Falsche Zugangsdaten | ".mysql_error(); if(!($mysql = @mysqli_connect($data['jlog_db_url'], $data['jlog_db_user'], $data['jlog_db_pwd'], $data['jlog_db']))) $errors[] = "Falsche Zugangsdaten | ".mysqli_connect_error();
elseif(!@mysql_select_db($data['jlog_db'])) $errors[] = "Datenbank ".$data['jlog_db']." extistiert nicht".mysql_error(); elseif(!@mysqli_select_db($mysql, $data['jlog_db'])) $errors[] = "Datenbank ".$data['jlog_db']." extistiert nicht".mysqli_error($connect);
elseif(!version_compare(mysql_get_server_info(), JLOG_MYSQLV, ">=") == 1) $errors[] = $l['admin']['s_mysqlv_tolow']; elseif(!version_compare(mysqli_get_server_info($mysql), JLOG_MYSQLV, ">=") == 1) $errors[] = $l['admin']['s_mysqlv_tolow'];
else { else {
new Query("SET NAMES utf8"); new Query("SET NAMES utf8");
$create['content'] = new Query($sql['content']); $create['content'] = new Query($sql['content']);
@ -265,7 +266,7 @@
</head> </head>
<body> <body>
<div id="container"> <div id="container">
<h1><a href="http://jeenaparadies.net/projects/jlog/" title="Jlog v'.JLOG_NEW_VERSION.'"><img id="logo" src="http://jeenaparadies.net/img/jlog-logo.png" style="width: 210px; height: 120px;" alt="Jlog" /></a> SETUP</h1> <h1><a href="http://github.com/jeena/jlog/" title="Jlog v'.JLOG_NEW_VERSION.'"><img id="logo" src="http://paradies.jeena.net/img/jlog-logo.png" style="width: 210px; height: 120px;" alt="Jlog" /></a> SETUP</h1>
'.$content.' '.$content.'
</div> </div>
</body> </body>