? inline_prevent_duplicates.patch
Index: inline.module
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/inline/inline.module,v
retrieving revision 1.19.2.7
diff -u -p -r1.19.2.7 inline.module
--- inline.module 18 Apr 2007 11:22:27 -0000 1.19.2.7
+++ inline.module 30 Apr 2008 11:30:35 -0000
@@ -282,11 +282,11 @@ function theme_inline_img($file, $field)
}
function theme_inline_add_to_teaser($node, $file, $field) {
- return theme('inline_img', $file, $field) . $node->teaser;
+ return '' . theme('inline_img', $file, $field) . '' . $node->teaser;
}
function theme_inline_add_to_body($node, $file, $field) {
- return theme('inline_img', $file, $field) . $node->body;
+ return '' . theme('inline_img', $file, $field) . '' . $node->body;
}
function _inline_auto_add($node) {
@@ -297,40 +297,46 @@ function _inline_auto_add($node) {
switch (variable_get('upload_inline_'. $node->type, 0)) {
case 1:
foreach ($node->files as $fid => $file) {
- $file = inline_prepare_file_object($file);
- if (_inline_decide_img_tag($file)) {
- $node->files[$fid]->inline = TRUE;
- $node->teaser = theme('inline_add_to_teaser', $node, $file, 'teaser');
- }
- else {
- $node->files[$fid]->inline = FALSE;
+ if(!$node->files[$fid]->inline) {
+ $file = inline_prepare_file_object($file);
+ if (_inline_decide_img_tag($file)) {
+ $node->files[$fid]->inline = TRUE;
+ $node->teaser = theme('inline_add_to_teaser', $node, $file, 'teaser');
+ }
+ else {
+ $node->files[$fid]->inline = FALSE;
+ }
}
}
break;
case 2:
foreach ($node->files as $fid => $file) {
- $file = inline_prepare_file_object($file);
- if (_inline_decide_img_tag($file)) {
- $node->files[$fid]->inline = TRUE;
- $node->body = theme('inline_add_to_body', $node, $file, 'body');
- }
- else {
- $node->files[$fid]->inline = FALSE;
+ if(!$node->files[$fid]->inline) {
+ $file = inline_prepare_file_object($file);
+ if (_inline_decide_img_tag($file)) {
+ $node->files[$fid]->inline = TRUE;
+ $node->body = theme('inline_add_to_body', $node, $file, 'body');
+ }
+ else {
+ $node->files[$fid]->inline = FALSE;
+ }
}
}
break;
case 3:
foreach ($node->files as $fid => $file) {
- $file = inline_prepare_file_object($file);
- if (_inline_decide_img_tag($file)) {
- $node->files[$fid]->inline = TRUE;
- $node->teaser = theme('inline_add_to_teaser', $node, $file, 'teaser');
- $node->body = theme('inline_add_to_body', $node, $file, 'body');
- }
- else {
- $node->files[$fid]->inline = FALSE;
+ if(!$node->files[$fid]->inline) {
+ $file = inline_prepare_file_object($file);
+ if (_inline_decide_img_tag($file)) {
+ $node->files[$fid]->inline = TRUE;
+ $node->teaser = theme('inline_add_to_teaser', $node, $file, 'teaser');
+ $node->body = theme('inline_add_to_body', $node, $file, 'body');
+ }
+ else {
+ $node->files[$fid]->inline = FALSE;
+ }
}
}
break;
@@ -357,6 +363,7 @@ function _inline_substitute_tags(&$node,
else {
$replace = theme('inline_as_link', $file);
}
+ $node->files[$file->fid]->inline = TRUE;
}
else {
$replace = "NOT FOUND: $value";