Added feature to open external event links in a new window

Fixed latest bots block
Fixed missing whois_online legend
This commit is contained in:
Marc Alexander
2011-04-25 17:54:21 +02:00
parent 5efe1d6b7c
commit 166465b8c2
12 changed files with 50 additions and 14 deletions

View File

@@ -24,7 +24,7 @@
</dl> </dl>
<dl> <dl>
<dt><label for="event_desc">{L_EVENT_DESC}:</label></dt> <dt><label for="event_desc">{L_EVENT_DESC}:</label></dt>
<dd><input name="event_desc" type="text" id="event_desc" value="{EVENT_DESC}" maxlength="255" /></dd> <dd><textarea id="event_desc" rows="6" cols="6" name="event_desc">{EVENT_DESC}</textarea></dd>
</dl> </dl>
<dl> <dl>
<dt> <dt>

View File

@@ -807,7 +807,7 @@ class acp_portal
if (preg_match('/^portal_.+\.' . $phpEx . '$/', $file)) if (preg_match('/^portal_.+\.' . $phpEx . '$/', $file))
{ {
$class = str_replace(".$phpEx", '', $file) . '_module'; $class = str_replace(".$phpEx", '', $file) . '_module';
if(in_array(str_replace(array('portal_', '_module'), '', $class), $installed_modules)) if(in_array(str_replace(array('portal_', '_module'), '', $class), $installed_modules) && $class != 'portal_custom_module')
{ {
continue; continue;
} }

View File

@@ -126,7 +126,7 @@ $lang = array_merge($lang, array(
'ACP_PORTAL_CALENDAR_EVENT_START_FIRST' => 'Das Ende der Veranstaltung muss nach dem Beginn der Veranstaltung liegen.', 'ACP_PORTAL_CALENDAR_EVENT_START_FIRST' => 'Das Ende der Veranstaltung muss nach dem Beginn der Veranstaltung liegen.',
'ACP_PORTAL_CALENDAR_PERMISSION' => 'Berechtigungen für die Veranstaltung', 'ACP_PORTAL_CALENDAR_PERMISSION' => 'Berechtigungen für die Veranstaltung',
'ACP_PORTAL_CALENDAR_PERMISSION_EXP' => 'Wähle die Gruppen aus, denen es erlaubt sein soll die Veranstaltung zu sehen. Falls alle Benutzer die Veranstaltung sehen sollen, dann wähle nichts aus.<br />Wähle mehrere Gruppen aus/ab, indem du beim Klicken die <samp>Strg</samp>-Taste drückst.', 'ACP_PORTAL_CALENDAR_PERMISSION_EXP' => 'Wähle die Gruppen aus, denen es erlaubt sein soll die Veranstaltung zu sehen. Falls alle Benutzer die Veranstaltung sehen sollen, dann wähle nichts aus.<br />Wähle mehrere Gruppen aus/ab, indem du beim Klicken die <samp>Strg</samp>-Taste drückst.',
'PORTAL_EVENTS_URL_NEW_WINDOW' => 'Öffne externe Veranstaltungsverknüpfungen in einem neuen Fenster',
// Logs // Logs
'LOG_PORTAL_EVENT_UPDATED' => '<strong>Veranstaltung aktualisiert</strong><br />&raquo; %s', 'LOG_PORTAL_EVENT_UPDATED' => '<strong>Veranstaltung aktualisiert</strong><br />&raquo; %s',

View File

@@ -35,6 +35,7 @@ $lang = array_merge($lang, array(
'LATEST_BOTS' => 'Letzte Bots', 'LATEST_BOTS' => 'Letzte Bots',
'LAST_VISITED_BOTS' => 'Die letzten Bots', 'LAST_VISITED_BOTS' => 'Die letzten Bots',
'LAST_VISITED_BOTS_CNT' => 'Die letzten %s Bots', 'LAST_VISITED_BOTS_CNT' => 'Die letzten %s Bots',
'LAST_VISITED_BOT' => 'Der letzte Bot',
// ACP // ACP
'ACP_PORTAL_BOTS_SETTINGS' => 'Einstellungen für Bot-Besuche', 'ACP_PORTAL_BOTS_SETTINGS' => 'Einstellungen für Bot-Besuche',

View File

@@ -126,6 +126,7 @@ $lang = array_merge($lang, array(
'ACP_PORTAL_CALENDAR_EVENT_START_FIRST' => 'The end of the event has to be after the start of the event.', 'ACP_PORTAL_CALENDAR_EVENT_START_FIRST' => 'The end of the event has to be after the start of the event.',
'ACP_PORTAL_CALENDAR_PERMISSION' => 'Event permissions', 'ACP_PORTAL_CALENDAR_PERMISSION' => 'Event permissions',
'ACP_PORTAL_CALENDAR_PERMISSION_EXP' => 'Select the groups that should be authorized to view the event. If you want all users to be able to view the event, dont select anything.<br />Select/Deselect multiple groups by holding <samp>CTRL</samp> and clicking.', 'ACP_PORTAL_CALENDAR_PERMISSION_EXP' => 'Select the groups that should be authorized to view the event. If you want all users to be able to view the event, dont select anything.<br />Select/Deselect multiple groups by holding <samp>CTRL</samp> and clicking.',
'PORTAL_EVENTS_URL_NEW_WINDOW' => 'Open external event links in a new window',
// Logs // Logs

View File

@@ -35,6 +35,7 @@ $lang = array_merge($lang, array(
'LATEST_BOTS' => 'Latest Bots', 'LATEST_BOTS' => 'Latest Bots',
'LAST_VISITED_BOTS' => 'Last visited bots', 'LAST_VISITED_BOTS' => 'Last visited bots',
'LAST_VISITED_BOTS_CNT' => 'Last %s visited bots', 'LAST_VISITED_BOTS_CNT' => 'Last %s visited bots',
'LAST_VISITED_BOT' => 'Last visited bot',
// ACP // ACP
'ACP_PORTAL_BOTS_SETTINGS' => 'Visiting bots settings', 'ACP_PORTAL_BOTS_SETTINGS' => 'Visiting bots settings',

View File

@@ -178,6 +178,15 @@ class portal_calendar_module
{ {
if($cur_event['start_time'] >= $today_timestamp || $cur_event['end_time'] >= $today_timestamp || (($cur_event['start_time'] + 86400) >= $today_timestamp && $cur_event['all_day'])) if($cur_event['start_time'] >= $today_timestamp || $cur_event['end_time'] >= $today_timestamp || (($cur_event['start_time'] + 86400) >= $today_timestamp && $cur_event['all_day']))
{ {
// check if this is an external link
if (isset($cur_event['url']) && strpos($cur_event['url'], generate_board_url()) === false)
{
$is_external = true;
}
else
{
$is_external = false;
}
// current events // current events
if((($cur_event['start_time'] + 86400) >= $today_timestamp && $cur_event['all_day']) || ($cur_event['start_time'] <= $today_timestamp && $cur_event['end_time'] >= $today_timestamp)) if((($cur_event['start_time'] + 86400) >= $today_timestamp && $cur_event['all_day']) || ($cur_event['start_time'] <= $today_timestamp && $cur_event['end_time'] >= $today_timestamp))
{ {
@@ -189,6 +198,7 @@ class portal_calendar_module
'EVENT_DESC' => (isset($cur_event['desc']) && $cur_event['desc'] != '') ? $cur_event['desc'] : '', 'EVENT_DESC' => (isset($cur_event['desc']) && $cur_event['desc'] != '') ? $cur_event['desc'] : '',
'ALL_DAY' => ($cur_event['all_day']) ? true : false, 'ALL_DAY' => ($cur_event['all_day']) ? true : false,
'MODULE_ID' => $module_id, 'MODULE_ID' => $module_id,
'EVENT_URL_NEW_WINDOW' => ($is_external && $config['board3_events_url_new_window_' . $module_id]) ? true : false,
)); ));
} }
else else
@@ -201,6 +211,7 @@ class portal_calendar_module
'EVENT_DESC' => (isset($cur_event['desc']) && $cur_event['desc'] != '') ? $cur_event['desc'] : '', 'EVENT_DESC' => (isset($cur_event['desc']) && $cur_event['desc'] != '') ? $cur_event['desc'] : '',
'ALL_DAY' => (($cur_event['start_time'] - $cur_event['end_time']) == 1) ? true : false, 'ALL_DAY' => (($cur_event['start_time'] - $cur_event['end_time']) == 1) ? true : false,
'MODULE_ID' => $module_id, 'MODULE_ID' => $module_id,
'EVENT_URL_NEW_WINDOW' => ($is_external && $config['board3_events_url_new_window_' . $module_id]) ? true : false,
)); ));
} }
} }
@@ -221,6 +232,7 @@ class portal_calendar_module
'board3_long_month_' . $module_id => array('lang' => 'PORTAL_LONG_MONTH' , 'validate' => 'bool', 'type' => 'radio:yes_no', 'explain' => true), 'board3_long_month_' . $module_id => array('lang' => 'PORTAL_LONG_MONTH' , 'validate' => 'bool', 'type' => 'radio:yes_no', 'explain' => true),
'board3_sunday_first_' . $module_id => array('lang' => 'PORTAL_SUNDAY_FIRST' , 'validate' => 'bool', 'type' => 'radio:yes_no', 'explain' => true), 'board3_sunday_first_' . $module_id => array('lang' => 'PORTAL_SUNDAY_FIRST' , 'validate' => 'bool', 'type' => 'radio:yes_no', 'explain' => true),
'board3_display_events_' . $module_id => array('lang' => 'PORTAL_DISPLAY_EVENTS', 'validate' => 'bool', 'type' => 'radio:yes_no', 'explain' => true), 'board3_display_events_' . $module_id => array('lang' => 'PORTAL_DISPLAY_EVENTS', 'validate' => 'bool', 'type' => 'radio:yes_no', 'explain' => true),
'board3_events_url_new_window_' . $module_id => array('lang' => 'PORTAL_EVENTS_URL_NEW_WINDOW', 'validate' => 'bool', 'type' => 'radio:yes_no', 'explain' => false),
'board3_events_' . $module_id => array('lang' => 'PORTAL_EVENTS_MANAGE', 'validate' => 'string', 'type' => 'custom', 'explain' => false, 'method' => 'manage_events', 'submit' => 'update_events'), 'board3_events_' . $module_id => array('lang' => 'PORTAL_EVENTS_MANAGE', 'validate' => 'string', 'type' => 'custom', 'explain' => false, 'method' => 'manage_events', 'submit' => 'update_events'),
), ),
); );
@@ -237,6 +249,7 @@ class portal_calendar_module
set_config('board3_long_month_' . $module_id, 0); set_config('board3_long_month_' . $module_id, 0);
set_config('board3_display_events_' . $module_id, 0); set_config('board3_display_events_' . $module_id, 0);
set_config('board3_events_' . $module_id, ''); set_config('board3_events_' . $module_id, '');
set_config('board3_events_url_new_window_' . $module_id, 0);
set_portal_config('board3_calendar_events_' . $module_id, ''); set_portal_config('board3_calendar_events_' . $module_id, '');
return true; return true;
@@ -261,6 +274,7 @@ class portal_calendar_module
'board3_long_month_' . $module_id, 'board3_long_month_' . $module_id,
'board3_display_events_' . $module_id, 'board3_display_events_' . $module_id,
'board3_events_' . $module_id, 'board3_events_' . $module_id,
'board3_events_url_new_window_' . $module_id,
); );
$sql = 'DELETE FROM ' . CONFIG_TABLE . ' $sql = 'DELETE FROM ' . CONFIG_TABLE . '
WHERE ' . $db->sql_in_set('config_name', $del_config); WHERE ' . $db->sql_in_set('config_name', $del_config);

View File

@@ -64,22 +64,41 @@ class portal_latest_bots_module
AND user_lastvisit > 0 AND user_lastvisit > 0
ORDER BY user_lastvisit DESC'; ORDER BY user_lastvisit DESC';
$result = $db->sql_query_limit($sql, $config['board3_last_visited_bots_number_' . $module_id]); $result = $db->sql_query_limit($sql, $config['board3_last_visited_bots_number_' . $module_id]);
$show_module = false;
while ($row = $db->sql_fetchrow($result)) while ($row = $db->sql_fetchrow($result))
{ {
$template->assign_block_vars('last_visited_bots', array( $template->assign_block_vars('last_visited_bots', array(
'BOT_NAME' => get_username_string('full', '', $row['username'], $row['user_colour']), 'BOT_NAME' => get_username_string('full', '', $row['username'], $row['user_colour']),
'LAST_VISIT_DATE' => $user->format_date($row['user_lastvisit']), 'LAST_VISIT_DATE' => $user->format_date($row['user_lastvisit']),
)); ));
$show_module = true;
} }
$db->sql_freeresult($result); $db->sql_freeresult($result);
if($config['board3_last_visited_bots_number_' . $module_id] != 0)
{
if($config['board3_last_visited_bots_number_' . $module_id] == 1)
{
$last_visited_bots = $user->lang['LAST_VISITED_BOT'];
}
else
{
$last_visited_bots = sprintf($user->lang['LAST_VISITED_BOTS_CNT'], $config['board3_last_visited_bots_number_' . $module_id]);
}
}
else
{
$last_visited_bots = $user->lang['LAST_VISITED_BOTS'];
}
// Assign specific vars // Assign specific vars
$template->assign_vars(array( $template->assign_vars(array(
'LAST_VISITED_BOTS' => ($config['board3_last_visited_bots_number_' . $module_id] != 0) ? sprintf($user->lang['LAST_VISITED_BOTS_CNT'], $config['board3_last_visited_bots_number_' . $module_id]) : $user->lang['LAST_VISITED_BOTS'], 'LAST_VISITED_BOTS' => $last_visited_bots,
)); ));
if(!empty($row)) if($show_module)
{ {
return 'latest_bots_side.html'; return 'latest_bots_side.html';
} }

View File

@@ -41,7 +41,7 @@
<li class="row"> <li class="row">
<dl class="icon"> <dl class="icon">
<dt style="width: 100%; padding-left: 0px; padding-bottom: 5px;"> <dt style="width: 100%; padding-left: 0px; padding-bottom: 5px;">
<!-- IF minical.cur_events.EVENT_URL --><a href="{minical.cur_events.EVENT_URL}" title="{minical.cur_events.EVENT_TITLE}"><!-- ENDIF --> <!-- IF minical.cur_events.EVENT_URL --><a href="{minical.cur_events.EVENT_URL}" title="{minical.cur_events.EVENT_TITLE}" <!-- IF minical.cur_events.EVENT_URL_NEW_WINDOW -->onclick="window.open('{minical.cur_events.EVENT_URL}'); return false;"<!-- ENDIF -->><!-- ENDIF -->
<span style="font-weight: bold;">{minical.cur_events.EVENT_TITLE}:</span><br /> <span style="font-weight: bold;">{minical.cur_events.EVENT_TITLE}:</span><br />
<!-- IF minical.cur_events.ALL_DAY -->{L_EVENT_START}:&nbsp;{minical.cur_events.START_TIME}<br />{L_EVENT_ALL_DAY}<br /> <!-- IF minical.cur_events.ALL_DAY -->{L_EVENT_START}:&nbsp;{minical.cur_events.START_TIME}<br />{L_EVENT_ALL_DAY}<br />
<!-- ELSEIF not minical.cur_events.ALL_DAY and minical.cur_events.END_TIME -->{L_EVENT_START}:&nbsp;{minical.cur_events.START_TIME}<br />{L_EVENT_END}:&nbsp;{minical.cur_events.END_TIME}<br /> <!-- ELSEIF not minical.cur_events.ALL_DAY and minical.cur_events.END_TIME -->{L_EVENT_START}:&nbsp;{minical.cur_events.START_TIME}<br />{L_EVENT_END}:&nbsp;{minical.cur_events.END_TIME}<br />
@@ -65,7 +65,7 @@
<li class="row"> <li class="row">
<dl class="icon"> <dl class="icon">
<dt style="width: 100%; padding-left: 0px; padding-bottom: 5px;"> <dt style="width: 100%; padding-left: 0px; padding-bottom: 5px;">
<!-- IF minical.upcoming_events.EVENT_URL --><a href="{minical.upcoming_events.EVENT_URL}" title="{minical.upcoming_events.EVENT_TITLE}"><!-- ENDIF --> <!-- IF minical.upcoming_events.EVENT_URL --><a href="{minical.upcoming_events.EVENT_URL}" title="{minical.upcoming_events.EVENT_TITLE}" <!-- IF minical.upcoming_events.EVENT_URL_NEW_WINDOW -->onclick="window.open('{minical.upcoming_events.EVENT_URL}'); return false;"<!-- ENDIF -->><!-- ENDIF -->
<span style="font-weight: bold;">{minical.upcoming_events.EVENT_TITLE}:</span><br /> <span style="font-weight: bold;">{minical.upcoming_events.EVENT_TITLE}:</span><br />
<!-- IF minical.upcoming_events.EVENT_DESC --><span style="font-style: italic;">{minical.upcoming_events.EVENT_DESC}</span><br /><!-- ENDIF --> <!-- IF minical.upcoming_events.EVENT_DESC --><span style="font-style: italic;">{minical.upcoming_events.EVENT_DESC}</span><br /><!-- ENDIF -->
<!-- IF not minical.upcoming_events.ALL_DAY and not minical.upcoming_events.END_TIME -->{L_EVENT_TIME}:&nbsp;{minical.upcoming_events.START_TIME}<br /> <!-- IF not minical.upcoming_events.ALL_DAY and not minical.upcoming_events.END_TIME -->{L_EVENT_TIME}:&nbsp;{minical.upcoming_events.START_TIME}<br />

View File

@@ -3,7 +3,7 @@
<li><dl> <li><dl>
<dd style="border-left:0px"> <dd style="border-left:0px">
<p style="margin: 0 5px 0 5px;">{TOTAL_USERS_ONLINE} ({L_ONLINE_EXPLAIN})<br />{RECORD_USERS}<br /> <br />{LOGGED_IN_USER_LIST} <p style="margin: 0 5px 0 5px;">{TOTAL_USERS_ONLINE} ({L_ONLINE_EXPLAIN})<br />{RECORD_USERS}<br /> <br />{LOGGED_IN_USER_LIST}
<!-- IF LEGEND --><br /><em>{L_LEGEND}: {PORTAL_LEGEND}</em><!-- ENDIF --></p> <!-- IF PORTAL_LEGEND --><br /><em>{L_LEGEND}: {PORTAL_LEGEND}</em><!-- ENDIF --></p>
</dd> </dd>
</dl></li> </dl></li>
</ul> </ul>

View File

@@ -46,7 +46,7 @@
<!-- BEGIN cur_events --> <!-- BEGIN cur_events -->
<tr> <tr>
<td style="width: 100%; padding-left: 0px; padding-bottom: 5px;"> <td style="width: 100%; padding-left: 0px; padding-bottom: 5px;">
<!-- IF minical.cur_events.EVENT_URL --><a href="{minical.cur_events.EVENT_URL}" title="{minical.cur_events.EVENT_TITLE}"><!-- ENDIF --> <!-- IF minical.cur_events.EVENT_URL --><a href="{minical.cur_events.EVENT_URL}" title="{minical.cur_events.EVENT_TITLE}" <!-- IF minical.cur_events.EVENT_URL_NEW_WINDOW -->onclick="window.open('{minical.cur_events.EVENT_URL}'); return false;"<!-- ENDIF -->><!-- ENDIF -->
<span style="font-weight: bold;">{minical.cur_events.EVENT_TITLE}:</span><br /> <span style="font-weight: bold;">{minical.cur_events.EVENT_TITLE}:</span><br />
<!-- IF not minical.cur_events.ALL_DAY and not minical.cur_events.END_TIME -->{L_EVENT_TIME}:&nbsp;{minical.cur_events.START_TIME}<br /> <!-- IF not minical.cur_events.ALL_DAY and not minical.cur_events.END_TIME -->{L_EVENT_TIME}:&nbsp;{minical.cur_events.START_TIME}<br />
<!-- ELSEIF not minical.cur_events.ALL_DAY and cur_events.END_TIME -->{L_EVENT_START}:&nbsp;{minical.cur_events.START_TIME}<br />{L_EVENT_END}:&nbsp;{minical.cur_events.END_TIME}<br /> <!-- ELSEIF not minical.cur_events.ALL_DAY and cur_events.END_TIME -->{L_EVENT_START}:&nbsp;{minical.cur_events.START_TIME}<br />{L_EVENT_END}:&nbsp;{minical.cur_events.END_TIME}<br />
@@ -70,7 +70,7 @@
<!-- BEGIN upcoming_events --> <!-- BEGIN upcoming_events -->
<tr> <tr>
<td style="width: 100%; padding-left: 0px; padding-bottom: 5px;"> <td style="width: 100%; padding-left: 0px; padding-bottom: 5px;">
<!-- IF minical.upcoming_events.EVENT_URL --><a href="{minical.upcoming_events.EVENT_URL}" title="{minical.upcoming_events.EVENT_TITLE}"><!-- ENDIF --> <!-- IF minical.upcoming_events.EVENT_URL --><a href="{minical.upcoming_events.EVENT_URL}" title="{minical.upcoming_events.EVENT_TITLE}" <!-- IF minical.upcoming_events.EVENT_URL_NEW_WINDOW -->onclick="window.open('{minical.upcoming_events.EVENT_URL}'); return false;"<!-- ENDIF -->><!-- ENDIF -->
<span style="font-weight: bold;">{minical.upcoming_events.EVENT_TITLE}:</span><br /> <span style="font-weight: bold;">{minical.upcoming_events.EVENT_TITLE}:</span><br />
<!-- IF not minical.upcoming_events.ALL_DAY and not minical.upcoming_events.END_TIME -->{L_EVENT_TIME}:&nbsp;{minical.upcoming_events.START_TIME}<br /> <!-- IF not minical.upcoming_events.ALL_DAY and not minical.upcoming_events.END_TIME -->{L_EVENT_TIME}:&nbsp;{minical.upcoming_events.START_TIME}<br />
<!-- ELSEIF not minical.upcoming_events.ALL_DAY and minical.upcoming_events.END_TIME -->{L_EVENT_START}:&nbsp;{minical.upcoming_events.START_TIME}<br />{L_EVENT_END}:&nbsp;{minical.upcoming_events.END_TIME}<br /> <!-- ELSEIF not minical.upcoming_events.ALL_DAY and minical.upcoming_events.END_TIME -->{L_EVENT_START}:&nbsp;{minical.upcoming_events.START_TIME}<br />{L_EVENT_END}:&nbsp;{minical.upcoming_events.END_TIME}<br />

View File

@@ -10,7 +10,7 @@
<!-- ENDIF --> <!-- ENDIF -->
<td class="row1" width="100%"><span class="genmed">{TOTAL_USERS_ONLINE} ({L_ONLINE_EXPLAIN})<br />{RECORD_USERS}<br /><br />{LOGGED_IN_USER_LIST}</span></td> <td class="row1" width="100%"><span class="genmed">{TOTAL_USERS_ONLINE} ({L_ONLINE_EXPLAIN})<br />{RECORD_USERS}<br /><br />{LOGGED_IN_USER_LIST}</span></td>
</tr> </tr>
<!-- IF LEGEND --> <!-- IF PORTAL_LEGEND -->
<tr> <tr>
<td class="row1"><b class="gensmall">{L_LEGEND}: {PORTAL_LEGEND}</b></td> <td class="row1"><b class="gensmall">{L_LEGEND}: {PORTAL_LEGEND}</b></td>
</tr> </tr>