Fix MediaLibrary objects not pass through into entryproperties CustomFields
and replaces some old "|@" Smarty 2 array "type hintings" to "|". Also fixes the default fallback in default/admin/media_choose.tpl, which also missed the serendipity js namespace. @yellowled Please trigger a default/admin/serendipity_editor.js run to fetch up with all latterly added changes.
This commit is contained in:
docs
plugins/serendipity_event_entryproperties
templates
@ -1,6 +1,9 @@
|
||||
Version 2.1 ()
|
||||
------------------------------------------------------------------------
|
||||
|
||||
* Fix MediaLibrary objects not pass through into entryproperties
|
||||
CustomFields
|
||||
|
||||
* Added new bulk image move ability to MediaLibrary
|
||||
|
||||
* Fix importers to use the new mysqli API extension with PHP 5+
|
||||
|
@ -466,7 +466,7 @@ class serendipity_event_entryproperties extends serendipity_event
|
||||
<?php
|
||||
foreach($fields AS $fieldname) {
|
||||
$fieldparts = explode(':', $fieldname);
|
||||
$fieldname = $fieldparts[0];
|
||||
$fieldname = $fieldparts[0];
|
||||
$_fieldname = serendipity_specialchars(trim($fieldname));
|
||||
|
||||
if (isset($serendipity['POST']['properties'][$_fieldname])) {
|
||||
|
@ -8,7 +8,7 @@
|
||||
<div class="clearfix">
|
||||
{if $media.file.is_image}
|
||||
{serendipity_hookPlugin hook="frontend_image_selector" eventData=$media.file hookAll=true}
|
||||
<h1>{$CONST.YOU_CHOSE|@sprintf:$media.file.realname}</h1>
|
||||
<h1>{$CONST.YOU_CHOSE|sprintf:$media.file.realname}</h1>
|
||||
|
||||
<img src="{$media.file.imgsrc}" alt="">
|
||||
|
||||
@ -41,12 +41,12 @@
|
||||
|
||||
<div class="clearfix">
|
||||
<div class="form_radio">
|
||||
<input id="radio_link_no" name="serendipity[linkThumbnail]" type="radio" value="no" {'linkThumbnail'|@ifRemember:'no':true}>
|
||||
<input id="radio_link_no" name="serendipity[linkThumbnail]" type="radio" value="no" {'linkThumbnail'|ifRemember:'no':true}>
|
||||
<label for="radio_link_no">{$CONST.I_WANT_THUMB}</label>
|
||||
</div>
|
||||
|
||||
<div class="form_radio">
|
||||
<input id="radio_link_yes" name="serendipity[linkThumbnail]" type="radio" value="yes" {'linkThumbnail'|@ifRemember:'yes'}>
|
||||
<input id="radio_link_yes" name="serendipity[linkThumbnail]" type="radio" value="yes" {'linkThumbnail'|ifRemember:'yes'}>
|
||||
<label for="radio_link_yes">{$CONST.I_WANT_BIG_IMAGE}</label>
|
||||
</div>
|
||||
</div>
|
||||
@ -58,17 +58,17 @@
|
||||
|
||||
<div class="clearfix">
|
||||
<div class="form_radio">
|
||||
<input id="image_align_top" name="serendipity[align]" {'align'|@ifRemember:''} type="radio" value="">
|
||||
<input id="image_align_top" name="serendipity[align]" {'align'|ifRemember:''} type="radio" value="">
|
||||
<label for="image_align_top"><img src="{serendipity_getFile file='img/img_align_top.png'}" alt="{$CONST.ALIGN_TOP}"></label>
|
||||
</div>
|
||||
|
||||
<div class="form_radio">
|
||||
<input id="image_align_left" name="serendipity[align]" {'align'|@ifRemember:'left':true} type="radio" value="left">
|
||||
<input id="image_align_left" name="serendipity[align]" {'align'|ifRemember:'left':true} type="radio" value="left">
|
||||
<label for="image_align_left"><img src="{serendipity_getFile file='img/img_align_left.png'}" alt="{$CONST.ALIGN_LEFT}"></label>
|
||||
</div>
|
||||
|
||||
<div class="form_radio">
|
||||
<input id="image_align_right" name="serendipity[align]" {'align'|@ifRemember:'right'} type="radio" value="right">
|
||||
<input id="image_align_right" name="serendipity[align]" {'align'|ifRemember:'right'} type="radio" value="right">
|
||||
<label for="image_align_right"><img src="{serendipity_getFile file='img/img_align_right.png'}" alt="{$CONST.ALIGN_RIGHT}"></label>
|
||||
</div>
|
||||
</div>
|
||||
@ -80,12 +80,12 @@
|
||||
|
||||
<div class="clearfix">
|
||||
<div class="form_radio">
|
||||
<input id="radio_islink_no" name="serendipity[isLink]" type="radio" value="no" {'isLink'|@ifRemember:'no':true}>
|
||||
<input id="radio_islink_no" name="serendipity[isLink]" type="radio" value="no" {'isLink'|ifRemember:'no':true}>
|
||||
<label for="radio_islink_no">{$CONST.I_WANT_NO_LINK}</label>
|
||||
</div>
|
||||
|
||||
<div class="form_radio">
|
||||
<input id="radio_islink_yes" name="serendipity[isLink]" type="radio" value="yes" {'isLink'|@ifRemember:'yes'}>
|
||||
<input id="radio_islink_yes" name="serendipity[isLink]" type="radio" value="yes" {'isLink'|ifRemember:'yes'}>
|
||||
<label for="radio_islink_yes">{$CONST.I_WANT_IT_TO_LINK}</label>
|
||||
|
||||
<div class="form_field">
|
||||
@ -103,10 +103,10 @@
|
||||
|
||||
<div class="form_select">
|
||||
<select id="select_image_target" name="serendipity[target]">
|
||||
<option value="none" {'target'|@ifRemember:'none':false:'selected'}>{$CONST.NONE}</option>
|
||||
<option value="js" {'target'|@ifRemember:'js':false:'selected'}>{$CONST.MEDIA_TARGET_JS}</option>
|
||||
<option value="plugin" {'target'|@ifRemember:'plugin':false:'selected'}>{$CONST.MEDIA_ENTRY}</option>
|
||||
<option value="_blank" {'target'|@ifRemember:'_blank':false:'selected'}>{$CONST.MEDIA_TARGET_BLANK}</option>
|
||||
<option value="none" {'target'|ifRemember:'none':false:'selected'}>{$CONST.NONE}</option>
|
||||
<option value="js" {'target'|ifRemember:'js':false:'selected'}>{$CONST.MEDIA_TARGET_JS}</option>
|
||||
<option value="plugin" {'target'|ifRemember:'plugin':false:'selected'}>{$CONST.MEDIA_ENTRY}</option>
|
||||
<option value="_blank" {'target'|ifRemember:'_blank':false:'selected'}>{$CONST.MEDIA_TARGET_BLANK}</option>
|
||||
</select>
|
||||
{serendipity_hookPlugin hookAll=true hook='frontend_image_selector_imagelink2' eventData=$media.file}
|
||||
<label for="select_image_target">{$CONST.MEDIA_TARGET}</label>
|
||||
@ -143,6 +143,11 @@
|
||||
{if $media.filename_only}
|
||||
<script>
|
||||
{serendipity_hookPlugin hookAll=true hook='frontend_image_add_filenameonly' eventData=$media}
|
||||
if (parent.self.opener == undefined) {
|
||||
// in iframes, there is no opener, and the magnific popup is wrapped
|
||||
parent.self = window.parent.parent.$.magnificPopup;
|
||||
parent.self.opener = window.parent.parent;
|
||||
}
|
||||
parent.self.opener.serendipity.serendipity_imageSelector_addToElement('{$media.file.full_file|escape}', '{$media.htmltarget|escape}');
|
||||
parent.self.close();
|
||||
</script>
|
||||
@ -155,11 +160,11 @@
|
||||
parent.self = window.parent.parent.$.magnificPopup;
|
||||
parent.self.opener = window.parent.parent;
|
||||
}
|
||||
if (parent.self.opener.editorref) {
|
||||
if (parent.self.opener.editorref) {
|
||||
parent.self.opener.editorref.surroundHTML(block, '');
|
||||
} else {
|
||||
} else {
|
||||
parent.self.opener.serendipity.serendipity_imageSelector_addToBody(block, '{$media.textarea}');
|
||||
}
|
||||
}
|
||||
parent.self.close();
|
||||
</script>
|
||||
{/if}
|
||||
|
@ -3,7 +3,7 @@
|
||||
{* ML got called for inserting media *}
|
||||
{if $file.is_image AND $file.full_thumb}
|
||||
{if $media.textarea || $media.htmltarget}
|
||||
{$link="?serendipity[adminModule]=images&serendipity[adminAction]=choose&serendipity[fid]={$file.id}&serendipity[textarea]={$media.textarea}&serendipity[noBanner]=true&serendipity[noSidebar]=true&serendipity[noFooter]=true&serendipity[filename_only]={$media.filename_only}&serendipity[htmltarget]={$media.htmltarget}"}
|
||||
{$link="?serendipity[adminModule]=images&serendipity[adminAction]=choose&serendipity[fid]={$file.id}&serendipity[textarea]={$media.textarea}&serendipity[noBanner]=true&serendipity[noSidebar]=true&serendipity[noFooter]=true&serendipity[filename_only]={$media.filename_only}&serendipity[htmltarget]={$media.htmltarget}"}
|
||||
{else}
|
||||
{if $file.url}
|
||||
{$link="{$file.url}&serendipity[image]={$file.id}"}
|
||||
@ -16,7 +16,7 @@
|
||||
|
||||
{elseif $file.is_image AND $file.hotlink}
|
||||
{if $media.textarea}
|
||||
{$link="?serendipity[adminModule]=images&serendipity[adminAction]=choose&serendipity[fid]={$file.id}&serendipity[textarea]={$media.textarea}&serendipity[noBanner]=true&serendipity[noSidebar]=true&serendipity[noFooter]=true&serendipity[filename_only]={$media.filename_only}&serendipity[htmltarget]={$media.htmltarget}"}
|
||||
{$link="?serendipity[adminModule]=images&serendipity[adminAction]=choose&serendipity[fid]={$file.id}&serendipity[textarea]={$media.textarea}&serendipity[noBanner]=true&serendipity[noSidebar]=true&serendipity[noFooter]=true&serendipity[filename_only]={$media.filename_only}&serendipity[htmltarget]={$media.htmltarget}"}
|
||||
{else}
|
||||
{if $file.url}
|
||||
{$link="{$file.$url}&serendipity[image]={$file.id}"}
|
||||
@ -27,7 +27,7 @@
|
||||
{$img_alt="{$file.realname}"}
|
||||
{else}
|
||||
{if $media.textarea}
|
||||
{$link="?serendipity[adminModule]=images&serendipity[adminAction]=choose&serendipity[fid]={$file.id}&serendipity[textarea]={$media.textarea}&serendipity[noBanner]=true&serendipity[noSidebar]=true&serendipity[noFooter]=true&serendipity[filename_only]={$media.filename_only}&serendipity[htmltarget]={$media.htmltarget}"}
|
||||
{$link="?serendipity[adminModule]=images&serendipity[adminAction]=choose&serendipity[fid]={$file.id}&serendipity[textarea]={$media.textarea}&serendipity[noBanner]=true&serendipity[noSidebar]=true&serendipity[noFooter]=true&serendipity[filename_only]={$media.filename_only}&serendipity[htmltarget]={$media.htmltarget}"}
|
||||
{else}
|
||||
{if $file.url}
|
||||
{$link="{$file.$url}&serendipity[image]={$file.id}"}
|
||||
@ -55,6 +55,10 @@
|
||||
{$img_alt="{$file.mime}"}
|
||||
{/if}
|
||||
{/if}
|
||||
{* builds a ML objects link for step 1, to pass to media_choose.tpl file passthrough media.filename_only scripts - do not use "empty($link) AND" here, since that would require a reset before! *}
|
||||
{if (!$file.is_image OR $file.is_image == 0) AND $file.mediatype != 'image' AND $file.realfile}
|
||||
{$link="?serendipity[adminModule]=images&serendipity[adminAction]=choose&serendipity[noBanner]=true&serendipity[noSidebar]=true&serendipity[noFooter]=true&serendipity[fid]={$file.id}&serendipity[filename_only]={$media.filename_only}&serendipity[textarea]={$media.textarea}&serendipity[htmltarget]={$media.htmltarget}"}
|
||||
{/if}
|
||||
<article id="media_{$file.id}" class="media_file {cycle values="odd,even"}">
|
||||
<header class="clearfix">
|
||||
<div class="form_check">
|
||||
@ -125,7 +129,7 @@
|
||||
|
||||
<footer>
|
||||
<ul class="media_file_meta plainList">
|
||||
<li><b>{$CONST.SORT_ORDER_DATE}:</b> {if $file.authorid != 0}{$CONST.POSTED_BY} {$file.authorname} {/if}{$CONST.ON} {$file.date|@formatTime:DATE_FORMAT_SHORT}</li>
|
||||
<li><b>{$CONST.SORT_ORDER_DATE}:</b> {if $file.authorid != 0}{$CONST.POSTED_BY} {$file.authorname} {/if}{$CONST.ON} {$file.date|formatTime:DATE_FORMAT_SHORT}</li>
|
||||
{if $file.hotlink}
|
||||
<li>{$file.nice_hotlink}</li>
|
||||
{elseif $file.is_image}
|
||||
@ -189,11 +193,11 @@
|
||||
<dl class="clearfix">
|
||||
{foreach from=$meta_data key="meta_name" item="meta_value"}
|
||||
<dt>{$meta_name}</dt>
|
||||
<dd>{if is_array($meta_value)}{$meta_value|@print_r}{else}{$meta_value|@formatTime:DATE_FORMAT_SHORT:false:$meta_name}{/if}</dd>
|
||||
<dd>{if is_array($meta_value)}{$meta_value|print_r}{else}{$meta_value|formatTime:DATE_FORMAT_SHORT:false:$meta_name}{/if}</dd>
|
||||
{/foreach}
|
||||
</dl>
|
||||
{else}
|
||||
<p>{$meta_data|@formatTime:DATE_FORMAT_SHORT:false:$meta_type}</p>
|
||||
<p>{$meta_data|formatTime:DATE_FORMAT_SHORT:false:$meta_type}</p>
|
||||
{/if}
|
||||
{/foreach}
|
||||
</section>
|
||||
|
@ -222,18 +222,28 @@
|
||||
{if $media.filename_only}
|
||||
<script type="text/javascript">
|
||||
{serendipity_hookPlugin hookAll=true hook='frontend_image_add_filenameonly' eventData=$media}
|
||||
parent.self.opener.serendipity_imageSelector_addToElement('{$media.file.full_file|escape}', '{$media.htmltarget|@escape}');
|
||||
if (parent.self.opener == undefined) {
|
||||
// in iframes, there is no opener, and the magnific popup is wrapped
|
||||
parent.self = window.parent.parent.$.magnificPopup;
|
||||
parent.self.opener = window.parent.parent;
|
||||
}
|
||||
parent.self.opener.serendipity.serendipity_imageSelector_addToElement('{$media.file.full_file|escape}', '{$media.htmltarget|escape}');
|
||||
parent.self.close();
|
||||
</script>
|
||||
{else}
|
||||
<script type="text/javascript">
|
||||
block = '<a href="{$media.file.full_file}" title="{$media.file.realname|@escape}" target="_blank">{$media.file.realname|@escape}</a>';
|
||||
{serendipity_hookPlugin hookAll=true hook='frontend_image_add_unknown' eventData=$media}
|
||||
if (parent.self.opener.editorref) {
|
||||
if (parent.self.opener == undefined) {
|
||||
// in iframes, there is no opener, and the magnific popup is wrapped
|
||||
parent.self = window.parent.parent.$.magnificPopup;
|
||||
parent.self.opener = window.parent.parent;
|
||||
}
|
||||
if (parent.self.opener.editorref) {
|
||||
parent.self.opener.editorref.surroundHTML(block, '');
|
||||
} else {
|
||||
parent.self.opener.serendipity_imageSelector_addToBody(block, '{$media.textarea}');
|
||||
}
|
||||
} else {
|
||||
parent.self.opener.serendipity.serendipity_imageSelector_addToBody(block, '{$media.textarea}');
|
||||
}
|
||||
parent.self.close();
|
||||
</script>
|
||||
{/if}
|
||||
|
Reference in New Issue
Block a user