summaryrefslogtreecommitdiff
path: root/modules/node/node.pages.inc
diff options
context:
space:
mode:
authorGábor Hojtsy <gabor@hojtsy.hu>2008-01-09 12:10:04 +0000
committerGábor Hojtsy <gabor@hojtsy.hu>2008-01-09 12:10:04 +0000
commitdb55c269da3089b1b18d428793143a4786ffe1c0 (patch)
tree4a711ff7941c622ca7c7c4cb0ebef1467b990e1d /modules/node/node.pages.inc
parent6ab877faf12c9760be3cefa79c2075c9dbdfcf49 (diff)
downloadbrdo-db55c269da3089b1b18d428793143a4786ffe1c0.tar.gz
brdo-db55c269da3089b1b18d428793143a4786ffe1c0.tar.bz2
#201667 by theborg, quicksketch, gpk, catch: fix bugs with teaser splitter in JS and no-JS mode
Diffstat (limited to 'modules/node/node.pages.inc')
-rw-r--r--modules/node/node.pages.inc19
1 files changed, 17 insertions, 2 deletions
diff --git a/modules/node/node.pages.inc b/modules/node/node.pages.inc
index 7c667498e..ab0ae912a 100644
--- a/modules/node/node.pages.inc
+++ b/modules/node/node.pages.inc
@@ -262,7 +262,7 @@ function node_body_field(&$node, $label, $word_count) {
$include = !isset($node->teaser) || ($node->teaser == substr($node->body, 0, strlen($node->teaser)));
$form = array(
- '#after_build' => array('node_teaser_js'));
+ '#after_build' => array('node_teaser_js', 'node_teaser_include_verify'));
$form['#prefix'] = '<div class="body-field-wrapper">';
$form['#suffix'] = '</div>';
@@ -414,7 +414,22 @@ function node_preview($node) {
*/
function theme_node_preview($node) {
$output = '<div class="preview">';
- if (!empty($node->teaser) && !empty($node->body) && $node->teaser != $node->body) {
+
+ $preview_trimmed_version = FALSE;
+ // Do we need to preview trimmed version of post as well as full version?
+ if (isset($node->teaser) && isset($node->body)) {
+ $teaser = trim($node->teaser);
+ $body = trim(str_replace('<!--break-->', '', $node->body));
+
+ // Preview trimmed version if teaser and body will appear different;
+ // also (edge case) if both teaser and body have been specified by the user
+ // and are actually the same.
+ if ($teaser != $body || ($body && strpos($node->body, '<!--break-->') === 0)) {
+ $preview_trimmed_version = TRUE;
+ }
+ }
+
+ if ($preview_trimmed_version) {
drupal_set_message(t('The trimmed version of your post shows what your post looks like when promoted to the main page or when exported for syndication.<span class="no-js"> You can insert the delimiter "&lt;!--break--&gt;" (without the quotes) to fine-tune where your post gets split.</span>'));
$output .= '<h3>'. t('Preview trimmed version') .'</h3>';
$output .= node_view(drupal_clone($node), 1, FALSE, 0);