Meeting Mod - Block für Board3Portal

Support für Extensions für phpBB 3.3.x von Entwickler OXPUS
Jarod
Beiträge: 9
Registriert: Do 21. Jan 2010, 13:23

Meeting Mod - Block für Board3Portal

Beitrag von Jarod »

Hi leute,

hier nun eine kleine Anleitung für den Zusatz zum Meeting Mod, dem Block "meeting" für Board3Portal.
Die Änderung ist für den Block, wenn ihn nur Gruppen einsehen sollen.

Also so funktioniert es:
Öffnen: portal.php
Finde:

Code: Alles auswählen

include($phpbb_root_path . 'portal/includes/functions.'.$phpEx); 
Danach einfügen:

Code: Alles auswählen

include($phpbb_root_path . 'includes/functions_user.' . $phpEx); 
Kommentar: Wenn aus einer Gruppe geprüft werden soll.

Finde:

Code: Alles auswählen

$user->setup('mods/lang_portal');
$load_center = true; 
Danach einfügen:

Code: Alles auswählen

// zu überprüfende Gruppen ID ( Beispiel Gruppen ID 5 )
$gruppen_id = 5;

// zu überprüfender User ( Beispiel: Der User, der diese Seite aufgerufen hat )
$benutzer_id = $user->data['user_id'];

// Nun erfolgt die eigentliche Prüfung:
$is_in_group = group_memberships($gruppen_id, $benutzer_id , true); 
Kommentar: Wenn aus mehren Gruppen geprüft werden soll.
Finde:

Code: Alles auswählen

$user->setup('mods/lang_portal');
$load_center = true; 
Danach einfügen:

Code: Alles auswählen

// zu überprüfende Gruppen IDs ( Beispiel Gruppen ID 5, 10, 12, 15 )
// Hinweis: Bei mehreren Gruppen muss es ein array() sein!
$gruppen_id = array(5,10,12,15);

// zu überprüfender User ( Beispiel: Der User, der diese Seite aufgerufen hat )
$benutzer_id = $user->data['user_id'];

// Nun erfolgt die eigentliche Prüfung:
$is_in_group = group_memberships($gruppen_id, $benutzer_id , true);  

Finde:

Code: Alles auswählen

$template->assign_vars(array(
    'PORTAL_LEFT_COLUMN'     => $portal_config['portal_left_column_width'],
    'PORTAL_RIGHT_COLUMN'     => $portal_config['portal_right_column_width'],
)); 
Danach einfügen:

Code: Alles auswählen

if ($is_in_group == true)
{
    // Teile dem Template System mit, das die Variable "S_IN_GROUP" den Wert TRUE bekommt
    $template->assign_var('S_IN_GROUP', true);
} 

portal_body.html :

<!-- IF S_IN_GROUP --> bzw. <!-- IF not S_IN_GROUP --> vor und <!-- ENDIF --> nach dem Part noch einbauen....fertig.


Einbauanleitung für den Block:

portal.php

FINDE

Code: Alles auswählen

$template->assign_vars(array(
       'PORTAL_LEFT_COLUMN'   => $portal_config['portal_left_column_width'],
       'PORTAL_RIGHT_COLUMN'   => $portal_config['portal_right_column_width'],
DAVOR

Code: Alles auswählen

 include($phpbb_root_path . 'portal/block/meeting.' . $phpEx);


styles/prosilver/template/portal/portal_body.html

FINDE

Code: Alles auswählen

<!-- IF S_DISPLAY_ADVANCED_STAT -->
             <!-- INCLUDE portal/block/statistics.html -->
            <!-- ENDIF -->

DANACH

Code: Alles auswählen

  <!-- INCLUDE portal/block/meeting.html -->




language/en/mods/meeting.php

FINDE

Code: Alles auswählen

 ));

    ?>

DAVOR

Code: Alles auswählen

//For the Meeting Block on board3portal by frold @ studmed.dk
       'MEETING_TIME'                     => 'Time',
       'MEETING_LATESTMEETINGS'            => 'Latest Meetings',
Dateianhänge
Meeting_Block_Board3.zip
(3.04 KiB) 731-mal heruntergeladen
Benutzeravatar
oxpus
Chief handy-man
Beiträge: 2660
Registriert: Do 13. Dez 2007, 23:06
Wohnort: Irgendwo im I-Net
Kontaktdaten:

Re: Meeting Mod - Block für Board3Portal

Beitrag von oxpus »

Vielen Dank für diese kleine Erweiterung.
Das wird sicherlich den ein oder anderen Forumbetreiber ebenfalls interessieren.
Karsten Ude
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
TaT-2-Junkie
Beiträge: 11
Registriert: Do 2. Sep 2010, 09:16

Re: Meeting Mod - Block für Board3Portal

Beitrag von TaT-2-Junkie »

Hallo...

erstmal großes Lob an Oxpus für den Meeting-Mod...das war was ich immer gesucht habe seitdem ich mein Forum gestartet habe.

Allerdings habe ich ein kleines Problem mit dem Block im Board3Portal. Ich weiß ihr habt das nicht geschrieben, kann leider kein Dänisch um den Programmierer zu fragen, aber ich habe die Hoffnung, dass vielleicht einer von euch dasselbe Problemchen hattet und vielleicht eine Lösung gefunden habt.

Und zwar wenn man Termine einträgt steht immer der zuletzt eingetragene Termin oben. Ich allerdings würde gern den nächstfolgenden Termin oben stehen haben unabhängig davon wann man diesen eingetragen hat. Sprich sortiert nach Datum aufsteigend.

Vielleicht könnt ihr mir helfen.

Ich kenn mich nicht so gut mit den Codes aus aber hier zwei wo vielleicht die sortierung eingestellt wird:

Code: Alles auswählen

//Run SQL to get the data
      $sql = 'SELECT meeting_id, meeting_time, meeting_until, meeting_location, meeting_subject  FROM ' . MEETING_DATA_TABLE . "
         ORDER BY `meeting_time` DESC";
$result = $db->sql_query_limit($sql, $portal_config['number_of_meetings_shown']);
      
while ($row = $db->sql_fetchrow($result))
oder

Code: Alles auswählen

//Set to use meeting. in template   
   $template->assign_block_vars("meeting", array(
      //Set to use meeting.MEETING_XX in template
      'MEETING_ID'         => $row['meeting_id'],
      'MEETING_TIME'         => $user->format_date($row['meeting_time']),
      'MEETING_UNTIL'         => $user->format_date($row['meeting_until']),
      'MEETING_LOCATION'      => $row['meeting_location'],
      'MEETING_SUBJECT'      => $row['meeting_subject'],
      'U_MEETING_LINK'      => append_sid("{$phpbb_root_path}meeting.$phpEx", 'sort_field=meeting_time&sort_order=ASC&filter_by=none&filter=&closed=1&meeting_signon=0&meeting_approve=0&start=0&mode=detail&m_id=' . $row['meeting_id']),
   ));
}
Benutzeravatar
AmigaLink
Beiträge: 51
Registriert: Di 13. Apr 2010, 11:07

Re: Meeting Mod - Block für Board3Portal

Beitrag von AmigaLink »

Code: Alles auswählen

    //Run SQL to get the data
          $sql = 'SELECT meeting_id, meeting_time, meeting_until, meeting_location, meeting_subject  FROM ' . MEETING_DATA_TABLE . "
             ORDER BY `meeting_time` ASC";
    $result = $db->sql_query_limit($sql, $portal_config['number_of_meetings_shown']);
         
    while ($row = $db->sql_fetchrow($result))
Ein Computerprogramm tut was Du schreibst, nicht was Du willst.
TaT-2-Junkie
Beiträge: 11
Registriert: Do 2. Sep 2010, 09:16

Re: Meeting Mod - Block für Board3Portal

Beitrag von TaT-2-Junkie »

habe ich mir schon fast gedacht, dass es an dem DESC liegt...aber kannte nicht den richtigen Befehl...aber so lernt man wieder dazu...

vielen dank werde ich aber erst am Montag testen können!!!



edit: super hat funktioniert!!! vielen dank!!!
TaT-2-Junkie
Beiträge: 11
Registriert: Do 2. Sep 2010, 09:16

Re: Meeting Mod - Block für Board3Portal

Beitrag von TaT-2-Junkie »

nachdem die sortierung funktioniert nach Datum habe ich aber jetzt das Problem, dass die abgelaufenden Termine nicht ausgeblendet werden oder im Meeting-Block verschwinden.

Hat da jemand eine Lösung?
Benutzeravatar
AmigaLink
Beiträge: 51
Registriert: Di 13. Apr 2010, 11:07

Re: Meeting Mod - Block für Board3Portal

Beitrag von AmigaLink »

Stimmt, das ist sogar Logisch weil eine fixe Anzahl an Meetings ausgelesen wird ohne auf Gültigkeit zu Prüfen.
Daran kann ich dir aber nichts ändern, weil ich die Meeting MOD (und deren Aufbau) nicht kenne.
Ein Computerprogramm tut was Du schreibst, nicht was Du willst.
Benutzeravatar
oxpus
Chief handy-man
Beiträge: 2660
Registriert: Do 13. Dez 2007, 23:06
Wohnort: Irgendwo im I-Net
Kontaktdaten:

Re: Meeting Mod - Block für Board3Portal

Beitrag von oxpus »

Im Meeting werden mit meeting_time und meeting_until Zeitstempel geführt, die den Zeitpunkt des Treffens und die Anmeldefrist beinhalten.
Wenn man das ein oder andere gegen time() hält, kann man so oder so ausfiltern ;)
Karsten Ude
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
TaT-2-Junkie
Beiträge: 11
Registriert: Do 2. Sep 2010, 09:16

Re: Meeting Mod - Block für Board3Portal

Beitrag von TaT-2-Junkie »

:? puh...sorry aber ich bin nicht so fit in der Programmiersprache, dass ich nicht rauslesen kann wo ich was umschreiben kann...

vielleicht jemand nen Tip?
Benutzeravatar
AmigaLink
Beiträge: 51
Registriert: Di 13. Apr 2010, 11:07

Re: Meeting Mod - Block für Board3Portal

Beitrag von AmigaLink »

Evtl. so:

Code: Alles auswählen

        //Run SQL to get the data
        $sql = 'SELECT meeting_id, meeting_time, meeting_until, meeting_location, meeting_subject  FROM ' . MEETING_DATA_TABLE . "
                 WHERE `meeting_time` < '" . time() . "'
                 ORDER BY `meeting_time` ASC";
        $result = $db->sql_query_limit($sql, $portal_config['number_of_meetings_shown']);

        while ($row = $db->sql_fetchrow($result))
(ungetestet)
Ein Computerprogramm tut was Du schreibst, nicht was Du willst.
Antworten