Version 1.1-alpha7()
------------------------------------------------------------------------
+ * Replaced core smarty assign() calls to assign_by_ref() where
+ appropriate. (Falk Döring, garvinhicking)
+ TODO: This might introduce oddities! Check thoroughly.
+
* Fixed not showing entries in the quicksearch that have the
"no frontpage" entryproperty set (garvinhicking)
$comments = serendipity_fetchComments($id);
}
- $serendipity['smarty']->assign(
- array(
+ $commentform_data = array(
'commentform_action' => $url,
'commentform_id' => $id,
'commentform_name' => isset($data['name']) ? htmlspecialchars($data['name']) : (isset($serendipity['COOKIE']['name']) ? htmlspecialchars($serendipity['COOKIE']['name']) : ''),
'is_allowSubscriptions' => $serendipity['allowSubscriptions'],
'is_moderate_comments' => $moderate_comments,
'commentform_entry' => $entry
- )
);
+ $serendipity['smarty']->assign($commentform_data);
+
serendipity_smarty_fetch('COMMENTFORM', 'commentform.tpl');
}
return true;
}
- $serendipity['smarty']->assign('comments', $_smartyComments);
+ $serendipity['smarty']->assign_by_ref('comments', $_smartyComments);
unset($_smartyComments);
return serendipity_smarty_fetch('COMMENTS', 'comments.tpl');
if ($use_smarty) {
$preview = ob_get_contents();
ob_end_clean();
- $serendipity['smarty']->assign('preview', $preview);
+ $serendipity['smarty']->assign_by_ref('preview', $preview);
$serendipity['smarty']->display(serendipity_getTemplateFile('preview_iframe.tpl', 'serendipityPath'));
}
/* IF WE ARE DISPLAYING A FULL ENTRY */
if (isset($serendipity['GET']['id'])) {
- $serendipity['smarty']->assign(
- array(
- 'comments_messagestack' => (isset($serendipity['messagestack']['comments']) ? (array)$serendipity['messagestack']['comments'] : array()),
- 'is_comment_added' => (isset($serendipity['GET']['csuccess']) && $serendipity['GET']['csuccess'] == 'true' ? true: false),
- 'is_comment_moderate' => (isset($serendipity['GET']['csuccess']) && $serendipity['GET']['csuccess'] == 'moderate' ? true: false)
- )
+ $comment_add_data = array(
+ 'comments_messagestack' => (isset($serendipity['messagestack']['comments']) ? (array)$serendipity['messagestack']['comments'] : array()),
+ 'is_comment_added' => (isset($serendipity['GET']['csuccess']) && $serendipity['GET']['csuccess'] == 'true' ? true: false),
+ 'is_comment_moderate' => (isset($serendipity['GET']['csuccess']) && $serendipity['GET']['csuccess'] == 'moderate' ? true: false)
);
+ $serendipity['smarty']->assign($comment_add_data);
+
serendipity_displayCommentForm(
$entry['id'],
$serendipity['serendipityHTTPPath'] . $serendipity['indexFile'] . '?url=' . $entry['commURL'],
serendipity_printEntryFooter();
}
- $serendipity['smarty']->assign('entries', $dategroup);
+ $serendipity['smarty']->assign_by_ref('entries', $dategroup);
unset($entries, $dategroup);
if (isset($serendipity['short_archives']) && $serendipity['short_archives']) {
$output[$y]['months'][] = $data;
}
}
- $serendipity['smarty']->assign(array('archives' => $output,
- 'max_entries' => $max));
+
+ $serendipity['smarty']->assign_by_ref('archives', $output);
+ $serendipity['smarty']->assign_by_ref('max_entries', $max);
serendipity_smarty_fetch('ARCHIVES', 'entries_archives.tpl', true);
}
$media['paths'] =& serendipity_getMediaPaths();
}
- $serendipity['smarty']->assign('media', $media);
+ $serendipity['smarty']->assign_by_ref('media', $media);
if ($enclose) {
serendipity_smarty_fetch('MEDIA_ITEMS', 'admin/media_items.tpl');
* @param boolean If true, also non-approved trackbacks will be shown
* @return
*/
-function serendipity_fetchTrackbacks($id, $limit = null, $showAll = false) {
+function &serendipity_fetchTrackbacks($id, $limit = null, $showAll = false) {
global $serendipity;
if (!$showAll) {
* @param array The superarray of trackbacks to display
* @return
*/
-function serendipity_printTrackbacks($trackbacks) {
+function &serendipity_printTrackbacks(&$trackbacks) {
global $serendipity;
- $serendipity['smarty']->assign('trackbacks', $trackbacks);
+ $serendipity['smarty']->assign_by_ref('trackbacks', $trackbacks);
return serendipity_smarty_fetch('TRACKBACKS', 'trackbacks.tpl');
}
function &serendipity_smarty_fetch($block, $file, $echo = false) {
global $serendipity;
- $output = $serendipity['smarty']->fetch('file:'. serendipity_getTemplateFile($file, 'serendipityPath'), null, null, ($echo === true && $serendipity['smarty_raw_mode']));
- $serendipity['smarty']->assign($block, $output);
+ $output =& $serendipity['smarty']->fetch('file:'. serendipity_getTemplateFile($file, 'serendipityPath'), null, null, ($echo === true && $serendipity['smarty_raw_mode']));
+ $serendipity['smarty']->assign_by_ref($block, $output);
return $output;
}
* @param object Smarty object
* @return
*/
-function serendipity_smarty_printTrackbacks($params, &$smarty) {
+function &serendipity_smarty_printTrackbacks($params, &$smarty) {
if ( !isset($params['entry']) ) {
$smarty->trigger_error(__FUNCTION__ .": missing 'entry' parameter");
return;
}
- return serendipity_printTrackbacks(serendipity_fetchTrackbacks($params['entry']));
+ $tb =& serendipity_fetchTrackbacks($params['entry']);
+ return serendipity_printTrackbacks($tb);
}
/**
if (is_array($template_config)) {
$template_vars =& serendipity_loadThemeOptions($template_config);
- $serendipity['smarty']->assign('template_option', $template_vars);
+ $serendipity['smarty']->assign_by_ref('template_option', $template_vars);
}
return true;
chdir($serendipity_directory);
$raw_data = ob_get_contents();
ob_end_clean();
- $serendipity['smarty']->assign('content_message', $raw_data);
+ $serendipity['smarty']->assign_by_ref('content_message', $raw_data);
serendipity_smarty_fetch('CONTENT', 'content.tpl');
$serendipity['smarty']->assign('ENTRIES', '');
serendipity_plugin_api::hook_event('genpage', $uri, $uri_addData);
serendipity_smarty_init($serendipity['plugindata']['smartyvars']);
-$serendipity['smarty']->assign(
- array(
- 'leftSidebarElements' => serendipity_plugin_api::count_plugins('left'),
- 'rightSidebarElements' => serendipity_plugin_api::count_plugins('right')
- )
-);
+$leftSidebarElements = serendipity_plugin_api::count_plugins('left');
+$rightSidebarElements = serendipity_plugin_api::count_plugins('right');
+$serendipity['smarty']->assign_by_ref('leftSidebarElements', $leftSidebarElements);
+$serendipity['smarty']->assign_by_ref('rightSidebarElements', $rightSidebarElements);
if ($serendipity['smarty_raw_mode']) {
/* For BC reasons, we have to ask for layout.php */
}
}
- $serendipity['smarty']->assign(
- array(
- 'plugindata' => $pluginData,
- 'pluginside' => ucfirst($side)
- )
- );
-
+ $serendipity['smarty']->assign_by_ref('plugindata', $pluginData);
+ $serendipity['smarty']->assign('pluginside', ucfirst($side));
return serendipity_smarty_fetch('sidebar_'. $side, 'sidebar.tpl', true);
}
} // end for
} // end for
- $serendipity['smarty']->assign('plugin_calendar_weeks', $smartyRows);
+ $serendipity['smarty']->assign_by_ref('plugin_calendar_weeks', $smartyRows);
$dow = array();
for ($i = 1; $i <= 7; $i++) {
$dow[] = array('date' => mktime(0, 0, 0, 3, $bow + $i - 1, 2004));
}
- $serendipity['smarty']->assign('plugin_calendar_dow', $dow);
+ $serendipity['smarty']->assign_by_ref('plugin_calendar_dow', $dow);
- $serendipity['smarty']->assign('plugin_calendar_head', array('month_date' => $ts,
+ $plugin_calendar_data = array('month_date' => $ts,
'uri_previous' => serendipity_archiveDateUrl(sprintf('%04d/%02d', $previousYear, $previousMonth). $add_query),
'uri_month' => serendipity_archiveDateUrl(sprintf('%04d/%02d', $year, $month) . $add_query),
'uri_next' => serendipity_archiveDateUrl(sprintf('%04d/%02d',$nextYear, $nextMonth) . $add_query),
'minScroll' => $minmax[0]['min'],
- 'maxScroll' => $minmax[0]['max']));
+ 'maxScroll' => $minmax[0]['max']);
+ $serendipity['smarty']->assign_by_ref('plugin_calendar_head', $plugin_calendar_data);
echo serendipity_smarty_fetch('CALENDAR', 'plugin_calendar.tpl');
} // end function
if (!$smarty) {
echo $html;
} else {
- $serendipity['smarty']->assign(array(
+ $plugin_categories_data = array(
'is_form' => $is_form,
'category_image' => $image,
'form_url' => $serendipity['baseURL'] . $serendipity['indexFile'],
'categories' => is_array($categories) ? $categories : array()
- ));
+ );
+ $serendipity['smarty']->assign($plugin_categories_data);
echo serendipity_smarty_fetch('CATEGORIES', 'plugin_categories.tpl');
}
}
$openkey = 'item index="' . $key . '"';
$closekey = 'item';
} else {
- $openkey = $closekey = $key;
+ $openkey = $closekey = str_replace(':', '_', $key);
}
if (is_array($val)) {
if (!defined('NO_EXIT')) {
$raw_data = ob_get_contents();
ob_end_clean();
- $serendipity['smarty']->assign('raw_data', $raw_data);
+ $serendipity['smarty']->assign_by_ref('raw_data', $raw_data);
if (empty($serendipity['smarty_file'])) {
$serendipity['smarty_file'] = '404.tpl';
}
$namespace_display_dat = $entries['display_dat'];
unset($entries['display_dat']);
+$serendipity['smarty']->assign_by_ref('metadata', $metadata);
+$serendipity['smarty']->assign_by_ref('entries', $entries);
+$serendipity['smarty']->assign_by_ref('namespace_display_dat', $namespace_display_dat);
+$serendipity['smarty']->assign_by_ref('once_display_dat', $once_display_dat);
+
$serendipity['smarty']->assign(
array(
- 'metadata' => $metadata,
- 'entries' => $entries,
'is_comments' => $comments,
'last_modified' => $gm_modified,
'self_url' => $self_url,
- 'namespace_display_dat' => $namespace_display_dat,
- 'once_display_dat' => $once_display_dat
)
);
$serendipity['smarty']->display($template_file);
'GET_STRING' => serendipity_build_query($_GET),
'frameset' => true
);
- $serendipity['smarty']->assign('media', $media);
+ $serendipity['smarty']->assign_by_ref('media', $media);
$serendipity['smarty']->display(serendipity_getTemplateFile('admin/media_choose.tpl', 'serendipityPath'));
return;
}
}
$media = array_merge($serendipity['GET'], $media);
-$serendipity['smarty']->assign('media', $media);
+$serendipity['smarty']->assign_by_ref('media', $media);
$serendipity['smarty']->display(serendipity_getTemplateFile($showFile, 'serendipityPath'));
/* vim: set sts=4 ts=4 expandtab : */
\ No newline at end of file