Schrift
[thread]303[/thread]

Problem mit Kalender-Modul: Möchte dass die Woche mit Montag beginnt



<< >> 8 Einträge, 1 Seite
Tom
 2004-06-21 22:28
#2948 #2948
User since
2003-09-20
470 Artikel
BenutzerIn
[Homepage] [default_avatar]
Hallo,

Ich habe ein Kalender-Modul mit dem ich mir einen Monatskalender erzeugen kann, das ganze geschied mit diesem Code

Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
# Monat als HTML Tabelle mit Feiertagen
sub month_as_html{
return "-1" if scalar @_ < 2;
my ($month, $year) = @_;
my %feiertag = &feiertage($year);
my %fixtag = &fixtage($year);
my $x_day = 1;
my $row = 0;
my $table = ();
my @wochentag = qw(Sonntag Montag Dienstag Mittwoch Donnerstag Freitag Samstag);
my @monat = qw(null Januar Februar M&auml;rz April Mai Juni Juli August September Oktober November Dezember);
my $first_day = &weekday(1, $month, $year, 1);
my $days = &days_of_month($month, $year);
$table = "<table border cellpadding=0 cellspacing=0 width=\"100%\">\n";
$table .= "<tr>\n";
$table .= "<th colspan=7>$monat[$month] $year</th>\n";
$table .= "</tr>\n<tr>";
for(0..6){
$table .= "<th>$wochentag[$_]</th>\n"
}
$table .= "</tr>\n";
# Hier wird der Kalender zusammengebaut
for($row = 1; $row <= 6; $row ++){
$table .= "<tr>\n";
for(0..6){
if( $first_day <= $_ and $row == 1){ # Einstieg in Kalender
$table .= "<td>$x_day &nbsp;<b>$feiertag{\"$x_day.$month.$year\"}</b>
&nbsp;<b>$fixtag{\"$x_day.$month.$year\"}</b></td>\n";
$x_day++;
}
elsif( $x_day <= $days and $row != 1){
$table .= "<td>$x_day &nbsp;<b>$feiertag{\"$x_day.$month.$year\"}</b>
&nbsp;<b>$fixtag{\"$x_day.$month.$year\"}</b></td>\n";
$x_day++;
}
else{ # Tag stimmt nicht überein
$table .= "<td>&nbsp;</td>\n";
}
}
$table .= "</tr>\n";
}
# Abschluss der Tabelle
$table .= "</table>\n";
return $table;
}


Ich habe schon mal versucht das zu ändern, dann hat das auch einige Zeit funktioniert, aber auf einmal kam es zu einer Fehlerhaften Anzeige.

Könnt Ihr mir sagen wie ich die Woche mit einem Montag beginnen kann???

Das ganze Modul findet Ihr hier

Kalender-Modul

DANKE

Tom\n\n

<!--EDIT|Tom|1087842637-->
Computerprobleme??? -> http://www.weber-computerhilfe.de

Fordere keine Anerkennung!
Zeige was und man wird Dich kennen
ShadowRunner
 2004-06-21 22:42
#2949 #2949
User since
2004-06-09
8 Artikel
BenutzerIn
[default_avatar]
solltest lieber > HIER < kucken,
bevor du das rad neu erfindest ;)
there's more than one way to do it
Tom
 2004-06-22 18:20
#2950 #2950
User since
2003-09-20
470 Artikel
BenutzerIn
[Homepage] [default_avatar]
[quote=ShadowRunner,21.06.2004, 20:42]solltest lieber > HIER < kucken,
bevor du das rad neu erfindest ;)[/quote]
Wieso, ich erfinde das Rad doch nicht neu, das Modul funktioniert ja wunderbar. Außerdem verwende ich viele Funktionen aus deisem Modul und da möchte ich nicht auf ein anderes umsteigen.

Tom
Computerprobleme??? -> http://www.weber-computerhilfe.de

Fordere keine Anerkennung!
Zeige was und man wird Dich kennen
Thorium
 2004-06-23 13:08
#2951 #2951
User since
2003-08-04
232 Artikel
BenutzerIn
[Homepage] [default_avatar]
Naja er will damit sagen, dass es da draussen sehr viele stanrdardisierte Module gibt die auch enie Dokumentation bereitstellen mit denen du solche Dinge einfach lösen kannst. Wenn du ein Modul benutzt was keiner kennt läuft du in Gefahr bei genau solchen Probleme anzustossen ;)
Wenn du mit deinem jetzigen, musst du dir nen Workaround basteln (was dir keiner hier empfiehlt weil der Code danach ziemlich sicher beschissen aussieht und unübersichtlich ist)

Wenn du dir die Liste der Module jedoch anschaust findest du auf Seite Zwei ein Modul welches einen Kalender schon im HTML-Format ausgibt...\n\n

<!--EDIT|Thorium|1087982194-->
Per|li|nist der; -en, -en <zu ↑...ist>: a) Anhänger, Vertreter der radikalen Perlinisten die Perl als die einzig wahre Sprache ansehen; b) Mitglied einer perlinistischen Community.
Tom
 2004-06-30 21:59
#2952 #2952
User since
2003-09-20
470 Artikel
BenutzerIn
[Homepage] [default_avatar]
Hat sich erledigt, der Author hat mir geholfen.

Tom
Computerprobleme??? -> http://www.weber-computerhilfe.de

Fordere keine Anerkennung!
Zeige was und man wird Dich kennen
renee
 2004-07-02 10:18
#2953 #2953
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Dann poste doch mal die Lösung. Vielleicht interessiert es ja noch andere!
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
Tom
 2004-07-02 15:24
#2954 #2954
User since
2003-09-20
470 Artikel
BenutzerIn
[Homepage] [default_avatar]
Quote
Hi Tom,

sorry, war 3 Tage Offline...

Du machst 2 Änderungen in der Funktion month_as_html():

1 - Überschriften einen Tag nach links
my @wochentag = qw(Montag Dienstag Mittwoch Donnerstag Freitag Samstag Sonntag);

2 - alle anderen Tage einen Tag nach links (Einstiegstag)
my $first_day = &weekday(1, $month, $year, 1); # wie gehabt
$first_day--;


Sollte tun, Gruss, Rolf


http://perlbase.xwolf.de/cgi-bin/forum.cgi?display=5.1

Tom
Computerprobleme??? -> http://www.weber-computerhilfe.de

Fordere keine Anerkennung!
Zeige was und man wird Dich kennen
Tom
 2004-07-07 00:52
#2955 #2955
User since
2003-09-20
470 Artikel
BenutzerIn
[Homepage] [default_avatar]
Diese Lösung hat leider doch nicht funktioniert, aber hier gibts eine neue Lösung

Quote
Hi Tom,

sorry, da habch nicht alles beachtet.

Also die Überschriften einen Tag nach links zu rücken ist OK.

Aber beim Einstiegstag - ääähm.
Ich schrieb:
$first_day--;

Das allein reicht nicht. Hier muss noch rein, dass bei einem negativen wert dieser auf 6 gezirkelt wird.

($first_day < 0) ? ($first_day = 6) : () ;

Sollte dann thun.

Gruss, Rolf


http://perlbase.xwolf.de/cgi-bin/forum.cgi?display=5.1.2.1

Tom
Computerprobleme??? -> http://www.weber-computerhilfe.de

Fordere keine Anerkennung!
Zeige was und man wird Dich kennen
<< >> 8 Einträge, 1 Seite



View all threads created 2004-06-21 22:28.