'image', 'title' => 'Fisheye Image', 'description' => KernelTools::tra( "Display an image in other content. This plugin only works with files that have been uploaded using fisheye." ), 'help_page' => 'DataPluginImage', 'auto_activate' => false, 'requires_pair' => false, 'syntax' => '{image id= }', 'plugin_type' => DATA_PLUGIN, // display icon in quicktags bar 'booticon' => '{biticon ipackage="icons" iname="image-x-generic" iexplain="Image"}', 'taginsert' => '{image id= size= nolink=}', // functions 'help_function' => 'data_image_help', 'load_function' => 'data_image', ]; $gLibertySystem->registerPlugin( PLUGIN_GUID_DATAIMAGE, $pluginParams ); $gLibertySystem->registerDataTag( $pluginParams['tag'], PLUGIN_GUID_DATAIMAGE ); function data_image( $pData, $pParams ) { global $gBitSystem, $gBitSmarty; $ret = ' '; $imgStyle = ''; $wrapper = \Bitweaver\Liberty\liberty_plugins_wrapper_style( $pParams ); $description = !isset( $wrapper['description'] ) ? $wrapper['description'] : null; foreach( $pParams as $key => $value ) { if( !empty( $value ) ) { switch( $key ) { // rename a couple of parameters case 'width': case 'height': if( preg_match( "/^\d+(em|px|%|pt)$/", trim( $value ) ) ) { $imgStyle .= $key.':'.$value.';'; } elseif( preg_match( "/^\d+$/", $value ) ) { $imgStyle .= $key.':'.$value.'px;'; } // remove values from the hash that they don't get used in the div as well $pParams[$key] = null; break; } } } $wrapper = \Bitweaver\Liberty\liberty_plugins_wrapper_style( $pParams ); if( !empty( $pParams['src'] ) ) { $thumbUrl = $pParams['src']; } elseif( BitBase::verifyId( $pParams['id'] ) && $gBitSystem->isPackageActive( 'fisheye' )) { $item = new FisheyeImage( $pParams['id'], null ); if( $item->load() ) { // insert source url if we need the original file if( !empty( $pParams['size'] ) && $pParams['size'] == 'original' ) { $thumbUrl = $item->getDownloadUrl(); } elseif( $item->mInfo['thumbnail_url'] ) { $thumbUrl = !empty( $pParams['size'] ) && !empty( $item->mInfo['thumbnail_url'][$pParams['size']] ) ? $item->mInfo['thumbnail_url'][$pParams['size']] : $item->mInfo['thumbnail_url']['medium']; } if( empty( $description ) ) { $description = !isset( $wrapper['description'] ) ? $wrapper['description'] : $item->getField( 'title', KernelTools::tra( 'Image' ) ); } } } // check if we have a valid thumbnail if( !empty( $thumbUrl )) { // set up image first $ret = ''; if( !empty( $pParams['nolink'] ) ) { } elseif( !empty( $wrapper['link'] ) ) { // if this image is linking to something, wrap the image with the $ret = ''.$ret.''; } elseif ( empty( $pParams['size'] ) || $pParams['size'] != 'original' ) { if ( $gBitSystem->isFeatureActive( 'site_fancy_zoom' ) and !empty( $item->mInfo['source_url'] ) ) { $ret = ''.$ret.''; } else if ( $item->getDownloadUrl() ) { $ret = ''.$ret.''; } else if ( !empty( $item->mInfo['media_url'] ) ) { $ret = ''.$ret.''; } } if( !empty( $wrapper['style'] ) || !empty( $class ) || !empty( $wrapper['description'] ) ) { $ret = '<'.$wrapper['wrapper'].' class="'.( !empty( $wrapper['class'] ) ? $wrapper['class'] : "img-plugin" ).'" style="'.$wrapper['style'].'">'.$ret.( !empty( $wrapper['description'] ) ? '
'.$wrapper['description'] : '' ).''; } } else { $ret = KernelTools::tra( "Unknown Image" ); } return $ret; } function data_image_help() { $help = '' .'' .'' .'' .'' .'' .'' .'' .'' .'' .'' .'' .'' .'' .'' .'' .'' .'' .'' .'' .'' .'
' . KernelTools::tra( "Key" ) . '' . KernelTools::tra( "Type" ) . '' . KernelTools::tra( "Comments" ) . '
id' . KernelTools::tra( "numeric") . '
' . KernelTools::tra("(required)") . '
' . KernelTools::tra( "Image id number of Image to display inline.") . KernelTools::tra( "You can use either content_id or id." ).'
size' . KernelTools::tra( "key-words") . '
' . KernelTools::tra("(optional)") . '
' . KernelTools::tra( "If the File is an image, you can specify the size of the thumbnail displayed. Possible values are:") . ' avatar, small, medium, large, original ' . KernelTools::tra( "(Default = " ) . 'medium)
nolink' . KernelTools::tra( "key-words") . '
' . KernelTools::tra("(optional)") . '
' . KernelTools::tra( "Remove hotlink from element. Used to display fixed copies of an image item.") . '
' . KernelTools::tra( "Example: ") . "{image id='13' size='small'}"; return $help; }