TinyPortal

Development => International => German => Topic started by: Jessikard on June 14, 2007, 08:26:05 AM

Title: Kalender Box ?
Post by: Jessikard on June 14, 2007, 08:26:05 AM
weiß jemand, wo ich so einen Kalender herbekomme ?
hier war die Suche bisher fruchtlos und google gibt nur mist her

LG Jessi
Title: Re: Kalender Box ?
Post by: Tommy on June 14, 2007, 12:22:10 PM
http://www.tinyportal.net/index.php?topic=7576.0
http://www.tinyportal.net/index.php?topic=700.0
http://www.tinyportal.net/index.php?topic=2300.0
http://www.tinyportal.net/index.php?topic=1509.0
http://www.tinyportal.net/index.php?topic=7817.0

-Tommy
Title: Re: Kalender Box ?
Post by: Jessikard on June 14, 2007, 02:25:33 PM
 :-* danke du bist ein Schatz
Title: Re: Kalender Box ?
Post by: PfalzNacht on June 25, 2007, 09:26:01 PM
Nabend!

Muss das Thema jetzt nochmal vor holen, weil ich nämlich ein kleines Problemchen hab.

Und zwar benutz ich diesen Code hier, der mir soweit auch ganz gut gefällt. Hab nur ein Problem, und zwar sehen die Gäste auch die Namen der User die bald Geburtstag haben.

Wo muss ich in dem Code was ändern, dass das nur registrierte User sehen.

Hab es jetzt schon ein paar mal versucht, kommt aber immer eine Fehlermeldung.

global $scripturl, $modSettings, $context, $db_prefix, $user_profile;

smf_loadCalendarInfo();

$now = mktime() + $modSettings['time_offset'] * 3600;

$today = date('j',$now);
$year = date('Y',$now);
$month = date('n',$now);

$days = array($today=>array(NULL,NULL,'<a class="smalltext" style="color:steelblue; font-weight:bold; border:solid 1px black; background-color: white; padding: 0px 4px 0px 4px;" href="'.$scripturl.'?action=calendar;sa=post;month='.$month.';year='.$year.';day='.$today.'" target="_self">'.$today.'</a>'));

$day_name_length = 2;

$month_href = $scripturl . '?action=calendar&month=' . $month;
$first_day = 1;
$pn = array();

$first_of_month = gmmktime(0,0,0,$month,1,$year);

$day_names = array();                                      #generate all the day names according to the current locale
for($n=0,$t=(3+$first_day)*86400; $n<7; $n++,$t+=86400)    #January 4, 1970 was a Sunday
    $day_names[$n] = ucfirst(gmstrftime('%A',$t));         #%A means full textual day name

list($month, $year, $month_name, $weekday) = explode(',',gmstrftime('%m,%Y,%B,%w',$first_of_month));

$weekday = ($weekday + 7 - $first_day) % 7;                #adjust for $first_day
$title   = htmlentities(ucfirst($month_name)).' '.$year;   #note that some locales don't capitalize month and day names

@list($p, $pl) = each($pn); @list($n, $nl) = each($pn); #previous and next links, if applicable
if($p) $p = '<span class="smalltext">'.($pl ? '<a href="'.htmlspecialchars($pl).'">'.$p.'</a>' : $p).'</span> ';
if($n) $n = ' <span class="smalltext">'.($nl ? '<a href="'.htmlspecialchars($nl).'">'.$n.'</a>' : $n).'</span>';
$calendar = '<table align="center">'.'<caption >'.$p.($month_href ? '<a href="'.htmlspecialchars($month_href).'">'.$title.'</a>' : $title).$n.'</caption><tr>';

if($day_name_length){                                      #if the day names should be shown ($day_name_length > 0)
    foreach($day_names as $d)
    $calendar .= '<th class="smalltext" abbr="'.htmlentities($d).'">'.htmlentities($day_name_length < 4 ? substr($d,0,$day_name_length) : $d).'</th>';
    $calendar .= '</tr><tr style="text-align:right;">';
    }

if($weekday > 0) $calendar .= '<td class="smalltext" colspan="'.$weekday.'"> </td>'; #initial 'empty' days

for($day=1,$days_in_month=gmdate('t',$first_of_month); $day<=$days_in_month; $day++,$weekday++){
    if($weekday == 7){
        $weekday   = 0; #start a new week
        $calendar .= '</tr><tr style="text-align:right;">';
        }

    if(isset($days[$day]) and is_array($days[$day])){
        @list($link, $classes, $content) = $days[$day];
        if(is_null($content))  $content  = $day;
        $calendar .= '<td '.($classes ? ' class="'.htmlspecialchars($classes).'">' : '>').($link ? '<a href="'.htmlspecialchars($link).'">'.$content.'</a>' : $content).'</td>';
        }
    else
        {
        $calendar .= '<td class="smalltext" style="padding-right:4px;"><a';
        if(((($weekday+$first_day) % 7)==0)||((($weekday+$first_day) % 7)==6))
            {
            $calendar .= ' style="color:#C00000;"';
            }
        $calendar .= ' href="'.$scripturl.'?action=calendar;sa=post;month='.$month.';year='.$year.';day='.$day.'" target="_self">'.$day.'</a></td>';
        }
    }

if($weekday != 7) $calendar .= '<td class="smalltext" colspan="'.(7-$weekday).'"> </td>'; #remaining "empty" days

echo $calendar.'</tr>';

/////////////////////////////////////////////////////////////////
//   BIRTHDAY SECTION
//
if (!empty($context['calendar_birthdays']))
{
    echo '<tr><td colspan="2"><hr></td><td colspan="3" class="smalltext" align="center" style="font-weight: bold; color: #' . $modSettings['cal_bdaycolor'] . ';">Birthdays</td><td colspan="2"><hr></td></tr><td colspan="7" class="smalltext">';

    foreach ($context['calendar_birthdays'] as $member)
    {
        $query = db_query(
            "SELECT birthdate
            FROM {$db_prefix}members
            WHERE ID_MEMBER='".$member['id']."'", __FILE__, __LINE__);

        $row = mysql_fetch_assoc($query);
list ($uyear, $umonth, $uday) = explode('-', $row['birthdate']);
        $birthdate = strtotime(sprintf('%04d-%02d-%02d', date("Y"), $umonth, $uday));
        mysql_free_result($query);

        $dummy = array();
        $dummy[] = $member['id'];
        loadMemberData($dummy);
        $profile = &$user_profile[$member['id']];

        echo '<div align="center">';
        echo '<a href="', $scripturl, '?action=calendar;year=' . date("Y") . ';month=' . date("n",$birthdate) . '"><strong>' . date("M j",$birthdate) . '</strong></a>';
        echo ' - ';
        echo '<a href="', $scripturl, '?action=profile;u=', $member['id'], '">';
        if (!empty($profile['member_group_color']))
        {
        echo '<font color="' . $profile['member_group_color'] . '">' . $member['name'] . (isset($member['age']) ? '(' . $member['age'] . ')' : '') . '</font>';
        }
        else
        {
        echo $member['name'] . (isset($member['age']) ? '(' . $member['age'] . ')' : '');
        }
        echo '</a>';
        echo '</div>';
    }
    echo '</td></tr>';
}

/////////////////////////////////////////////////////////////////
//   EVENTS SECTION
//
if (!empty($context['calendar_events']))
{
    echo '<tr><td colspan="2"><hr></td><td colspan="3" class="smalltext" align="center" style="font-weight: bold; color: #' . $modSettings['cal_eventcolor'] . ';">Events</td><td colspan="2"><hr></td></tr><td colspan="7" class="smalltext">';

    foreach ($context['calendar_events'] as $event)
    {
        $query = db_query(
            "SELECT startDate
            FROM {$db_prefix}calendar
            WHERE ID_EVENT='".$event['id']."'", __FILE__, __LINE__);

        $row = mysql_fetch_assoc($query);
        $startdate = strtotime($row['startDate']);

        mysql_free_result($query);

        echo '<div align="center">';
        echo '<a href="', $scripturl, '?action=calendar;year=' . date("Y") . ';month=' . date("n",$startdate) . '"><strong>' . date("M j",$startdate) . '</strong></a>';
        echo ' - ';
        echo $event['link'] ;
        echo '</div>';
    }
    echo '</td></tr>';
}

/////////////////////////////////////////////////////////////////
//   HOLIDAY SECTION
// WHERE title='".str_replace("'","''",$holiday)."'
if (!empty($context['calendar_holidays']))
{
    echo '<tr><td colspan="2"><hr></td><td colspan="3" class="smalltext" align="center" style="font-weight: bold; color: #' . $modSettings['cal_holidaycolor'] . ';">Holidays</td><td colspan="2"><hr></td></tr><td colspan="7" class="smalltext">';

    foreach ($context['calendar_holidays'] as $holiday)
    {
        $query = db_query(
            "SELECT eventDate
            FROM {$db_prefix}calendar_holidays
            WHERE title='".str_replace("'","''",$holiday)."'
            AND (eventDate LIKE '".date("Y")."-%' OR eventDate LIKE '0004-%')", __FILE__, __LINE__);

        $row = mysql_fetch_assoc($query);
        $eventdate = strtotime(date("Y").substr($row['eventDate'], 4));

        mysql_free_result($query);

        echo '<div align="center">';
        echo '<a href="', $scripturl, '?action=calendar;year=' . date("Y") . ';month=' . date("n",$eventdate) . '"><strong>' . date("M j",$eventdate) . '</strong></a>';
        echo ' - ';
        echo $holiday;
        echo '</div>';
    }
    echo '</td></tr>';
}

echo '</table>';


Ich denk mal das if ($context['user']['is_logged'] kommt dorthin wo die "Birthday Section" ist. Aber wie und wo genau?

Danke schon mal.
Title: Re: Kalender Box ?
Post by: Jessikard on June 25, 2007, 10:56:46 PM
du kannst doch auch jede einzelne Box für Gäste unsichtbar machen
Title: Re: Kalender Box ?
Post by: PfalzNacht on June 25, 2007, 11:21:09 PM
Das ist aber alles eine Box, und so soll es ja auch sein. Ich will nur net das Gäste die Namen der User sieht die B-Day haben.  ;)
Title: Re: Kalender Box ?
Post by: Tommy on June 26, 2007, 12:19:22 AM
Statt
Code (Suche Sie nach) Select

/////////////////////////////////////////////////////////////////
//   BIRTHDAY SECTION
//
if (!empty($context['calendar_birthdays']))


verwenden Sie einfach folgenden Code:

Code (Ersetzen Sie mit) Select
/////////////////////////////////////////////////////////////////
//   BIRTHDAY SECTION
//
if (!empty($context['calendar_birthdays']) && ($context['user']['is_logged']))


-Tommy
Title: Re: Kalender Box ?
Post by: PfalzNacht on June 26, 2007, 12:33:07 AM
Ach genau, ich wusste doch das es das war. Ich hab die ganze Zeit nur nach den 2 && Zeichen noch das "if" stehen gelassen.

Danke nochmal.
Title: Re: Kalender Box ?
Post by: Jessikard on June 26, 2007, 09:48:30 AM
 :up: habs auch gleich verwendet
Title: Re: Kalender Box ?
Post by: PfalzNacht on June 26, 2007, 04:11:28 PM
Ey, nix klauen hier!!  ;D ;D :2funny:
Title: Re: Kalender Box ?
Post by: Jessikard on June 27, 2007, 12:51:27 AM
ich klau nicht, ich habs mir nur geborgt  ;D und wieder ganz ordentlich in die Code-Box zurück gelegt  ::)
Title: Re: Kalender Box ?
Post by: ZAD-Fossil on October 06, 2007, 07:59:36 AM
Quote from: Bombergirl on June 27, 2007, 12:51:27 AM
ich klau nicht, ich habs mir nur geborgt  ;D und wieder ganz ordentlich in die Code-Box zurück gelegt  ::)

Das war genau das was ich gesucht habe, ich hab es mir auch geborgt, sauber abgestaubt und wieder ordentlich in die Code-Box zurück gelegt  8)

Dickes Danke an Lemming für den Code  :up:

Gruß Bruno