so habs geschafft!
hier die kurze Auflösung für die getFormats
PHP-Code:
$GLOBALS['TL_DCA']['tl_module']['fields']['cal_format'] = array();
...
'options_callback' => array('MyEvents', 'getMyFormats'),
...
das in eine neue Klasse gepackt und darin die Originalfunktion um 'cal_own' => array('past_7_next_7') erweitert
PHP-Code:
public function getMyFormats(DataContainer $dc)
{
if ($dc->activeRecord->type == 'eventmenu')
{
return array('cal_day', 'cal_month', 'cal_year');
}
return array
(
'cal_list' => array('cal_day', 'cal_month', 'cal_year', 'cal_all'),
'cal_upcoming' => array('next_7', 'next_14', 'next_30', 'next_90', 'next_180', 'next_365', 'next_two', 'next_cur_month', 'next_cur_year', 'next_next_month', 'next_next_year', 'next_all'),
'cal_past' => array('past_7', 'past_14', 'past_30', 'past_90', 'past_180', 'past_365', 'past_two', 'past_cur_month', 'past_cur_year', 'past_prev_month', 'past_prev_year', 'past_all'),
'cal_own' => array('past_7_next_7')
);
}
ausgegeben wird's dann über
PHP-Code:
use Contao\Events as CoreClass_Events;
abstract class Events extends CoreClass_Events
{
protected function getDatesFromFormat(\Date $objDate, $strFormat)
{
$Original = parent::getDatesFromFormat($objDate, $strFormat);
switch ($strFormat)
{
case 'past_7_next_7':
return array((strtotime('-7 days') - 1), (strtotime('+7 days') - 1), $GLOBALS['TL_LANG']['MSC']['cal_empty']);
break;
default:
return $Original;
}
}
}
die languages anpassen
PHP-Code:
...
<trans-unit id="tl_module.cal_own">
<source>Own events</source>
<target>Eigene Events</target>
</trans-unit>
<trans-unit id="tl_module.past_7_next_7">
<source>- 1 week / + 1 week</source>
<target>- 1 Woche / + 1 Woche</target>
</trans-unit>
...
und dann kommts auch in schön:
das Ganze natürlich ohne Gewähr...
Event.png
Lesezeichen