TYPOlight Open Source CMS > TYPOlight forum

Switch to german forum

Index > Announcements > Changes in the upcoming version 2.7

leo
Administrator
Avatar
Posts: 6824
München, Germany
In version 2.7, I finally made some changes that we avoided in the past for reasons of backward compatibility. I have also removed a lot of deprecated stuff and overworked all (!) language files, so you as a developer, translator or system administrator can expect some things to do :rolleyes:

1. Template nav_default

Finally, the p tag marking the active menu item has been replaced with a span tag, which is better in terms of accessibility. However, it requires either to adjust your CSS code or to create a custom template and reinsert the p tag there.

2. Class "error" in form fields

Before version 2.7, only the div tag with the error message had the error class. Now, it is applied to all field elements (label, input field and error message), so you have more control over the formatting. However, this requires to adjust your CSS code and specify exact selectors (e.g. div.error, p.error instead of just .error).

3. Mootools version 1.2

Although the first beta version (2.7.RC1) is still powered by mootools 1.1, the JavaScript library will be updated in the next release (2.7.RC2). So if you are using custom mootools scripts, you might have to adapt them to the new syntax.

Please do not reply to this thread until version 2.7 has been released. There are more changes to come…
14/03/2009 19:10
leo
Administrator
Avatar
Posts: 6824
München, Germany
4. Date format in news is dropped

The "date format" field that has been available in news modules is dropped in version 2.7, because (localized) textual date representations (e.g. January 2009) are finally supported in the front end. If you still need an individual date format in your news module, you can customize the template (textual dates can be parsed as $this->formatDate($format, $date);).

5. Text alignment in content elements and modules is dropped

The "text alignment" drop-down menu that has been available in content elements and modules is dropped in version 2.7, because it caused a lot of confusion in the past (e.g. had a different effect on text than on tables or images). The alignment should be done with a CSS class or the rich text editor in the future.
14/03/2009 19:34
leo
Administrator
Avatar
Posts: 6824
München, Germany
6. Changed redirect header

The central redirect() function has been adapted to HTTP/1.1 and now sends a 303 See Other header by default. To set up a permanent or temporary redirect, you have to pass the status code as second argument instead of true or false!

iconphp:
$this->redirect($target); // 303 See Other
$this->redirect($target, 302); // 302 Found
$this->redirect($target, 301); // 301 Moved Permanently
18/03/2009 19:41
leo
Administrator
Avatar
Posts: 6824
München, Germany
7. IE8-specific style sheets

Despite passing the Acid test, IE8 compatibility could only be accomplished with an additional ie8fixes.css, so all custom back end templates need to be adjusted. If you are using an individual back end theme, you should additionally track the changes to the existing style sheets and apply them accordingly.

New style sheet order in the "be_main" template:

iconphp:
<link rel="stylesheet" type="text/css" href="system/themes/<?php echo $this->theme; ?>/basic.css" media="screen" />
<link rel="stylesheet" type="text/css" href="system/themes/<?php echo $this->theme; ?>/main.css" media="screen" />
<link rel="stylesheet" type="text/css" href="plugins/calendar/calendar.css" media="screen" />
<?php if ($this->be27): ?>
<link rel="stylesheet" type="text/css" href="system/themes/<?php echo $this->theme; ?>/be27.css" media="screen" />
<?php endif; ?>
<?php if ($this->isMac): ?>
<link type="text/css" rel="stylesheet" href="system/themes/<?php echo $this->theme; ?>/macfixes.css" media="screen" />
<?php endif; ?>
<!--[if lte IE 7]><link type="text/css" rel="stylesheet" href="system/themes/<?php echo $this->theme; ?>/iefixes.css" media="screen" /><![endif]-->
<!--[if IE 8]><link type="text/css" rel="stylesheet" href="system/themes/<?php echo $this->theme; ?>/ie8fixes.css" media="screen" /><![endif]-->
<?php echo $this->stylesheets; ?>
23/03/2009 17:43
leo
Administrator
Avatar
Posts: 6824
München, Germany
8. Module mini-calendar

The "mini-calendar" module is dropped in version 2.7. You can choose the mini-calendar view as a template in the calendar module instead, which makes creating custom layouts more flexible. You might have to adjust some CSS code, though:

iconcss:
/* No longer possible in version 2.7 */
.mod_calendar td {}
.mod_minicalendar td {}
 
/* Possible ever since, recommended in version 2.7 */
table.calendar td {}
table.minicalendar td {}
25/03/2009 12:50
leo
Administrator
Avatar
Posts: 6824
München, Germany
9. Newsletter templates

The channel selection menu in the "subscribe" and "unsubscribe" modules can be hidden in version 2.7. Then, the channel selection is static and can not be modified by the subscriber. The feature requires adjustment of the "nl_default.tpl" template:

iconphp:
<input type="hidden" name="FORM_SUBMIT" value="<?php echo $this->formId; ?>" />
<?php if (!$this->showChannels): ?>
<?php foreach ($this->channels as $id=>$title): ?>
<input type="hidden" name="channels[]" value="<?php echo $id; ?>" />
<?php endforeach; ?>
<?php endif; ?>
<input type="text" name="email" class="text" value="<?php echo $this->email; ?>" />
<?php if ($this->showChannels): ?>
<div class="checkbox_container">
<?php foreach ($this->channels as $id=>$title): ?>
<span><input type="checkbox" name="channels[]" id="opt_<?php echo $this->id; ?>_<?php echo $id; ?>" value="<?php echo $id; ?>" class="checkbox" /> <label for="opt_<?php echo $this->id; ?>_<?php echo $id; ?>"><?php echo $title; ?></label></span>
<?php endforeach; ?>
</div>
<?php endif; ?>
<input type="submit" name="submit" class="submit" value="<?php echo $this->submit; ?>" />
30/03/2009 00:15
leo
Administrator
Avatar
Posts: 6824
München, Germany
10. Deprecated navigation modules

The navigation modules "navigation main" and "navigation sub items" have been completely removed. You can recreate their functionality with the normal navigation menu by using a start and stop level.

  • NavigationMain = navigation menu with start level 0, stop level 1 and "hard limit"
  • NavigationSub = navigation menu with start level 1 and any stop level

Switching the navigation module might require adjusting your CSS code, in case you used .mod_navigationMain or .mod_navigationSub to reference the module in your style sheet. It is recommended to assign a CSS ID instead.
02/04/2009 10:51
leo
Administrator
Avatar
Posts: 6824
München, Germany
Followup on 2. Class "error" in form fields

Widget error messages will be rendered as P tags instead of DIV tags in the future. This aligns the behaviour of the form generator with the modules, which have been wrapping error messages in P tags ever since. It also spares you to create an additional format definition div.error and prevents ambiguous referencing of the checkbox and radio widgets. However, the change will only be included in version 2.7.0.
12/04/2009 14:48
leo
Administrator
Avatar
Posts: 6824
München, Germany
11. Adjustment of the one-column login template

The login template "mod_login_1cl" will be adapted to the structure of the tableless form fields.

iconphp:
<form action="<?php echo $this->action; ?>" method="post">
<div class="formbody">
<?php if ($this->message): ?>
<p class="error"><?php echo $this->message; ?></p>
<?php endif; ?>
<input type="hidden" name="FORM_SUBMIT" value="tl_login" />
<label for="username"><?php echo $this->username; ?></label>
<input type="text" name="username" id="username" class="text" maxlength="64" value="<?php echo $this->value; ?>" /><br />
<label for="password"><?php echo $this->password; ?></label>
<input type="password" name="password" id="password" class="text password" maxlength="64" value="" /><br />
<div class="submit_container">
<input type="submit" class="submit" value="<?php echo $this->slabel; ?>" />
</div>
</div>
</form>

The templates also get the additional class "tableless" (one-column) or "tableform" (two-column).
16/04/2009 12:49