Changeset 1553

Show
Ignore:
Timestamp:
02/11/2006 02:12:14 PM (3 years ago)
Author:
jeena
Message:

bugfixes

Location:
jlog/trunk
Files:
24 modified

Legend:

Unmodified
Added
Removed
  • jlog/trunk/INSTALL.txt

    r1540 r1553  
    1 ###  Weblogsystem Jlog v0.2.95-beta vom 15.12.2005 
     1###  Weblogsystem Jlog v1.0.0 vom 10.02.2006 
    22###  Programmiert von Jeena Paradies 
    33###  E-Mail: jlog@jeenaparadies.net 
     
    77###  Inhaltsverzeichnis: 
    88###    I. Installationsanleitung 
    9 ###   II. Updateanleitung (0.2.8x-beta => 0.2.95-beta) 
     9###   II. Updateanleitung (0.2.95-beta => 1.0.0) 
     10###  III. Updateanleitung (0.2.8x-beta => 1.0.0) 
     11 
    1012 
    1113 
     
    1719 b) Das tar Archiv herunterladen: 
    1820 
    19      tux@earth:/$ wget http://jeenaparadies.net/webdesign/jlog/download/jlog-0.2.95-beta.tar.gz 
     21     tux@earth:/$ wget http://jeenaparadies.net/webdesign/jlog/download/jlog-1.0.0.tar.gz 
    2022 
    2123 c) Das Archiv entpacken: 
    2224 
    23      tux@earth:/$ tar -xvzf jlog-0.2.95-beta.tar.gz 
     25     tux@earth:/$ tar -xvzf jlog-1.0.0.tar.gz 
    2426 
    2527    Oder mittels WinZip/WinRar etc. 
     
    5355 
    5456 
     57### II) Updateanleitung 0.2.95-beta => 1.0.0 
    5558 
    56 ### II) Updateanleitung 
     59 a) Das Updatescript funktioniert wenn man Jlog Version 0.2.95-beta bereits 
     60    installiert hat. Da sich von 0.2.95-beta an der Datenbank nichts verändert 
     61    hat muss man nur die neuen PHP Dateien überschreiben. 
     62 
     63 c) Das Archiv herunterladen (siehe Installationsanleitung Punkt b), entpacken c) 
     64    und alle Dateien in das gleiche Verzeichnis hochladen d), dabei werden die 
     65    alten Dateien überschrieben. Falls man sein altes Template weiternutzen möchte 
     66    dann bitte das Verzeichnis "personal" NICHT hochladen. Bitte die Datei setup.php 
     67    aus Sicherheitsgründen löschen. 
     68 
     69 e) Überprüfen dass keine Fehler durch veraltete Plugins entstehen. 
     70 
     71 
     72### III) Updateanleitung 0.2.8x-beta => 1.0.0 
    5773 
    5874 a) Das Updatescript funktioniert wenn man Jlog Version 0.2.8x-beta bereits 
     
    6379    Dateien und das Verzeichnis "img". 
    6480 
    65  c) Das Archiv herunterladen (siehe Installationsanleitung Punkt b), entpacken (c) 
    66     und alle Dateien in das gleiche Verzeichnis hochladen (d), dabei werden die 
     81 c) Das Archiv herunterladen (siehe Installationsanleitung Punkt b), entpacken c) 
     82    und alle Dateien in das gleiche Verzeichnis hochladen d), dabei werden die 
    6783    alten Dateien überschrieben. Falls man sein altes Template weiternutzen möchte 
    6884    dann bitte das Verzeichnis "personal" NICHT hochladen. Bitte die Datei setup.php 
    69     aus sicherheitsgründen löschen. 
     85    aus Sicherheitsgründen löschen. 
    7086 
    7187 d) Die Datei update.php im Verzeichnis "admin" im Browser aufrufen, dabei werden 
    7288    die benötigten Updates in der Datenbank gemacht. 
     89 
     90 e) Überprüfen dass keine Fehler durch veraltete Plugins entstehen. 
  • jlog/trunk/README.txt

    r1539 r1553  
    1111 
    12121) Rückmeldungen über Fehler in der Software 
    13 2) Mitarbeit an der Software oder Programmiertips 
    14 3) Geldspende via paypal an money@jeenaparadies.net 
     132) Mitarbeit an der Software (Plugins) oder Programmiertips 
     143) Geldspende via paypal an money@jeenaparadies.net mit der du 
     15   die Weiterentwicklung unterstützt 
    1516 
    16 -- 
     17### Dankeschön an andere Programmierer 
     18 
    1719Dieses Programm nutzt zum Auszeichnen der vom Benutzer eingegebenen Daten die 
    1820BBCode-Parserklasse für PHP <http://www.christian-seiler.de/projekte/php/bbcode/> 
     
    3234von Benjamin Wilfing, erhältlich unter: 
    3335<http://aktuell.de.selfhtml.org/tippstricks/php/loginsystem/> 
    34 -- 
    35  
    36 !!! Achtung !!! 
    37  
    38  Dies ist eine beta Version des Programmes, es wird dringend 
    39  davon abgeraten sie für den produktiven Einsatz zu benutzen. Der Autor 
    40  haftet für keinen Schaden, der durch den Einsatz dieser Software 
    41  entsteht. 
    42  
    43  Falls Fehler auftauchen, würde ich mich sehr über einen Bugreport 
    44  via Bugtracker <http://jeenaparadies.net/bugs/index.php?project=1>, 
    45  oder in Form einer E-Mail an jlog@jeenaparadies.net freuen. 
  • jlog/trunk/admin/blog.func.php

    r1541 r1553  
    44global $l; 
    55    if(empty($form_input['topic'])) $errors[] = $l['admin']['no_headline']; 
    6     if(empty($form_input['keywords'])) $errors[] = $l['admin']['no_keywords']; 
    76 
    87    // checking URL 
  • jlog/trunk/admin/media/upload-teaser.php

    r1548 r1553  
    2121   // Überprüfungen: 
    2222   unset($errors); 
    23  
     23   $e = substr($_FILES['probe']['name'], -4); 
    2424   if(!preg_match('~.jpg|jpeg|.gif|.png~i', substr($_FILES['probe']['name'],-4))) $errors[] = $l['admin']['pic_bad_type']." (".$e.")"; 
    2525 
     
    3131      { 
    3232       case preg_match('~.jpg|jpeg~i', $e): 
    33         for(;;) { $nr++; if (!file_exists($up_dir.$nr.".jpg")) break; } 
     33        for(;;) { $nr++; if (!file_exists($up_dir."t_".$nr.".jpg")) break; } 
    3434        $filename = "t_".$nr.".jpg"; 
    3535       break; 
    3636       case preg_match('~.gif~i', $e): 
    37         for(;;) { $nr++; if (!file_exists($up_dir.$nr.".gif")) break; } 
     37        for(;;) { $nr++; if (!file_exists($up_dir."t_".$nr.".gif")) break; } 
    3838        $filename = "t_".$nr.".gif"; 
    3939       break; 
    4040       case preg_match('~.png~i', $e): 
    41         for(;;) { $nr++; if (!file_exists($up_dir.$nr.".png")) break; } 
     41        for(;;) { $nr++; if (!file_exists($up_dir."t_".$nr.".png")) break; } 
    4242        $filename = "t_".$nr.".png"; 
    4343       break; 
     
    5656          $errors[] = $l['admin']['pic_height']; 
    5757         } 
    58  
    5958    if(empty($errors)) { 
    6059     if(!move_uploaded_file($_FILES['probe']['tmp_name'], $up_dir.$filename)) $errors[] = $l['admin']['pic_error']; 
  • jlog/trunk/admin/new.php

    r1541 r1553  
    2929                  if(strlen($blogservice) > 0) $pingresult[] = doPing(trim($blogservice)); 
    3030              } 
    31               if(is_array($pingresult)) $c['main'] .= "\n<ul>".join($pingresult)."\n</ul>"; 
     31              // if(is_array($pingresult)) $c['main'] .= "\n<ul>".join($pingresult)."\n</ul>"; 
    3232 
    3333              if($form_input['allowpingback'] != '0') { 
     
    3838                  $responces = array(); 
    3939                  $responces = $pingback->doPingbacks(); 
     40 
     41/*                Die Ergebnisse der Pings verwirren den User nur habe ich mittlerweile festgestellt. 
     42 
    4043                  if(count($responces) > 0) { 
    4144                      $c['main'] .= " <ul>"; 
     
    4447                      } 
    4548                      $c['main'] .= "\n </ul>"; 
    46                     } 
     49                  } 
     50*/ 
     51 
    4752              } 
    4853          } 
  • jlog/trunk/admin/settings.php

    r1548 r1553  
    2727  $c['main'] .= $settings->form_output(); 
    2828 } 
    29  
     29require_once(JLOG_BASEPATH.'scripts'.DIRECTORY_SEPARATOR.'update.php'); 
    3030require(JLOG_BASEPATH.'scripts'.DIRECTORY_SEPARATOR.'do_template.php'); 
    3131echo $body; 
  • jlog/trunk/archive.php

    r1540 r1553  
    5050              LIMIT ".$p.", ".$amount.";"; 
    5151 
    52         $sql_count = "SELECT count(*) AS count FROM ".JLOG_DB_CONTENT; 
     52        $sql_count = "SELECT count(*) AS count FROM ".JLOG_DB_CONTENT." WHERE section = 'weblog'"; 
    5353 
    5454        $count_query = new Query($sql_count); 
  • jlog/trunk/index.php

    r1548 r1553  
    88 $c['meta']['robots']       = "noindex, follow"; 
    99 $c['meta']['description']  = htmlspecialchars(strip_tags(JLOG_DESCRIPTION), ENT_QUOTES); 
    10  $c['meta']['title']                    = $l['index_topic']; 
     10 $c['meta']['title']        = $l['index_topic']; 
    1111 
    1212 $c['main'] = ""; 
     
    5858 
    5959// -- Liste mit alten Beiträgen ausgeben 
     60$linklist = false; 
    6061while ($cd = $blog->fetch()) { 
    6162 if(empty($c['meta']['date'])) $c['meta']['date'] = $cd['metadate']; 
    6263 ++$i; 
     64 $linklist = true; 
    6365 
    6466 $tmp_comments = ""; 
     
    6971 } 
    7072 
    71 if($number_of > JLOG_MAX_BLOG_BIG) $c['main'] .= "\n  </ul>\n  <hr />"; 
     73if($linklist) $c['main'] .= "\n  </ul>\n  <hr />"; 
    7274 
    7375// -- Link zum Archiv 
  • jlog/trunk/lang/lang-admin.inc.php

    r1539 r1553  
    3232"url_duplicate"            => "Während eines Monats darf ein URL nur ein einziges mal vorkommen sonst kann das Blog sie nicht auseinanderhalten", 
    3333"url_duplicate_page"       => "Pages müssen unikate URLs haben, das heißt, dass jede page einen anderen URL haben muss", 
    34 "no_keywords"              => "Keywords fehlen", 
    3534"false_teaserpic"          => "Die Angabe des Bildes für die Zusammenfassung stimmt nicht, ein solches Bild wurde nicht hochgeladen", 
    3635"no_teaserpic_uploaded"    => "Das Bild für die Zusammenfassung kann nicht im Blog angezeigt werden wenn es nicht hochgeladen wurde", 
  • jlog/trunk/lang/lang.inc.php

    r1539 r1553  
    55"subnav_current"           => "Aktuelle Einträge", 
    66"subnav_info"              => "Informationen", 
    7 "subnav_rss"               => "Aktuelles von dieser Seite per RSS Feed. Mehr darüber erfahren Sie auf der Seite von <a href='http://uckan.info/wasistrss.htm'>Alp Uçkan</a>.", 
     7"subnav_rss"               => "Aktuelles von dieser Seite per RSS Feed. Mehr darüber erfahren Sie auf der Seite von <a href='http://uckan.info/texte/was-ist-rss/'>Alp Uçkan</a>.", 
    88"subnav_copyright"         => "Alle Rechte vorbehalten.", 
    99"subnav_powered"           => "Powered by", 
     
    3030"content_cat_linklist"     => "zugeordnete Kategorien", 
    3131"content_cat_link"         => "Alle Einträge dieser Kategorie anzeigen", 
     32"content_categorieslist_h" => "Kategorien", 
    3233"content_archive_preview"  => "Vorherige Seite", 
    3334"content_archive_next"     => "Nächste Seite", 
  • jlog/trunk/log.php

    r1548 r1553  
    5353                                                        ORDER BY date;"; 
    5454 
    55 // Topic comments in mails 
    56  $ctitle = htmlspecialchars($blogentry['topic'], ENT_QUOTES); // potential to discard 
    57  
    5855 $c['meta']['date']        = $blogentry['metadate']; 
    5956 $c['meta']['description'] = strip_tags($bbcode->parse($blogentry['teaser'])); 
     
    8380    $countComments = 0; 
    8481    while($commentsArray[] = $comments->fetch()); 
    85     foreach($commentsArray as $tmp_comment) if($tmp_comment['type'] == 'pingback') ++$countComments; 
    86  
    87          $number_of_comments = $countComments + 1; 
     82    foreach($commentsArray as $tmp_comment) if($tmp_comment['type'] != 'pingback') ++$countComments; 
    8883 
    8984  $preview = ""; 
     
    9186  $clear_form = com_clean_data($com_form); 
    9287  $clear_form['id'] = ""; 
    93    
     88 
    9489  $preview .= " 
    9590   <ul class='comments' id='preview'> 
    96     ".do_comment($clear_form, $number_of_comments)." 
     91    ".do_comment($clear_form, $countComments)." 
    9792   </ul>"; 
    9893 
     
    183178 
    184179 
    185        $mail['text'] = $l['admin']['comments_mail_txt']." »".$ctitle."«\n- -\n"; 
     180       $mail['text'] = $l['admin']['comments_mail_txt']." »".$blogentry['topic']."«\n- -\n"; 
    186181       if(isset($com_form['name'])) $mail['text'] .= $com_form['name']; 
    187182       else $mail['text'] .= $l['admin']['comments_anonym']; 
     
    192187       $mail['text'] .= "\n\n".$l['admin']['kill_c_email']."\n".JLOG_PATH."/admin/comments.php?action=trash&id=".$cid; 
    193188 
    194        @mail(JLOG_EMAIL, $l['admin']['comments_mailsubject']." - ".$ctitle, $mail['text'], $mail['headers']); 
     189       @mail(JLOG_EMAIL, $l['admin']['comments_mailsubject']." - ".$blogentry['topic'], $mail['text'], $mail['headers']); 
    195190      } 
    196191 
     
    198193                                   ."X-Mailer: PHP/".phpversion(); 
    199194 
    200                 $mail['text'] = $l['comments_mail_txt']." »".$ctitle."«\n- -\n"; 
     195                $mail['text'] = $l['comments_mail_txt']." »".$blogentry['topic']."«\n- -\n"; 
    201196      if(isset($com_form['name'])) $mail['text'] .= $com_form['name']; 
    202197      else $mail['text'] .= $l['comments_anonym']; 
     
    210205      while ($data = $comment_mail->fetch()) { 
    211206       if($data['email'] != $com['email']) { 
    212            @mail($data['email'], $l['comments_mailsubject']." - ".$ctitle, $mail['text'].$data['email'], $mail['headers']); 
     207           @mail($data['email'], $l['comments_mailsubject']." - ".$blogentry['topic'], $mail['text'].$data['email'], $mail['headers']); 
    213208       } 
    214209      } 
  • jlog/trunk/personal/css/admin.css

    r1292 r1553  
    1414#admin form textarea.big { height: 15em; } 
    1515 
    16 #admin table { empty-cells: show; border-spacing: 0; } 
     16#admin table { empty-cells: show; border-spacing: 0; font-size: 1em; } 
    1717#admin table tr td, 
    1818#admin table tr th { padding: 3px 8px; border-left: 1px dotted #bdaa94; vertical-align: top; } 
  • jlog/trunk/personal/css/ielte6.css

    r1300 r1553  
    33 */ 
    44 
    5         #pokal { /* do not display the alpha image */ 
    6                 display: none; 
    7         } 
    8          
    9         #container { /* IE max-width hack */ 
    10                 height: 1%; 
    11                 width: 750px; 
    12                 width:expression(document.body.clientWidth>805?"800px":"auto"); 
    13         } 
     5    #pokal { /* do not display the alpha image */ 
     6        display: none; 
     7    } 
     8     
     9    #container { /* IE max-width and PNG no-alpha hack */ 
     10        height: 1%; 
     11        width: 750px; 
     12        width:expression(document.body.clientWidth>805?"800px":"auto"); 
     13        background-image: url(img/banner-ielte6.jpg); 
     14    } 
    1415 
    15         #main { /* IE no-alpha-png hack */ 
    16                 background: url(img/banner-ielte6.jpg) no-repeat left top; 
    17         } 
     16    #main { width: 63%;  margin: 0 0 0 15px; } 
    1817 
    19         #admin table { /* adapting the font size for IE 5.x */ 
    20                 font-size: 1em; 
    21         } 
    22          
    23         * html  #subnav {       /* Box-Model Bug */ 
    24                 content:"\"; width: 30%; padding: 2em 1.5em; 
    25         } 
    26          
    27         html + body #admin { /* close the hole in IE 5.0 */ 
    28                 margin: 0; 
    29         } 
     18    ul.comments li { 
     19        overflow-x: scroll; 
     20    } 
     21 
     22    #admin table { /* adapting the font size for IE 5.x */ 
     23        font-size: 1em; 
     24    } 
     25     
     26    * html #subnav {   /* Box-Model Bug */ 
     27        content:"\"; width: 30%; padding: 2em 1.5em; 
     28    } 
     29 
     30    * html #main { width: 62.5%; margin: 0 0 0 15px; } 
     31     
     32    html + body #admin { /* close the hole in IE 5.0 */ 
     33        margin: 0; 
     34    } 
  • jlog/trunk/personal/css/screen.css

    r1540 r1553  
    2222        margin: 0 auto; 
    2323        max-width: 800px; 
    24         background: white; 
     24        background: url(img/banner.jpg) no-repeat 0 2.4em white; 
    2525        border: 1px solid #2B2B2B; 
    2626        border-top: 0; 
     
    2828    } 
    2929    #main { 
    30         background: url(img/banner.jpg) no-repeat top right; 
    31         margin: 0; 
    32         padding: 190px 32.5% 1em 25px; 
    33     } 
     30        margin: 0 0 0 25px; 
     31        padding: 190px 0 2em 0; 
     32        width: 64.5%; 
     33        float: left; 
     34    } 
     35 
     36    /* Clearfix-Hack */ 
     37    #main:after { 
     38        content: ".";  
     39        display: block;  
     40        height: 0;  
     41        clear: both;  
     42        visibility: hidden; 
     43    } 
     44 
     45    #main {display: inline-table;} 
     46 
     47    /* Hides from IE-mac \*/ 
     48    * html #main {height: 1%;} 
     49    #main {display: block;} 
     50    /* End hide from IE-mac */ 
    3451 
    3552    /* -- logo -- */ 
     
    3956            padding: 0 5%; 
    4057            margin: 0; 
    41             background: url(img/cheese.png) right bottom repeat-y; 
     58            background: url(img/cheese.png) right bottom repeat-y white; 
    4259        } 
    4360        h1 a:link, h1 a:visited { color: black; text-decoration: none; } 
     
    5875        #subnav { 
    5976            width: 26%; 
    60             margin: 1em 0; 
     77            margin: 1em 1px 1em 0; 
    6178            float: right; 
    6279            margin-top: 165px; 
     
    7491            line-height: 120%; 
    7592        } 
    76         #subnav .subcurrentlist { 
     93        #subnav .categorieslist, #subnav .subcurrentlist { 
    7794            margin: 0; padding: 0; 
    7895            list-style-type: none; 
    7996        } 
    80         #subnav .subcurrentlist li { margin-bottom: 0.5em; } 
     97        #subnav .categorieslist li, #subnav .subcurrentlist li { margin-bottom: 0.5em; } 
    8198        .rss img { vertical-align: middle; border: 0; width: 94px; height: 15px; } 
    8299 
     
    99116        border: 0 none; 
    100117        height: 1px; 
     118        margin: 1em 0; 
     119        clear: both; 
    101120    } 
    102121    .error { color: red; } 
     
    122141        #main dl.img dt img { margin: 0; padding: 0; max-width: 100%; border: none; } 
    123142        dl.img dd { margin: 0; padding: 0 0.3em; font-size: 90%; } 
     143        .teaser { clear: both; } 
    124144 
    125145    /* -- main link styles -- */ 
     
    147167 
    148168    /* -- textareas and inputs -- */ 
    149         fieldset { border: 1px solid #aaa; padding: 1em; } 
     169        fieldset { border: 1px solid #aaa; padding: 1em;  } 
    150170        legend { padding: 1em; font-weight: bold; } 
    151171        input.long, input.short, input.userdata, textarea, select { 
     
    162182    .entries , .search li { list-style-type: none; } 
    163183    .search li { border-top: 1px solid #d8d8d8; padding-top: 1em; } 
    164     ul.search { margin: auto 5%; padding: auto auto auto 0; } 
     184    ul.search { margin: auto 5%; padding-left: 0; } 
    165185    h2.search { text-align: center; } 
    166186    .archive { margin-left: 5%; } 
     
    168188 
    169189/* -- comments -- */ 
    170     p.hidecomments { font-size: 0.75em; text-align: right; line-height: 0; padding: 0; margin-bottom: 0; } 
     190    p.hidecomments { font-size: 0.75em; text-align: right; line-height: 1px; padding: 0; margin-bottom: 0; } 
    171191    #preview li { border: solid 1px red; } 
    172192    ul.comments .meta { font-size: 1.3em; } 
     
    179199        border-left: 1px solid #d8d8d8; 
    180200        border-top: 1px solid #D8D8D8; 
     201        overflow-x: scroll; 
    181202    } 
    182203    ul.comments li p { margin: 0.5em; } 
  • jlog/trunk/personal/template.tpl

    r1540 r1553  
    1414  <dl id="subnav"> 
    1515   <dt class="first"><jlog:slogan-h /></dt> 
    16     <dd><jlog:slogan /></dd>    
     16    <dd><jlog:slogan /></dd> 
    1717   <dt><jlog:search-h /></dt> 
    1818    <dd> 
     
    2525    <dd><jlog:subcurrent /></dd> 
    2626    <dd><jlog:archive-more /> <a href="<jlog:homelink />/archive.php"><jlog:archive /></a>.</dd> 
     27   <dt><jlog:categorieslist-h /></dt> 
     28    <dd><jlog:categorieslist class="categorieslist" /></dd> 
    2729   <dt><jlog:sub-info /></dt> 
    2830    <dd class="rss"><jlog:rss-link /><br /> <jlog:rss-info /></dd> 
  • jlog/trunk/scripts/bbcode.php

    r1551 r1553  
    2222    if (!isset ($attributes['default'])) { 
    2323          if (strpos($content, "/") === 0) $content = JLOG_PATH.$content; 
    24         return '<a href="'.htmlspecialchars($content).'">'.htmlspecialchars($content).'</a>'; 
     24        return '<a href="'.htmlspecialchars($content).'">'.$content.'</a>'; 
    2525    } 
    2626    if (strpos($content, "/") === 0) $attributes['default'] = JLOG_PATH.$attributes['default']; 
    27     return '<a href="'.htmlspecialchars($attributes['default']).'">'.htmlspecialchars($content).'</a>'; 
     27    return '<a href="'.htmlspecialchars($attributes['default']).'">'.$content.'</a>'; 
    2828} 
    2929 
  • jlog/trunk/scripts/comments.php

    r1548 r1553  
    8181 function com_clean_data($data) { 
    8282  global $l; 
    83    if($data['name'] == "" OR $data['name'] == $l['comments_name']) $data['name'] == ""; 
    84    if($data['city'] == "" OR $data['name'] == $l['comments_name']) $data['city'] == ""; 
    85    if($data['email'] == "" OR $data['name'] == $l['comments_name']) $data['email'] == ""; 
    86    if($data['homepage'] == "" OR $data['homepage'] == $l['comments_homepage']) $data['homepage'] == ""; 
     83   if(empty($data['name']) OR $data['name'] == $l['comments_name']) $data['name'] = ""; 
     84   if(empty($data['city']) OR $data['city'] == $l['comments_city']) $data['city'] = ""; 
     85   if(empty($data['email']) OR $data['email'] == $l['comments_email']) $data['email'] = ""; 
     86   if(empty($data['homepage']) OR $data['homepage'] == $l['comments_homepage']) $data['homepage'] = ""; 
    8787 
    8888   if(empty($data['date'])) $data['date'] = time(); 
     
    120120  <li id='c".$data['id']."'> 
    121121   <p class='meta'><a class='permalink' title='".$l['comments_permalink']."' href='#c".$data['id']."'>".$nr."</a> <cite>"; 
    122    if(isset($meta['homepage'])) $comment .= "<a title='".$meta['homepage']."' href='".$meta['homepage']."'>"; 
    123    if(isset($meta['name'])) $comment .= $meta['name']; 
     122   if(!empty($meta['homepage'])) $comment .= "<a title='".$meta['homepage']."' href='".$meta['homepage']."'>"; 
     123   if(!empty($meta['name'])) $comment .= $meta['name']; 
    124124   else $comment .= $l['comments_anonym']; 
    125    if(isset($meta['homepage'])) $comment .= "</a>"; 
     125   if(!empty($meta['homepage'])) $comment .= "</a>"; 
    126126   $comment .= "</cite>"; 
    127    if(isset($meta['city'])) $comment .= " ".$l['comments_from']." ".$meta['city']; 
     127   if(!empty($meta['city'])) $comment .= " ".$l['comments_from']." ".$meta['city'];