Adding yoxview js library, proof of concept see # 2719

skala
Julio Montoya 14 years ago
parent eb3a234b43
commit c3e771e032
  1. 17
      main/document/document.inc.php
  2. 19
      main/document/document.php
  3. 7
      main/inc/lib/javascript/yoxview/data/flickr.js
  4. 269
      main/inc/lib/javascript/yoxview/data/flickr.source.js
  5. 5
      main/inc/lib/javascript/yoxview/data/picasa.js
  6. 197
      main/inc/lib/javascript/yoxview/data/picasa.source.js
  7. 6
      main/inc/lib/javascript/yoxview/data/youtube.js
  8. 197
      main/inc/lib/javascript/yoxview/data/youtube.source.js
  9. BIN
      main/inc/lib/javascript/yoxview/images/empty.gif
  10. BIN
      main/inc/lib/javascript/yoxview/images/help_panel.png
  11. BIN
      main/inc/lib/javascript/yoxview/images/left.png
  12. BIN
      main/inc/lib/javascript/yoxview/images/left_empty.png
  13. BIN
      main/inc/lib/javascript/yoxview/images/left_eng.png
  14. BIN
      main/inc/lib/javascript/yoxview/images/left_prev.png
  15. BIN
      main/inc/lib/javascript/yoxview/images/popup_ajax_loader.gif
  16. BIN
      main/inc/lib/javascript/yoxview/images/right.png
  17. BIN
      main/inc/lib/javascript/yoxview/images/right_empty.png
  18. BIN
      main/inc/lib/javascript/yoxview/images/right_eng.png
  19. BIN
      main/inc/lib/javascript/yoxview/images/sprites.png
  20. 116
      main/inc/lib/javascript/yoxview/install.htm
  21. 232
      main/inc/lib/javascript/yoxview/jquery.yoxthumbs.js
  22. 2227
      main/inc/lib/javascript/yoxview/jquery.yoxview-2.2.js
  23. 110
      main/inc/lib/javascript/yoxview/jquery.yoxview-2.2.min.js
  24. 21
      main/inc/lib/javascript/yoxview/lang/ar.js
  25. 21
      main/inc/lib/javascript/yoxview/lang/bg.js
  26. 21
      main/inc/lib/javascript/yoxview/lang/ca.js
  27. 21
      main/inc/lib/javascript/yoxview/lang/cs.js
  28. 21
      main/inc/lib/javascript/yoxview/lang/de.js
  29. 21
      main/inc/lib/javascript/yoxview/lang/dk.js
  30. 21
      main/inc/lib/javascript/yoxview/lang/en.js
  31. 21
      main/inc/lib/javascript/yoxview/lang/es.js
  32. 21
      main/inc/lib/javascript/yoxview/lang/fr.js
  33. 21
      main/inc/lib/javascript/yoxview/lang/gr.js
  34. 21
      main/inc/lib/javascript/yoxview/lang/he.js
  35. 21
      main/inc/lib/javascript/yoxview/lang/hu.js
  36. 21
      main/inc/lib/javascript/yoxview/lang/ie.js
  37. 21
      main/inc/lib/javascript/yoxview/lang/ir.js
  38. 21
      main/inc/lib/javascript/yoxview/lang/it.js
  39. 21
      main/inc/lib/javascript/yoxview/lang/ja.js
  40. 21
      main/inc/lib/javascript/yoxview/lang/ka.js
  41. 20
      main/inc/lib/javascript/yoxview/lang/mk.js
  42. 3
      main/inc/lib/javascript/yoxview/lang/nl.js
  43. 21
      main/inc/lib/javascript/yoxview/lang/pl.js
  44. 21
      main/inc/lib/javascript/yoxview/lang/pt-br.js
  45. 21
      main/inc/lib/javascript/yoxview/lang/pt.js
  46. 21
      main/inc/lib/javascript/yoxview/lang/ro.js
  47. 21
      main/inc/lib/javascript/yoxview/lang/ru.js
  48. 21
      main/inc/lib/javascript/yoxview/lang/sk.js
  49. 21
      main/inc/lib/javascript/yoxview/lang/sl.js
  50. 21
      main/inc/lib/javascript/yoxview/lang/sv.js
  51. 22
      main/inc/lib/javascript/yoxview/lang/tr.js
  52. 21
      main/inc/lib/javascript/yoxview/lang/ua.js
  53. 21
      main/inc/lib/javascript/yoxview/lang/zh-cn.js
  54. 21
      main/inc/lib/javascript/yoxview/lang/zh-tw.js
  55. BIN
      main/inc/lib/javascript/yoxview/skins/top_menu/sprites.png
  56. 49
      main/inc/lib/javascript/yoxview/skins/top_menu/yoxview.top_menu.css
  57. 96
      main/inc/lib/javascript/yoxview/skins/top_menu/yoxview.top_menu.js
  58. 304
      main/inc/lib/javascript/yoxview/yox.js
  59. 34
      main/inc/lib/javascript/yoxview/yoxview-init.js
  60. 5
      main/inc/lib/javascript/yoxview/yoxview-nojquery.js
  61. 235
      main/inc/lib/javascript/yoxview/yoxview.css
  62. 19
      main/inc/lib/main_api.lib.php

@ -127,7 +127,7 @@ function create_document_link($document_data, $show_as_icon = false) {
if (!$show_as_icon) {
// Build download link (icon)
$forcedownload_link = ($filetype == 'folder') ? api_get_self().'?'.api_get_cidreq().'&action=downloadfolder&path='.$url_path.$req_gid : api_get_self().'?'.api_get_cidreq().'&action=download&id='.$url_path.$req_gid;
$forcedownload_link = ($filetype == 'folder') ? api_get_self().'?'.api_get_cidreq().'&action=downloadfolder&path='.$url_path.$req_gid : api_get_self().'?'.api_get_cidreq().'&action=download&id='.$url_path.$req_gid;
// Folder download or file download?
$forcedownload_icon = ($filetype == 'folder') ? 'save_pack.png' : 'save.png';
// Prevent multiple clicks on zipped folder download
@ -144,13 +144,16 @@ function create_document_link($document_data, $show_as_icon = false) {
$is_browser_viewable_file = is_browser_viewable($ext);
if ($is_browser_viewable_file) {
//$url = 'showinframes.php?'.api_get_cidreq().'&file='.$url_path.$req_gid;
$url = 'showinframes.php?'.api_get_cidreq().'&id='.$document_data['id'].$req_gid;
$url = 'showinframes.php?'.api_get_cidreq().'&id='.$document_data['id'].$req_gid;
} else {
// url-encode for problematic characters (we may not call them dangerous characters...)
$path = str_replace('%2F', '/',$url_path).'?'.api_get_cidreq();
//$new_path = '?id='.$document_data['id'];
$url = $www.$path;
}
$path = str_replace('%2F', '/',$url_path).'?'.api_get_cidreq();
$url = $www.$path;
// Disabled fragment of code, there is a special icon for opening in a new window.
//// Files that we want opened in a new window
//if ($ext == 'txt' || $ext == 'log' || $ext == 'css' || $ext == 'js') { // Add here
@ -158,7 +161,7 @@ function create_document_link($document_data, $show_as_icon = false) {
//}
} else {
//$url = api_get_self().'?'.api_get_cidreq().'&curdirpath='.$url_path.$req_gid;
$url = api_get_self().'?'.api_get_cidreq().'&id='.$document_data['id'].$req_gid;
$url = api_get_self().'?'.api_get_cidreq().'&id='.$document_data['id'].$req_gid;
}
// The little download icon
@ -223,8 +226,12 @@ function create_document_link($document_data, $show_as_icon = false) {
if ($is_browser_viewable_file) {
$open_in_new_window_link = '<a href="'.$www.str_replace('%2F', '/',$url_path).'?'.api_get_cidreq().'" style="float:right"'.$prevent_multiple_click.' target="_blank">'.Display::return_icon('open_in_new_window.png', get_lang('OpenInANewWindow'), array(),22).'&nbsp;&nbsp;</a>';
}
return '<a href="'.$url.'" title="'.$tooltip_title_alt.'" target="'.$target.'"'.$visibility_class.' style="float:left">'.$title.'</a>'.$force_download_html.$copy_to_myfiles.$open_in_new_window_link.$pdf_icon;
//target="'.$target.'"
if ($filetype == 'file') {
return '<a href="'.$url.'" class="yoxviewLink" title="'.$tooltip_title_alt.'" target="yoxview" '.$visibility_class.' style="float:left">'.$title.'</a>'.$force_download_html.$copy_to_myfiles.$open_in_new_window_link.$pdf_icon;
} else {
return '<a href="'.$url.'" title="'.$tooltip_title_alt.'" target="yoxview" '.$visibility_class.' style="float:left">'.$title.'</a>'.$force_download_html.$copy_to_myfiles.$open_in_new_window_link.$pdf_icon;
}
//end copy files to users myfiles
} else {
if(preg_match('/shared_folder/', urldecode($url)) && preg_match('/shared_folder$/', urldecode($url))==false && preg_match('/shared_folder_session_'.$current_session_id.'$/', urldecode($url))==false){

@ -54,15 +54,26 @@ unset($_SESSION['paint_dir']);
//jquery thickbox already called from main/inc/header.inc.php
$htmlHeadXtra[] = api_get_jquery_js();
$htmlHeadXtra[] = api_get_jquery_ui_js();
//$htmlHeadXtra[] = api_get_js('yoxview/yox.js');
$htmlHeadXtra[] = api_get_js('yoxview/yoxview-init.js');
$js_path = api_get_path(WEB_LIBRARY_PATH).'javascript/';
$htmlHeadXtra[] = '<link rel="stylesheet" href="'.$js_path.'yoxview/yoxview.css" type="text/css">';
$htmlHeadXtra[] = '<script type="text/javascript">
$(document).ready( function() {
$(document).ready( function() {
$(".yoxview").yoxview({
skin: "top_menu"
});
for (i=0;i<$(".actions").length;i++) {
if ($(".actions:eq("+i+")").html()=="<table border=\"0\"></table>" || $(".actions:eq("+i+")").html()=="" || $(".actions:eq("+i+")").html()==null) {
$(".actions:eq("+i+")").hide();
}
}
} );
</script>';
});
</script>';
// Session
/*
if (isset($_GET['id_session'])) {
@ -1080,7 +1091,9 @@ if (count($docs_and_folders) > 1) {
$table->set_form_actions($form_action, 'path');
}
}
echo '<div class="thumbnails yoxview">';
$table->display();
echo '</div>';
if (count($docs_and_folders) > 1) {
if ($is_allowed_to_edit || $group_member_with_upload_rights) {

@ -0,0 +1,7 @@
function yox_flickr(){function m(a,j){return"http://farm"+a.farm+".static.flickr.com/"+a.server+"/"+(a.primary||a.id)+"_"+a.secret+j+".jpg"}var g=jQuery,o="http://www.flickr.com/",p="http://api.flickr.com/services/rest/",r=/\d+@N\d+/,s=/http:\/\/(?:www\.)?flickr\.com\/(\w+)\/(?:([^\/]+)\/(?:(\w+)\/?(?:([^\/]+)\/?)?)?)?(?:\?(.*))?/,t=this,q={api_key:"cd6c91f9721f34ead20e6ebe03dd5871",format:"json"};this.getImagesData=function(a,j){function k(){var b={};a.onLoadBegin&&a.onLoadBegin();g.jsonp({url:p,
async:false,dataType:"jsonp",data:e,callbackParameter:"jsoncallback",success:function(h){b.images=t.getImagesDataFromJson(h,e);if(h.photosets||h.collections)g.extend(b,{createGroups:true});if(b.images.length>0&&(e.setThumbnail&&!e.setSinglePhotosetThumbnails||a.isSingleLink))g.extend(b,{isGroup:true,link:(o+"photos/"+h.photoset.owner+"/sets/"+h.photoset.id+"/").replace(/\s/g,"_"),thumbnailSrc:a.isSingleLink?undefined:m(h.photoset.photo[0],n[e.thumbsize]),title:"None"});j&&j(b);a.onLoadComplete&&a.onLoadComplete()},
error:function(){a.onLoadError&&a.onLoadError("Flickr plugin encountered an error while retrieving data")}})}var i=true,l={method:"flickr.urls.lookupUser",onData:function(b){return{user_id:b.user.id,username:b.user.username._content}}},c={};if(a.dataUrl){var d=a.dataUrl.match(s),f;if(d[5]){f=Yox.queryToJson(d[5]);g.extend(c,f)}if(d&&d.length>1)if(d[1]=="search"){c.method="flickr.photos.search";c.text=f.q;if(f.w){f.w=f.w.replace("%40","@");if(f.w.match(r))c.user_id=f.w}if(!f||!f.sort)c.sort="relevance";
i=false}else{switch(d[3]){case undefined:c.method="flickr.people.getPublicPhotos";break;case "sets":g.extend(c,{method:d[4]||a.dataSourceOptions.photoset_id?"flickr.photosets.getPhotos":"flickr.photosets.getList",photoset_id:d[4]});break;case "galleries":g.extend(c,{method:d[4]?"flickr.galleries.getPhotos":"flickr.galleries.getList",gallery_id:d[4]});if(d[4]){i=true;l={method:"flickr.urls.lookupGallery",onData:function(b){return{gallery_id:b.gallery.id,title:b.gallery.title}}}}break;case "collections":g.extend(c,
{method:"flickr.collections.getTree",collection_id:d[4]});break;default:c.method="flickr.photos.search";break}g.extend(c,{username:d[2],type:d[3]})}}var e=jQuery.extend({},{imageSize:"medium",thumbsize:"smallSquare",setThumbnail:true,setSinglePhotosetThumbnails:true,setTitle:true,method:"flickr.photosets.getList",extras:"description"},c,a.dataSourceOptions,q);e.media="photos";if(e.user&&e.photoset_id)e.method="flickr.photosets.getPhotos";c=screen.width>screen.height?screen.width:screen.height;if(!e.imageSize||
c.width<=800&&e.imageSize!="medium")e.imageSize="medium";i?g.jsonp({url:p,async:false,dataType:"jsonp",data:g.extend({url:a.dataUrl,method:l.method},q),callbackParameter:"jsoncallback",success:function(b){g.extend(e,l.onData(b));k()}}):k()};var n={smallSquare:"_s",thumbnail:"_t",small:"_m",medium:"",large:"_b",original:"_o"};this.getImagesDataFromJson=function(a,j){var k=a.photoset||a.photos,i;if(k)i=a.photoset?a.photoset.photo:a.photos.photo;else if(a.photosets)i=a.photosets.photoset;else if(a.collections)i=
a.collections.collection[0].set;var l=[],c=a.photoset?"/in/set-"+a.photoset.id:"";if(i){var d=n[j.thumbsize],f=n[j.imageSize];jQuery.each(i,function(e,b){var h={thumbnailSrc:m(b,d),link:(o+"photos/"+(b.owner||j.user_id)+"/"+b.id+c).replace(/\s/g,"_"),media:{src:m(b,f),title:k?b.title:b.title._content+(!k?" ("+b.photos+" images)":""),alt:b.title._content||b.title,description:b.description?b.description._content:undefined}};if(!k)h.data={photoset_id:b.id};l.push(h)})}return l}};

@ -0,0 +1,269 @@
/*!
* Yox Flickr plugin
* http://yoxigen.com/yoxview/
*
* Copyright (c) 2010 Yossi Kolesnicov
*
* Licensed under the MIT license.
* http://www.opensource.org/licenses/mit-license.php
*
* Date: 17th July, 2010
* Version : 1.6
*/
function yox_flickr()
{
var $ = jQuery,
flickrUrl = "http://www.flickr.com/",
flickrApiUrl = "http://api.flickr.com/services/rest/",
yoxviewFlickrApikey = "cd6c91f9721f34ead20e6ebe03dd5871",
flickrUserIdRegex = /\d+@N\d+/,
flickrUrlRegex = /http:\/\/(?:www\.)?flickr\.com\/(\w+)\/(?:([^\/]+)\/(?:(\w+)\/?(?:([^\/]+)\/?)?)?)?(?:\?(.*))?/,
self = this,
fixedOptions = {
api_key: yoxviewFlickrApikey,
format: 'json'
};
this.getImagesData = function(options, callback)
{
var defaults = {
imageSize: "medium", // medium/large/original, for large, your images in Flickr must be 1280 in width or more. For original, you must allow originals to be downloaded
thumbsize: "smallSquare",
setThumbnail: true,
setSinglePhotosetThumbnails: true,
setTitle: true,
method: 'flickr.photosets.getList',
extras: 'description'
};
var requireLookup = true;
var lookupData = {
method: "flickr.urls.lookupUser",
onData: function(data)
{
return {
user_id: data.user.id,
username: data.user.username._content
};
}
};
var fromDataUrl = {};
if (options.dataUrl)
{
var urlMatch = options.dataUrl.match(flickrUrlRegex);
var queryData;
if (urlMatch[5])
{
queryData = Yox.queryToJson(urlMatch[5]);
$.extend(fromDataUrl, queryData);
}
if (urlMatch && urlMatch.length > 1)
{
if (urlMatch[1] == "search")
{
fromDataUrl.method = "flickr.photos.search";
fromDataUrl.text = queryData.q;
if (queryData.w)
{
queryData.w = queryData.w.replace("%40", "@");
if (queryData.w.match(flickrUserIdRegex))
fromDataUrl.user_id = queryData.w;
}
if (!queryData || !queryData.sort)
fromDataUrl.sort = "relevance";
requireLookup = false;
}
else
{
switch(urlMatch[3])
{
case undefined:
fromDataUrl.method = "flickr.people.getPublicPhotos";
break;
case "sets":
$.extend(fromDataUrl, {
method: urlMatch[4] || options.dataSourceOptions.photoset_id ? "flickr.photosets.getPhotos" : "flickr.photosets.getList",
photoset_id: urlMatch[4]
});
break;
case "galleries":
$.extend(fromDataUrl, {
method: urlMatch[4] ? "flickr.galleries.getPhotos" : "flickr.galleries.getList",
gallery_id: urlMatch[4]
});
if (urlMatch[4])
{
requireLookup = true;
lookupData = {
method: "flickr.urls.lookupGallery",
onData: function(data)
{
return {
gallery_id: data.gallery.id,
title: data.gallery.title
};
}
};
}
break;
case "collections":
$.extend(fromDataUrl, {
method: "flickr.collections.getTree",
collection_id: urlMatch[4]
});
break;
default:
fromDataUrl.method = "flickr.photos.search";
break;
}
$.extend(fromDataUrl, {
username: urlMatch[2],
type: urlMatch[3]
});
}
}
}
var datasourceOptions = jQuery.extend({}, defaults, fromDataUrl, options.dataSourceOptions, fixedOptions);
datasourceOptions.media = "photos";
if (datasourceOptions.user && datasourceOptions.photoset_id)
datasourceOptions.method = "flickr.photosets.getPhotos";
var screenSize = screen.width > screen.height ? screen.width : screen.height;
// Save resources for smaller screens:
if (!datasourceOptions.imageSize || (screenSize.width <= 800 && datasourceOptions.imageSize != "medium"))
datasourceOptions.imageSize = "medium";
if (requireLookup)
{
$.jsonp({
url: flickrApiUrl,
async: false,
dataType: 'jsonp',
data: $.extend({ url: options.dataUrl, method: lookupData.method }, fixedOptions),
callbackParameter: "jsoncallback",
success: function(data)
{
$.extend(datasourceOptions, lookupData.onData(data));
getData();
}
});
}
else
getData();
function getData()
{
var returnData = {};
if (options.onLoadBegin)
options.onLoadBegin();
$.jsonp({
url: flickrApiUrl,
async: false,
dataType: 'jsonp',
data: datasourceOptions,
callbackParameter: "jsoncallback",
success: function(data)
{console.log(data);
returnData.images = self.getImagesDataFromJson(data, datasourceOptions);
if (data.photosets || data.collections)
$.extend(returnData, {
createGroups: true
});
if (returnData.images.length > 0 && ((datasourceOptions.setThumbnail && !datasourceOptions.setSinglePhotosetThumbnails) || options.isSingleLink))
{
$.extend(returnData, {
isGroup: true,
link: getPhotosetUrl(data.photoset.owner, data.photoset.id),
thumbnailSrc: options.isSingleLink ? undefined : getImageUrl(data.photoset.photo[0], flickrImageSizes[datasourceOptions.thumbsize]),
title: "None"
});
}
if (callback)
callback(returnData);
if (options.onLoadComplete)
options.onLoadComplete();
},
error : function(xOptions, textStatus){
if (options.onLoadError)
options.onLoadError("Flickr plugin encountered an error while retrieving data");
}
});
}
}
var flickrImageSizes = {
smallSquare : "_s", // 75x75
thumbnail : "_t", // 100px
small : "_m", // 240px
medium : "", // 500px
large : "_b", // 1024px
original : "_o"
};
function getImageUrl(photoData, size)
{
return "http://farm" + photoData.farm + ".static.flickr.com/" + photoData.server + "/" + (photoData.primary || photoData.id) + "_" + photoData.secret + size + ".jpg";
}
function getPhotosetUrl(userid, photosetId)
{
return prepareUrl(flickrUrl + "photos/" + userid + "/sets/" + photosetId + "/");
}
// makes sure a string can be used as a Flickr url
function prepareUrl(url)
{
return url.replace(/\s/g, "_");
}
this.getImagesDataFromJson = function(data, datasourceOptions)
{
var isPhotos = data.photoset || data.photos;
var photos;
if (isPhotos)
photos = data.photoset ? data.photoset.photo : data.photos.photo;
else if (data.photosets)
photos = data.photosets.photoset;
else if (data.collections)
photos = data.collections.collection[0].set;
var imagesData = [];
var inSet = data.photoset ? "/in/set-" + data.photoset.id : "";
// Photos:
if (photos)
{
var thumbSuffix = flickrImageSizes[datasourceOptions.thumbsize];
var imageSuffix = flickrImageSizes[datasourceOptions.imageSize];
jQuery.each(photos, function(i, photo){
var imageData = {
thumbnailSrc : getImageUrl(photo, thumbSuffix),
link: prepareUrl(flickrUrl + "photos/" + (photo.owner || datasourceOptions.user_id) + "/" + photo.id + inSet),
media: {
src: getImageUrl(photo, imageSuffix),
title: isPhotos ? photo.title : photo.title._content + (!isPhotos ? " (" + photo.photos + " images)" : ""),
alt: photo.title._content || photo.title,
description: photo.description ? photo.description._content : undefined
}
};
if (!isPhotos)
imageData.data = { photoset_id: photo.id };
imagesData.push(imageData);
});
}
return imagesData;
}
}

@ -0,0 +1,5 @@
function yox_picasa(){var k=jQuery,r=/http:\/\/picasaweb\.google\.\w+\/([^\/#\?]+)\/?([^\/#\?]+)?(\?([^#]*))?/;this.getImagesData=function(c,p){function s(b,e,m){b=parseInt(b);for(var f=e.length-1;f>=0;f--){var h=e[f];if(b>=h)return m?f<e.length-1?e[f+1]:h:h}return b}function t(b,e){var m=e==="album",f=[];jQuery.each(b.feed.entry,function(u,g){var i=m?g.title.$t+" ("+g.gphoto$numphotos.$t+" images)":g.summary.$t;if(!a.filter||i.match(a.filter)){var o=g.media$group.media$content[0];i={thumbnailSrc:g.media$group.media$thumbnail[0].url,
link:g.link[1].href,media:{src:o.url,title:i,alt:i,width:o.width,height:o.height}};if(m)i.data={album:g.gphoto$name.$t};f.push(i)}});if(l.filter){var h=Yox.getUrlData(c.dataUrl);delete h.queryFields.filter;c.dataUrl=Yox.urlDataToPath(h)}c.dataSourceOptions&&c.dataSourceOptions.filter&&delete c.dataSourceOptions.filter;return f}var n=[94,110,128,200,220,288,320,400,512,576,640,720,800,912,1024,1152,1280,1440,1600],l={};if(c.dataUrl){var d=c.dataUrl.match(r);if(d&&d.length>1){l.user=d[1];if(d[2])l.album=
d[2];d[4]&&k.extend(l,Yox.queryToJson(d[4]))}}var a=jQuery.extend({},{url:"http://picasaweb.google.com/data/feed/api/",setThumbnail:true,setSingleAlbumThumbnails:true,setTitle:true,alt:"json",thumbsize:64},l,c.dataSourceOptions);if(a.user&&!a.album&&!a.q)a.thumbsize=104;if(a.tags)a.tag=a.tags;a.album==""&&delete a.album;d=screen.width>screen.height?screen.width:screen.height;var q=a.imgmax&&k.inArray(a.imgmax,n)==-1?a.imgmax:null;if(!a.imgmax||q||d<a.imgmax)a.imgmax=s(q||d,n,a.roundSizeUp);if(a.filter)if(typeof a.filter===
"string")a.filter=RegExp(a.filter,"i");n=function(){var b=a.url;if(a.user&&a.user!="lh"){b+="user/"+a.user;if(a.album)b+="/album/"+a.album}else b+="all";return b}(a);var j={};c.onLoadBegin&&c.onLoadBegin();k.jsonp({url:n,async:false,dataType:"jsonp",data:a,callbackParameter:"callback",success:function(b){if(!b.feed.entry||b.feed.entry.length==0)c.onNoData&&c.onNoData();else{var e=b.feed.entry[0].category[0].term.match(/.*#(.*)/)[1];e==="album"&&k.extend(j,{title:b.feed.title.$t,createGroups:true});
j.images=t(b,e);if(b.feed.title)j.title=b.feed.title.$t;j.images.length>0&&a.setThumbnail&&!a.setSingleAlbumThumbnails&&k.extend(j,{isGroup:true,link:b.feed.link[1].href,thumbnailSrc:b.feed.icon.$t,title:b.feed.title.$t});p&&p(j);c.onLoadComplete&&c.onLoadComplete()}},error:function(){c.onLoadError&&c.onLoadError("Picasa plugin encountered an error while retrieving data")}})}};

@ -0,0 +1,197 @@
/*!
* Yox Picasa plugin
* http://yoxigen.com/yoxview/
*
* Copyright (c) 2010 Yossi Kolesnicov
*
* Licensed under the MIT license.
* http://www.opensource.org/licenses/mit-license.php
*
* Date: 13th November, 2010
* Version : 1.55
*/
function yox_picasa()
{
var $ = jQuery;
var picasaRegex = /http:\/\/picasaweb\.google\.\w+\/([^\/#\?]+)\/?([^\/#\?]+)?(\?([^#]*))?/
var self = this;
this.getImagesData = function(options, callback)
{
var defaults = {
url: "http://picasaweb.google.com/data/feed/api/",
setThumbnail: true,
setSingleAlbumThumbnails: true,
setTitle: true, // Whether to add a header with user and/or album name before thumbnails
alt: 'json',
thumbsize: 64
},
picasaThumbnailSizes = [32, 48, 64, 72, 104, 144, 150, 160],
picasaImgMaxSizes = [94, 110, 128, 200, 220, 288, 320, 400, 512, 576, 640, 720, 800, 912, 1024, 1152, 1280, 1440, 1600],
fromDataUrl = {};
function getFeedUrl()
{
var feedUrl = datasourceOptions.url;
if (datasourceOptions.user && datasourceOptions.user != "lh")
{
feedUrl += "user/" + datasourceOptions.user;
if (datasourceOptions.album)
feedUrl += "/album/" + datasourceOptions.album;
}
else
feedUrl += "all";
return feedUrl;
}
function picasa_getMaxSize(size, sizesArray, roundSizeUp)
{
size = parseInt(size);
for(var i=sizesArray.length - 1; i >= 0; i--)
{
var pSize = sizesArray[i];
if (size >= pSize)
return roundSizeUp
? i < sizesArray.length - 1 ? sizesArray[i + 1] : pSize
: pSize;
}
return size;
}
function getImagesDataFromJson(data, kind)
{
var entry = data.feed.entry;
var isAlbum = kind === "album";
var imagesData = [];
jQuery.each(data.feed.entry, function(i, image){
var imageTitle = isAlbum ? image.title.$t + " (" + image.gphoto$numphotos.$t + " images)" : image.summary.$t;
if (!datasourceOptions.filter || imageTitle.match(datasourceOptions.filter))
{
var mediaData = image.media$group.media$content[0];
var imageData = {
thumbnailSrc : image.media$group.media$thumbnail[0].url,
link: image.link[1].href,
media: {
src: mediaData.url,
title: imageTitle,
alt: imageTitle,
width: mediaData.width,
height: mediaData.height
}
};
if (isAlbum)
imageData.data = { album: image.gphoto$name.$t };
imagesData.push(imageData);
}
});
if (fromDataUrl.filter)
{
var dataUrlObj = Yox.getUrlData(options.dataUrl);
delete dataUrlObj.queryFields.filter;
options.dataUrl = Yox.urlDataToPath(dataUrlObj);
}
if (options.dataSourceOptions && options.dataSourceOptions.filter)
delete options.dataSourceOptions.filter;
return imagesData;
}
if (options.dataUrl)
{
var urlMatch = options.dataUrl.match(picasaRegex);
if (urlMatch && urlMatch.length > 1)
{
fromDataUrl.user = urlMatch[1];
if (urlMatch[2])
fromDataUrl.album = urlMatch[2]
if (urlMatch[4])
$.extend(fromDataUrl, Yox.queryToJson(urlMatch[4]));
}
}
var datasourceOptions = jQuery.extend({}, defaults, fromDataUrl, options.dataSourceOptions);
if (datasourceOptions.user && !datasourceOptions.album && !datasourceOptions.q)
datasourceOptions.thumbsize = 104;
// Picasa web uses 'tags', while the API uses 'tag':
if (datasourceOptions.tags)
datasourceOptions.tag = datasourceOptions.tags;
if (datasourceOptions.album == "")
delete datasourceOptions.album;
var screenSize = screen.width > screen.height ? screen.width : screen.height;
var unknownSize = datasourceOptions.imgmax && $.inArray(datasourceOptions.imgmax, picasaImgMaxSizes) == -1 ? datasourceOptions.imgmax : null;
// Save resources for smaller screens:
if (!datasourceOptions.imgmax || unknownSize || screenSize < datasourceOptions.imgmax)
datasourceOptions.imgmax = picasa_getMaxSize(unknownSize || screenSize, picasaImgMaxSizes, datasourceOptions.roundSizeUp);
if (datasourceOptions.filter){
if (typeof datasourceOptions.filter === "string")
datasourceOptions.filter = new RegExp(datasourceOptions.filter, "i");
}
var feedUrl = getFeedUrl(datasourceOptions);
var returnData = {};
if (options.onLoadBegin)
options.onLoadBegin();
$.jsonp({
url: feedUrl,
async: false,
dataType: 'jsonp',
data: datasourceOptions,
callbackParameter: "callback",
success: function(data)
{
if (!data.feed.entry || data.feed.entry.length == 0)
{
if (options.onNoData)
options.onNoData();
return;
}
var kind = data.feed.entry[0].category[0].term.match(/.*#(.*)/)[1]; // album or photo
if (kind === "album")
$.extend(returnData, {
title: data.feed.title.$t,
createGroups: true
});
returnData.images = getImagesDataFromJson(data, kind);
if (data.feed.title)
returnData.title = data.feed.title.$t;
if (returnData.images.length > 0 && datasourceOptions.setThumbnail && !datasourceOptions.setSingleAlbumThumbnails)
{
$.extend(returnData, {
isGroup: true,
link: data.feed.link[1].href,
thumbnailSrc: data.feed.icon.$t,
title: data.feed.title.$t
});
}
if (callback)
callback(returnData);
if (options.onLoadComplete)
options.onLoadComplete();
},
error : function(xOptions, textStatus){
if (options.onLoadError)
options.onLoadError("Picasa plugin encountered an error while retrieving data");
}
});
}
}

@ -0,0 +1,6 @@
function yox_youtube(){var i=jQuery,m={singleVideo:/^http:\/\/(?:www\.)?youtube.com\/watch\?v=([^\&]+)(.*)?/,playlist:/^http:\/\/(?:www\.)?youtube.com\/(?:view_play_list|my_playlists)\?p=([^\&]+)(.*)?/,user:/^http:\/\/(?:www\.)?youtube.com\/user\/([^\?]+)(?:\?(.*))?/,search:/^http:\/\/(?:www\.)?youtube.com\/results\?(.*)/};this.getImagesData=function(e,n){function o(c){var f=[];jQuery.each(c,function(j,b){if(k==="playlist")b=b.video;var g=b.title;g={thumbnailSrc:b.thumbnail[a.hqThumbnails?"hqDefault":
"sqDefault"],link:b.player["default"],media:{element:i("<div>",{className:"yoxview_element",html:"<object width='100%' height='100%'><param name='movie' value='"+(b.content["5"]+"&fs=1&hd=1")+"'</param><param name='allowFullScreen' value='true'></param><param name='wmode' value='transparent'></param><param name='allowScriptAccess' value='always'></param><embed src='"+(b.content["5"]+"&fs=1&hd=1")+"' type='application/x-shockwave-flash' allowfullscreen='true' allowscriptaccess='always' wmode='transparent' width='100%' height='100%'></embed></object>"}),
title:g,contentType:"flash",elementId:b.id,description:b.description}};i.extend(g.media,p(!!b.aspectRatio&&b.aspectRatio==="widescreen"));f.push(g)});return f}var h=false,a=jQuery.extend({},{url:"http://gdata.youtube.com/feeds/api/videos",setThumbnails:true,setSingleAlbumThumbnails:true,alt:"jsonc",thumbsize:64,v:2,format:5,hqThumbnails:false,aspectRatio:"auto"},e.dataSourceOptions),k;if(e.dataUrl){var d;for(regexType in m)if(d=e.dataUrl.match(m[regexType])){k=regexType;break}if(d){switch(k){case "singleVideo":h=
true;a.url+="/"+d[1];break;case "playlist":a.url="http://gdata.youtube.com/feeds/api/playlists/"+d[1];break;case "user":a.url="http://gdata.youtube.com/feeds/api/users/"+d[1]+"/uploads"}if(d=Yox.queryToJson(d.length==2?d[1]:d[2])){if(d.search_query){d.q=d.search_query;delete d.search_query}i.extend(a,d)}}}var p=function(){var c,f,j=16/9,b=false;if(!a.width&&!a.height)a.width=720;if(a.height&&!a.width||a.width&&!a.height){if(typeof a.aspectRatio==="string")if(a.aspectRatio==="auto")a.aspectRatio=4/
3;else{b=a.aspectRatio.split(":");a.aspectRatio=parseInt(b[0],10)/parseInt(b[1],10)}b=a.aspectRatio===16/9;if(a.height){c={height:a.height,width:a.height*j};b||(f={height:a.height,width:a.height*a.aspectRatio})}else{c={width:a.width,height:a.width/j};b||(f={width:a.width,height:a.width/a.aspectRatio})}}return function(g){return g?c:f}}(),l={};e.onLoadBegin&&e.onLoadBegin();i.jsonp({url:a.url,data:a,async:false,callbackParameter:"callback",success:function(c){if(h&&!c.data||!h&&(!c.data.items||c.data.items.length===
0))e.onNoData&&e.onNoData();else{l.images=o(h?[c.data]:c.data.items);if(!h)if(c=c.data.title)l.title=c;n&&n(l);e.onLoadComplete&&e.onLoadComplete()}},error:function(){e.onLoadError&&e.onLoadError("YouTube plugin encountered an error while retrieving data")}})}};

@ -0,0 +1,197 @@
/*!
* Yox YouTube plugin
* http://yoxigen.com/yoxview/
*
* Copyright (c) 2010 Yossi Kolesnicov
*
* Licensed under the MIT license.
* http://www.opensource.org/licenses/mit-license.php
*
* Date: 13th November, 2010
* Version : 1.0
*/
function yox_youtube()
{
var $ = jQuery,
youtubeRegex = /^http:\/\/(?:www\.)?youtube.com\//,
self = this,
ytRegex = {
singleVideo: /^http:\/\/(?:www\.)?youtube.com\/watch\?v=([^\&]+)(.*)?/,
playlist: /^http:\/\/(?:www\.)?youtube.com\/(?:view_play_list|my_playlists)\?p=([^\&]+)(.*)?/,
user: /^http:\/\/(?:www\.)?youtube.com\/user\/([^\?]+)(?:\?(.*))?/,
search: /^http:\/\/(?:www\.)?youtube.com\/results\?(.*)/
};
this.getImagesData = function(options, callback)
{
var defaults = {
url: "http://gdata.youtube.com/feeds/api/videos",
setThumbnails: true,
setSingleAlbumThumbnails: true,
alt: 'jsonc',
thumbsize: 64,
v: 2,
format: 5,
hqThumbnails: false,
aspectRatio: "auto"
},
isSingleVideo = false,
datasourceOptions = jQuery.extend({}, defaults, options.dataSourceOptions);
function getDimensionsCalc(){
var widescreenDimensions,
defaultDimensions,
widescreenAspectRatio = 16/9,
defaultIsWidescreen = false;
if (!datasourceOptions.width && !datasourceOptions.height)
datasourceOptions.width = 720;
if ((datasourceOptions.height && !datasourceOptions.width) || (datasourceOptions.width && !datasourceOptions.height)){
if (typeof(datasourceOptions.aspectRatio) === "string"){
if (datasourceOptions.aspectRatio === "auto")
datasourceOptions.aspectRatio = 4/3;
else{
var ratioValues = datasourceOptions.aspectRatio.split(":");
datasourceOptions.aspectRatio = parseInt(ratioValues[0], 10) / parseInt(ratioValues[1], 10);
}
}
defaultIsWidescreen = datasourceOptions.aspectRatio === 16/9;
if (datasourceOptions.height){
widescreenDimensions = { height: datasourceOptions.height, width: datasourceOptions.height * widescreenAspectRatio };
if (!defaultIsWidescreen)
defaultDimensions = { height: datasourceOptions.height, width: datasourceOptions.height * datasourceOptions.aspectRatio };
}
else{
widescreenDimensions = { width: datasourceOptions.width, height: datasourceOptions.width / widescreenAspectRatio };
if (!defaultIsWidescreen)
defaultDimensions = { width: datasourceOptions.width, height: datasourceOptions.width / datasourceOptions.aspectRatio };
}
}
var getDimensions = function(isWidescreen){
return isWidescreen ? widescreenDimensions : defaultDimensions;
}
return getDimensions;
}
var feedType;
if (options.dataUrl)
{
var urlMatch;
for (regexType in ytRegex){
urlMatch = options.dataUrl.match(ytRegex[regexType]);
if (urlMatch)
{
feedType = regexType;
break;
}
}
if (urlMatch){
switch(feedType){
case "singleVideo":
isSingleVideo = true;
datasourceOptions.url += "/" + urlMatch[1];
break;
case "playlist":
datasourceOptions.url = "http://gdata.youtube.com/feeds/api/playlists/" + urlMatch[1];
break;
case "user":
datasourceOptions.url = "http://gdata.youtube.com/feeds/api/users/" + urlMatch[1] + "/uploads";
break;
default:
break;
}
var queryData = Yox.queryToJson(urlMatch.length == 2 ? urlMatch[1] : urlMatch[2]);
if (queryData){
if (queryData.search_query){
queryData.q = queryData.search_query;
delete queryData.search_query;
}
$.extend(datasourceOptions, queryData);
}
}
}
var getDimensions = getDimensionsCalc();
function getEmbedObject(embedUrl){
var videoPanel = $("<div>", {
className: "yoxview_element",
html: "<object width='100%' height='100%'><param name='movie' value='" + embedUrl + "'</param><param name='allowFullScreen' value='true'></param><param name='wmode' value='transparent'></param><param name='allowScriptAccess' value='always'></param><embed src='" + embedUrl + "' type='application/x-shockwave-flash' allowfullscreen='true' allowscriptaccess='always' wmode='transparent' width='100%' height='100%'></embed></object>"
});
return videoPanel;
}
function getVideosDataFromJson(items)
{
var videosData = [];
jQuery.each(items, function(i, video){
if (feedType === "playlist")
video = video.video;
var videoTitle = video.title;
var videoData = {
thumbnailSrc: video.thumbnail[datasourceOptions.hqThumbnails ? "hqDefault" : "sqDefault"],
link: video.player["default"],
media: {
"element": getEmbedObject(video.content["5"] + "&fs=1&hd=1"),
title: videoTitle,
contentType: "flash",
elementId: video.id,
description: video.description
}
};
$.extend(videoData.media, getDimensions(!!video.aspectRatio && video.aspectRatio === "widescreen"));
videosData.push(videoData);
});
return videosData;
}
var returnData = {};
if (options.onLoadBegin)
options.onLoadBegin();
$.jsonp({
url: datasourceOptions.url,
data: datasourceOptions,
async: false,
callbackParameter: "callback",
success: function(jsonData)
{
if ((isSingleVideo && !jsonData.data) || (!isSingleVideo && (!jsonData.data.items || jsonData.data.items.length === 0)))
{
if (options.onNoData)
options.onNoData();
return;
}
returnData.images = getVideosDataFromJson(isSingleVideo ? [ jsonData.data ] : jsonData.data.items);
if (!isSingleVideo){
var dataTitle = jsonData.data.title;
if (dataTitle)
returnData.title = dataTitle;
}
if (callback)
callback(returnData);
if (options.onLoadComplete)
options.onLoadComplete();
},
error : function(xOptions, textStatus){
if (options.onLoadError)
options.onLoadError("YouTube plugin encountered an error while retrieving data");
}
});
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 55 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 617 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.6 KiB

@ -0,0 +1,116 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>YoxView Installation Instructions</title>
<style type="text/css">
body{ margin-bottom: 1em; font-family: Arial, Sans-Serif; }
#main{ width: 800px; margin: 0 auto;}
pre{
font-family: Courier New;
font-size: 10pt;
background: #c7d2d8;
background: rgba(102, 133, 150, 0.34);
border: solid 1px #768ea5;
padding: 10px 15px;
margin-top: 0.5em;
margin-bottom: 2em;
color: Black;
overflow: auto;
-moz-border-radius: 10px;
-moz-border-radius-topright: 0;
-moz-border-radius-topleft: 0;
-webkit-border-radius: 10px;
-webkit-border-top-left-radius: 0;
-webkit-border-top-right-radius: 0;
}
a{ color: #0084e0; text-decoration: none;}
a:hover{ text-decoration: underline; }
p#lastUpdate{ font-size: smaller; margin-top: 2em; color: #666; }
</style>
</head>
<body>
<div id="main">
<h1>YoxView Installation Instructions</h1>
<p>For full usage instruction, demos and information, please refer to the <a href="http://yoxigen.com/yoxview/usage.aspx">
YoxView usage page</a>.</p>
<a href="#thumbnails">
1. Prepare your thumbnails<br />
</a><a href="#load">2. Load YoxView</a><br />
<a href="#options">
3. Options<br />
</a><a href="#plugins">
4. Plugins (Picasa/Flickr)</a><br /><br />
<h2 id="installation">Installation</h2>
<ol>
<li>
<h3>Create your thumbnails</h3>
Your thumbnails should be placed inside a container and link to their respective full-size images, like this:
<pre>&lt;div class="yoxview"&gt;
&lt;a href="img/01.jpg"&gt;&lt;img src="img/thumbnails/01.jpg" alt="First" title="First image" /&gt;&lt;/a&gt;
&lt;a href="img/02.jpg"&gt;&lt;img src="img/thumbnails/02.jpg" alt="Second" title="Second image" /&gt;&lt;/a&gt;
&lt;/div&gt;
</pre>
<p>The viewer displays the TITLE attribute of the image tag as the image's title inside the viewer, so it's recommended to use it.</p>
<p>Note - If you use YoxView's <a href="#plugins">plugins</a> to get your images from Flickr/Picasa, it creates the thumbnails for you, so you can bypass this step.</p>
</li>
<li>
<h3>Include the YoxView script in your page</h3>
Put the following line in the HEAD section of your page (just make sure that the
SRC points to the correct folder):<br />
<pre class="script">&lt;script type="text/javascript" src="yoxview/yoxview-init.js"&gt;&lt;/script&gt;</pre>
</li>
<li>
<h3>Apply YoxView to &nbsp;the element that contains your thumbnails</h3>
<ul>
<li><h4>Simple use (use if you don't know jQuery or as a shortcut):</h4>
First make sure that the element containing your thumbnails has the class "yoxview",
like shown above (&lt;div <strong>class="yoxview"</strong>&gt;). Then,
open the file yoxview-init.js and uncomment the last line:<br />
<pre class="script">LoadScript(yoxviewPath + "yoxview-nojquery.js");</pre>
</li>
<li>
<h4>Regular jQuery plugin use:</h4>
(Don't forget to call it from within $(document).ready!)
<pre>$("#thumbnails").yoxview([options]);</pre>
</li>
</ul>
</li>
</ol>
<span class="demo"><strong>Demo</strong>: <a href="http://www.yoxigen.com/yoxview/demo/demo - basic usage.html">Basic installation and usage</a></span>
<h2 id="options">3. Options</h2>
You can specify options when calling YoxView, either from your script or, if you're using the yoxview-nojquery.js file, from there.
<pre>$("#thumbnails").yoxview({
backgroundColor: 'Blue',
playDelay: 5000
});</pre>
<span class="demo"><strong>Demo</strong>: <a href="http://www.yoxigen.com/yoxview/demo/demo - customizing with options.html">Using options</a></span><br />
For a full list of available options <a href="http://yoxigen.com/yoxview/usage.aspx#options">
click here</a>.
<h2 id="plugins">4. Plugins</h2>
<span class="demo"><strong>Demo</strong>: <a href="http://www.yoxigen.com/yoxview/demo/demo - using plugins.html">Using the YoxView plugins</a></span><br />
For complete information and usage instructions for YoxView plugins, <a href="http://yoxigen.com/yoxview/plugins.aspx">
click here</a>.
<p> YoxView is capable of displaying images from external sources, such as Picasa or Flickr. Images and information about them are retrieved using AJAX (or JSONP) and thumbnails are then created in the page.</p>
<p>Images from outside sources can be retrieved using the <em>dataUrl</em> option,
by copying a URL from one of the supported data sources.
Here's an example of adding an album from picasa to your web page (the scripts can
be either in the HEAD or BODY of your page):</p>
<pre>&lt;script type="text/javascript" src="yoxview/yoxview-init.js"&gt;&lt;/script&gt;
&lt;script type="text/javascript"&gt;
$(document).ready(function(){
$("#yoxview_picasa").yoxview({
dataUrl: 'http://picasaweb.google.com/yoxigen/Trips'
});
});
&lt;/script&gt;
&lt;div id="yoxview_picasa"&gt;&lt;/div&gt;</pre>
<a href="http://yoxigen.com/yoxview/plugins.aspx#urlsTable">
Click here</a> for a full list of supported data URL's.
<p id="lastUpdate">
Last update to this file: May 20th, 2010
</p>
</div>
</body>
</html>

@ -0,0 +1,232 @@
/*!
* jquery.yoxthumbs
* jQuery thumbnails plugin
* http://yoxigen.com/
*
* Copyright (c) 2010 Yossi Kolesnicov
*
* Date: 13th November, 2010
* Version : 0.95
*/
(function($){
$.fn.yoxthumbs = function(opt) {
if (this.length == 0)
return this;
if (typeof(opt) != 'string')
{
var defaults = {
target: null, // an yoxview instance
selectedThumbnailClassName : "selected",
thumbsOpacityFadeTime: 300,
thumbsOpacity : undefined,
prevBtn: undefined,
nextBtn: undefined,
onClick: undefined,
images: undefined,
enableOnlyMedia: false // If set to true, YoxThumbs is enabled only for links whose HREF is to an image or other supported media.
};
var options = $.extend(defaults, opt);
var $this = $(this);
$this.data("yoxthumbs", new YoxThumbs($this, options));
return this;
}
else
{
var instance = $(this).data("yoxthumbs");
if (instance)
{
if ($.isFunction(instance[opt]))
instance[opt].apply(instance, Array.prototype.slice.call(arguments, 1));
else
return instance[opt];
}
return this;
}
};
function YoxThumbs(container, options)
{
var self = this,
prevBtn = options.prevBtn,
nextBtn = options.nextBtn,
viewIndex = container.data("yoxview") ? container.data("yoxview").viewIndex : undefined,
$ = jQuery,
containerIsAnchor = container[0].tagName == "A",
shortenFunctions = {};
this.thumbnails = [];
(function setShortenFunctions(){
$.each(["title", "description"], function(i, fieldName){
var maxLength = options[fieldName + "MaxLength"];
shortenFunctions[fieldName] = function(str){
return !maxLength || str.length <= maxLength ? str : str.substr(0, maxLength) + (options.addEllipsis !== false ? "&hellip;" : "");
};
});
})();
// If images data has been specified, create the thumbnails:
if (options.images)
$.each(options.images, function(i, imageData){
container.append(createThumbnail(imageData));
});
var currentImageIndex = 0,
foundThumbnails = containerIsAnchor ? container : container.find("a:has(img)");
$.each(foundThumbnails, function(i, thumbnail)
{
var $thumbnail = $(thumbnail);
var addThumb = true;
if (options.enableOnlyMedia)
{
if (!thumbnail.href.match(Yox.Regex.image))
{
var isData = false;
for(dataProvider in Yox.Regex.data)
{
if (thumbnail.href.match(Yox.Regex.data[dataProvider]))
{
isData = true;
break;
}
}
if (!isData)
{
var isVideo = false;
for(videoProvider in Yox.Regex.video)
{
if (thumbnail.href.match(Yox.Regex.video[videoProvider]))
{
isVideo = true;
break;
}
}
if (!isVideo)
addThumb = false;
}
}
}
if (addThumb)
{
$thumbnail.data("yoxthumbs", $.extend({imageIndex: currentImageIndex++}, $thumbnail.data("yoxthumbs")));
self.thumbnails.push($thumbnail);
}
});
if (options.thumbsOpacity)
{
this.thumbnails.css("opacity", options.thumbsOpacity);
container.delegate("a:has(img)", "mouseenter.yoxthumbs", function(e){
if (self.currentSelectedIndex === undefined ||
$(e.currentTarget).data("yoxthumbs").imageIndex != self.currentSelectedIndex){
$(e.currentTarget).stop().animate({opacity: 1}, options.thumbsOpacityFadeTime);
}
})
.delegate("a:has(img)", "mouseout.yoxthumbs", function(e){
if (self.currentSelectedIndex === undefined ||
$(e.currentTarget).data("yoxthumbs").imageIndex != self.currentSelectedIndex)
$(e.currentTarget).stop().animate({opacity: options.thumbsOpacity}, options.thumbsOpacityFadeTime);
});
}
if (options.onClick)
{
if (containerIsAnchor)
container.bind("click.yoxthumbs", function(e){
options.onClick(e);
return false;
});
else
container.delegate("a:has(img)", "click.yoxthumbs", function(e){
if (!$(e.currentTarget).data("yoxthumbs"))
return true;
options.onClick(e);
return false;
});
}
function createThumbnail(imageData, viewIndex)
{
var thumbnail = $("<a>", {
href: imageData.link,
className: options.thumbnailsClass || "yoxthumbs_thumbnail"
});
var thumbImage = jQuery("<img>", {
src : imageData.thumbnailSrc,
alt : imageData.media.alt,
title : imageData.media.title
});
if (imageData.data)
thumbnail.data("yoxthumbs", imageData.data);
if (imageData.thumbnailDimensions)
thumbImage.css({
"width": imageData.thumbnailDimensions.width,
"height" : imageData.thumbnailDimensions.height
});
thumbImage.appendTo(thumbnail);
if (options.setTitles && imageData.media.title){
$(options.titlesElement || "<span>", {
html: shortenFunctions.title(imageData.media.title),
className: options.titlesClass
}).appendTo(thumbnail);
}
if (options.setDescriptions && imageData.media.description){
$(options.descriptionsElement || "<div>", {
html: shortenFunctions.description(imageData.media.description),
className: options.descriptionsClass
}).appendTo(thumbnail);
}
return thumbnail;
}
// Selects a thumbnail
this.select = function(thumbIndex)
{
if (this.currentSelectedIndex === undefined || this.currentSelectedIndex != thumbIndex)
{
var currentThumbnail = this.thumbnails.eq(thumbIndex);
var yoxslider = container.data("yoxslide");
if (yoxslider)
yoxslider.show(currentThumbnail);
// Remove selection from previous thumbnail:
if (this.currentSelectedIndex !== undefined)
{
var previousSelectedThumbnail = this.thumbnails.eq(this.currentSelectedIndex);
previousSelectedThumbnail.removeClass(options.selectedThumbnailClassName);
if (options.thumbsOpacity)
previousSelectedThumbnail.animate({opacity: options.thumbsOpacity}, options.thumbsOpacityFadeTime);
}
currentThumbnail.addClass(options.selectedThumbnailClassName);
if (options.thumbsOpacity)
currentThumbnail.animate({opacity: 1}, options.thumbsOpacityFadeTime);
this.currentSelectedIndex = thumbIndex;
}
}
this.unload = function(dataKey)
{
$.each(this.thumbnails, function(i, thumbnail)
{
$(thumbnail).removeData("yoxthumbs");
if (dataKey)
$(thumbnail).removeData(dataKey);
});
container.undelegate("a:has(img)", "click.yoxthumbs");
container.find(".yoxthumbs_thumbnail").remove();
if (containerIsAnchor)
container.unbind(".yoxthumbs");
}
}
})(jQuery);

File diff suppressed because it is too large Load Diff

@ -0,0 +1,110 @@
if (!jQuery.jsonp)
{
// jquery.jsonp 1.0.4 (c) 2009 Julian Aubourg | MIT License
// http://code.google.com/p/jquery-jsonp/
(function($){var x=function(o){return o!==undefined&&o!==null;},H=$("head"),Z={},K={callback:"C",url:location.href};$.jsonp=function(d){d=$.extend({},K,d);if(x(d.beforeSend)){var t=0;d.abort=function(){t=1;};if(d.beforeSend(d,d)===false||t)return d;}
var _="",y="success",n="error",u=x(d.url)?d.url:_,p=x(d.data)?d.data:_,s=(typeof p)=="string",k=function(f){setTimeout(f,1);},S,P,i,j,U;p=s?p:$.param(p);x(d.callbackParameter)&&(p+=(p==_?_:"&")+escape(d.callbackParameter)+"=?");!d.cache&&!d.pageCache&&(p+=[(p==_?_:"&"),"_xx",(new Date()).getTime(),"=",1].join(_));S=u.split("?");if(p!=_){P=p.split("?");j=S.length-1;j&&(S[j]+="&"+P.shift());S=S.concat(P);}
i=S.length-2;i&&(S[i]+=d.callback+S.pop());U=S.join("?");if(d.pageCache&&x(Z[U])){k(function(){if(x(Z[U].e)){x(d.error)&&d.error(d,n);x(d.complete)&&d.complete(d,n);}else{var v=Z[U].s;x(d.dataFilter)&&(v=d.dataFilter(v));x(d.success)&&d.success(v,y);x(d.complete)&&d.complete(d,y);}});return d;}
var f=$("<iframe />");H.append(f);var F=f[0],W=F.contentWindow||F.contentDocument,D=W.document;if(!x(D)){D=W;W=D.getParentNode();}
var w,e=function(_,m){d.pageCache&&!x(m)&&(Z[U]={e:1});w();m=x(m)?m:n;x(d.error)&&d.error(d,m);x(d.complete)&&d.complete(d,m);},t=0,C=d.callback,E=C=="E"?"X":"E";D.open();W[C]=function(v){t=1;d.pageCache&&(Z[U]={s:v});k(function(){w();x(d.dataFilter)&&(v=d.dataFilter(v));x(d.success)&&d.success(v,y);x(d.complete)&&d.complete(d,y);});};W[E]=function(s){(!s||s=="complete")&&!t++&&k(e);};w=function(){W[E]=undefined;W[C]=undefined;try{delete W[E];}catch(_){}
try{delete W[C];}catch(_){}
D.open()
D.write(_);D.close();f.remove();}
k(function(){D.write(['<html><head><script src="',U,'" onload="',E,'()" onreadystatechange="',E,'(this.readyState)"></script></head><body onload="',E,'()"></body></html>'].join(_));D.close();});d.timeout>0&&setTimeout(function(){!t&&e(_,"timeout");},d.timeout);d.abort=w;return d;}
$.jsonp.setup=function(o){$.extend(K,o);};})(jQuery);
}
if (!jQuery().flash)
{
// jQuery SWFObject v1.1.1 MIT/GPL @jon_neal
// http://jquery.thewikies.com/swfobject
(function(f,h,i){function k(a,c){var b=(a[0]||0)-(c[0]||0);return b>0||!b&&a.length>0&&k(a.slice(1),c.slice(1))}function l(a){if(typeof a!=g)return a;var c=[],b="";for(var d in a){b=typeof a[d]==g?l(a[d]):[d,m?encodeURI(a[d]):a[d]].join("=");c.push(b)}return c.join("&")}function n(a){var c=[];for(var b in a)a[b]&&c.push([b,'="',a[b],'"'].join(""));return c.join(" ")}function o(a){var c=[];for(var b in a)c.push(['<param name="',b,'" value="',l(a[b]),'" />'].join(""));return c.join("")}var g="object",m=true;try{var j=i.description||function(){return(new i("ShockwaveFlash.ShockwaveFlash")).GetVariable("$version")}()}catch(p){j="Unavailable"}var e=j.match(/\d+/g)||[0];f[h]={available:e[0]>0,activeX:i&&!i.name,version:{original:j,array:e,string:e.join("."),major:parseInt(e[0],10)||0,minor:parseInt(e[1],10)||0,release:parseInt(e[2],10)||0},hasVersion:function(a){a=/string|number/.test(typeof a)?a.toString().split("."):/object/.test(typeof a)?[a.major,a.minor]:a||[0,0];return k(e,a)},encodeParams:true,expressInstall:"expressInstall.swf",expressInstallIsActive:false,create:function(a){if(!a.swf||this.expressInstallIsActive||!this.available&&!a.hasVersionFail)return false;if(!this.hasVersion(a.hasVersion||1)){this.expressInstallIsActive=true;if(typeof a.hasVersionFail=="function")if(!a.hasVersionFail.apply(a))return false;a={swf:a.expressInstall||this.expressInstall,height:137,width:214,flashvars:{MMredirectURL:location.href,MMplayerType:this.activeX?"ActiveX":"PlugIn",MMdoctitle:document.title.slice(0,47)+" - Flash Player Installation"}}}attrs={data:a.swf,type:"application/x-shockwave-flash",id:a.id||"flash_"+Math.floor(Math.random()*999999999),width:a.width||320,height:a.height||180,style:a.style||""};m=typeof a.useEncode!=="undefined"?a.useEncode:this.encodeParams;a.movie=a.swf;a.wmode=a.wmode||"opaque";delete a.fallback;delete a.hasVersion;delete a.hasVersionFail;delete a.height;delete a.id;delete a.swf;delete a.useEncode;delete a.width;var c=document.createElement("div");c.innerHTML=["<object ",n(attrs),">",o(a),"</object>"].join("");return c.firstChild}};f.fn[h]=function(a){var c=this.find(g).andSelf().filter(g);/string|object/.test(typeof a)&&this.each(function(){var b=f(this),d;a=typeof a==g?a:{swf:a};a.fallback=this;if(d=f[h].create(a)){b.children().remove();b.html(d)}});typeof a=="function"&&c.each(function(){var b=this;b.jsInteractionTimeoutMs=b.jsInteractionTimeoutMs||0;if(b.jsInteractionTimeoutMs<660)b.clientWidth||b.clientHeight?a.call(b):setTimeout(function(){f(b)[h](a)},b.jsInteractionTimeoutMs+66)});return c}})(jQuery,"flash",navigator.plugins["Shockwave Flash"]||window.ActiveXObject);
}
if (typeof Yox == "undefined")
Yox={addStylesheet:function(a,b){var d=a.createElement("link");d.setAttribute("rel","Stylesheet");d.setAttribute("type","text/css");d.setAttribute("href",b);a.getElementsByTagName("head")[0].appendChild(d)},compare:function(a,b){function d(g){var h=0,i;for(i in g)i!=null&&h++;return h}if(typeof a!=typeof b)return false;else if(typeof a=="function")return a==b;if(d(a)!=d(b))return false;for(var e in a){var c=a[e],f=b[e];if(typeof c!=typeof f)return false;if(c&&c.length&&c[0]!==undefined&&c[0].tagName){if(!f||
f.length!=c.length||!f[0].tagName||f[0].tagName!=c[0].tagName)return false}else if(typeof c=="function"||typeof c=="object"){c=Yox.compare(c,f);if(!c)return c}else if(c!=f)return false}return true},hasProperties:function(a){var b=false;for(pName in a){b=true;break}return b},dataSources:[],fitImageSize:function(a,b,d,e){var c={width:a.width,height:a.height};if(a.width>b.width||d&&a.width<b.width){c.height=Math.round(b.width/a.width*a.height);c.width=b.width}if(!e&&c.height>b.height){c.width=Math.round(b.height/
c.height*c.width);c.height=b.height}else if(e&&c.height<b.height&&(b.height<=a.height||d)){c.height=b.height;c.width=Math.round(b.height/a.height*a.width)}return c},flashVideoPlayers:{jwplayer:function(a,b,d,e,c){a={swf:a||"/jwplayer/player.swf",flashVars:{file:b,image:d,stretching:"fill",title:e,backcolor:"000000",frontcolor:"FFFFFF"}};$.extend(a.flashVars,c);return a}},getDataSourceName:function(a){for(dataSourceIndex in Yox.Regex.data)if(a.match(Yox.Regex.data[dataSourceIndex]))return dataSourceIndex;
return null},getPath:function(a){for(var b=document.getElementsByTagName("script"),d=0;d<b.length;d++){var e=b[d].src.match(a);if(e)return e[1]}return null},getTopWindow:function(){var a=window;if(window.top)a=window.top;else for(;a.parent;)a=a.parent;return a},getUrlData:function(a){a=a.match(Yox.Regex.url);if(!a)return null;var b={path:a[1],anchor:a[3]};if(a[2])b.queryFields=this.queryToJson(a[2]);return b},hex2rgba:function(a,b){a=parseInt(a.replace("#","0x"),16);return"rgba("+((a&16711680)>>16)+
", "+((a&65280)>>8)+", "+(a&255)+", "+(typeof b!="undefined"?b:"1")+")"},queryToJson:function(a){if(!a)return null;a=a.split("&");for(var b={},d=0;d<a.length;d++){var e=a[d].split("=");if(e.length==2)b[e[0]]=e[1]}return b},loadDataSource:function(a,b){var d;if(a.dataUrl)(d=Yox.getDataSourceName(a.dataUrl))&&$.extend(a,{dataSource:dataSourceIndex});if(a.dataSource&&!Yox.dataSources[d])$.ajax({url:a.dataFolder+a.dataSource+".js",async:false,dataType:"script",success:function(e){eval(e);eval("Yox.dataSources['"+
a.dataSource+"'] = new yox_"+a.dataSource+"();");b(Yox.dataSources[a.dataSource])},error:function(e,c,f){console.log(e,c,f)}});else b&&b()},Regex:{data:{picasa:/http:\/\/(?:www\.)?picasaweb\.google\..*/i,flickr:/http:\/\/(?:www\.)?flickr.com/i,smugmug:/http:\/\/.*\.smugmug.com/i,youtube:/^http:\/\/(?:www\.)?youtube.com\//},flash:/^(.*\.(swf))(\?[^\?]+)?/i,flashvideo:/^(.*\.(flv|f4v|f4p|f4a|f4b|aac))(\?[^\?]+)?/i,image:/^[^\?#]+\.(?:jpg|jpeg|gif|png)$/i,url:/^([^#\?]*)?(?:\?([^\?#]*))?(?:#([A-Za-z]{1}[A-Za-z\d-_\:\.]+))?$/,
video:{youtube:/.*youtube.com\/watch.*(?:v=[^&]+).*/i,vimeo:/vimeo.com\/\d+/i,hulu:/hulu.com\/watch\//i,viddler:/viddler.com\//i,flickr:/.*flickr.com\/.*/i,myspace:/.*vids.myspace.com\/.*/i,qik:/qik.com/i,revision3:/revision3.com/i,dailymotion:/dailymotion.com/i,"5min":/.*5min\.com\/Video/i}},Sprites:function(a,b,d){this.spritesImage=(new Image).src=b;var e=0;jQuery.each(a,function(c,f){f.top=e;e+=f.height});this.getSprite=function(c,f,g){return jQuery("<img/>",{src:d,alt:f,title:g,css:{width:a[c].width,
height:a[c].height,"background-image":"url("+b+")","background-repeat":"no-repeat","background-position":this.getBackgroundPosition(c,f)}})};this.getBackgroundPosition=function(c,f){return"-"+jQuery.inArray(f,a[c].sprites)*(a[c].width||0)+"px -"+a[c].top+"px"}},Support:{rgba:function(){if(!("result"in arguments.callee)){var a=document.createElement("div"),b=false;try{a.style.color="rgba(0, 0, 0, 0.5)";b=/^rgba/.test(a.style.color)}catch(d){}arguments.callee.result=b}return arguments.callee.result}},
urlDataToPath:function(a){var b=a.path||"";if(a.queryFields&&this.hasProperties(a.queryFields)){b+="?";for(field in a.queryFields)b+=field+"="+a.queryFields[field]+"&";b=b.substring(0,b.length-1)}if(a.anchor)b+="#"+a.anchor;return b}};
// yoxthumbs:
(function(h){function n(d,a){function k(b){var c=f("<a>",{href:b.link,className:a.thumbnailsClass||"yoxthumbs_thumbnail"}),e=jQuery("<img>",{src:b.thumbnailSrc,alt:b.media.alt,title:b.media.title});b.data&&c.data("yoxthumbs",b.data);b.thumbnailDimensions&&e.css({width:b.thumbnailDimensions.width,height:b.thumbnailDimensions.height});e.appendTo(c);if(a.setTitles&&b.media.title)f(a.titlesElement||"<span>",{html:l.title(b.media.title),className:a.titlesClass}).appendTo(c);if(a.setDescriptions&&b.media.description)f(a.descriptionsElement||
"<div>",{html:l.description(b.media.description),className:a.descriptionsClass}).appendTo(c);return c}var i=this;d.data("yoxview")&&d.data("yoxview");var f=jQuery,m=d[0].tagName=="A",l={};this.thumbnails=[];(function(){f.each(["title","description"],function(b,c){var e=a[c+"MaxLength"];l[c]=function(g){return!e||g.length<=e?g:g.substr(0,e)+(a.addEllipsis!==false?"&hellip;":"")}})})();a.images&&f.each(a.images,function(b,c){d.append(k(c))});var o=0,p=m?d:d.find("a:has(img)");f.each(p,function(b,c){var e=
f(c),g=true;if(a.enableOnlyMedia)if(!c.href.match(Yox.Regex.image)){var j=false;for(dataProvider in Yox.Regex.data)if(c.href.match(Yox.Regex.data[dataProvider])){j=true;break}if(!j){j=false;for(videoProvider in Yox.Regex.video)if(c.href.match(Yox.Regex.video[videoProvider])){j=true;break}j||(g=false)}}if(g){e.data("yoxthumbs",f.extend({imageIndex:o++},e.data("yoxthumbs")));i.thumbnails.push(e)}});if(a.thumbsOpacity){this.thumbnails.css("opacity",a.thumbsOpacity);d.delegate("a:has(img)","mouseenter.yoxthumbs",
function(b){if(i.currentSelectedIndex===undefined||f(b.currentTarget).data("yoxthumbs").imageIndex!=i.currentSelectedIndex)f(b.currentTarget).stop().animate({opacity:1},a.thumbsOpacityFadeTime)}).delegate("a:has(img)","mouseout.yoxthumbs",function(b){if(i.currentSelectedIndex===undefined||f(b.currentTarget).data("yoxthumbs").imageIndex!=i.currentSelectedIndex)f(b.currentTarget).stop().animate({opacity:a.thumbsOpacity},a.thumbsOpacityFadeTime)})}if(a.onClick)m?d.bind("click.yoxthumbs",function(b){a.onClick(b);
return false}):d.delegate("a:has(img)","click.yoxthumbs",function(b){if(!f(b.currentTarget).data("yoxthumbs"))return true;a.onClick(b);return false});this.select=function(b){if(this.currentSelectedIndex===undefined||this.currentSelectedIndex!=b){var c=this.thumbnails.eq(b),e=d.data("yoxslide");e&&e.show(c);if(this.currentSelectedIndex!==undefined){e=this.thumbnails.eq(this.currentSelectedIndex);e.removeClass(a.selectedThumbnailClassName);a.thumbsOpacity&&e.animate({opacity:a.thumbsOpacity},a.thumbsOpacityFadeTime)}c.addClass(a.selectedThumbnailClassName);
a.thumbsOpacity&&c.animate({opacity:1},a.thumbsOpacityFadeTime);this.currentSelectedIndex=b}};this.unload=function(b){f.each(this.thumbnails,function(c,e){f(e).removeData("yoxthumbs");b&&f(e).removeData(b)});d.undelegate("a:has(img)","click.yoxthumbs");d.find(".yoxthumbs_thumbnail").remove();m&&d.unbind(".yoxthumbs")}}h.fn.yoxthumbs=function(d){if(this.length==0)return this;if(typeof d!="string"){var a=h.extend({target:null,selectedThumbnailClassName:"selected",thumbsOpacityFadeTime:300,thumbsOpacity:undefined,
prevBtn:undefined,nextBtn:undefined,onClick:undefined,images:undefined,enableOnlyMedia:false},d),k=h(this);k.data("yoxthumbs",new n(k,a))}else if(a=h(this).data("yoxthumbs"))if(h.isFunction(a[d]))a[d].apply(a,Array.prototype.slice.call(arguments,1));else return a[d];return this}})(jQuery);
/*!
* jquery.yoxview
* jQuery media viewer
* http://yoxigen.com/yoxview
*
* Copyright (c) 2010 Yossi Kolesnicov
*
* Licensed under the MIT license.
* http://www.opensource.org/licenses/mit-license.php
*
* Date: 13th November, 2010
* Version : 2.2
*/
(function(b){function jb(){function H(a){for(var c=A.length,e=0;e<c;e++)if(Yox.compare(A[e],a))return e;A.push(a);return c}function za(a){return"a:has(img)"+(a.textLinksSelector!==null?",a"+a.textLinksSelector:"")}function kb(a,c){if(a.skin){var e=a.skin;if(b.yoxview.yoxviewSkins[e])c&&c(b.yoxview.yoxviewSkins[e]);else{var f=P+"skins/"+e+"/yoxview."+e;b.ajax({url:f+".js",dataType:"script",success:function(){b.yoxview.yoxviewSkins[e].css!==false&&Yox.addStylesheet(top.document,f+".css");c&&c(b.yoxview.yoxviewSkins[e])},
error:function(){alert("Error loading skin file "+f+".js")}})}}else c&&c(b.yoxview.yoxviewSkins[e])}function lb(a,c){if(W[a])c&&c(W[a]);else{W[a]={};var e=P+"lang/"+a+".js";b.ajax({url:e,async:false,dataType:"json",success:function(f){W[a]=f;c&&c(f)},error:function(){alert("Error loading language file "+e)}})}}function Aa(a){a=a.data("yoxview");if(!w||Ba!=a.viewIndex){if(!a.cacheVars)a.cacheVars={cachedImagesCount:0,cacheDirectionForward:true,cacheBufferLastIndex:null,currentCacheImg:0};w=a.images;
m=w.length;Ba=a.viewIndex;var c=false;if(!la||la!=a.optionsSet){la=a.optionsSet||0;d=A[la];c=true}if(d.onLoadImages)d.onLoadImages({images:w,viewData:a});else if(Q&&m==1||k&&!Q&&m>0)c=true;if(c){if(k){t.remove();K=R=X=L=ma=Q=k=undefined;u=0;b.yoxview.infoButtons={}}Sa()}l=a.cacheVars}}function Ta(a,c,e){a=c&&(c.width||c.height)?{width:parseInt(c.width),height:parseInt(c.height)}:e.defaultDimensions[a];if(isNaN(a.width))a.width=null;if(isNaN(a.height))a.height=null;return a}function Ua(a,c,e,f){var h=
function(g){var i=b(g.currentTarget).data("yoxview");if(!i||i.imageIndex===null)return true;else{g.preventDefault();b.yoxview.open(b(g.liveFired||g.currentTarget).data("yoxview").viewIndex,i.imageIndex)}};if(a[0].tagName=="A")a.bind("click.yoxview",h);else e?a.yoxthumbs(b.extend({images:e,enableOnlyMedia:false,onClick:f||function(g){g.preventDefault();c.thumbnailsOptions&&c.thumbnailsOptions.onClick?c.thumbnailsOptions.onClick(b(g.currentTarget).data("yoxview").imageIndex,b(g.currentTarget),b(g.liveFired).data("yoxview").viewIndex):
b.yoxview.open(b(g.liveFired||g.currentTarget).data("yoxview").viewIndex,b(g.currentTarget).data("yoxview").imageIndex);return false}},c.thumbnailsOptions)):a.delegate(za(c),"click.yoxview",h)}function Va(a){var c=M[Ba];B=c[0].tagName=="A"?c:w[u].thumbnailImg;if(!B||B.length==0)B=w[0].thumbnailImg;if(B){c=B.attr("src");a&&L&&c&&L.attr("src",c);if(mb&&!S&&window.name)S=b(top.document).find("[name='"+window.name+"']").offset();Ca=B.offset();Y={width:B.width(),height:B.height(),top:Math.round(Ca.top-
Z.scrollTop()+(S?S.top:0)),left:Math.round(Ca.left+(S?S.left:0))}}}function na(a){oa.css("background-position",C.getBackgroundPosition("notifications",a));oa.stop().fadeIn(d.buttonsFadeTime,function(){b(this).delay(500).fadeOut(d.buttonsFadeTime)})}function nb(a){b(a).stop().animate({opacity:0.5},d.buttonsFadeTime)}function ob(a){if(b.yoxview&&b.yoxview.isOpen){var c=b.yoxview[Wa[pb[a.keyCode]]];if(c){a.preventDefault();c.apply(b.yoxview);return false}return true}return true}function Da(a,c,e){var f=
b("<a>",{href:"#",click:function(){return b.yoxview.clickBtn(b.yoxview[c],e)}});b("<span>"+a+"</span>").css("opacity","0").appendTo(f);f.append(C.getSprite("icons",c));return f}function Xa(a,c,e){var f=new Image;f.src=d.imagesFolder+c+".png";f=b("<a>",{css:{background:"url("+f.src+") no-repeat "+c+" center",opacity:"0",outline:"0"},className:"yoxview_ctlBtn",href:"#"});f.css(c,"0");if(e)f.css("cursor","default");else{f.click(function(){this.blur();return b.yoxview.clickBtn(a,true)});d.buttonsFadeTime!=
0&&f.hover(function(){b.yoxview.isOpen&&b(this).stop().animate({opacity:0.6},d.buttonsFadeTime)},function(){b(this).stop().animate({opacity:0},d.buttonsFadeTime)})}return f}function qb(){var a=typeof d.popupMargin=="number"?[String(d.popupMargin)]:d.popupMargin.split(" ",4);j.top=parseInt(a[0]);switch(a.length){case 1:j.bottom=j.right=j.left=j.top;break;case 2:j.bottom=j.top;j.right=j.left=parseInt(a[1]);break;case 3:j.bottom=parseInt(a[2]);j.right=j.left=parseInt(a[1]);break;default:b.extend(j,{right:parseInt(a[1]),
bottom:parseInt(a[2]),left:parseInt(a[3])})}j.totalHeight=j.top+j.bottom;j.totalWidth=j.left+j.right;d.renderInfoExternally&&b.extend(Ya,j)}function Sa(){qb();D=Ea();C=new Yox.Sprites({notifications:{width:59,height:59,sprites:["empty","playRTL","play","pause","last","first"]},icons:{width:18,height:18,sprites:["close","help","playpause","link","pin","unpin","play","pause","right","left"]},menu:{height:42,sprites:["back"]}},d.imagesFolder+"sprites.png",d.imagesFolder+"empty.gif");Wa={RIGHT:d.isRTL?
"prev":"next",DOWN:"next",UP:"prev",LEFT:d.isRTL?"next":"prev",ENTER:"play",HOME:"first",END:"last",SPACE:"next",h:"help",ESCAPE:"close"};n=W[d.lang];var a=d.skin?b.yoxview.yoxviewSkins[d.skin]:null;k=b("<div>",{id:"yoxview",click:function(g){g.stopPropagation()}});t=b("<div>",{id:"yoxview_popupWrap",click:function(g){g.preventDefault();b.yoxview.clickBtn(b.yoxview.close,true)}});d.skin&&t.attr("className","yoxview_"+d.skin);if(d.backgroundOpacity===0)t.css("background","none");else Yox.Support.rgba()&&
t.css("background-color",Yox.hex2rgba(d.backgroundColor,d.backgroundOpacity));t.appendTo(b(top.document.getElementsByTagName("body")[0])).append(k);R=b("<div>",{className:"yoxview_imgPanel",css:{"z-index":"2"}});K=b("<div>",{className:"yoxview_imgPanel",css:{"z-index":"1",display:"none"}});L=b("<img />",{className:"yoxview_fadeImg",css:{display:"block",width:"100%",height:"100%"}});X=b("<img />",{className:"yoxview_fadeImg",css:{display:"block",width:"100%",height:"100%"}});R.data("yoxviewPanel",
{image:L}).append(L).appendTo(k);K.data("yoxviewPanel",{image:X});K.append(X).appendTo(k);var c=m==1;if(c&&!w[0].media.title)d.renderInfo=false;if(d.renderMenu!==false){var e=b("<div>",{className:"yoxview_popupBarPanel yoxview_top"});d.autoHideMenu!==false&&e.hover(function(){b.yoxview.isOpen&&Za()},function(){b.yoxview.isOpen&&Fa()});x=b("<div>",{id:"yoxview_menuPanel"});if(Yox.Support.rgba()&&d.menuBackgroundColor)x.css("background",Yox.hex2rgba(d.menuBackgroundColor,d.menuBackgroundOpacity||0.8));
var f=Da(n.Help,"help",false);b.yoxview.infoButtons.playBtn=Da(n.Slideshow,"play",false);$=b.yoxview.infoButtons.playBtn.children("span");x.append(Da(n.Close,"close",true),f,b.yoxview.infoButtons.playBtn);if(c){b.yoxview.infoButtons.playBtn.css("display","none");f.css("display","none");x.css({width:58})}x.find("a:last-child").attr("class","last");e.append(x).appendTo(k);x.delegate("a","mouseenter",function(){b(this).stop().animate({top:"8px"},"fast").find("span").stop().animate({opacity:1},"fast")}).delegate("a",
"mouseleave",function(){b(this).stop().animate({top:"0"},"fast").find("span").stop().animate({opacity:0},"fast")})}if(d.renderButtons!==false&&(!c||!b.support.opacity)){Q=Xa(b.yoxview.prev,d.isRTL?"right":"left",c);ma=Xa(b.yoxview.next,d.isRTL?"left":"right",c);k.append(Q,ma);N=c&&!b.support.opacity?b():k.find(".yoxview_ctlBtn")}else N=b();aa=b("<div>",{id:"yoxview_ajaxLoader",className:"yoxview_notification",css:{display:"none"}});aa.append(b("<img>",{src:d.imagesFolder+"popup_ajax_loader.gif",alt:n.Loading,
css:{width:32,height:32,"background-image":"url("+d.imagesFolder+"sprites.png)","background-position":C.getBackgroundPosition("notifications","empty")}})).appendTo(k);if(!d.disableNotifications){oa=b("<img>",{className:"yoxview_notification"});k.append(oa)}O=b("<div>",{id:"yoxview_helpPanel",href:"#",title:n.CloseHelp,css:{background:"url("+d.imagesFolder+"help_panel.png) no-repeat center top",direction:n.Direction,opacity:"0"},click:function(){return b.yoxview.clickBtn(b.yoxview.help,false)}});e=
document.createElement("h1");e.innerHTML=n.Help.toUpperCase();f=document.createElement("p");f.innerHTML=n.HelpText;var h=document.createElement("span");h.id="yoxview_closeHelp";h.innerHTML=n.CloseHelp;O.append(e).append(f).append(h).appendTo(k);if(d.renderInfo!==false){o=b("<div>",{id:"yoxview_infoPanel",click:function(g){g.stopPropagation()}});if(d.infoBackOpacity===0){o.css("background","none");G=o}else if(Yox.Support.rgba()){G=o;o.css("background-color",Yox.hex2rgba(d.infoBackColor,d.infoBackOpacity))}else{o.append(b("<div>",
{id:"yoxview_infoPanelBack",css:{background:d.infoBackColor,opacity:d.infoBackOpacity}}));G=b("<div>",{id:"yoxview_infoPanelContent"})}pa=b("<span>",{id:"yoxview_count"});T=b("<div>",{id:"yoxview_infoText"});if(c){T.css("margin-left","10px");pa.css("display","none")}G.append(pa);if(d.renderInfoPin!==false){Ga=C.getSprite("icons",d.autoHideInfo?"pin":"unpin");$a=b("<a>",{className:"yoxviewInfoLink",href:"#",title:d.autoHideInfo?n.PinInfo:n.UnpinInfo,css:{display:"inline"},click:function(g){g.preventDefault();
d.autoHideInfo=!d.autoHideInfo;Ga.css("background-position",C.getBackgroundPosition("icons",d.autoHideInfo?"pin":"unpin"));this.title=d.autoHideInfo?n.PinInfo:n.UnpinInfo}});$a.append(Ga).appendTo(G)}if(a&&a.infoButtons){a=a.infoButtons(d,n,C,t,k);if(d.infoButtons)b.extend(d.infoButtons,a);else d.infoButtons=a}if(d.infoButtons){b.extend(b.yoxview.infoButtons,d.infoButtons);for(infoButton in d.infoButtons)d.infoButtons[infoButton].attr("className","yoxviewInfoLink").css("display","block").appendTo(G)}if(d.linkToOriginalContext!==
false){ba=b("<a>",{className:"yoxviewInfoLink",target:"_blank",title:n.OriginalContext});ba.append(C.getSprite("icons","link")).appendTo(G)}G.append(T);Yox.Support.rgba()||o.append(G);o.appendTo(d.renderInfoExternally?t:k);if(!d.renderInfoExternally){I=b("<div>",{className:"yoxview_popupBarPanel yoxview_bottom"});I.hover(function(){b.yoxview.isOpen&&!ca&&d.autoHideInfo!==false&&qa()},function(){b.yoxview.isOpen&&!ca&&d.autoHideInfo!==false&&da()});o.wrap(I);I=o.parent()}}Yox.Support.rgba()||b("<div>",
{css:{position:"fixed",height:"100%",width:"100%",top:"0",left:"0",background:d.backgroundColor,"z-index":"1",opacity:d.backgroundOpacity}}).appendTo(t)}function Ha(){l.cachedImagesCount++;if(l.cachedImagesCount==m)l.cacheComplete=true;else ab()}function ab(){if(!d.cacheBuffer||l.currentCacheImg!=l.cacheBufferLastIndex)ea(l.currentCacheImg+(l.cacheDirectionForward?1:-1))}function Ia(){if(d.cacheBuffer){l.cacheBufferLastIndex=l.cacheDirectionForward?u+d.cacheBuffer:u-d.cacheBuffer;if(l.cacheBufferLastIndex<
0)l.cacheBufferLastIndex+=m;else if(l.cacheBufferLastIndex>=m)l.cacheBufferLastIndex-=m}}function ea(a){if(!l.cacheComplete){if(a==m)a=0;else if(a<0)a+=m;var c=w[a].media;l.currentCacheImg=a;if(c&&!c.loaded)if(!c.contentType||c.contentType==="image")bb.src=c.src;else cb(c,function(){Ha()});else ab()}}function rb(){Ja=true;clearTimeout(Ka);aa.stop();Ka=setTimeout(function(){aa.css("opacity","0.6").fadeIn(d.buttonsFadeTime)},d.buttonsFadeTime)}function db(){r||rb();sb(b.yoxview.currentImage.media)}
function La(a,c){k.stop().animate(a,d.popupResizeTime,c)}function ra(){if(m!=1){r=true;if($)$.text(n.Pause);else b.yoxview.infoButtons.playBtn&&b.yoxview.infoButtons.playBtn.attr("title",n.Pause);b.yoxview.infoButtons.playBtn&&b.yoxview.infoButtons.playBtn.find("img").css("background-position",C.getBackgroundPosition("icons","pause"));if(u<m-1)Ma=setTimeout(function(){b.yoxview.next(true)},d.playDelay);else{if(d.loopPlay)Ma=setTimeout(function(){b.yoxview.select(0,null)},d.playDelay);else E();d.onEnd&&
setTimeout(d.onEnd,d.playDelay)}}}function E(){clearTimeout(Ma);r=false;if($)$.text(n.Play);else b.yoxview.infoButtons.playBtn&&b.yoxview.infoButtons.playBtn.attr("title",n.Play);b.yoxview.infoButtons.playBtn&&b.yoxview.infoButtons.playBtn.find("img").css("background-position",C.getBackgroundPosition("icons","play"))}function Ea(){var a=Z.width(),c=Z.height();return{height:c,width:a,usableArea:{height:c-j.totalHeight,width:a-j.totalWidth}}}function eb(a){a=a.width&&a.height?Yox.fitImageSize(a,D.usableArea):
{width:a.width?Math.min(a.width,D.usableArea.width):D.usableArea.width,height:a.height?Math.min(a.height,D.usableArea.height):D.usableArea.height};a.top=j.top+Math.round((D.usableArea.height-a.height)/2);a.left=j.left+Math.round((D.usableArea.width-a.width)/2);return a}function qa(a){clearTimeout(fa);var c=T.outerHeight();if(c<fb)c=fb;o.height()!==c&&o.stop().animate({height:c},500,function(){if(d.renderInfoExternally){var e=o.position();b.extend(j,Ya);if(e.top===0)j.top+=c;else j.bottom+=c;j.totalHeight=
j.top+j.bottom;D=Ea();b.yoxview.resize(false)}a&&a()})}function da(a){clearTimeout(fa);o.stop().animate({height:0},500,function(){a&&a()})}function Fa(a){if(x){clearTimeout(Na);x.stop().animate({top:tb},500,function(){a&&a()})}}function Za(a){if(x){clearTimeout(Na);x.stop().animate({top:0},500,function(){a&&a()})}}function gb(){ga=s;s=sa?K:R;sa=!sa}function ta(a){var c=a.contentType==="image"||!a.contentType;c&&ca&&I&&I.css("display","block");clearTimeout(fa);gb();var e=s.data("yoxviewPanel");y.width=
a.width;y.height=a.height;y.padding=a.padding;if(o){var f=a.title||"";if(d.showDescription&&a.description)f+=f!=""?"<div id='yoxview_infoTextDescription'>"+a.description+"</div>":a.description;T.html(f);m>1&&pa.html(u+1+"/"+m);if(ba)b.yoxview.currentImage.link?ba.attr("href",b.yoxview.currentImage.link).css("display","inline"):ba.css("display","none")}f=eb(a);if(c){currentImageElement=sa?L:X;currentImageElement.attr({src:a.src,title:a.title,alt:a.alt});e.image=currentImageElement;if(!e.isImage&&e.element){e.element.css("display",
"none");e.image.css("display","block");e.isImage=true}if(!ha){d.renderButtons&&N.css({height:"100%",width:"50%",top:"0"});ca=false;ha=true}}else{if(e.element&&e.elementId!=a.elementId){e.element.remove();e.element=undefined}if(!e.element)if(a.html){e.element=b("<div>",{className:ub});k.append(e.element)}else{k.append(a.element);e.element=a.element}a.html&&e.element.html(a.html);s=e.element;if(ha){if(I){d.autoHideInfo!==false&&da();I.css("display","none");ca=true}d.renderButtons&&N.css({width:ua.width,
height:ua.height});ha=false}d.renderButtons&&N.css({top:(f.height-ua.height)/2});if(e.isImage===undefined||e.isImage){e.element.css("display","block");e.image.css("display","none");e.isImage=false}}var h={width:f.width,height:f.height};s.css(ia?{width:"100%",height:"100%"}:h);if(Ja){Ja=false;clearTimeout(Ka);aa.stop().fadeOut(d.buttonsFadeTime)}U=true;La(f,function(){if(ia){b.yoxview.isOpen=true;s.css(h);if(d.controlsInitialDisplayTime>0){d.showButtonsOnOpen&&N.animate({opacity:0.5},d.controlsInitialFadeTime,
function(){d.buttonsFadeTime!=0&&b(this).delay(d.controlsInitialDisplayTime).animate({opacity:0},d.controlsInitialFadeTime)});if(d.showBarsOnOpen){Za(function(){if(d.autoHideMenu!==false)Na=setTimeout(function(){Fa()},d.controlsInitialDisplayTime)});o&&qa(function(){if(d.autoHideInfo!==false)fa=setTimeout(function(){da()},d.controlsInitialDisplayTime)})}}d.autoPlay&&b.yoxview.play();d.onOpen&&d.onOpen();if(va){va();va=undefined}ia=false}if(y.padding){var g=k.width(),i=k.height();if(y.padding){g-=
y.padding.horizontal;i-=y.padding.vertical}s.css({width:g+"px",height:i+"px"})}U=false});s.css({"z-index":"2",opacity:1});ga&&ga.css("z-index","1");ia?s.css({display:"block",width:"100%",height:"100%"}):s.fadeIn(d.popupResizeTime,function(){ga&&ga.css("display","none");o&&qa(function(){if(d.autoHideInfo!==false)fa=setTimeout(function(){da()},d.titleDisplayDuration)});if(m>1){if(d.cacheImagesInBackground&&!l.cacheComplete)ea(u+(l.cacheDirectionForward?1:-1));r&&ra()}})}function vb(a,c,e,f,h){jQuery.jsonp({url:wb[a]||
"http://oohembed.com/oohembed/",data:jQuery.extend({url:c,format:"json"},e),dataType:"jsonp",callbackParameter:"callback",success:function(g){var i={title:g.title,width:g.width,height:g.height,type:g.type};if(g.type==="video")i.html=g.html.replace(/<embed /,'<embed wmode="transparent" ').replace(/<param/,'<param name="wmode" value="transparent"><param').replace(/width=\"[\d]+\"/ig,'width="100%"').replace(/height=\"[\d]+\"/ig,'height="100%"');else g.type==="photo"&&jQuery.extend(i,{src:g.url,alt:g.title,
type:"image"});f(i)},error:function(g,i){h&&h(g,i)}})}function sb(a){try{if(!a)throw"Error: Media is unavailable.";if(a.contentType==="image"||!a.contentType){if(b.support.opacity)Oa.src="";Oa.src=a.src}else!a.loaded&&a.contentType=="ooembed"?cb(a,function(e){ta(e)},function(e){wa("Error getting data from:<br /><span class='errorUrl'>"+e.data.url+"</span>")}):ta(b.yoxview.currentImage.media)}catch(c){wa(c)}}function cb(a,c,e){a.contentType=="ooembed"&&vb(a.provider,a.url,d.defaultDimensions.video,
function(f){b.extend(a,f,{loaded:true});c&&c(a)},e)}function wa(a){ta({html:"<span class='yoxview_error'>"+a+"</span>",width:500,height:300,type:"error",title:""})}var P=P||Yox.getPath(/(.*\/)jquery\.yoxview/i),hb={autoHideInfo:true,autoPlay:false,backgroundColor:"#000000",backgroundOpacity:0.8,buttonsFadeTime:300,cacheBuffer:5,cacheImagesInBackground:true,controlsInitialFadeTime:1500,controlsInitialDisplayTime:1E3,dataFolder:P+"data/",defaultDimensions:{flash:{width:720,height:560},iframe:{width:1024}},
flashVideoPlayer:"jwplayer",imagesFolder:P+"images/",infoBackColor:"#000000",infoBackOpacity:0.5,isRTL:false,lang:"en",langFolder:P+"lang/",loopPlay:true,playDelay:3E3,popupMargin:20,popupResizeTime:600,renderButtons:true,renderMenu:true,showBarsOnOpen:true,showButtonsOnOpen:true,showDescription:true,textLinksSelector:".yoxviewLink",thumbnailsOptions:{thumbnailsClass:"yoxview_thumbnail"},titleAttribute:"title",titleDisplayDuration:2E3};this.infoButtons={};this.isOpen=false;this.yoxviewSkins={};var aa,
l={},bb=new Image,pa,N,xb=0,u=0,n={},y={},la,Ba=0,mb=window!=window.parent,ca=false,yb={wmode:"transparent",width:"100%",height:"100%",allowfullscreen:"true",allowscriptaccess:"true",hasVersion:9},ia=true,S,O,fa,Na,L,X,w,m=0,o,G,ba,fb=30,I,$a,Ga,T,sa=false,ha=true,r=false,U=false,M=[],Ka,Ja=false,ua={width:100,height:100},ub="yoxview_mediaPanel",wb={vimeo:"http://vimeo.com/api/oembed.json",myspace:"http://vids.myspace.com/index.cfm?fuseaction=oembed"},tb=-42,x,ma,oa,va,d,A=[],R,K,$,k,j={},Ya={},Ma,
Z=b(Yox.getTopWindow()),t,Q,ja=false,C,Oa=new Image,B,Ca,Y,D,W={},pb={40:"DOWN",35:"END",13:"ENTER",36:"HOME",37:"LEFT",39:"RIGHT",32:"SPACE",38:"UP",72:"h",27:"ESCAPE"},Wa;this.init=function(a,c){function e(){a.each(function(g,i){i=b(i);var xa=M.length;i.data("yoxview",{viewIndex:xa,cacheVars:{cachedImagesCount:0,cacheDirectionForward:true,cacheBufferLastIndex:null,currentCacheImg:0}});var ka=i.data("yoxview");if(h)ka.optionsSet=h;f.allowedImageUrls=[Yox.Regex.image];if(f.allowedUrls)f.allowedImageUrls=
f.allowedImageUrls.concat(f.allowedUrls);var Pa=i[0].tagName=="A",J=[],ya=0;(Pa?i:i.find(za(f))).each(function(v,Qa){var q=b(Qa),p;p=f;var z={},F=q.attr("href"),V=q.children("img:first");if(V.length==0)V=q;z={};for(supportedType in ib){var Ra=ib[supportedType](q,F,V,p);if(Ra){b.extend(Ra,{contentType:supportedType,elementId:xb++});z.media=Ra;break}}if(z.media){z.thumbnailImg=V;p=z}else p=null;if(p){J.push(p);if(Pa)q.data("yoxview").imageIndex=ya;else q.data("yoxview",{imageIndex:ya,viewIndex:xa});
ya++}});if(f.images)J=J.concat(f.images);if(f.dataSource)Yox.dataSources[f.dataSource].getImagesData(f,function(v){J=J.concat(v.images);ka.images=J;if(v.title&&f.thumbnailsOptions&&f.thumbnailsOptions.setHeader)b(f.thumbnailsOptions.headerElement||"<h2>",{html:v.title,className:f.thumbnailsOptions.headerClass}).appendTo(i);var Qa=v.isGroup?[b.extend(v,{media:{title:v.title+" ("+v.images.length+" images)",alt:v.title}})]:v.images;Ua(i,f,Pa?null:Qa,!v.createGroups?null:function(q){var p=b(q.currentTarget).data("yoxview"),
z=b(q.currentTarget);q=z.data("yoxthumbs");if(p.imagesAreSet)b.yoxview.open(p.viewIndex);else{z.css("cursor","wait");var F=b.extend({},f);if(F.dataSourceOptions)b.extend(F.dataSourceOptions,q);else F.dataSourceOptions=q;Yox.dataSources[f.dataSource].getImagesData(F,function(V){p.images=V.images;p.imagesAreSet=true;z.css("cursor","");b.yoxview.open(p.viewIndex)})}});v.createGroups?b.each(i.yoxthumbs("thumbnails"),function(q,p){p.data("yoxview",{viewIndex:++xa});M.push(b(p))}):b.each(i.yoxthumbs("thumbnails"),
function(q,p){var z=ya+q,F=p.children("img");if(F.length==0)F=p;J[z].thumbnailImg=F;p.data("yoxview",{imageIndex:q,viewIndex:xa})});if(!b.yoxview.firstViewWithImages&&v.images.length>0){b.yoxview.firstViewWithImages=i;f.cacheImagesInBackground&&b.yoxview.startCache()}});else{ka.images=J;Ua(i,f)}M.push(i);if(!b.yoxview.firstViewWithImages&&ka.images&&ka.images!=0){b.yoxview.firstViewWithImages=i;Aa(i);if(f.cacheImagesInBackground&&m!=0){Ia();ea(0)}}})}var f=b.extend(true,{},hb,c),h;if(A.length==0){A.push(f);
h=0}else h=c?H(f):null;lb(f.lang,function(){kb(f,function(g){g&&g.options&&b.extend(f,g.options);Yox.loadDataSource(f,e)})})};var ib={image:function(a,c,e,f){for(var h=null,g=0;g<f.allowedImageUrls.length&&!h;g++)if(c.match(f.allowedImageUrls[g]))h={src:a.attr("href"),title:e.attr(f.titleAttribute),alt:e.attr("alt")};return h},flash:function(a,c,e,f){var h=null;var g=(a=c.match(Yox.Regex.flash))?null:c.match(Yox.Regex.flashvideo);if(a||g){h=Yox.getUrlData(c);c=Ta("flash",h.queryFields,f);if(h.queryFields){delete h.queryFields.width;
delete h.queryFields.height}var i=b("<div>",{className:"yoxview_element",html:"<div class='yoxview_error'>Please install the latest version of the <a href='http://www.adobe.com/go/getflashplayer' target='_blank'>Flash player</a> to view content</div>"});g=g?Yox.flashVideoPlayers[f.flashVideoPlayer](f.flashVideoPlayerPath,h.path,h.queryFields&&h.queryFields.image?h.queryFields.image:e[0].nodeName=="IMG"?e.attr("src"):null,e.attr(f.titleAttribute)):h.queryFields||{};if(a)g.swf=h.path;b.extend(g,yb);
i.flash(g);h={element:i,title:e.attr(f.titleAttribute)};b.extend(h,c)}return h},ooembed:function(a,c){var e=null;for(videoProvider in Yox.Regex.video)if(c.match(Yox.Regex.video[videoProvider])){e={provider:videoProvider,url:c};break}return e},inline:function(a,c,e,f){if(!f.allowInternalLinks)return null;a=null;if((c=Yox.getUrlData(c))&&c.anchor){c=b("#"+c.anchor);if(c.length!=0){e={width:parseInt(c.css("width")),height:parseInt(c.css("height"))};c.css({position:"absolute",top:0,left:0,width:"100%",
height:"100%",display:"block"});a={type:"inlineElement",element:c,title:c.attr("title")};f={horizontal:parseInt(c.css("padding-right"))+parseInt(c.css("padding-left")),vertical:parseInt(c.css("padding-top"))+parseInt(c.css("padding-bottom"))};e.width=isNaN(e.width)?null:e.width+f.horizontal;e.height=isNaN(e.height)?null:e.height+f.vertical;b.extend(a,e);if(f.horizontal!=0||f.vertical!=0)a.padding=f;c.remove()}}return a},iframe:function(a,c,e,f){var h=null;if((a=a.attr("target"))&&a=="yoxview")if((c=
Yox.getUrlData(c))&&c.path){f=Ta("iframe",c.queryFields,f);if(c.queryFields){delete c.queryFields.width;delete c.queryFields.height}h={element:b("<iframe>",{src:Yox.urlDataToPath(c),className:"yoxview_element"}),title:e.attr("title"),frameborder:"0"};b.extend(h,f)}return h}};this.open=function(a,c,e){var f=this instanceof jQuery;if(f){if(a&&typeof a=="function")e=a;c=this.data("yoxview");a=c.viewIndex;c=c.imageIndex}else if(typeof a=="function"){e=a;a=c=0}else if(typeof c=="function"){e=c;c=0}a=a||
0;c=c||0;b(document).bind("keydown.yoxview",ob);Aa(M[a]);!k&&m!=0&&Sa();b.yoxview.selectImage(c);t.stop().css({opacity:0,display:"block"}).animate({opacity:1},"slow",function(){t.css("opacity","")});d.cacheImagesInBackground&&ea(c);if(e)va=e;return f?this:false};this.selectImage=function(a){b.yoxview.currentImage=w[a];u=a;Va(true);B.blur();R.css({"z-index":"1",width:"100%",height:"100%"});K.css({display:"none","z-index":"2"});ia=true;k.css(Y);this.select(a)};this.refresh=function(){(ja=r)&&E();db(u);
ja&&ra()};this.options=function(a,c){if(!a)return this;if(c&&typeof a==="string"){var e=a;a={};a[e]=c}if(this instanceof jQuery){if(e=this.data("yoxview")){b.extend(A[e.optionsSet||0],a);this.yoxview("update")}return this}else{b.each(A,function(f,h){b.extend(h,a)});b.yoxview.update()}};this.select=function(a,c){if(typeof c==="number")c=undefined;if(!U){if(a<0){a=m-1;if(d.onEnd){d.onEnd();return}}else if(a==m){a=0;if(d.onEnd){d.onEnd();return}}if(!r&&c){var e=c;e.css("opacity")==0&&e.stop().animate({opacity:0},
d.buttonsFadeTime,nb(e))}b.yoxview.currentImage=w[a];u=a;db(u);Ia();d.onSelect&&d.onSelect(a,w[a])}};this.prev=function(a){l.cacheDirectionForward=false;this.select(u-1,Q);r&&a!==true&&E()};this.next=function(a){l.cacheDirectionForward=true;this.select(u+1,ma);r&&a!==true&&E()};this.first=function(){d.disableNotifications||na("first");this.select(0);r&&E()};this.last=function(){d.disableNotifications||na("last");this.select(m-1);r&&E()};this.setDefaults=function(a){b.extend(true,hb,a)};this.play=
function(){if(!(!this.isOpen||m==1)){l.cacheDirectionForward=true;if(r){d.disableNotifications||na("pause");E()}else{d.disableNotifications||na("play");ra()}}};this.close=function(){if(this.isOpen){this.closeHelp();Va(false);La(Y,function(){b.yoxview.isOpen=false});Fa();o&&da(function(){T.html("")});s.animate({width:Y.width,height:Y.height},d.popupResizeTime,function(){s.css("opacity",1)});t.stop().fadeOut(1E3);r&&E();gb();d.onClose&&d.onClose();b(document).unbind("keydown.yoxview");U=false}};this.help=
function(){if(this.isOpen)O.css("display")=="none"?O.css("display","block").stop().animate({opacity:0.8},d.buttonsFadeTime):this.closeHelp()};this.closeHelp=function(){O.css("display")!="none"&&O.stop().animate({opacity:0},d.buttonsFadeTime,function(){O.css("display","none")})};this.clickBtn=function(a,c){c&&r&&E();a.call(this);return false};Z.bind("resize.yoxview",function(){D=Ea();b.yoxview.isOpen&&b.yoxview.resize()});b(bb).load(function(){b.extend(w[l.currentCacheImg].media,{width:this.width,
height:this.height,loaded:true});Ha()}).error(function(){Ha()});this.startCache=function(){Aa(this.firstViewWithImages);Ia();ea(0)};var s=K,ga=R;this.resize=function(a){if(r){ja=true;E()}var c=eb(y);s.css({width:"100%",height:"100%"});U=true;ha||N.css({top:Math.round((c.height-ua.height)/2)});La(c,function(){var e={width:k.width(),height:k.height()};if(y.padding){e.width-=y.padding.horizontal;e.height-=y.padding.vertical}s.css(e);U=false;o&&a!==false&&qa();if(ja){ra();ja=false}})};b(Oa).load(function(){this.width==
0?wa("Image error"):ta(b.extend({},b.yoxview.currentImage.media,{width:this.width,height:this.height}))}).error(function(){wa("Image not found:<br /><span class='errorUrl'>"+this.src+"</span>")});this.update=function(){var a;if(this instanceof jQuery){a=A[this.data("yoxview").optionsSet||0];this.yoxview("unload",function(c){c.yoxview(a)});return this}else{a=A[0];this.unload();b.each(M,function(c,e){e.yoxview(a)})}};this.unload=function(a){function c(){function f(g){g.undelegate(h,"click.yoxview").removeData("yoxview").yoxthumbs("unload",
"yoxview").find(h).removeData("yoxview")}var h=za(d);if(e instanceof jQuery)e.data("yoxview")&&f(e);else{jQuery.each(M,function(g,i){f(i)});Z.unbind(".yoxview");if(k){t.remove();k=undefined}}if(a)a(e);else return e}var e=this;if(!d)return this;d.onBeforeUnload?d.onBeforeUnload(c):c()}}if(!b.yoxview)b.yoxview=new jb;b.fn.yoxview=function(H){if(this.length!=0)if(b.yoxview[H])return b.yoxview[H].apply(this,Array.prototype.slice.call(arguments,1));else typeof H==="object"||!H?b.yoxview.init(this,H):b.error("Method "+
H+" does not exist on YoxView.");return this};b(Yox.getTopWindow()).unload(function(){if(b.yoxview){b.yoxview.unload();delete b.yoxview}})})(jQuery);

@ -0,0 +1,21 @@
{
"Direction" : "rtl",
"Close" : "إغلاق",
"Help" : "مساعدة",
"FirstImage" : "الى الصورة الاولى",
"LastImage" : "الى الصورة الأخيرة",
"StartStopSlideShow" : "تشغيل/إيقاف العرض",
"Pause" : "إيقاف",
"Play" : "تشغيل",
"Prev" : "السابق",
"PinInfo" : "Pin info",
"UnpinInfo" : "Unpin info",
"Next" : "التالي",
"PrevImage" : "الصورة السابقة",
"NextImage" : "الصورة التالية",
"Loading" : "تحميل",
"CloseHelp" : "إغلاق المساعدة",
"HelpText" : "يمكن التنقل خلال العرض عن طريقة لوحة المفاتيح:<br/><br/>أزرار اليمين و اليسار: سابق/تالي<br/>زر المسافة: التالي<br/>ENTER: تشغيل/إيقاف العرض<br/>ESCAPE: إغلاق العرض<br/>HOME/END: البداية/النهاية صورة<br/>H - لوحة المساعدة الحالية",
"Slideshow" : "تشغيل",
"OriginalContext": "عرض ضمن السياق الأصلي"
}

@ -0,0 +1,21 @@
{
"Direction" : "ltr",
"Close" : "Затвори",
"Help" : "Помощ",
"FirstImage" : "Към първата картинка",
"LastImage" : "Към последната картинка",
"StartStopSlideShow" : "Пусни/Спри поредица от картинки",
"Pause" : "Спри",
"Play" : "Пусни",
"Prev" : "Предишна",
"PinInfo" : "Pin info",
"UnpinInfo" : "Unpin info",
"Next" : "Следваща",
"PrevImage" : "Предишна картинка",
"NextImage" : "Следваща картинка",
"Loading" : "Зареждам",
"CloseHelp" : "Затвори панела за помощ",
"HelpText" : "в галерията може да изпозлвате:<br/><br/>LEFT/RIGHT СТРЕЛКА: Предишна/Следваща<br/>SPACE: Следваща<br/>ENTER: Пусни/Спри поредица от картинки<br/>ESCAPE: Затвори галерията<br/>HOME/END: Първа/Последна картинка<br/>H - Този помощен панел",
"Slideshow" : "Пусни",
"OriginalContext": "Вижте в оригинален контекст"
}

@ -0,0 +1,21 @@
{
"Direction" : "ltr",
"Close" : "Tancar",
"Help" : "Ajuda",
"FirstImage" : "Anar al principi",
"LastImage" : "Anar al final",
"StartStopSlideShow" : "Començar/Pausar",
"Pause" : "Pausar",
"Play" : "Començar",
"Prev" : "Anterior",
"PinInfo" : "Pin info",
"UnpinInfo" : "Unpin info",
"Next" : "Següent",
"PrevImage" : "Imatge anterior",
"NextImage" : "Següent imatge",
"Loading" : "Carregant",
"CloseHelp" : "Tancar l'ajuda",
"HelpText" : "Pot navegar per la presentaci&oacute; utilitzant el teclat:<br/><br/>Fletxes ESQUERRA/DRETA: Anterior/Seg&uuml;ent<br/>SPACEBAR: Seg&uuml;ent<br/>ENTER: Comen&ccedil;ar/Parar la presentaci&oacute;<br/>ESCAPE: Tancar<br/>HOME/END: Principi/Final<br/>H - Mostra aquesta ajuda",
"Slideshow" : "Començar",
"OriginalContext": "Veure al context original"
}

@ -0,0 +1,21 @@
{
"Direction" : "ltr",
"Close" : "Zavřít",
"Help" : "Nápověda",
"FirstImage" : "Na první obrázek",
"LastImage" : "Na poslední obrázek",
"StartStopSlideShow" : "Spustit/Zastavit přehrávání",
"Pause" : "Zastavit",
"Play" : "Spustit",
"Prev" : "Předchozí",
"PinInfo" : "Pin info",
"UnpinInfo" : "Unpin info",
"Next" : "Následující",
"PrevImage" : "Předchozí obrázek",
"NextImage" : "Následující obrázek",
"Loading" : "Nahrávám",
"CloseHelp" : "Zavřít nápovědu",
"HelpText" : "Galerii můžete procházet pomocí kláves:<br/><br/>ŠIPKY VLEVO/VPRAVO: Předchozí/Následující obrázek<br/>MEZERNÍK: Další<br/>ENTER: Spustit/zastavit přehrávání<br/>ESC: Zavřít galerii<br/>HOME/END: První/poslední obrázek<br/>H - Vyvolání nápovědy",
"Slideshow" : "Přehrávání",
"OriginalContext": "Ukázat v původním umístění"
}

@ -0,0 +1,21 @@
{
"Direction" : "ltr",
"Close" : "Schliessen",
"Help" : "Hilfe",
"FirstImage" : "Zum ersten Bild",
"LastImage" : "Zum letzten Bild",
"StartStopSlideShow" : "Start/Pause Slideshow",
"Pause" : "Pause",
"Play" : "Abspielen",
"Prev" : "Zurück",
"PinInfo" : "Pin info",
"UnpinInfo" : "Unpin info",
"Next" : "Vor",
"PrevImage" : "Vorheriges Bild",
"NextImage" : "Nächstes Bild",
"Loading" : "Laden",
"CloseHelp" : "Schliesse Hilfe",
"HelpText" : "Die Gallerie kann mit dem Keyboard verwendet werden:<br/><br/>LINKS/RECHTS PFEILE: Zurück/Vor<br/>SPACE: Nächstes<br/>ENTER: Start/Stop Slideshow<br/>ESCAPE: Schliesse Gallerie<br/>HOME/END: Erstes/Letztes Bild<br/>H - Diese Hilfe",
"Slideshow" : "Abspielen",
"OriginalContext": "Anzeige im originalen Zusammenhang"
}

@ -0,0 +1,21 @@
{
"Direction" : "ltr",
"Close" : "Luk",
"Help" : "Hjælp",
"FirstImage" : "Gå til første billede",
"LastImage" : "Gå til sidste billede",
"StartStopSlideShow" : "Afspil/Pause slideshow",
"Pause" : "Pause",
"Play" : "Afspil",
"Prev" : "Forrige",
"PinInfo" : "Pin info",
"UnpinInfo" : "Unpin info",
"Next" : "Næste",
"PrevImage" : "Forrige billede",
"NextImage" : "Næste billede",
"Loading" : "Indlæser",
"CloseHelp" : "Luk hjælp",
"HelpText" : "Du kan naviger i galleriet via keyboard:<br/><br/>VENSTRE/HØJRE piletaster: Forrige/Næste<br/>MELLEMRUM: Næste<br/>ENTER: Start/Stop slideshow<br/>ESCAPE: Luk galleriet<br/>HOME/END: Første/Sidste billede<br/>H - Dette hjælpe panel",
"Slideshow" : "Play",
"OriginalContext": "Vis i original kontekst"
}

@ -0,0 +1,21 @@
{
"Direction" : "ltr",
"Close" : "Close",
"Help" : "Help",
"FirstImage" : "To the first image",
"LastImage" : "To the last image",
"StartStopSlideShow" : "Play/Pause slideshow",
"Pause" : "Pause",
"Play" : "Play",
"Prev" : "Prev",
"PinInfo" : "Pin info",
"UnpinInfo" : "Unpin info",
"Next" : "Next",
"PrevImage" : "Previous image",
"NextImage" : "Next image",
"Loading" : "Loading",
"CloseHelp" : "Close help",
"HelpText" : "The gallery can be navigated using the keyboard:<br/><br/>LEFT/RIGHT ARROWS: Prev/Next<br/>SPACEBAR: Next<br/>ENTER: Start/Stop slideshow<br/>ESCAPE: Close gallery<br/>HOME/END: First/Last image<br/>H - This help panel",
"Slideshow" : "Play",
"OriginalContext": "View in original context"
}

@ -0,0 +1,21 @@
{
"Direction" : "ltr",
"Close" : "Cerrar",
"Help" : "Ayuda",
"FirstImage" : "A la primer imagen",
"LastImage" : "A la ultima imagen",
"StartStopSlideShow" : "Play/Pause slideshow",
"Pause" : "Pausar",
"Play" : "Play",
"Prev" : "Anterior",
"PinInfo" : "Pin info",
"UnpinInfo" : "Unpin info",
"Next" : "Siguiente",
"PrevImage" : "Imagen anterior",
"NextImage" : "Siguiente imagen",
"Loading" : "Cargando",
"CloseHelp" : "Cerrar ayuda",
"HelpText" : "La galería se puede navegar usando el teclado:<br/><br/>Flechas IZQUIERDA/DERECHA: Anterior/Siguiente<br/>SPACEBAR: Siguiente<br/>ENTER: Iniciar/Parar slideshow<br/>ESCAPE: Cerrar galería<br/>HOME/END: Primer/Ultimo imagen<br/>H - Este panel de ayuda",
"Slideshow" : "Play",
"OriginalContext": "Ver en el contexto original"
}

@ -0,0 +1,21 @@
{
"Direction" : "ltr",
"Close" : "Fermer",
"Help" : "Aide",
"FirstImage" : "Première image",
"LastImage" : "Dernière image",
"StartStopSlideShow" : "Démarrer/Pause diaporama",
"Pause" : "Pause",
"Play" : "Démarrer",
"Prev" : "Précédente",
"PinInfo" : "Pin info",
"UnpinInfo" : "Unpin info",
"Next" : "Suivante",
"PrevImage" : "Image précédente",
"NextImage" : "Image suivante",
"Loading" : "Chargement",
"CloseHelp" : "Fermer l'aide",
"HelpText" : "La navigation peut se faire avec le clavier :<br/><br/>Flêches GAUCHES/DROITES: Précédente/Suivante<br/>Espace: Suivante<br/>Entrée: Démarrer/Arrêter<br/>Echap: Fermer<br/>HOME/FIN: Première/Dernière image<br/>H - Afficher ce panneau d'aide",
"Slideshow" : "Démarrer",
"OriginalContext": "Voir dans le contexte original"
}

@ -0,0 +1,21 @@
{
"Direction" : "ltr",
"Close" : "Κλείσιμο",
"Help" : "Βοήθεια",
"FirstImage" : "Πρώτη Εικόνα",
"LastImage" : "Τελευταία Εικόνα",
"StartStopSlideShow" : "Έναρξη/Παύση του slideshow",
"Pause" : "Παύση",
"Play" : "Έναρξη",
"Prev" : "Προηγούμενο",
"PinInfo" : "Pin info",
"UnpinInfo" : "Unpin info",
"Next" : "Επόμενο",
"PrevImage" : "Προηγούμενη Εικόνα",
"NextImage" : "Επόμενη Εικόνα",
"Loading" : "Φόρτωση",
"CloseHelp" : "Κλείσιμο Βοήθειας",
"HelpText" : "Η περιήγηση στην γκαλερή μπορεί να γίνει με τη χρήση πληκτρολογίου:<br/><br/>ΑΡΙΣΤΕΡΑ/ΔΕΞΙΑ ΒΕΛΗ: Προηγούμενο/Επόμενο<br/>SPACEBAR: Επόμενο<br/>ENTER: Έναρξη/Τερματισμός παρουσίασης<br/>ESCAPE: Κλείσιμο γκαλερή<br/>HOME/END: Πρώτη/Τελευταία Εικόνα<br/>H - Βοήθεια",
"Slideshow" : "Έναρξη",
"OriginalContext": "Προβολή αρχικής μορφής"
}

@ -0,0 +1,21 @@
{
"Direction": "rtl",
"Close" : "סגירה",
"Help" : "עזרה",
"FirstImage" : "לתמונה הראשונה",
"LastImage" : "לתמונה האחרונה",
"StartStopSlideShow" : "התחל/עצור מצגת",
"Pause" : "עצור מצגת",
"Play" : "התחל מצגת",
"Prev" : "הקודמת",
"PinInfo" : "נעץ שורת מידע",
"UnpinInfo" : "שחרר שורת מידע",
"Next" : "הבאה",
"PrevImage" : "לתמונה הקודמת",
"NextImage" : "לתמונה הבאה",
"Loading" : "טוען",
"CloseHelp" : "סגור עזרה",
"HelpText" : "ניתן לנווט בין התמונות ע&quot;י שימוש במקלדת:<br/><br/>חצים ימינה/שמאלה: הקודמת/הבאה<br/>מקש רווח: הבאה<br/>ENTER: התחל/הפסק מצגת<br/>ESCAPE: סגירת הגלריה<br/>HOME/END: תמונה ראשונה/אחרונה<br/>H: פאנל עזרה",
"Slideshow" : "מצגת",
"OriginalContext": "צפיה בהקשר המקורי"
}

@ -0,0 +1,21 @@
{
"Direction" : "ltr",
"Close" : "Bezárás",
"Help" : "Súgó",
"FirstImage" : "Az első képhez",
"LastImage" : "Az utolsó képhez",
"StartStopSlideShow" : "Lejátszás indítása/leállítása",
"Pause" : "Szünet",
"Play" : "Lejátszás",
"Prev" : "Előző",
"PinInfo" : "Info rögzítése",
"UnpinInfo" : "Info feloldása",
"Next" : "Következő",
"PrevImage" : "Előző kép",
"NextImage" : "Következő kép",
"Loading" : "Töltés",
"CloseHelp" : "Súgó bezárása",
"HelpText" : "A képgaléria billentyűzet segítségével is navigálható:<br/><br/>BALRA/JOBBRA NYÍL: Előző/Következő<br/>SZÓKÖZ: Következő<br/>ENTER: Vetítés indítása/leállításabr/>ESCAPE: Galéria bezárása<br/>HOME/END: Első/Utolsó kép<br/>H - Ez a súgó",
"Slideshow" : "Lejátszás",
"OriginalContext": "Megtekintés eredeti környezetben"
}

@ -0,0 +1,21 @@
{
"Direction" : "ltr",
"Close" : "Dún",
"Help" : "Cabhair",
"FirstImage" : "Go dti an pictiúr amhain",
"LastImage" : "Go dti an pictiúr seo caite",
"StartStopSlideShow" : "Spraoi/Sos taispeántas",
"Pause" : "Sos",
"Play" : "Spraoi",
"Prev" : "roimhe seo",
"PinInfo" : "Pin info",
"UnpinInfo" : "Unpin info",
"Next" : "is gaire",
"PrevImage" : "Roimhe seo pictiúr",
"NextImage" : "Pictiúr is gaire",
"Loading" : "luchtú",
"CloseHelp" : "Dun cabhair",
"HelpText" : "Feachann tú an pictiúri le do keybhord:<br/><br/>Clé/Déis saighde: Prev/Next<br/>SPACEBAR: Next<br/>ENTER: Spraoi/ Sos taispeántas<br/>ESCAPE: Dun leathanach<br/>HOME/END: Go dti an pictiúr amhain/seo caite<br/>H - An leathanach cabhair",
"Slideshow" : "Spraoi taispeבntas",
"OriginalContext": "D'fhonn i gcomhthéacs bunaidh"
}

@ -0,0 +1,21 @@
{
"Direction" : "rtl",
"Close" : "بستن",
"Help" : "راهنما",
"FirstImage" : "تصویر نخست",
"LastImage" : "تصویر آخر",
"StartStopSlideShow" : "شروع/خاتمه نمایش",
"Pause" : "توقف",
"Play" : "نمایش",
"Prev" : "قبلی",
"PinInfo" : "نمایش اطلاعات",
"UnpinInfo" : "عدم نمایش اطلاعات",
"Next" : "بعدی",
"PrevImage" : "تصویر قبلی",
"NextImage" : "تصویر بعدی",
"Loading" : "بارگزاری",
"CloseHelp" : "بستن راهنما",
"HelpText" : "گالری با استفاده از دکمه های صفحه کلید نیز عمل میکند:<br/><br/>دکمه قبلی و بعدی : قبلی/بعدی<br/>زر space: بعدی<br/>ENTER: توقف/نمایش<br/>ESCAPE: بستن گالری<br/>HOME/END: ابتدا/انتهای تصاویر<br/>H - صفحه راهنما",
"Slideshow" : "نمایش اسلاید",
"OriginalContext": "محتوای اصلی"
}

@ -0,0 +1,21 @@
{
"Direction" : "ltr",
"Close" : "Chiudi",
"Help" : "Aiuto",
"FirstImage" : "Alla prima immagine",
"LastImage" : "All' ultima immagine",
"StartStopSlideShow" : "Riproduci/Pausa la proiezione",
"Pause" : "Pausa",
"Play" : "Riproduci",
"Prev" : "Precedente",
"PinInfo" : "Pin info",
"UnpinInfo" : "Unpin info",
"Next" : "Successiva",
"PrevImage" : "Immagine precedente",
"NextImage" : "Immagine successiva",
"Loading" : "Caricamento",
"CloseHelp" : "Chiudi aiuto",
"HelpText" : "Si pu&#xF2; navigare nella galleria usando la tastiera:<br/><br/>FRECCE SINISTRA/DESTRA: Precedente/Successiva<br/>SPAZIO: Successiva<br/>INVIO: Inizia/Ferma lo slideshow<br/>ESC: Chiudi la galleria<br/>HOME/FINE: Prima/Ultima immagine<br/>H - Aiuto<br/>",
"Slideshow" : "Riproduci",
"OriginalContext": "vedi nel contesto originale"
}

@ -0,0 +1,21 @@
{
"Direction" : "ltr",
"Close" : "閉じる",
"Help" : "ヘルプ",
"FirstImage" : "先頭の画像",
"LastImage" : "最後の画像",
"StartStopSlideShow" : "スライドショーの開始/一時停止",
"Pause" : "一時停止",
"Play" : "開始/停止",
"Prev" : "前",
"PinInfo" : "Pin info",
"UnpinInfo" : "Unpin info",
"Next" : "次",
"PrevImage" : "前の画像",
"NextImage" : "次の画像",
"Loading" : "ロード中",
"CloseHelp" : "ヘルプを閉じる",
"HelpText" : "ギャラリーでは以下のキー操作が可能です。:<br/><br/>←/→ : 前/次の画像<br/>SPACE: 次の画像<br/>Enter: スライドショーの開始/停止<br/>ESC: ギャラリーを閉じる<br/>HOME/END: 先頭/最後の画像 <br/>H - ヘルプを表示",
"Slideshow" : "開始",
"OriginalContext": "掲載サイトで見る"
}

@ -0,0 +1,21 @@
{
"Direction" : "ltr",
"Close" : "დახურვა",
"Help" : "დახმარება",
"FirstImage" : "პირველი სურათი",
"LastImage" : "ბოლო სურათი",
"StartStopSlideShow" : "სლაიდების დაწყება/შეჩერება",
"Pause" : "შეჩერება",
"Play" : "დაწყება",
"Prev" : "წინა",
"PinInfo" : "ინფო ბლოკის მიმაგრება",
"UnpinInfo" : "ინფო ბლოკის დამალვა",
"Next" : "შემდეგი",
"PrevImage" : "წინა სურათი",
"NextImage" : "შემდეგი სურათი",
"Loading" : "ჩატვირთვა",
"CloseHelp" : "დახმარების დახურვა",
"HelpText" : "გალერიის მართვა შესაძლებელია კლავიატურის გამოყენებით:<br/><br/>LEFT/RIGHT ARROWS: წინა/შემდეგი<br/>SPACEBAR: შემდეგი<br/>ENTER:სლაიდების დაწყება/შეჩერება<br/>ESCAPE: გალერიის დახურვა<br/>HOME/END: პირველი/ბოლო სურათი<br/>H - დახმარების პანელი",
"Slideshow" : "დაწყება",
"OriginalContext": "ორიგინალურ კონტექსტში ნახვა"
}

@ -0,0 +1,20 @@
{
"Direction" : "ltr",
"Close" : "Затвори",
"Help" : "Помош",
"FirstImage" : "Прва слика",
"LastImage" : "Последна слика",
"StartStopSlideShow" : "Пушти/Паузирај презентација",
"Pause" : "Паузирај",
"Play" : "Пушти",
"Prev" : "Претходна",
"PinInfo" : "Pin info",
"UnpinInfo" : "Unpin info",
"Next" : "Следна",
"PrevImage" : "Претходна слика",
"NextImage" : "Следна слика",
"Loading" : "Вчитување...",
"CloseHelp" : "затвори го панелот",
"HelpText" : "Галеријата може да се употребува со користење на тастатурата:<br/><br/>СТРЕЛКИ ЛЕВО/ДЕСНО: Претходна/Следна<br/>SPACE: Следна<br/>ENTER: Пушти/Паузирај презентација<br/>ESCAPE: Затвори галерија<br/>HOME/END: Прва/Последна слика<br/>H - Овој панел за помош",
"Slideshow" : "Play"
}

@ -0,0 +1,3 @@
{ "Direction" : "ltr", "Close" : "Sluiten", "Help" : "Help", "FirstImage" : "Naar eerste afbeelding", "LastImage" : "Naar laatste afbeelding", "StartStopSlideShow" : "Start/Stop diavoorstelling", "Pause" : "Stop", "Play" : "Afspelen", "Prev" : "Vorige", "PinInfo" : "Pin info",
"UnpinInfo" : "Unpin info", "Next" : "Volgende", "PrevImage" : "Vorige afbeelding", "NextImage" : "Volgende afbeelding", "Loading" : "Laden", "CloseHelp" : "Sluit help", "HelpText" : "De afbeeldingen kunnen doorlopen worden met het toetsenbord:<br/><br/>LINKS/RECHTS: Vorige/Volgende<br/>Spatie: Volgende<br/>ENTER: Start/Stop voorstelling<br/>ESCAPE: Sluit venster<br/>HOME/END: Eerste/Laatste<br/>H - Dit help paneel", "Slideshow" : "Voorstelling",
"OriginalContext": "Bekijk in originele context"}

@ -0,0 +1,21 @@
{
"Direction" : "ltr",
"Close" : "Zamknij",
"Help" : "Pomoc",
"FirstImage" : "Do pierwszego obrazka",
"LastImage" : "Do ostatniego obrazka",
"StartStopSlideShow" : "Odtwarzaj/wstrzymaj pokaz slajdów",
"Pause" : "Wstrzymaj",
"Play" : "Odtwarzaj",
"Prev" : "Poprzedni",
"PinInfo" : "Pin info",
"UnpinInfo" : "Unpin info",
"Next" : "Następny",
"PrevImage" : "Poprzedni obrazek",
"NextImage" : "Następny obrazek",
"Loading" : "Ładowanie",
"CloseHelp" : "Zamknij pomoc",
"HelpText" : "Możesz sterować galerią za pomocą klawiatury:<br/><br/>LEWA/PRAWA STRZAŁKA: poprz. / nast. obrazek<br/>SPACJA: następny<br/>ENTER: rozpocznij/zatrzymaj pokaz slajdów<br/>ESCAPE: Zamknij galerię<br/>OME/END: pierwszy / ostatni obrazek<br/>H - panel pomocy",
"Slideshow" : "Pokaz",
"OriginalContext": "Zobacz w oryginalnym kontekście"
}

@ -0,0 +1,21 @@
{
"Direction" : "ltr",
"Close" : "Fechar",
"Help" : "Ajuda",
"FirstImage" : "Ir para a primeira imagem",
"LastImage" : "Ir para a ultima imagem",
"StartStopSlideShow" : "Iniciar/Pausar slideshow",
"Pause" : "Pausar",
"Play" : "Iniciar",
"Prev" : "Anterior",
"PinInfo" : "Pin info",
"UnpinInfo" : "Unpin info",
"Next" : "Próximo",
"PrevImage" : "Imagem anterior",
"NextImage" : "Próxima imagem",
"Loading" : "Carregando",
"CloseHelp" : "Fechar ajuda",
"HelpText" : "Você pode navegar na galeria usando o seu teclado:<br/><br/>Setas ESQUERDA/DIREITA: Anterior/Próxima<br/>Espaço: Próxima<br/>ENTER: Iniciar/Parar slideshow<br/>ESCAPE: Fechar a galeria<br/>HOME/END: Primeira/Última imagem<br/>H - Este painel de ajuda",
"Slideshow" : "Iniciar",
"OriginalContext": "Veja no contexto original"
}

@ -0,0 +1,21 @@
{
"Direction" : "ltr",
"Close" : "Fechar",
"Help" : "Ajuda",
"FirstImage" : "Ir para a primeira imagem",
"LastImage" : "Ir para a ultima imagem",
"StartStopSlideShow" : "Iniciar/Pausar slideshow",
"Pause" : "Pausar",
"Play" : "Iniciar",
"Prev" : "Anterior",
"PinInfo" : "Pin info",
"UnpinInfo" : "Unpin info",
"Next" : "Próximo",
"PrevImage" : "Imagem anterior",
"NextImage" : "Próxima imagem",
"Loading" : "A carregar",
"CloseHelp" : "Fechar ajuda",
"HelpText" : "Você pode navegar na galeria usando o seu teclado:<br/><br/>Setas ESQUERDA/DIREITA: Anterior/Próxima<br/>Espaço: Próxima<br/>ENTER: Iniciar/Parar slideshow<br/>ESCAPE: Fechar a galeria<br/>HOME/END: Primeira/Última imagem<br/>H - Este painel de ajuda",
"Slideshow" : "Iniciar",
"OriginalContext": "Veja no contexto original"
}

@ -0,0 +1,21 @@
{
"Direction" : "ltr",
"Close" : "Inchide",
"Help" : "Ajutor",
"FirstImage" : "Prima imagine",
"LastImage" : "Ultima imagine",
"StartStopSlideShow" : "Ruleaza/Pauza diaporama",
"Pause" : "Pauza",
"Play" : "Porneste",
"Prev" : "Precedent",
"PinInfo" : "Fixeaza info",
"UnpinInfo" : "Ascunde info",
"Next" : "Urmator",
"PrevImage" : "Imaginea precedenta",
"NextImage" : "Imaginea urmatoare",
"Loading" : "Se incarca",
"CloseHelp" : "Inchide ajutorul",
"HelpText" : "Prin galerie se poate naviga folosind tastatura:<br/><br/>SAGETILE STANGA/DREAPTA: Precedenta/Urmatoare<br/>BARA DE SPATIU: Urmatoarea<br/>ENTER: Start/Stop diaporama<br/>ESCAPE: Inchide galeria<br/>HOME/END: Prima/Ultima imagine<br/>H - Acest panou de ajutor",
"Slideshow" : "Ruleaza",
"OriginalContext": "Vezi in contextul original"
}

@ -0,0 +1,21 @@
{
"Direction" : "ltr",
"Close" : "Закрыть",
"Help" : "Помощь",
"FirstImage" : "К первому изображению",
"LastImage" : "К последнему изображению",
"StartStopSlideShow" : "Начать/Приостановить слайдшоу",
"Pause" : "Приостановить",
"Play" : "Начать",
"Prev" : "Пред.",
"PinInfo" : "Pin info",
"UnpinInfo" : "Unpin info",
"Next" : "Следующая",
"PrevImage" : "Предыдущее изображение",
"NextImage" : "Следующее изображение",
"Loading" : "Загрузка",
"CloseHelp" : "Закрыть помощь",
"HelpText" : "Управлять галерей можно с помощью клавиатуры:<br/><br/>ЛЕВАЯ/ПРАВАЯ СТРЕЛОЧКИ: Пред./Следующее<br/>ПРОБЕЛ: Следующее<br/>ENTER: Старт/Стоп слайдшоу<br/>ESCAPE: Закрыть галерею<br/>HOME/END: Первое/Последнее изображение<br/>H - Открыть панель помощи",
"Slideshow" : "Начать",
"OriginalContext": "View in original context"
}

@ -0,0 +1,21 @@
{
"Direction" : "ltr",
"Close" : "Zavrieť",
"Help" : "Nápoveda",
"FirstImage" : "Na prvý obrázok",
"LastImage" : "Na posledný obrozek",
"StartStopSlideShow" : "Spustiť/Zastaviť prehrávanie",
"Pause" : "Zastaviť",
"Play" : "Spustiť",
"Prev" : "Predchádzajúci",
"PinInfo" : "Pin info",
"UnpinInfo" : "Unpin info",
"Next" : "Nasledujúci",
"PrevImage" : "Predchádzajúci obrázok",
"NextImage" : "Nasledujúci obrázok",
"Loading" : "Nahrávam",
"CloseHelp" : "Zavrieť nápovedu",
"HelpText" : "Galériu môžete prechádzať pomocou kláves:<br/><br/>ŠÍPKY VĽAVO/VPRAVO: Predchádzajúci/Nasledujúci obrázok<br/>MEDZERNÍK: Ďalší<br/>ENTER: Spustiť/zastaviť prehrávanie<br/>ESC: Zavrieť galériu<br/>HOME/END: Prvý/posledný obrázok<br/>H - Vyvolanie nápovedy",
"Slideshow" : "Prehrávanie",
"OriginalContext": "Zobraziť v pôvodnom kontexte"
}

@ -0,0 +1,21 @@
{
"Direction" : "ltr",
"Close" : "Zapri",
"Help" : "Pomo&#269;",
"FirstImage" : "Na prvo sliko",
"LastImage" : "Na zadnjo sliko",
"StartStopSlideShow" : "Po&#382;eni/Ustavi projekcijo",
"Pause" : "Ustavi",
"Play" : "Predvajaj",
"Prev" : "Nazaj",
"PinInfo" : "Pin info",
"UnpinInfo" : "Unpin info",
"Next" : "Naprej",
"PrevImage" : "Predhodna slika",
"NextImage" : "Naslednja slika",
"Loading" : "Nalagam",
"CloseHelp" : "Zapri pomo&#269;",
"HelpText" : "Med slikami se lahko pomikate z uporabo tipkovnice:<br/><br/>PU&#352;&#268;ICI LEVO/DESNO: Nazaj/Naprej<br/>PRESLEDNICA: Naprej<br/>VNOS: Po&#382;eni/Ustavi projekcijo<br/>ESC: Zapri galerijo<br/>HOME/END: Prva/Zadnja slika<br/>H - Pomo&#269;",
"Slideshow" : "Predvajaj",
"OriginalContext": "View in original context"
}

@ -0,0 +1,21 @@
{
"Direction" : "ltr",
"Close" : "Stäng",
"Help" : "Hjälp",
"FirstImage" : "Till första bilden",
"LastImage" : "Till sista bilden",
"StartStopSlideShow" : "Spela/Pausa bildspelet",
"Pause" : "Pausa",
"Play" : "Bildspel",
"Prev" : "Föregående",
"PinInfo" : "Pin info",
"UnpinInfo" : "Unpin info",
"Next" : "Nästa",
"PrevImage" : "Föregående bild",
"NextImage" : "Nästa bild",
"Loading" : "Laddar",
"CloseHelp" : "Stäng hjälp",
"HelpText" : "Detta galleri kan navigeras med hjälp av tangentbordet: <br/>VÄNSTER/HÖGER PIL: Tillbaka/Nästa<br/>MELLANSLAG: Nästa bild<br/>ENTER: Starta/pausa bildspelet<br/>ESCAPE: Stäng galleriet<br/>HOME/END: Första/Sista bilden<br/>H - Denna hjälppanel",
"Slideshow" : "Bildspel",
"OriginalContext": "View in original context"
}

@ -0,0 +1,22 @@
// Translated by Ugur CELENK
{
"Direction" : "ltr",
"Close" : "Kapat",
"Help" : "Yardım",
"FirstImage" : "İlk resim",
"LastImage" : "Son resim",
"StartStopSlideShow" : "Başlat/Durdur slayt gösterisi",
"Pause" : "Durdur",
"Play" : "Başlat",
"Prev" : "Önceki",
"PinInfo" : "Pin info",
"UnpinInfo" : "Unpin info",
"Next" : "Sonraki",
"PrevImage" : "Önceki resim",
"NextImage" : "Sonraki resim",
"Loading" : "Yükleniyor",
"CloseHelp" : "Yardımı kapat",
"HelpText" : "Galeride klavye kullanarak geçiş yapabilirsiniz:<br/><br/>SOL/SAĞ YÖN TUŞLARI: Önceki/Sonraki<br/>BOŞLUK TUŞU: Sonraki<br/>ENTER: Slayt gösterisi Başlat/Durdur<br/>ESC: Galeriyi kapat<br />HOME/END: İlk/Son resim<br />H - Yardım paneli",
"Slideshow" : "Başlat",
"OriginalContext": "Orjinal içeriği göster"
}

@ -0,0 +1,21 @@
{
"Direction" : "ltr",
"Close" : "Закрити",
"Help" : "Допомога",
"FirstImage" : "До першого зображення",
"LastImage" : "До останнього зображення",
"StartStopSlideShow" : "Почати/Призупинити слайдшоу",
"Pause" : "Призупинити",
"Play" : "Почати",
"Prev" : "Попереднє",
"PinInfo" : "Pin info",
"UnpinInfo" : "Unpin info",
"Next" : "Наступне",
"PrevImage" : "Попереднє зображення",
"NextImage" : "Наступне зображення",
"Loading" : "Завантаження",
"CloseHelp" : "Закрити допомогу",
"HelpText" : "Керувати галереєю можна за допомогою клавіатури:<br/><br/>ЛІВА/ПРАВА СТРІЛОЧКИ: Попереднє/Наступне<br/>ПРОБІЛ: Наступне<br/>ENTER: Старт/Стоп слайдшоу<br/>ESCAPE: Зачинити галерею<br/>HOME/END: Перше/Останнє зображення<br/>H - Відкрити панель допомоги",
"Slideshow" : "Почати",
"OriginalContext": "View in original context"
}

@ -0,0 +1,21 @@
{
"Direction" : "ltr",
"Close" : "关闭",
"Help" : "帮助",
"FirstImage" : "第一张",
"LastImage" : "最后一张",
"StartStopSlideShow" : "播放/暂停幻灯片",
"Pause" : "暂停",
"Play" : "播放",
"Prev" : "上一页",
"PinInfo" : "Pin info",
"UnpinInfo" : "Unpin info",
"Next" : "下一页",
"PrevImage" : "上一张",
"NextImage" : "下一张",
"Loading" : "载入中",
"CloseHelp" : "关闭帮助",
"HelpText" : "你可以使用键盘进行画廊导航:<br/><br/>左/右箭头: 上一张/下一张<br/>空格键: 下一张<br/>Enter键: 播放/暂停幻灯片<br/>Esc键: 关闭画廊<br/>HOME/END: 第一张/最后一张<br/>H - 帮助面板",
"Slideshow" : "播放",
"OriginalContext": "在原有范围内查看"
}

@ -0,0 +1,21 @@
{
"Direction" : "ltr",
"Close" : "關閉",
"Help" : "求助",
"FirstImage" : "第一張",
"LastImage" : "最後一張",
"StartStopSlideShow" : "播放/暫停幻燈片",
"Pause" : "暫停",
"Play" : "播放",
"Prev" : "上一頁",
"PinInfo" : "Pin info",
"UnpinInfo" : "Unpin info",
"Next" : "下一頁",
"PrevImage" : "上一張",
"NextImage" : "下一張",
"Loading" : "載入中",
"CloseHelp" : "關閉求助",
"HelpText" : "你可以使用鍵盤進行畫廊導航:<br/><br/>左/右箭頭: 上一張/下一張<br/>空格鍵: 下一張<br/>Enter鍵: 播放/暫停幻燈片<br/>Esc鍵: 關閉畫廊<br/>HOME/END: 第一張/最後一張<br/>H - 求助面板",
"Slideshow" : "輪播",
"OriginalContext": "在原有範圍內查看"
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.8 KiB

@ -0,0 +1,49 @@
.yoxview_top_menu{ font-family: Arial, Sans-Serif; font-size: 10pt;}
/*
.yoxview_top_menu img.yoxview_fadeImg{ cursor: -moz-zoom-in }
.yoxview_top_menu img.yoxview_zoom{ cursor: -moz-zoom-out }
*/
.yoxview_top_menu #yoxview_infoPanel
{
top: 0;
bottom: auto;
}
.yoxview_top_menu #yoxview_infoPanel a.yoxviewInfoLink
{
padding: 6px 10px;
margin: 0;
opacity: 1;
outline: none;
}
.yoxview_top_menu #yoxview_infoPanel a.yoxviewInfoLink:hover
{
background: #999;
-moz-box-shadow: 0 15px 20px 0 rgba(0,0,0,0.6) inset;
-webkit-box-shadow: 0 15px 20px 0 rgba(0,0,0,0.6) inset;
box-shadow: 0 15px 20px 0 rgba(0,0,0,0.6) inset;
}
.yoxview_top_menu a.yoxview_ctlButton
{
display: block;
width: 58px;
height: 42px;
position: fixed;
opacity: 0.5;
background-image: url(sprites.png);
background-repeat: no-repeat;
top: 50%;
margin-top: -22px;
outline: none;
z-index: 3;
}
.yoxview_top_menu a.yoxview_ctlButton:hover{ opacity: 0.8; }
.yoxview_top_menu a.yoxview_nextBtn
{
background-position: right top;
right : 0;
}
.yoxview_top_menu a.yoxview_prevBtn
{
background-position: left top;
left : 0;
}

@ -0,0 +1,96 @@
$.yoxview.yoxviewSkins["top_menu"] = {
infoButtons: function(options, lang, sprites, yoxviewPanel, yoxviewContent){
var $ = jQuery;
//prev/next buttons:
if (!options.skinOptions || options.skinOptions.renderButtons !== false)
{
var prevBtn = $("<a>", {
className: "yoxview_ctlButton yoxview_prevBtn",
title: lang.PrevImage,
href: "#"
});
prevBtn.click(function(e){
$.yoxview.prev();
return false;
});
var nextBtn = $("<a>", {
className: "yoxview_ctlButton yoxview_nextBtn",
title: lang.NextImage,
href: "#"
});
nextBtn.click(function(e){
$.yoxview.next();
return false;
});
yoxviewPanel.append(prevBtn, nextBtn);
}
// menu buttons:
var closeBtn = $("<a>", {
href: "#",
title: lang.Close,
click: function(e){
e.preventDefault();
$.yoxview.close();
}
});
closeBtn.append(sprites.getSprite("icons", "close"));
var playBtn = $("<a>", {
href: "#",
title: lang.Play,
click: function(e){
e.preventDefault();
$.yoxview.play();
}
});
playBtn.append(sprites.getSprite("icons", "play"));
var rightBtn = $("<a>", {
href: "#",
title: options.isRTL ? lang.PrevImage : lang.NextImage,
click: function(e){
e.preventDefault();
if (options.isRTL)
$.yoxview.prev();
else
$.yoxview.next();
}
});
rightBtn.append(sprites.getSprite("icons", "right"));
var leftBtn = $("<a>", {
href: "#",
title: options.isRTL ? lang.NextImage : lang.PrevImage,
click: function(e){
e.preventDefault();
if (options.isRTL)
$.yoxview.next();
else
$.yoxview.prev();
}
});
leftBtn.append(sprites.getSprite("icons", "left"));
//yoxviewContent.delegate("div.yoxview_imgPanel", "click.yoxviewZoom", $.yoxview.zoom);
return {
close: closeBtn,
playBtn: playBtn,
right: rightBtn,
left: leftBtn
};
},
options: {
renderInfoExternally: true,
autoHideInfo: false,
popupMargin: "20 80",
renderInfoPin: false,
renderMenu: false,
renderButtons: false
}
}

@ -0,0 +1,304 @@
Yox = {
// Adds a stylesheet link reference in the specified document's HEAD
addStylesheet: function(_document, cssUrl)
{
var cssLink = _document.createElement("link");
cssLink.setAttribute("rel", "Stylesheet");
cssLink.setAttribute("type", "text/css");
cssLink.setAttribute("href", cssUrl);
_document.getElementsByTagName("head")[0].appendChild(cssLink);
},
compare: function(obj1, obj2)
{
if (typeof(obj1) != typeof(obj2))
return false;
else if (typeof(obj1) == "function")
return obj1 == obj2;
// deep-compare objects:
function size(obj)
{
var size = 0;
for (var keyName in obj)
{
if (keyName != null)
size++;
}
return size;
}
if (size(obj1) != size(obj2))
return false;
for(var keyName in obj1)
{
var value1 = obj1[keyName];
var value2 = obj2[keyName];
if (typeof value1 != typeof value2)
return false;
if (value1 && value1.length && (value1[0] !== undefined && value1[0].tagName))
{
if(!value2 || value2.length != value1.length || !value2[0].tagName || value2[0].tagName != value1[0].tagName)
return false;
}
else if (typeof value1 == 'function' || typeof value1 == 'object') {
var equal = Yox.compare(value1, value2);
if (!equal)
return equal;
}
else if (value1 != value2)
return false;
}
return true;
},
hasProperties: function(obj){
var hasProperties = false;
for(pName in obj)
{
hasProperties = true;
break;
}
return hasProperties;
},
dataSources: [],
fitImageSize: function(imageSize, targetSize, enlarge, isFill)
{
var resultSize = { width: imageSize.width, height: imageSize.height};
if ((imageSize.width > targetSize.width) ||
(enlarge && imageSize.width < targetSize.width) )
{
resultSize.height = Math.round((targetSize.width / imageSize.width) * imageSize.height);
resultSize.width = targetSize.width;
}
if (!isFill && resultSize.height > targetSize.height)
{
resultSize.width = Math.round((targetSize.height / resultSize.height) * resultSize.width);
resultSize.height = targetSize.height;
}
else if (isFill && resultSize.height < targetSize.height && (targetSize.height <= imageSize.height || enlarge))
{
resultSize.height = targetSize.height;
resultSize.width = Math.round((targetSize.height / imageSize.height) * imageSize.width);
}
return resultSize;
},
flashVideoPlayers: {
jwplayer: function(swfUrl, videoUrl, imageUrl, title, flashVars){
var returnData = {
swf: swfUrl || "/jwplayer/player.swf",
flashVars: {
file: videoUrl,
image: imageUrl,
stretching: "fill",
title: title,
backcolor: "000000",
frontcolor: "FFFFFF"
}
}
$.extend(returnData.flashVars, flashVars);
return returnData;
}
},
getDataSourceName: function(url)
{
for(dataSourceIndex in Yox.Regex.data)
{
if(url.match(Yox.Regex.data[dataSourceIndex]))
return dataSourceIndex;
}
return null;
},
getPath: function(pathRegex)
{
var scripts = document.getElementsByTagName("script");
for(var i=0; i<scripts.length; i++)
{
var currentScriptSrc = scripts[i].src;
var matchPath = currentScriptSrc.match(pathRegex);
if (matchPath)
return matchPath[1];
}
return null;
},
getTopWindow: function()
{
var topWindow = window;
if (window.top)
topWindow = window.top;
else
{
while(topWindow.parent)
topWindow = topWindow.parent;
}
return topWindow;
},
getUrlData: function(url)
{
var urlMatch = url.match(Yox.Regex.url);
if (!urlMatch)
return null;
var urlData = {
path: urlMatch[1],
anchor: urlMatch[3]
}
if (urlMatch[2])
urlData.queryFields = this.queryToJson(urlMatch[2]);
return urlData;
},
hex2rgba: function(hex, alpha)
{
hex = parseInt(hex.replace("#", "0x"), 16);
var r = (hex & 0xff0000) >> 16;
var g = (hex & 0x00ff00) >> 8;
var b = hex & 0x0000ff;
return "rgba(" + r + ", " + g + ", " + b + ", " + (typeof(alpha) != 'undefined' ? alpha : "1") + ")";
},
queryToJson: function(query)
{
if (!query)
return null;
var queryParams = query.split("&");
var json = {};
for(var i=0; i < queryParams.length; i++)
{
var paramData = queryParams[i].split('=');
if (paramData.length == 2)
json[paramData[0]] = paramData[1];
}
return json;
},
loadDataSource: function(options, callback)
{
var dataSourceName;
if (options.dataUrl)
{
dataSourceName = Yox.getDataSourceName(options.dataUrl);
if (dataSourceName)
$.extend(options, { dataSource: dataSourceIndex });
}
if (options.dataSource && !Yox.dataSources[dataSourceName])
{
$.ajax({
url : options.dataFolder + options.dataSource + ".js",
async : false,
dataType : "script",
success: function(data){
eval(data);
eval ("Yox.dataSources['" + options.dataSource + "'] = new yox_" + options.dataSource + "();");
callback(Yox.dataSources[options.dataSource]);
},
error : function(XMLHttpRequest, textStatus, errorThrown)
{
console.log(XMLHttpRequest, textStatus, errorThrown);
}
});
}
else if (callback)
callback();
},
Regex: {
data: {
picasa: /http:\/\/(?:www\.)?picasaweb\.google\..*/i,
flickr: /http:\/\/(?:www\.)?flickr.com/i,
smugmug: /http:\/\/.*\.smugmug.com/i,
youtube: /^http:\/\/(?:www\.)?youtube.com\//
},
flash: /^(.*\.(swf))(\?[^\?]+)?/i,
flashvideo: /^(.*\.(flv|f4v|f4p|f4a|f4b|aac))(\?[^\?]+)?/i,
image: /^[^\?#]+\.(?:jpg|jpeg|gif|png)$/i,
url: /^([^#\?]*)?(?:\?([^\?#]*))?(?:#([A-Za-z]{1}[A-Za-z\d-_\:\.]+))?$/, // [0] - whole url, [1] - path, [2] - query (sans '?'), [3] - anchor
video: {
youtube: /.*youtube.com\/watch.*(?:v=[^&]+).*/i,
vimeo: /vimeo.com\/\d+/i,
hulu: /hulu.com\/watch\//i,
viddler: /viddler.com\//i,
flickr: /.*flickr.com\/.*/i,
myspace: /.*vids.myspace.com\/.*/i,
qik: /qik.com/i,
revision3: /revision3.com/i,
dailymotion: /dailymotion.com/i,
"5min": /.*5min\.com\/Video/i
}
},
Sprites: function(sprites, spritesImage, srcImage)
{
var cacheImg = new Image();
cacheImg.src = spritesImage;
this.spritesImage = spritesImage;
var currentTop = 0;
jQuery.each(sprites, function(i, spriteGroup){
spriteGroup.top = currentTop;
currentTop += spriteGroup.height;
});
this.getSprite = function(spriteGroup, spriteName, title)
{
return jQuery("<img/>", {
src: srcImage,
alt: spriteName,
title: title,
css: {
width: sprites[spriteGroup].width,
height: sprites[spriteGroup].height,
"background-image": "url(" + spritesImage + ")",
"background-repeat": "no-repeat",
"background-position": this.getBackgroundPosition(spriteGroup, spriteName)
}
});
}
this.getBackgroundPosition = function(spriteGroup, spriteName)
{
var backgroundLeft = jQuery.inArray(spriteName, sprites[spriteGroup].sprites) * (sprites[spriteGroup].width || 0);
return "-" + backgroundLeft + "px -" + sprites[spriteGroup].top + "px";
}
},
Support: {
rgba: function()
{
// From http://leaverou.me/2009/03/check-whether-the-browser-supports-rgba-and-other-css3-values/
if(!('result' in arguments.callee))
{
var element = document.createElement('div');
var testColor = 'rgba(0, 0, 0, 0.5)';
var result = false;
try {
element.style.color = testColor;
result = /^rgba/.test(element.style.color);
} catch(e) {}
element = null;
arguments.callee.result = result;
}
return arguments.callee.result;
}
},
urlDataToPath: function(urlData)
{
var path = urlData.path ||"";
if (urlData.queryFields && this.hasProperties(urlData.queryFields))
{
path += "?";
for(field in urlData.queryFields)
{
path += field + "=" + urlData.queryFields[field] + "&";
}
path = path.substring(0, path.length-1);
}
if (urlData.anchor)
path += "#" + urlData.anchor;
return path;
}
}

@ -0,0 +1,34 @@
var yoxviewPath = getYoxviewPath();
var cssLink = top.document.createElement("link");
cssLink.setAttribute("rel", "Stylesheet");
cssLink.setAttribute("type", "text/css");
cssLink.setAttribute("href", yoxviewPath + "yoxview.css");
top.document.getElementsByTagName("head")[0].appendChild(cssLink);
function LoadScript(url)
{
document.write( '<scr' + 'ipt type="text/javascript" src="' + url + '"><\/scr' + 'ipt>' ) ;
}
var jQueryIsLoaded = typeof jQuery != "undefined";
if (!jQueryIsLoaded)
LoadScript("http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js");
LoadScript(yoxviewPath + "jquery.yoxview-2.2.min.js");
function getYoxviewPath()
{
var scripts = document.getElementsByTagName("script");
var regex = /(.*\/)yoxview-init/i;
for(var i=0; i<scripts.length; i++)
{
var currentScriptSrc = scripts[i].src;
if (currentScriptSrc.match(regex))
return currentScriptSrc.match(regex)[1];
}
return null;
}
// Remove the next line's comment to apply yoxview without knowing jQuery to all containers with class 'yoxview':
//LoadScript(yoxviewPath + "yoxview-nojquery.js");

@ -0,0 +1,5 @@
jQuery(document).ready(function($){
// Uncomment the following line if you use an additional Javascript library (likr Prototype, for example) in the same page as YoxView:
// jQuery.noConflict();
$(".yoxview").yoxview();
});

@ -0,0 +1,235 @@
/* YoxView v2.0 CSS file */
#yoxview .yoxview_bottom{ bottom: 0; }
#yoxview .yoxview_right{ float: right; }
#yoxview .yoxview_left{ float: left; }
#yoxview_popupWrap
{
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
display: none;
z-index: 100;
}
#yoxview
{
position: absolute;
font-family: Arial, Sans-Serif;
z-index: 999;
border: solid 1px #999;
overflow: hidden;
font-size: 10pt;
text-align: left;
}
#yoxview a img, #yoxview_infoPanel a img{ border: none; }
#yoxview a:focus{ outline: none; }
#yoxview div.yoxview_imgPanel{ position: absolute; top: 0; left: 0; }
#yoxview div.yoxview_mediaPanel
{
position: absolute;
background: #191919;
width: 100%;
height: 100%
}
#yoxview .yoxview_ctlBtn
{
position: absolute;
z-index: 3;
display: block;
text-decoration: none;
outline: none;
width: 50%;
height: 100%;
}
#yoxview .yoxview_ctlBtn img
{
position: absolute;
border: none;
top: 50%;
margin-top: -22px;
}
#yoxview a.yoxview_ctlBtn:focus, #yoxview a.yoxview_ctlBtn:active{ outline: none; outline: none;}
#yoxview .yoxview_notification
{
width: 59px;
height: 59px;
position: absolute;
top: 50%;
left: 50%;
margin-top: -30px;
margin-left: -30px;
z-index: 4;
opacity: 0.6;
filter: alpha(opacity=60);
background-image: url(images/sprites.png);
background-repeat: no-repeat;
display: none;
}
#yoxview #yoxview_ajaxLoader img
{
padding: 13px;
}
#yoxview .yoxview_popupBarPanel
{
position: absolute;
z-index: 4;
min-height: 70px;
width: 100%;
right: 0;
}
#yoxview #yoxview_menuPanel
{
width: 145px;
height: 42px;
padding-top: 0px;
padding-right: 9px;
position: absolute;
right: 0;
background: url(images/sprites.png) no-repeat left -77px;
background: rgba(0, 0, 0, 0.8);
-moz-border-radius: 0 0 0 15px;
-webkit-border-radius: 0 0 0 15px;
border-radius: 0 0 0 15px;
top: -42px;
}
#yoxview #yoxview_menuPanel a
{
display: block;
width: 45px;
float: right;
text-align: center;
font-size: 0.8em;
position: relative;
margin-top: -5px;
padding-bottom: 13px;
text-decoration: none;
font-family: Arial, Sans-Serif;
}
#yoxview #yoxview_menuPanel a span{ color: White; display: block; margin-bottom: 3px; }
#yoxview #yoxview_menuPanel a.last{ margin-left: 0; }
#yoxview #yoxview_menuPanel a:focus{ outline: none; }
#yoxview_infoPanel
{
position: absolute;
bottom: 0;
width: 100%;
height: 0;
color: White;
z-index: 2;
overflow: hidden;
}
#yoxview_infoPanel #yoxview_infoPanelBack
{
position: absolute;
width: 100%;
height: 100%;
z-index: 1;
left: 0;
top: 0;
}
#yoxview_infoPanel #yoxview_infoPanelContent
{
position: absolute;
width: 100%;
z-index: 2;
top: 0;
left: 0;
}
#yoxview_infoPanel span#yoxview_count
{
display: block;
width: 55px;
font-size: 0.8em;
float: left;
text-align: center;
padding-top: 8px;
color: #bbb;
}
#yoxview_infoPanel #yoxview_infoText
{
margin: 0 55px;
font-size: 12pt;
padding: 5px 0;
}
#yoxview_infoPanel #yoxview_infoText #yoxview_infoTextDescription
{
margin-top: 1em;
font-size: 10pt;
padding-bottom: 0.5em;
max-height: 200px;
overflow: auto;
padding-right: 10px;
}
#yoxview_infoPanel #yoxview_infoText a, #yoxview .yoxview_error a{ color: #a7d557; text-decoration: none; outline: none; }
#yoxview_infoPanel #yoxview_infoText a:hover, #yoxview .yoxview_error a:hover{ color: #d5eeaa }
#yoxview_infoPanel a.yoxviewInfoLink
{
display: none;
opacity: 0.8;
float: right;
margin-right: 5px;
margin-top: 5px;
}
#yoxview_infoPanel a.yoxviewInfoLink:hover{ opacity: 1 }
#yoxview #yoxview_helpPanel
{
display: none;
width: 201px;
height: 312px;
position: absolute;
top: 50%;
left: 50%;
margin-top: -171px;
margin-left: -111px;
z-index: 5;
color: White;
padding: 20px;
padding-top: 10px;
cursor: pointer;
}
#yoxview #yoxview_helpPanel h1{ font-family: Arial Black, Arial, Sans-Serif; font-size: 1em; }
#yoxview #yoxview_helpPanel p{ margin-top: 80px; }
#yoxview #yoxview_helpPanel span#yoxview_closeHelp{ display: block; position: absolute; bottom: 20px; left: 0; text-align: center; width: 100%; }
#yoxview .yoxview_error
{
display: block;
text-align: center;
color: White;
font-family: Arial, Sans-Serif;
font-size: 14pt;
top: 41%;
width: 100%;
height: 20%;
position: absolute;
padding: 10px;
}
#yoxview .yoxview_error .errorUrl{ font-size: 10pt; }
#yoxview .yoxview_top{ top: 0; width: 50%; }
#yoxview .yoxview_element{ width: 100%; height: 100%; position: absolute; border: none; background: #333; }
.yoxview-thumbnails a
{
float: left;
margin: 4px;
/* For thumbnails opacity: */
opacity: 0.8;
filter: alpha(opacity=80);
}
.yoxview-thumbnails a:hover
{
/* For thumbnails opacity: */
opacity: 1;
filter: alpha(opacity=100);
}
.yoxview-thumbnails a img
{
/* Set white borders around the thumbnails, instead of the browser's default Blue: */
border: solid 1px #ffffff;
}
.yoxview-thumbnails-details{ margin-bottom: 1em; }
.yoxview-thumbnails-details h2{ margin-bottom: 0; padding: 0; font-size: 1.2em; font-weight: bold;}

@ -4860,11 +4860,17 @@ function api_check_browscap(){
}
}
function api_get_js($file) {
return '<script src="'.api_get_path(WEB_LIBRARY_PATH).'javascript/'.$file.'" type="text/javascript" language="javascript"></script>';
}
/**
* Returns the js header to include the jquery library
*/
function api_get_jquery_js() {
return '<script src="'.api_get_path(WEB_LIBRARY_PATH).'javascript/jquery-1.4.4.min.js" type="text/javascript" language="javascript"></script>';
return api_get_js('jquery-1.4.4.min.js');
}
@ -4904,7 +4910,7 @@ function api_get_jquery_libraries_js($libraries, $include_jquery = true) {
//Jquery ui
$theme = 'smoothness'; // Current themes: cupertino, smoothness, ui-lightness. Find the themes folder in main/inc/lib/javascript/jquery-ui
$js .= '<link rel="stylesheet" href="'.$js_path.'jquery-ui/'.$theme.'/jquery-ui-1.8.7.custom.css" type="text/css">';
$js .= '<script src="'.$js_path.'jquery-ui/'.$theme.'/jquery-ui-1.8.7.custom.min.js" type="text/javascript" language="javascript"></script>';
$js .= api_get_js('jquery-ui/'.$theme.'/jquery-ui-1.8.7.custom.min.js');
}
//jqgrid js and css
@ -4918,16 +4924,15 @@ function api_get_jquery_libraries_js($libraries, $include_jquery = true) {
if (in_array($platform_isocode, $jqgrid_langs)) {
$languaje = $platform_isocode;
}
$js .= '<link rel="stylesheet" href="'.$js_path.'jqgrid/css/ui.jqgrid.css" type="text/css">';
$js .= '<script src="'.$js_path.'jqgrid/js/i18n/grid.locale-'.$languaje.'.js" type="text/javascript" language="javascript"></script>';
$js .= '<script src="'.$js_path.'jqgrid/js/jquery.jqGrid.min.js" type="text/javascript" language="javascript"></script>';
$js .= api_get_js('jqgrid/js/i18n/grid.locale-'.$languaje.'.js');
$js .= api_get_js('jqgrid/js/jquery.jqGrid.min.js');
}
//Document multiple upload funcionality
if (in_array('jquery-upload',$libraries)) {
$js .= '<script src="'.$js_path.'jquery-upload/jquery.fileupload.js" type="text/javascript" language="javascript"></script>';
$js .= '<script src="'.$js_path.'jquery-upload/jquery.fileupload-ui.js" type="text/javascript" language="javascript"></script>';
$js .= api_get_js('jquery-upload/jquery.fileupload.js');
$js .= api_get_js('jquery-upload/jquery.fileupload-ui.js');
$js .= '<link rel="stylesheet" href="'.$js_path.'jquery-upload/jquery.fileupload-ui.css" type="text/css">';
}

Loading…
Cancel
Save