pragmaMx Support Forum

pragmaMx => Themes & Design => Thema gestartet von: Oscar175 am 08 April 2007, 19:04:16

Titel: mx-default links/logo
Beitrag von: Oscar175 am 08 April 2007, 19:04:16
Hallo Leute,
erstmal froh Ostern.Ich habe zwei Probleme:

1. Wie bekomme ich beim mx-default in den Web News und in den Artikeln unter den Links die pünktchen weg?

2.Wie schaffe ich es das morgens ein Logo mit "Guten Morgen" und Mittags eins mit "Guten Tag" usw. erscheint.

Kann mir da vielleicht jemand helfen?
LG Benjamin
Titel: Re: mx-default links/logo
Beitrag von: Baldyman am 08 April 2007, 19:43:01
Jey Oscar175,

zu 1.
schau mal nach folgender Datei  /themes/mx-default/style/style.css

spiel mal mit den folgenden Angaben rum.
Die rote Zeile macht die Pünktchen ;-)

a:link {
   background-color: transparent;
   border-bottom: #666666 1px dotted;
   color: #666666;
   text-decoration: none;
}

a:visited {
   background-color: transparent;
   border-bottom: #666666 1px dotted;
   color: #666666;
   text-decoration: none;
}

a:hover,
a:focus {
   background-color: transparent;
   border-bottom: #666666 1px dotted;
   color: #99CC33;
   text-decoration: none;
}

a:active {
   background-color: transparent;
   border-bottom: #666666 1px dotted;
   color: #666666;
   text-decoration: none;


Zu 2. kann ich Dir leider nix sagen SORRY !
Titel: Re: mx-default links/logo
Beitrag von: Oscar175 am 08 April 2007, 20:00:04
OK das hat geklappt,vielen dank.
Bleibt nur noch 2. übrig warte dann mal auf die anderen.
LG Benjamin
Titel: Re: mx-default links/logo
Beitrag von: reddragon am 08 April 2007, 23:34:33
könnte man das nicht mit einer if else und der Uhrzeit lösen?? :gruebel:
Titel: Re: mx-default links/logo
Beitrag von: Oscar175 am 09 April 2007, 00:15:48
Hi ich kenne mich mit php leider nicht aus.Habe es mal probiert steige da aber nicht durch.
LG Benjamin
Titel: Re: mx-default links/logo
Beitrag von: JoergK am 09 April 2007, 02:57:54
Zitat von: Oscar175 am 08 April 2007, 19:04:16
2.Wie schaffe ich es das morgens ein Logo mit "Guten Morgen" und Mittags eins mit "Guten Tag" usw. erscheint.

Dazu sind Änderungen/Ergänzungen an folgenden Dateien des Themes notwendig.
1. themes/mx-default/theme.html
Ändere (ca.) Zeile 40
Zitat<td width="75%" height="79" bgcolor="#FFFFFF"><div align="left"><img src="images/logo.png" width="491" alt="" height="66" border="0" usemap="#Map"></div></td>

in das
Zitat<td width="75%" height="79" bgcolor="#FFFFFF"><div align="left">{LOGO}</div></td>

2. themes/mx-default/functions.php
In der function theme_define_placeholders() vor (ca.) Zeile 74 return $out; die Zeile
Zitat$part[] = array("{LOGO}", Logo_by_Time());
einfügen.

Am Ende der Datei nach dem letzten } diesen Code einfügen:
Zitat// Zeitabhaengige Logoanzeige
function Logo_by_Time() {
    $TimeStamp = time();
    $Stunde = intval(date("G", $timestamp));
    if ($Stunde >= 6 && $Stunde < 12) {  // Zwischen 6:00:00 und 11:59:59 Uhr
        $out = "<img src=\"images/guten_morgen.jpg\" width=\"491\" alt="" height=\"66\" border=\"0\">";
    } elseif ($Stunde >= 12 && $Stunde < 18) {  // Zwischen 12:00:00 und 17:59:59 Uhr
        $out = "<img src=\"images/guten_tag.jpg\" width=\"491\" alt="" height=\"66\" border=\"0\">";
    } elseif ($Stunde >= 18 && $Stunde < 24) {  // Zwischen 18:00:00 und 23:59:59 Uhr
        $out = "<img src=\"images/guten_abend.jpg\" width=\"491\" alt="" height=\"66\" border=\"0\">";
    } elseif ($Stunde >= 0 && $Stunde < 6) {  // Zwischen 0:00:00 und 6:59:59 Uhr
        $out = "<img src=\"images/gute_nacht.jpg\" width=\"491\" alt="" height=\"66\" border=\"0\">";
    }
    return $out;
}

Die Dateinamen sowie Breite und Höhe mußt Du natürlich noch entsprechend Deinen Bildern anpassen. Und nicht vergessen, die Bilder in das Verzeichnis themes/mx-default/images hoch zu laden.  ;)

Bevor ich es vergess ... das ganze ist ungetestet, sollte aber soweit funktionieren.
Titel: Re: mx-default links/logo
Beitrag von: Oscar175 am 09 April 2007, 11:48:26
@JoergK

habe alles gemacht,auch die Bilder hochgeladen,doch die Seite bleibt jetzt weiß.Funzt leider net.
LG Benjamin
Titel: Re: mx-default links/logo
Beitrag von: JoergK am 10 April 2007, 01:06:38
Dann werd ich das doch mal antesten müssen ... hatte das letzte Nacht nur auf die Schnelle "zusammengeschustert".  ;)
Titel: Re: mx-default links/logo
Beitrag von: Future am 10 April 2007, 01:11:12
Hi :),

also 1 Fehler liegt auf jedefall hier.

$TimeStamp = time();
$Stunde = intval(date("G", $timestamp));

Da hast du einmal Timestamp groß geschrieben und danach klein. Wird wohl nur ein Tippfehler gewesen sein ;)

EDIT: Hehe selbst übersehen. einmal ist auch das S in timestamp groß und einmal nicht
Titel: Re: mx-default links/logo
Beitrag von: JoergK am 10 April 2007, 01:35:05
Zitat von: Future am 10 April 2007, 01:11:12
also 1 Fehler liegt auf jedefall hier.

Da könnt ich mich doch glatt :crazy:

Danke für den Hinweis, werd's in den Test mit einbeziehen.  :thumbup:
Titel: Re: mx-default links/logo
Beitrag von: Future am 10 April 2007, 02:10:38
Jut, der krams hat mir ja jetzt keine ruhe gelassen.

So sollte es nun wirklich funktionieren.

<?php
// Zeitabhaengige Logoanzeige
function Logo_by_Time() {
    
$timestamp time();
    
$Stunde intval(date("G"$timestamp));
    if (
$Stunde >= && $Stunde 12) {  // Zwischen 6:00:00 und 11:59:59 Uhr
        
$img "guten_morgen.jpg";
    } elseif (
$Stunde >= 12 && $Stunde 18) {  // Zwischen 12:00:00 und 17:59:59 Uhr
        
$img "guten_tag.jpg";
    } elseif (
$Stunde >= 18 && $Stunde 24) {  // Zwischen 18:00:00 und 23:59:59 Uhr
        
$img "guten_abend.jpg";
    } elseif (
$Stunde >= && $Stunde 6) {  // Zwischen 0:00:00 und 6:59:59 Uhr
        
$img "gute_nacht.jpg";
    }
    
$outmxCreateImage(MX_THEME_DIR "/images/".$img."""Logo"0);
    return 
$out;
}
?>
Titel: Re: mx-default links/logo
Beitrag von: JoergK am 10 April 2007, 03:11:49
So, nu hab ich's auch gefunden, wieso mein "Schnellschuss" nicht funktioniert hat - abgesehen vom bereits genannten Tippfehler bezüglich der Groß-/Kleinschreibung.
In den Zeilen $out = ... hab ich dummerweise :crazy: vergessen, die " beim alt-Attribut zu escapen, ergo statt alt="" muß das alt=\"\" heissen.
Und desweiteren muß das Theme-Verzeichnis ebenfalls angegeben werden.

Da der Code von Future (http://www.pragmamx.org/Forum-action-profile-u-1890.html) funktioniert  :thumbup: und zudem auch noch übersichtlicher ist, erspar ich es euch und mir, meinen korrigierten Code hier nochmal zu posten.
Titel: Re: mx-default links/logo
Beitrag von: Future am 10 April 2007, 03:14:46
ZitatIn den Zeilen $out = ... hab ich dummerweise klapps vergessen, die " beim alt-Attribut zu escapen, ergo statt alt="" muß das alt=\"\" heissen.
Und desweiteren muß das Theme-Verzeichnis ebenfalls angegeben werden.

Manchmal sieht man halt den Wald vor lauter Bäumen nicht mehr :D Nach dem krams hätte ich glaube ich morgen noch gesucht.

THX JoergK dafür, das du trotzdem den Fehler gepostet hast.
Titel: Re: mx-default links/logo
Beitrag von: JoergK am 10 April 2007, 03:25:07
Zitat von: Future am 10 April 2007, 03:14:46
THX JoergK dafür, das du trotzdem den Fehler gepostet hast.

Hat mich doch selber interessiert, was ich da falsch gemacht hab. Dass ich die Fehler gepostet hab gehört für mich einfach zur Selbstkritik dazu. Nebenbei haben Andere dadurch auch die Chance etwas zu lernen.

Dazu passt dann noch Motto eines anderen Forums:


Wissen ist das einzige Gut das sich vermehrt wenn man es teilt!
Titel: Re: mx-default links/logo
Beitrag von: Future am 10 April 2007, 03:29:59
Dem Motto stimme ich voll und ganz zu. :thumbup: :cul:

BTW nochmal ein Tipp den mir Andi vor kurzem gab.

Anstatt so:

$out = "<img src=\"images/guten_tag.jpg\" width=\"491\" alt="" height=\"66\" border=\"0\">";

lieber so:

$out = '<img src="images/guten_tag.jpg" width="491" alt="" height="66" border="0">';

Dann brauch man den ganzen scheiss nicht mehr escapen. Wusstezwar vorher auch schon das das geht ( ich denke du auch ), mir war aber nie bewusst was für eine Zeit und vor allem Arbeitsersparniss das ist. Ist halt nur ne kleine umgewöhnungssache wenn man es vorher andersrum gemacht hat.
Titel: Re: mx-default links/logo
Beitrag von: JoergK am 10 April 2007, 03:49:18
Zitat von: Future am 10 April 2007, 03:29:59
BTW nochmal ein Tipp den mir Andi vor kurzem gab.

Danke  :thumbup:

Zum Thema String und Syntax hatte Andi ja letztens erst wieder nen Lesetip parat: http://de.php.net/string (http://de.php.net/string).

Aber wie Du schon vermutet hast, "kenne" diese Variante auch, aber wie Du sicherlich auch weisst, "führen viele Wege nach Rom". Die Kunst ist halt zu wissen, wann man welchen am Besten zu gehen hat. Aber daran kann man schliesslich arbeiten. ;)
Titel: Re: mx-default links/logo
Beitrag von: Oscar175 am 10 April 2007, 15:34:35
Hi, Vielen Dank euch beiden funktioniert super  :thumbup: :thumbup: :thumbup:
LG Benjamin
Titel: Re: mx-default links/logo
Beitrag von: reddragon am 10 April 2007, 17:43:39
Kleine Frage, was muss da hin, wenn man um 6.15 Uhr etwas geändert haben will?  :)
Titel: Re: mx-default links/logo
Beitrag von: Future am 10 April 2007, 18:00:08
Hi :),

versuchs mal hiermit

<?php
// Zeitabhaengige Logoanzeige
function Logo_by_Time() {
    
$timestamp time();
    
$Stunde date("H:i"$timestamp);
$Stunde str_replace(":","",$Stunde);
    if (
$Stunde >= 0600 && $Stunde 1200) {  // Zwischen 6:00:00 und 11:59:59 Uhr
        
$img "gute_nacht.png1";
    } elseif (
$Stunde >= 1200 && $Stunde 1753) {  // Zwischen 12:00:00 und 17:52:59 Uhr
        
$img "gute_nacht.png22";
    } elseif (
$Stunde >= 1753 && $Stunde 2400) {  // Zwischen 17:53:00 und 23:59:59 Uhr
        
$img "gute_nacht.png3";
    } elseif (
$Stunde >= 0000 && $Stunde 0600) {  // Zwischen 0:00:00 und 6:59:59 Uhr
        
$img "gute_nacht.png";
    }
$outmxCreateImage(MX_THEME_DIR "/images/".$img."""logo"0);
    return 
$out;
}
?>
Titel: Re: mx-default links/logo
Beitrag von: JoergK am 10 April 2007, 18:28:53
Sorry, Future aber das funzt nicht (getestet).  :exclam: ;D ;D

Probiert mal diesen Code (getestet):
Zitat// Zeitabhaengige Logoanzeige
function Logo_by_Time() {
    $TimeStamp = time();
    $Stunde = intval(date("G", $TimeStamp));
    $Minute = intval(date("i", $TimeStamp));
    if ((($Stunde == 6 && $Minute >= 15) || $Stunde > 6) && ($Stunde < 12)) {  // Zwischen 6:15:00 und 11:59:59 Uhr
        $img = "guten_morgen.jpg";
    } elseif ($Stunde >= 12 && $Stunde < 18) {  // Zwischen 12:00:00 und 17:59:59 Uhr
        $img = "guten_tag.jpg";
    } elseif ($Stunde >= 18 && $Stunde < 24) {  // Zwischen 18:00:00 und 23:59:59 Uhr
        $img = "guten_abend.jpg";
    } elseif ($Stunde >= 0 && ($Stunde < 6 || ($Stunde == 6 && $Minute < 15))) {  // Zwischen 0:00:00 und 6:14:59 Uhr
        $img = "gute_nacht.jpg";
    }
    $out= mxCreateImage(MX_THEME_DIR . "/images/".$img."", "Logo", 0);
    return $out;
}

Die roten Zeilen sind die geänderten gegenüber dem ursprünglichen Code aus der Antwort 10 (http://www.pragmamx.org/Forum-topic-20980-start-msg142536.html#msg142536).
Titel: Re: mx-default links/logo
Beitrag von: Future am 10 April 2007, 18:40:40
ZitatSorry, Future aber das funzt nicht (getestet).  exclamation_smile Grin Grin

Jo stimmt, da war nen dicker Denkfehler drinne.