Version Description
Download this release
Release Info
Developer | alexrabe |
Plugin | NextGEN Gallery – WordPress Gallery Plugin |
Version | 0.50 |
Comparing to | |
See all releases |
Code changes from version 0.43 to 0.50
- admin/about.php +2 -0
- admin/addgallery.php +123 -72
- admin/admin.php +30 -1
- admin/album.php +14 -16
- admin/js/jquery.MultiFile.js +247 -0
- admin/js/jquery.MultiFile.pack.js +1 -0
- admin/js/jquery.js +1 -1
- admin/manage.php +8 -10
- admin/settings.php +42 -16
- admin/setup.php +1 -1
- changelog.txt +19 -0
- css/Black_Minimalism .css +7 -17
- css/ngg_dKret2.css +188 -0
- css/ngg_k2.css +5 -16
- css/ngg_shadow.css +5 -16
- css/nggallery.css +11 -20
- lang/nggallery.po +344 -256
- lib/thumbnail.inc.php +1 -1
- nggallery.php +30 -25
- nggfunctions.php +11 -11
- ngginstall.php +4 -0
- nggwidget.php +643 -277
- readme.txt +4 -4
- thickbox/thickbox-pack.js +10 -0
- thickbox/thickbox.js +299 -1
admin/about.php
CHANGED
@@ -84,6 +84,8 @@ function ngg_list_support() {
|
|
84 |
"Lazy (German Translation)" => "http://www.lazychris.de/",
|
85 |
"Lise (French Translation)" => "http://liseweb.fr/",
|
86 |
"Anja (Dutch Translation)" => "http://www.werkgroepen.net/wordpress",
|
|
|
|
|
87 |
"Wojciech Owczarek (Polish Translation)" => "http://www.owczi.net"
|
88 |
);
|
89 |
|
84 |
"Lazy (German Translation)" => "http://www.lazychris.de/",
|
85 |
"Lise (French Translation)" => "http://liseweb.fr/",
|
86 |
"Anja (Dutch Translation)" => "http://www.werkgroepen.net/wordpress",
|
87 |
+
"Adrian (Indonesian Translation)" => "http://adrian.web.id/",
|
88 |
+
"Mika Pennanen (Finnish Translation)" => "http://kapsi.fi/~penni",
|
89 |
"Wojciech Owczarek (Polish Translation)" => "http://www.owczi.net"
|
90 |
);
|
91 |
|
admin/addgallery.php
CHANGED
@@ -4,7 +4,7 @@ if(preg_match('#' . basename(__FILE__) . '#', $_SERVER['PHP_SELF'])) { die('You
|
|
4 |
include_once(NGGALLERY_ABSPATH.'/lib/thumbnail.inc.php');
|
5 |
|
6 |
function nggallery_admin_add_gallery() {
|
7 |
-
|
8 |
global $wpdb;
|
9 |
$ngg_options = get_option('ngg_options');
|
10 |
|
@@ -20,7 +20,7 @@ if(preg_match('#' . basename(__FILE__) . '#', $_SERVER['PHP_SELF'])) { die('You
|
|
20 |
if ($_FILES['zipfile']['error'] == 0)
|
21 |
$messagetext = ngg_import_zipfile($defaultpath);
|
22 |
else
|
23 |
-
$messagetext = '<font color="
|
24 |
}
|
25 |
|
26 |
if ($_POST['importfolder']){
|
@@ -30,31 +30,30 @@ if(preg_match('#' . basename(__FILE__) . '#', $_SERVER['PHP_SELF'])) { die('You
|
|
30 |
}
|
31 |
|
32 |
if ($_POST['uploadimage']){
|
33 |
-
if ($_FILES['
|
34 |
$messagetext = ngg_upload_images($defaultpath);
|
|
|
35 |
else
|
36 |
-
$messagetext = '<font color="
|
37 |
}
|
38 |
|
39 |
// message windows
|
40 |
if(!empty($messagetext)) { echo '<!-- Last Action --><div id="message" class="updated fade"><p>'.$messagetext.'</p></div>'; }
|
41 |
|
42 |
?>
|
43 |
-
<script type="text/javascript" src="<?php echo NGGALLERY_URLPATH ?>admin/js/jquery.js"></script>
|
44 |
-
<script type="text/javascript" src="<?php echo NGGALLERY_URLPATH ?>admin/js/interface.js"></script>
|
45 |
<script type="text/javascript">
|
46 |
var currentTab = null;
|
47 |
var inSlide = false;
|
48 |
-
|
49 |
function()
|
50 |
{
|
51 |
var url, tab = 0, tabIteration = 0;
|
52 |
|
53 |
url = window.location.href.split("#");
|
54 |
if (url.length == 2 && url[1].indexOf('-slider') > 0) {
|
55 |
-
currentTab =
|
56 |
if (currentTab.size() == 1) {
|
57 |
-
|
58 |
function(iteration)
|
59 |
{
|
60 |
if(this === currentTab.get(0)) {
|
@@ -66,11 +65,11 @@ if(preg_match('#' . basename(__FILE__) . '#', $_SERVER['PHP_SELF'])) { die('You
|
|
66 |
}
|
67 |
|
68 |
if(!currentTab) {
|
69 |
-
currentTab =
|
70 |
}
|
71 |
|
72 |
currentTab.SlideToggleUp(500);
|
73 |
-
|
74 |
.eq(tabIteration).addClass('active')
|
75 |
.end()
|
76 |
.bind('click', switchTab);
|
@@ -82,21 +81,30 @@ if(preg_match('#' . basename(__FILE__) . '#', $_SERVER['PHP_SELF'])) { die('You
|
|
82 |
// get id from link
|
83 |
var tabName = this.href.split('#')[1];
|
84 |
this.blur();
|
85 |
-
if (inSlide == false && currentTab.get(0) !=
|
86 |
-
|
87 |
-
|
88 |
inSlide = true;
|
89 |
currentTab.SlideToggleUp(
|
90 |
500,
|
91 |
function()
|
92 |
{
|
93 |
-
currentTab =
|
94 |
}
|
95 |
);
|
96 |
} else {
|
97 |
return false;
|
98 |
}
|
99 |
};
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
100 |
</script>
|
101 |
<div class="wrap" style="text-align: center">
|
102 |
<div id="tabs">
|
@@ -113,7 +121,7 @@ if(preg_match('#' . basename(__FILE__) . '#', $_SERVER['PHP_SELF'])) { die('You
|
|
113 |
<!-- create gallery -->
|
114 |
<div id="addgallery" class="wrap" style="display:none">
|
115 |
<h2><?php _e('Add new gallery', 'nggallery') ;?></h2>
|
116 |
-
<form name="addgallery" id="
|
117 |
<fieldset class="options">
|
118 |
<table class="optiontable">
|
119 |
<tr valign="top">
|
@@ -130,7 +138,7 @@ if(preg_match('#' . basename(__FILE__) . '#', $_SERVER['PHP_SELF'])) { die('You
|
|
130 |
<!-- zip-file operation -->
|
131 |
<div id="zipupload" class="wrap" style="display:none">
|
132 |
<h2><?php _e('Upload a Zip-File', 'nggallery') ;?></h2>
|
133 |
-
<form name="zipupload" id="
|
134 |
<fieldset class="options">
|
135 |
<table class="optiontable">
|
136 |
<tr valign="top">
|
@@ -146,7 +154,7 @@ if(preg_match('#' . basename(__FILE__) . '#', $_SERVER['PHP_SELF'])) { die('You
|
|
146 |
<!-- import folder -->
|
147 |
<div id="importfolder" class="wrap" style="display:none">
|
148 |
<h2><?php _e('Import image folder', 'nggallery') ;?></h2>
|
149 |
-
<form name="importfolder" id="
|
150 |
<fieldset class="options">
|
151 |
<table class="optiontable">
|
152 |
<tr valign="top">
|
@@ -163,12 +171,12 @@ if(preg_match('#' . basename(__FILE__) . '#', $_SERVER['PHP_SELF'])) { die('You
|
|
163 |
<!-- upload images -->
|
164 |
<div id="uploadimage" class="wrap" style="display:none">
|
165 |
<h2><?php _e('Upload Images', 'nggallery') ;?></h2>
|
166 |
-
<form name="uploadimage" id="
|
167 |
<fieldset class="options">
|
168 |
<table class="optiontable">
|
169 |
<tr valign="top">
|
170 |
<th scope="row"><?php _e('Upload image', 'nggallery') ;?></th>
|
171 |
-
<td><input type="file" name="imagefiles" id="imagefiles" size="35" class="
|
172 |
</tr>
|
173 |
<tr valign="top">
|
174 |
<th scope="row"><?php _e('in to', 'nggallery') ;?></th>
|
@@ -183,7 +191,7 @@ if(preg_match('#' . basename(__FILE__) . '#', $_SERVER['PHP_SELF'])) { die('You
|
|
183 |
}
|
184 |
?>
|
185 |
</select>
|
186 |
-
<br /><?php _e('
|
187 |
</tr>
|
188 |
</table>
|
189 |
<div class="submit"><input type="submit" name= "uploadimage" value="<?php _e('Upload images', 'nggallery') ;?>"/></div>
|
@@ -207,8 +215,8 @@ if(preg_match('#' . basename(__FILE__) . '#', $_SERVER['PHP_SELF'])) { die('You
|
|
207 |
$new_pathname = preg_replace('|[^a-z0-9-]|i', '', $new_pathname);
|
208 |
|
209 |
if (empty($new_pathname)) return '<font color="red">'.__('No valid gallery name!', 'nggallery'). '</font>';
|
210 |
-
if ( substr(decoct(@fileperms($myabspath.$defaultpath)),1) !=
|
211 |
-
return '<font color="red">'.__('Directory', 'nggallery').' <strong>'.$defaultpath.'</strong> '.__('didn\'t have the permissions
|
212 |
|
213 |
$nggpath = $defaultpath.$new_pathname;
|
214 |
|
@@ -217,10 +225,10 @@ if(preg_match('#' . basename(__FILE__) . '#', $_SERVER['PHP_SELF'])) { die('You
|
|
217 |
|
218 |
// create new directories
|
219 |
if (!SAFE_MODE) {
|
220 |
-
if (!@mkdir ($myabspath.$nggpath,
|
221 |
-
if (!@chmod ($myabspath.$nggpath,
|
222 |
-
if (!@mkdir ($myabspath.$nggpath.'/thumbs',
|
223 |
-
if (!@chmod ($myabspath.$nggpath.'/thumbs',
|
224 |
} else {
|
225 |
$safemode = '<br /><font color="green">'.__('The server Safe-Mode is on !', 'nggallery');
|
226 |
$safemode .= '<br />'.__('Please create directory ', 'nggallery').'<strong>'.$nggpath.'</strong> ';
|
@@ -258,7 +266,7 @@ if(preg_match('#' . basename(__FILE__) . '#', $_SERVER['PHP_SELF'])) { die('You
|
|
258 |
$check_thumbnail_folder = ngg_get_thumbnail_folder($gallerypath);
|
259 |
if (!$check_thumbnail_folder) {
|
260 |
if (SAFE_MODE) return '<font color="red">'.__('Thumbnail Directory', 'nggallery').' <strong>'.$gallerypath.'/thumbs</strong> '.__('doesn`t exist', 'nggallery').'!<br />'.__('Please create the folder <i>thumbs</i> in your gallery folder.', 'nggallery').'</font>';
|
261 |
-
else @mkdir ($gallerypath.'/thumbs',
|
262 |
}
|
263 |
|
264 |
// take folder name as gallery name
|
@@ -306,19 +314,24 @@ if(preg_match('#' . basename(__FILE__) . '#', $_SERVER['PHP_SELF'])) { die('You
|
|
306 |
if (is_array($pictures)) {
|
307 |
foreach($pictures as $picture) {
|
308 |
|
309 |
-
|
310 |
-
|
311 |
-
|
312 |
-
|
313 |
-
|
314 |
-
|
315 |
-
$thumb->
|
316 |
-
|
317 |
-
|
318 |
-
|
|
|
|
|
|
|
319 |
}
|
320 |
}
|
321 |
|
|
|
|
|
322 |
return;
|
323 |
}
|
324 |
|
@@ -331,7 +344,11 @@ if(preg_match('#' . basename(__FILE__) . '#', $_SERVER['PHP_SELF'])) { die('You
|
|
331 |
if (is_array($pictures)) {
|
332 |
foreach($pictures as $picture) {
|
333 |
|
334 |
-
|
|
|
|
|
|
|
|
|
335 |
$thumb = new ngg_Thumbnail($gallery_absfolder."/".$picture, TRUE);
|
336 |
// echo $thumb->errmsg;
|
337 |
// skip if file is not there
|
@@ -351,6 +368,8 @@ if(preg_match('#' . basename(__FILE__) . '#', $_SERVER['PHP_SELF'])) { die('You
|
|
351 |
}
|
352 |
}
|
353 |
|
|
|
|
|
354 |
return;
|
355 |
}
|
356 |
|
@@ -366,9 +385,16 @@ if(preg_match('#' . basename(__FILE__) . '#', $_SERVER['PHP_SELF'])) { die('You
|
|
366 |
if (is_array($pictures)) {
|
367 |
foreach($pictures as $picture) {
|
368 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
369 |
$thumb = new ngg_Thumbnail($gallery_absfolder."/".utf8_decode($picture), TRUE);
|
370 |
-
|
371 |
-
// echo $thumb->errmsg;
|
372 |
// skip if file is not there
|
373 |
if (!$thumb->error) {
|
374 |
if ($ngg_options[thumbresizebefore]) {
|
@@ -376,13 +402,27 @@ if(preg_match('#' . basename(__FILE__) . '#', $_SERVER['PHP_SELF'])) { die('You
|
|
376 |
$thumb->cropFromCenter($ngg_options[thumbwidth],$ngg_options[thumbResampleMode]);
|
377 |
} else {
|
378 |
if ($ngg_options[thumbcrop]) $thumb->cropFromCenter($ngg_options[thumbwidth],$ngg_options[thumbResampleMode]);
|
379 |
-
else
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
380 |
}
|
381 |
$thumb->save($gallery_absfolder.$thumbfolder.$prefix.$picture,$ngg_options[thumbquality]);
|
382 |
}
|
383 |
$thumb->destruct();
|
384 |
}
|
385 |
}
|
|
|
|
|
386 |
|
387 |
return;
|
388 |
}
|
@@ -394,7 +434,8 @@ if(preg_match('#' . basename(__FILE__) . '#', $_SERVER['PHP_SELF'])) { die('You
|
|
394 |
require_once(NGGALLERY_ABSPATH.'/lib/pclzip.lib.php');
|
395 |
|
396 |
$archive = new PclZip($file);
|
397 |
-
|
|
|
398 |
if ($archive->extract(PCLZIP_OPT_PATH, $dir) == 0) {
|
399 |
die("Error : ".$archive->errorInfo(true));
|
400 |
}
|
@@ -420,10 +461,10 @@ if(preg_match('#' . basename(__FILE__) . '#', $_SERVER['PHP_SELF'])) { die('You
|
|
420 |
|
421 |
if (!is_dir($newfolder)) {
|
422 |
// create new directories
|
423 |
-
if (!@mkdir ($newfolder,
|
424 |
-
if (!@chmod ($newfolder,
|
425 |
-
if (!@mkdir ($newfolder.'/thumbs',
|
426 |
-
if (!@chmod ($newfolder.'/thumbs',
|
427 |
}
|
428 |
else {
|
429 |
return '<font color="red">'.__('Directory already exists, please rename zip file', 'nggallery').'!</font>';
|
@@ -444,40 +485,50 @@ if(preg_match('#' . basename(__FILE__) . '#', $_SERVER['PHP_SELF'])) { die('You
|
|
444 |
// **************************************************************
|
445 |
function ngg_upload_images($defaultpath) {
|
446 |
// upload of pictures
|
447 |
-
//TODO: Multiple upload form
|
448 |
|
449 |
global $wpdb;
|
450 |
-
|
451 |
-
$temp_file = $_FILES['imagefiles']['tmp_name'];
|
452 |
-
$filename = $_FILES['imagefiles']['name'];
|
453 |
-
|
454 |
-
$dest_gallery = $_POST['galleryselect'];
|
455 |
-
if ($dest_gallery == 0) {
|
456 |
-
@unlink($temp_file) or die ('<div class="updated"><p><strong>'.__('Unable to unlink file ', 'nggallery').$temp_zipfile.'!</strong></p></div>');
|
457 |
-
return '<font color="red">'.__('No gallery selected !','nggallery').'</font>';
|
458 |
-
}
|
459 |
-
|
460 |
-
// get the path to the gallery
|
461 |
-
$gallerypath = $wpdb->get_var("SELECT path FROM $wpdb->nggallery WHERE gid = '$dest_gallery' ");
|
462 |
-
if (!$gallerypath){
|
463 |
-
@unlink($temp_file) or die ('<div class="updated"><p><strong>'.__('Unable to unlink file ', 'nggallery').$temp_zipfile.'!</strong></p></div>');
|
464 |
-
return '<font color="red">'.__('Failure in database, no gallery path set !','nggallery').'</font>';
|
465 |
-
}
|
466 |
-
|
467 |
-
$dest_file = WINABSPATH.$gallerypath."/".$filename;
|
468 |
|
469 |
-
// save temp file to gallery
|
470 |
-
if (!@move_uploaded_file($_FILES['imagefiles']['tmp_name'], $dest_file)) return '<font color="red">'.__('Error, the file could not moved to : ','nggallery').$dest_file.'</font>';
|
471 |
-
if (!@chmod ($dest_file, 0666)) return '<font color="red">'.__('Error, the file permissions could not set','nggallery').'</font>';
|
472 |
-
|
473 |
// Images must be an array
|
474 |
$imageslist = array();
|
475 |
-
$imageslist[] = $filename;
|
476 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
477 |
//create thumbnails
|
478 |
ngg_generatethumbnail(WINABSPATH.$gallerypath,$imageslist);
|
479 |
|
480 |
// add images to database
|
|
|
481 |
if (is_array($imageslist)) {
|
482 |
foreach($imageslist as $picture) {
|
483 |
$result = $wpdb->query("INSERT INTO $wpdb->nggpictures (galleryid, filename, alttext, exclude) VALUES ('$dest_gallery', '$picture', '$picture', 0) ");
|
@@ -485,7 +536,7 @@ if(preg_match('#' . basename(__FILE__) . '#', $_SERVER['PHP_SELF'])) { die('You
|
|
485 |
}
|
486 |
}
|
487 |
|
488 |
-
return '<font color="green">'.__('Images successfully added','nggallery').'</font>';
|
489 |
|
490 |
} // end function
|
491 |
|
4 |
include_once(NGGALLERY_ABSPATH.'/lib/thumbnail.inc.php');
|
5 |
|
6 |
function nggallery_admin_add_gallery() {
|
7 |
+
|
8 |
global $wpdb;
|
9 |
$ngg_options = get_option('ngg_options');
|
10 |
|
20 |
if ($_FILES['zipfile']['error'] == 0)
|
21 |
$messagetext = ngg_import_zipfile($defaultpath);
|
22 |
else
|
23 |
+
$messagetext = '<font color="red">'.__('Upload failed!','nggallery').'</font>';
|
24 |
}
|
25 |
|
26 |
if ($_POST['importfolder']){
|
30 |
}
|
31 |
|
32 |
if ($_POST['uploadimage']){
|
33 |
+
if ($_FILES['MF__F_0_0']['error'] == 0) {
|
34 |
$messagetext = ngg_upload_images($defaultpath);
|
35 |
+
}
|
36 |
else
|
37 |
+
$messagetext = '<font color="red">'.__('Upload failed!','nggallery').'</font>';
|
38 |
}
|
39 |
|
40 |
// message windows
|
41 |
if(!empty($messagetext)) { echo '<!-- Last Action --><div id="message" class="updated fade"><p>'.$messagetext.'</p></div>'; }
|
42 |
|
43 |
?>
|
|
|
|
|
44 |
<script type="text/javascript">
|
45 |
var currentTab = null;
|
46 |
var inSlide = false;
|
47 |
+
jQuery(document).ready(
|
48 |
function()
|
49 |
{
|
50 |
var url, tab = 0, tabIteration = 0;
|
51 |
|
52 |
url = window.location.href.split("#");
|
53 |
if (url.length == 2 && url[1].indexOf('-slider') > 0) {
|
54 |
+
currentTab = jQuery('#' + url[1].substr(0, url[1].length-7));
|
55 |
if (currentTab.size() == 1) {
|
56 |
+
jQuery('#slider div').each(
|
57 |
function(iteration)
|
58 |
{
|
59 |
if(this === currentTab.get(0)) {
|
65 |
}
|
66 |
|
67 |
if(!currentTab) {
|
68 |
+
currentTab = jQuery('#slider div:first');
|
69 |
}
|
70 |
|
71 |
currentTab.SlideToggleUp(500);
|
72 |
+
jQuery('#tabs a')
|
73 |
.eq(tabIteration).addClass('active')
|
74 |
.end()
|
75 |
.bind('click', switchTab);
|
81 |
// get id from link
|
82 |
var tabName = this.href.split('#')[1];
|
83 |
this.blur();
|
84 |
+
if (inSlide == false && currentTab.get(0) != jQuery('#' + tabName.substr(0, tabName.length-7)).get(0)) {
|
85 |
+
jQuery('#tabs a').removeClass('active');
|
86 |
+
jQuery(this).addClass('active');
|
87 |
inSlide = true;
|
88 |
currentTab.SlideToggleUp(
|
89 |
500,
|
90 |
function()
|
91 |
{
|
92 |
+
currentTab = jQuery('#' + tabName.substr(0, tabName.length-7)).SlideToggleUp(500, function(){inSlide=false;});
|
93 |
}
|
94 |
);
|
95 |
} else {
|
96 |
return false;
|
97 |
}
|
98 |
};
|
99 |
+
|
100 |
+
jQuery(function(){
|
101 |
+
jQuery('#imagefiles').MultiFile({
|
102 |
+
STRING: {
|
103 |
+
remove:'<?php _e('remove', 'nggallery') ;?>'
|
104 |
+
}
|
105 |
+
});
|
106 |
+
});
|
107 |
+
|
108 |
</script>
|
109 |
<div class="wrap" style="text-align: center">
|
110 |
<div id="tabs">
|
121 |
<!-- create gallery -->
|
122 |
<div id="addgallery" class="wrap" style="display:none">
|
123 |
<h2><?php _e('Add new gallery', 'nggallery') ;?></h2>
|
124 |
+
<form name="addgallery" id="addgallery" method="POST" action="<?php echo htmlspecialchars($_SERVER['REQUEST_URI']); ?>" >
|
125 |
<fieldset class="options">
|
126 |
<table class="optiontable">
|
127 |
<tr valign="top">
|
138 |
<!-- zip-file operation -->
|
139 |
<div id="zipupload" class="wrap" style="display:none">
|
140 |
<h2><?php _e('Upload a Zip-File', 'nggallery') ;?></h2>
|
141 |
+
<form name="zipupload" id="zipupload" method="POST" enctype="multipart/form-data" action="<?php echo htmlspecialchars($_SERVER['REQUEST_URI']).'#zipupload-slider'; ?>" >
|
142 |
<fieldset class="options">
|
143 |
<table class="optiontable">
|
144 |
<tr valign="top">
|
154 |
<!-- import folder -->
|
155 |
<div id="importfolder" class="wrap" style="display:none">
|
156 |
<h2><?php _e('Import image folder', 'nggallery') ;?></h2>
|
157 |
+
<form name="importfolder" id="importfolder" method="POST" action="<?php echo htmlspecialchars($_SERVER['REQUEST_URI']).'#importfolder-slider'; ?>" >
|
158 |
<fieldset class="options">
|
159 |
<table class="optiontable">
|
160 |
<tr valign="top">
|
171 |
<!-- upload images -->
|
172 |
<div id="uploadimage" class="wrap" style="display:none">
|
173 |
<h2><?php _e('Upload Images', 'nggallery') ;?></h2>
|
174 |
+
<form name="uploadimage" id="uploadimage" method="POST" enctype="multipart/form-data" action="<?php echo htmlspecialchars($_SERVER['REQUEST_URI']).'#uploadimage-slider'; ?>" >
|
175 |
<fieldset class="options">
|
176 |
<table class="optiontable">
|
177 |
<tr valign="top">
|
178 |
<th scope="row"><?php _e('Upload image', 'nggallery') ;?></th>
|
179 |
+
<td><input type="file" name="imagefiles" id="imagefiles" size="35" class="imagefiles"/></td>
|
180 |
</tr>
|
181 |
<tr valign="top">
|
182 |
<th scope="row"><?php _e('in to', 'nggallery') ;?></th>
|
191 |
}
|
192 |
?>
|
193 |
</select>
|
194 |
+
<br /><?php echo _e('Note : The upload limit on your server is ','nggallery') . "<strong>" . ini_get('upload_max_filesize') . "Byte</strong>\n"; ?></td>
|
195 |
</tr>
|
196 |
</table>
|
197 |
<div class="submit"><input type="submit" name= "uploadimage" value="<?php _e('Upload images', 'nggallery') ;?>"/></div>
|
215 |
$new_pathname = preg_replace('|[^a-z0-9-]|i', '', $new_pathname);
|
216 |
|
217 |
if (empty($new_pathname)) return '<font color="red">'.__('No valid gallery name!', 'nggallery'). '</font>';
|
218 |
+
if ( substr(decoct(@fileperms($myabspath.$defaultpath)),1) != NGGFOLDER_PERMISSION )
|
219 |
+
return '<font color="red">'.__('Directory', 'nggallery').' <strong>'.$defaultpath.'</strong> '.__('didn\'t have the permissions ', 'nggallery').NGGFOLDER_PERMISSION.'!</font>';
|
220 |
|
221 |
$nggpath = $defaultpath.$new_pathname;
|
222 |
|
225 |
|
226 |
// create new directories
|
227 |
if (!SAFE_MODE) {
|
228 |
+
if (!@mkdir ($myabspath.$nggpath,NGGFOLDER_PERMISSION)) return ('<font color="red">'.__('Unable to create directory ', 'nggallery').$nggpath.'!</font>');
|
229 |
+
if (!@chmod ($myabspath.$nggpath,NGGFOLDER_PERMISSION)) return ('<font color="red">'.__('Unable to set directory permissions ', 'nggallery').$nggpath.'!</font>');
|
230 |
+
if (!@mkdir ($myabspath.$nggpath.'/thumbs',NGGFOLDER_PERMISSION)) return ('<font color="red">'.__('Unable to create directory ', 'nggallery').$nggpath.'/thumbs !</font>');
|
231 |
+
if (!@chmod ($myabspath.$nggpath.'/thumbs',NGGFOLDER_PERMISSION)) return ('<font color="red">'.__('Unable to set directory permissions', 'nggallery').$nggpath.'/thumbs !</font>');
|
232 |
} else {
|
233 |
$safemode = '<br /><font color="green">'.__('The server Safe-Mode is on !', 'nggallery');
|
234 |
$safemode .= '<br />'.__('Please create directory ', 'nggallery').'<strong>'.$nggpath.'</strong> ';
|
266 |
$check_thumbnail_folder = ngg_get_thumbnail_folder($gallerypath);
|
267 |
if (!$check_thumbnail_folder) {
|
268 |
if (SAFE_MODE) return '<font color="red">'.__('Thumbnail Directory', 'nggallery').' <strong>'.$gallerypath.'/thumbs</strong> '.__('doesn`t exist', 'nggallery').'!<br />'.__('Please create the folder <i>thumbs</i> in your gallery folder.', 'nggallery').'</font>';
|
269 |
+
else @mkdir ($gallerypath.'/thumbs',NGGFOLDER_PERMISSION) or die ('<font color="red">'.__('Unable to create directory ', 'nggallery').$gallerypath.'/thumbs !</font>');
|
270 |
}
|
271 |
|
272 |
// take folder name as gallery name
|
314 |
if (is_array($pictures)) {
|
315 |
foreach($pictures as $picture) {
|
316 |
|
317 |
+
if (!is_writable($gallery_absfolder."/".$picture)) {
|
318 |
+
$messagetext .= $gallery_absfolder."/".$picture."<br />";
|
319 |
+
continue;
|
320 |
+
}
|
321 |
+
|
322 |
+
$thumb = new ngg_Thumbnail($gallery_absfolder."/".$picture, TRUE);
|
323 |
+
// echo $thumb->errmsg;
|
324 |
+
// skip if file is not there
|
325 |
+
if (!$thumb->error) {
|
326 |
+
$thumb->resize($ngg_options[imgWidth],$ngg_options[imgHeight],$ngg_options[imgResampleMode]);
|
327 |
+
$thumb->save($gallery_absfolder."/".$picture,$ngg_options[imgQuality]);
|
328 |
+
}
|
329 |
+
$thumb->destruct();
|
330 |
}
|
331 |
}
|
332 |
|
333 |
+
if(!empty($messagetext)) echo '<div id="message-error" class="error fade"><p><strong>'.__('Some pictures are not writeable :','nggallery').'</strong><br /><ul>'.$messagetext.'</ul></p></div>';
|
334 |
+
|
335 |
return;
|
336 |
}
|
337 |
|
344 |
if (is_array($pictures)) {
|
345 |
foreach($pictures as $picture) {
|
346 |
|
347 |
+
if (!is_writable($gallery_absfolder."/".$picture)) {
|
348 |
+
$messagetext .= $gallery_absfolder."/".$picture."<br />";
|
349 |
+
continue;
|
350 |
+
}
|
351 |
+
|
352 |
$thumb = new ngg_Thumbnail($gallery_absfolder."/".$picture, TRUE);
|
353 |
// echo $thumb->errmsg;
|
354 |
// skip if file is not there
|
368 |
}
|
369 |
}
|
370 |
|
371 |
+
if(!empty($messagetext)) echo '<div id="message-error" class="error fade"><p><strong>'.__('Some pictures are not writeable :','nggallery').'</strong><br /><ul>'.$messagetext.'</ul></p></div>';
|
372 |
+
|
373 |
return;
|
374 |
}
|
375 |
|
385 |
if (is_array($pictures)) {
|
386 |
foreach($pictures as $picture) {
|
387 |
|
388 |
+
// check for existing thumbnail
|
389 |
+
if (file_exists($gallery_absfolder.$thumbfolder.$prefix.$picture)) {
|
390 |
+
if (!is_writable($gallery_absfolder.$thumbfolder.$prefix.$picture)) {
|
391 |
+
$messagetext .= $gallery_absfolder."/".$picture."<br />";
|
392 |
+
continue;
|
393 |
+
}
|
394 |
+
}
|
395 |
+
|
396 |
$thumb = new ngg_Thumbnail($gallery_absfolder."/".utf8_decode($picture), TRUE);
|
397 |
+
|
|
|
398 |
// skip if file is not there
|
399 |
if (!$thumb->error) {
|
400 |
if ($ngg_options[thumbresizebefore]) {
|
402 |
$thumb->cropFromCenter($ngg_options[thumbwidth],$ngg_options[thumbResampleMode]);
|
403 |
} else {
|
404 |
if ($ngg_options[thumbcrop]) $thumb->cropFromCenter($ngg_options[thumbwidth],$ngg_options[thumbResampleMode]);
|
405 |
+
else {
|
406 |
+
// check for portrait format
|
407 |
+
if ($thumb->currentDimensions['height'] > $thumb->currentDimensions['width']) {
|
408 |
+
if ($ngg_options[thumbfix]) {
|
409 |
+
$thumb->resize($ngg_options[thumbwidth],0 ,$ngg_options[thumbResampleMode]);
|
410 |
+
// get optimal startpos
|
411 |
+
$ypos = intval(($thumb->currentDimensions['height'] - $ngg_options[thumbheight]) / 2);
|
412 |
+
$thumb->crop(0, $ypos, $ngg_options[thumbwidth],$ngg_options[thumbheight],$ngg_options[thumbResampleMode]);
|
413 |
+
}
|
414 |
+
} else {
|
415 |
+
$thumb->resize($ngg_options[thumbwidth],$ngg_options[thumbheight],$ngg_options[thumbResampleMode]);
|
416 |
+
}
|
417 |
+
}
|
418 |
}
|
419 |
$thumb->save($gallery_absfolder.$thumbfolder.$prefix.$picture,$ngg_options[thumbquality]);
|
420 |
}
|
421 |
$thumb->destruct();
|
422 |
}
|
423 |
}
|
424 |
+
|
425 |
+
if(!empty($messagetext)) echo '<div id="message-error" class="error fade"><p><strong>'.__('Some thumbnails are not writeable :','nggallery').'</strong><br /><ul>'.$messagetext.'</ul></p></div>';
|
426 |
|
427 |
return;
|
428 |
}
|
434 |
require_once(NGGALLERY_ABSPATH.'/lib/pclzip.lib.php');
|
435 |
|
436 |
$archive = new PclZip($file);
|
437 |
+
|
438 |
+
//TODO: Check PCLZIP_OPT_REMOVE_ALL_PATH to remove path
|
439 |
if ($archive->extract(PCLZIP_OPT_PATH, $dir) == 0) {
|
440 |
die("Error : ".$archive->errorInfo(true));
|
441 |
}
|
461 |
|
462 |
if (!is_dir($newfolder)) {
|
463 |
// create new directories
|
464 |
+
if (!@mkdir ($newfolder, NGGFOLDER_PERMISSION)) return ('<font color="red">'.__('Unable to create directory ', 'nggallery').$newfolder.'!</font>');
|
465 |
+
if (!@chmod ($newfolder, NGGFOLDER_PERMISSION)) return ('<font color="red">'.__('Unable to set directory permissions ', 'nggallery').$newfolder.'!</font>');
|
466 |
+
if (!@mkdir ($newfolder.'/thumbs', NGGFOLDER_PERMISSION)) return ('<font color="red">'.__('Unable to create directory ', 'nggallery').$newfolder.'/thumbs !</font>');
|
467 |
+
if (!@chmod ($newfolder.'/thumbs', NGGFOLDER_PERMISSION)) return ('<font color="red">'.__('Unable to set directory permissions ', 'nggallery').$newfolder.'/thumbs !</font>');
|
468 |
}
|
469 |
else {
|
470 |
return '<font color="red">'.__('Directory already exists, please rename zip file', 'nggallery').'!</font>';
|
485 |
// **************************************************************
|
486 |
function ngg_upload_images($defaultpath) {
|
487 |
// upload of pictures
|
|
|
488 |
|
489 |
global $wpdb;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
490 |
|
|
|
|
|
|
|
|
|
491 |
// Images must be an array
|
492 |
$imageslist = array();
|
|
|
493 |
|
494 |
+
foreach ($_FILES as $key => $value) {
|
495 |
+
|
496 |
+
// look only for uploded files
|
497 |
+
if ($_FILES[$key]['error'] == 0) {
|
498 |
+
|
499 |
+
$temp_file = $_FILES[$key]['tmp_name'];
|
500 |
+
$filename = $_FILES[$key]['name'];
|
501 |
+
|
502 |
+
$dest_gallery = $_POST['galleryselect'];
|
503 |
+
if ($dest_gallery == 0) {
|
504 |
+
@unlink($temp_file) or die ('<div class="updated"><p><strong>'.__('Unable to unlink file ', 'nggallery').$temp_zipfile.'!</strong></p></div>');
|
505 |
+
return '<font color="red">'.__('No gallery selected !','nggallery').'</font>';
|
506 |
+
}
|
507 |
+
|
508 |
+
// get the path to the gallery
|
509 |
+
$gallerypath = $wpdb->get_var("SELECT path FROM $wpdb->nggallery WHERE gid = '$dest_gallery' ");
|
510 |
+
if (!$gallerypath){
|
511 |
+
@unlink($temp_file) or die ('<div class="updated"><p><strong>'.__('Unable to unlink file ', 'nggallery').$temp_zipfile.'!</strong></p></div>');
|
512 |
+
return '<font color="red">'.__('Failure in database, no gallery path set !','nggallery').'</font>';
|
513 |
+
}
|
514 |
+
|
515 |
+
$dest_file = WINABSPATH.$gallerypath."/".$filename;
|
516 |
+
|
517 |
+
// save temp file to gallery
|
518 |
+
if (!@move_uploaded_file($_FILES[$key]['tmp_name'], $dest_file)) return '<font color="red">'.__('Error, the file could not moved to : ','nggallery').$dest_file.'</font>';
|
519 |
+
if (!@chmod ($dest_file, NGGFILE_PERMISSION)) return '<font color="red">'.__('Error, the file permissions could not set','nggallery').'</font>';
|
520 |
+
|
521 |
+
// add to imagelist
|
522 |
+
$imageslist[] = $filename;
|
523 |
+
|
524 |
+
}
|
525 |
+
}
|
526 |
+
|
527 |
//create thumbnails
|
528 |
ngg_generatethumbnail(WINABSPATH.$gallerypath,$imageslist);
|
529 |
|
530 |
// add images to database
|
531 |
+
$count_pic = 0;
|
532 |
if (is_array($imageslist)) {
|
533 |
foreach($imageslist as $picture) {
|
534 |
$result = $wpdb->query("INSERT INTO $wpdb->nggpictures (galleryid, filename, alttext, exclude) VALUES ('$dest_gallery', '$picture', '$picture', 0) ");
|
536 |
}
|
537 |
}
|
538 |
|
539 |
+
return '<font color="green">'.$count_pic.__(' Images successfully added','nggallery').'</font>';
|
540 |
|
541 |
} // end function
|
542 |
|
admin/admin.php
CHANGED
@@ -1,10 +1,39 @@
|
|
1 |
<?php
|
2 |
// ************************************
|
3 |
// ** Admin Section for NextGEN Gallery
|
4 |
-
// ** for V 0.
|
5 |
// ** by Alex Rabe
|
6 |
// ************************************
|
7 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
8 |
// add to menu
|
9 |
add_action('admin_menu', 'add_nextgen_gallery_menu');
|
10 |
|
1 |
<?php
|
2 |
// ************************************
|
3 |
// ** Admin Section for NextGEN Gallery
|
4 |
+
// ** for V 0.50
|
5 |
// ** by Alex Rabe
|
6 |
// ************************************
|
7 |
|
8 |
+
// add to header in admin area
|
9 |
+
add_action('admin_head', 'ngg_nocache');
|
10 |
+
function ngg_nocache() {
|
11 |
+
echo "\n".'<meta name="NextGEN" content="'.NGGVERSION.'" />';
|
12 |
+
echo "\n".'<meta http-equiv="pragma" content="no-cache" />'."\n";
|
13 |
+
}
|
14 |
+
|
15 |
+
// load script files
|
16 |
+
add_action('init', 'ngg_add_admin_js',1);
|
17 |
+
function ngg_add_admin_js() {
|
18 |
+
if ($wp_version < "2.2") {
|
19 |
+
wp_register_script('jquery', NGGALLERY_URLPATH .'admin/js/jquery.js', FALSE, '1.1.2');
|
20 |
+
}
|
21 |
+
switch ($_GET['page']) {
|
22 |
+
case "nggallery-manage-gallery" :
|
23 |
+
wp_enqueue_script('interface', NGGALLERY_URLPATH .'admin/js/interface.js', array('jquery'), '1.2');
|
24 |
+
wp_enqueue_script('thickbox', NGGALLERY_URLPATH .'thickbox/thickbox-pack.js', array('jquery'), '3.0.1');
|
25 |
+
break;
|
26 |
+
case "nggallery-manage-album" :
|
27 |
+
case "nggallery-options" :
|
28 |
+
wp_enqueue_script('interface', NGGALLERY_URLPATH .'admin/js/interface.js', array('jquery'), '1.2');
|
29 |
+
break;
|
30 |
+
case "nggallery-add-gallery" :
|
31 |
+
wp_enqueue_script('interface', NGGALLERY_URLPATH .'admin/js/interface.js', array('jquery'), '1.2');
|
32 |
+
wp_enqueue_script('mutlifile', NGGALLERY_URLPATH .'admin/js/jquery.MultiFile.js', array('jquery'), '1.1.1');
|
33 |
+
break;
|
34 |
+
}
|
35 |
+
}
|
36 |
+
|
37 |
// add to menu
|
38 |
add_action('admin_menu', 'add_nextgen_gallery_menu');
|
39 |
|
admin/album.php
CHANGED
@@ -16,7 +16,7 @@ function nggallery_admin_manage_album() {
|
|
16 |
|
17 |
if ($_POST['act_album'] > 0){
|
18 |
$albumid = $_POST['act_album'];
|
19 |
-
|
20 |
// get variable galleryContainer
|
21 |
parse_str($_POST['sortorder']);
|
22 |
if (is_array($galleryContainer)){
|
@@ -44,22 +44,20 @@ function nggallery_admin_manage_album() {
|
|
44 |
if(!empty($messagetext)) { echo '<!-- Last Action --><div id="message" class="updated fade"><p>'.$messagetext.'</p></div>'; }
|
45 |
|
46 |
?>
|
47 |
-
<script type="text/javascript" src="<?php echo NGGALLERY_URLPATH ?>admin/js/jquery.js"></script>
|
48 |
-
<script type="text/javascript" src="<?php echo NGGALLERY_URLPATH ?>admin/js/interface.js"></script>
|
49 |
<style type="text/css" media="all">@import "<?php echo NGGALLERY_URLPATH ?>css/nggallery.css";</style>
|
50 |
<style type="text/css" media="all">@import "<?php echo NGGALLERY_URLPATH ?>admin/js/portlets.css";</style>
|
51 |
<script type="text/javascript">
|
52 |
|
53 |
-
|
54 |
function()
|
55 |
{
|
56 |
//updating the height of the white backround box, it does not work without this stupid lines
|
57 |
//problem: absolute positioning of the minimizing links in item_top does not work :(
|
58 |
//position: absolute; right:5px; top:0px; border-bottom: 2px solid #003333; css lines of .groupItem .item_top a
|
59 |
-
var hei =
|
60 |
-
|
61 |
|
62 |
-
|
63 |
{
|
64 |
accept: 'groupItem',
|
65 |
helperclass: 'sort_placeholder',
|
@@ -67,33 +65,33 @@ $(document).ready(
|
|
67 |
tolerance: 'intersect'
|
68 |
}
|
69 |
)
|
70 |
-
|
71 |
-
|
72 |
}
|
73 |
);
|
74 |
|
75 |
var toggleContent = function(e)
|
76 |
{
|
77 |
-
var targetContent =
|
78 |
if (targetContent.css('display') == 'none') {
|
79 |
targetContent.slideDown(300);
|
80 |
-
|
81 |
} else {
|
82 |
targetContent.slideUp(300);
|
83 |
-
|
84 |
}
|
85 |
return false;
|
86 |
}
|
87 |
|
88 |
-
function
|
89 |
{
|
90 |
-
serial =
|
91 |
-
|
92 |
}
|
93 |
</script>
|
94 |
<div class="wrap" id="wrap" >
|
95 |
<h3><?php _e('Manage Albums', 'nggallery') ?></h3>
|
96 |
-
<form id="selectalbum" method="POST" onsubmit="
|
97 |
<input name="sortorder" type="hidden" />
|
98 |
<table width="100%" border="0" cellspacing="3" cellpadding="3" >
|
99 |
<tr>
|
16 |
|
17 |
if ($_POST['act_album'] > 0){
|
18 |
$albumid = $_POST['act_album'];
|
19 |
+
echo $_POST['sortorder'];
|
20 |
// get variable galleryContainer
|
21 |
parse_str($_POST['sortorder']);
|
22 |
if (is_array($galleryContainer)){
|
44 |
if(!empty($messagetext)) { echo '<!-- Last Action --><div id="message" class="updated fade"><p>'.$messagetext.'</p></div>'; }
|
45 |
|
46 |
?>
|
|
|
|
|
47 |
<style type="text/css" media="all">@import "<?php echo NGGALLERY_URLPATH ?>css/nggallery.css";</style>
|
48 |
<style type="text/css" media="all">@import "<?php echo NGGALLERY_URLPATH ?>admin/js/portlets.css";</style>
|
49 |
<script type="text/javascript">
|
50 |
|
51 |
+
jQuery(document).ready(
|
52 |
function()
|
53 |
{
|
54 |
//updating the height of the white backround box, it does not work without this stupid lines
|
55 |
//problem: absolute positioning of the minimizing links in item_top does not work :(
|
56 |
//position: absolute; right:5px; top:0px; border-bottom: 2px solid #003333; css lines of .groupItem .item_top a
|
57 |
+
var hei = jQuery('.wrap').height();
|
58 |
+
jQuery('.wrap').height(hei);
|
59 |
|
60 |
+
jQuery('div.groupWrapper').Sortable(
|
61 |
{
|
62 |
accept: 'groupItem',
|
63 |
helperclass: 'sort_placeholder',
|
65 |
tolerance: 'intersect'
|
66 |
}
|
67 |
)
|
68 |
+
jQuery('a.min').bind('click', toggleContent);
|
69 |
+
jQuery('.textarea1').Autoexpand([230,400]);
|
70 |
}
|
71 |
);
|
72 |
|
73 |
var toggleContent = function(e)
|
74 |
{
|
75 |
+
var targetContent = jQuery('div.itemContent', this.parentNode.parentNode);
|
76 |
if (targetContent.css('display') == 'none') {
|
77 |
targetContent.slideDown(300);
|
78 |
+
jQuery(this).html('[-]');
|
79 |
} else {
|
80 |
targetContent.slideUp(300);
|
81 |
+
jQuery(this).html('[+]');
|
82 |
}
|
83 |
return false;
|
84 |
}
|
85 |
|
86 |
+
function ngg_serialize(s)
|
87 |
{
|
88 |
+
serial = jQuery.SortSerialize(s);
|
89 |
+
jQuery('input[@name=sortorder]').val(serial.hash);
|
90 |
}
|
91 |
</script>
|
92 |
<div class="wrap" id="wrap" >
|
93 |
<h3><?php _e('Manage Albums', 'nggallery') ?></h3>
|
94 |
+
<form id="selectalbum" method="POST" onsubmit="ngg_serialize('galleryContainer')">
|
95 |
<input name="sortorder" type="hidden" />
|
96 |
<table width="100%" border="0" cellspacing="3" cellpadding="3" >
|
97 |
<tr>
|
admin/js/jquery.MultiFile.js
ADDED
@@ -0,0 +1,247 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
### jQuery Multiple File Upload Plugin ###
|
3 |
+
By Diego A., http://www.fyneworks.com, diego@fyneworks.com
|
4 |
+
|
5 |
+
Website:
|
6 |
+
http://www.fyneworks.com/jquery/multiple-file-upload/
|
7 |
+
Project Page:
|
8 |
+
http://jquery.com/plugins/project/MultiFile/
|
9 |
+
Forums:
|
10 |
+
http://www.nabble.com/jQuery-Multiple-File-Upload-f20931.html
|
11 |
+
Blog:
|
12 |
+
http://fyneworks.blogspot.com/2007/04/multiple-file-upload-plugin-for-jquery.html
|
13 |
+
|
14 |
+
12-April-2007: v1.1
|
15 |
+
Added events and file extension validation
|
16 |
+
See website for details.
|
17 |
+
*/
|
18 |
+
|
19 |
+
/*# AVOID COLLISIONS #*/
|
20 |
+
(function($){
|
21 |
+
/*# AVOID COLLISIONS #*/
|
22 |
+
|
23 |
+
/*
|
24 |
+
### Default implementation ###
|
25 |
+
The plugin will attach itself to file inputs
|
26 |
+
with the class 'multi' when the page loads
|
27 |
+
*/
|
28 |
+
$(function(){
|
29 |
+
$.MultiFile();
|
30 |
+
});
|
31 |
+
|
32 |
+
|
33 |
+
// extend jQuery - $.MultiFile hook
|
34 |
+
$.extend($, {
|
35 |
+
MultiFile: function( o /* Object */ ){
|
36 |
+
return $("INPUT[@type='file'].multi").MultiFile(o);
|
37 |
+
}
|
38 |
+
});
|
39 |
+
|
40 |
+
// extend jQuery function library
|
41 |
+
$.extend($.fn, {
|
42 |
+
|
43 |
+
// MultiFile function
|
44 |
+
MultiFile: function( o /* Object */ ){
|
45 |
+
if(this._MultiFile){ return $(this); }
|
46 |
+
this._MultiFile = true;
|
47 |
+
|
48 |
+
// Bind to each element in current jQuery object
|
49 |
+
return $(this).each(function(i){
|
50 |
+
// Remember our ancestors...
|
51 |
+
var d = this;
|
52 |
+
|
53 |
+
//#########################################
|
54 |
+
// Find basic configuration in class string
|
55 |
+
// debug???
|
56 |
+
d.debug = (d.className.indexOf('debug')>0);
|
57 |
+
// limit number of files that can be selected?
|
58 |
+
d.max = (d.className.match(/\b((max|limit)\-[0-9]+)\b/gi));
|
59 |
+
if(d.max){
|
60 |
+
d.max = new Number((d.max+'').match(/[0-9]+/)[0]);
|
61 |
+
}else{
|
62 |
+
d.max = -1;
|
63 |
+
}
|
64 |
+
// limit extensions?
|
65 |
+
d.accept = (d.className.match(/\b(accept\-[\w\|]+)\b/gi)) || '';
|
66 |
+
d.accept = new String((d.accept+'')).replace(/^(accept|ext)\-/i,'');
|
67 |
+
//#########################################
|
68 |
+
|
69 |
+
|
70 |
+
// Attach a bunch of events, jQuery style ;-)
|
71 |
+
$.each("on,after".split(","), function(i,o){
|
72 |
+
$.each("FileSelect,FileRemove,FileAppend".split(","), function(j,event){
|
73 |
+
d[o+event] = function(e, v, m){ // default functions do absolutelly nothing...
|
74 |
+
// if(d.debug) alert(''+o+event+'' +'\nElement:' +e.name+ '\nValue: ' +v+ '\nMaster: ' +m.name+ '');
|
75 |
+
};
|
76 |
+
});
|
77 |
+
});
|
78 |
+
// Setup a global event handler
|
79 |
+
d.trigger = function(event, e){
|
80 |
+
var f = d[event];
|
81 |
+
if(f){
|
82 |
+
var v = $(this).attr('value');
|
83 |
+
var r = f(e, v, d);
|
84 |
+
if(r!=null) return r;
|
85 |
+
}
|
86 |
+
return true;
|
87 |
+
};
|
88 |
+
|
89 |
+
|
90 |
+
// Initialize options
|
91 |
+
if( typeof(o)=='number' ){ o = {max:o}; };
|
92 |
+
$.extend(d, d.data || {}, o);
|
93 |
+
|
94 |
+
// Default properties - INTERNAL USE ONLY
|
95 |
+
$.extend(d, {
|
96 |
+
STRING: d.STRING || {}, // used to hold string constants
|
97 |
+
n: 0, // How many elements are currently selected?
|
98 |
+
k: 'MF_', // Instance Key?
|
99 |
+
f: function(z){ return d.k+'_F_'+String(i)+'_'+String(z); }
|
100 |
+
});
|
101 |
+
|
102 |
+
// Visible text strings...
|
103 |
+
// $file = file name (with path), $ext = file extension
|
104 |
+
d.STRING = $.extend({
|
105 |
+
remove:'remove',
|
106 |
+
denied:'You cannot select a $ext file.\nTry again...',
|
107 |
+
selected:'File selected: $file'
|
108 |
+
}, d.STRING);
|
109 |
+
|
110 |
+
|
111 |
+
// Setup dynamic regular expression for extension validation
|
112 |
+
// - thanks to John-Paul Bader: http://smyck.de/2006/08/11/javascript-dynamic-regular-expresions/
|
113 |
+
if(String(d.accept).length>1){
|
114 |
+
d.rxAccept = new RegExp('\\.('+(d.accept?d.accept:'')+')$','gi');
|
115 |
+
};
|
116 |
+
|
117 |
+
// Create wrapper to hold our file list
|
118 |
+
d.w = d.k+'_MF_'+i; // Wrapper ID?
|
119 |
+
var x = $(d);
|
120 |
+
x.wrap('<div id="'+d.w+'"></div>');
|
121 |
+
|
122 |
+
// Bind a new element
|
123 |
+
d.add = function( e, ii ){
|
124 |
+
|
125 |
+
// Keep track of how many elements have been displayed
|
126 |
+
d.n++;
|
127 |
+
|
128 |
+
// Add reference to master element
|
129 |
+
e.d = d;
|
130 |
+
|
131 |
+
// Define element's ID and name (upload components need this!)
|
132 |
+
e.i = ii;//d.I;
|
133 |
+
e.id = d.f(e.i);
|
134 |
+
e.name = e.id;
|
135 |
+
|
136 |
+
// If we've reached maximum number, disable input e
|
137 |
+
if( d.max != -1 && d.n > (d.max+1) ){ // d.n Starts at 1, so add 1 to d.max.
|
138 |
+
e.disabled = true;
|
139 |
+
};
|
140 |
+
|
141 |
+
// Remember most recent e
|
142 |
+
d.current = e;
|
143 |
+
|
144 |
+
/// now let's use jQuery
|
145 |
+
e = $(e);
|
146 |
+
|
147 |
+
// Triggered when a file is selected
|
148 |
+
e.change(function(){
|
149 |
+
|
150 |
+
//# Trigger Event! onFileSelect
|
151 |
+
if(!d.trigger('onFileSelect', this, d)) return false;
|
152 |
+
//# End Event!
|
153 |
+
|
154 |
+
// check extension
|
155 |
+
if(d.accept){
|
156 |
+
var v = String(e.attr('value'));
|
157 |
+
if(!v.match(d.rxAccept)){
|
158 |
+
e.attr('value', '');
|
159 |
+
e.get(0).value = '';
|
160 |
+
alert(d.STRING.denied.replace('$ext', String(v.match(/\.\w{1,4}$/gi))));
|
161 |
+
return false;
|
162 |
+
}
|
163 |
+
};
|
164 |
+
|
165 |
+
// Hide this element: display:none is evil!
|
166 |
+
//this.style.display = 'block';
|
167 |
+
this.style.position = 'absolute';
|
168 |
+
this.style.left = '-1000px';
|
169 |
+
|
170 |
+
// Create a new file input element
|
171 |
+
var f = $('<input type="file" size="35"/>');
|
172 |
+
|
173 |
+
// Add it to the form
|
174 |
+
$(this).parent().prepend(f);
|
175 |
+
|
176 |
+
// Update list
|
177 |
+
d.list( this );
|
178 |
+
|
179 |
+
// Bind functionality
|
180 |
+
d.add( f.get(0), this.i+1 );
|
181 |
+
|
182 |
+
//# Trigger Event! afterFileSelect
|
183 |
+
if(!d.trigger('afterFileSelect', this, d)) return false;
|
184 |
+
//# End Event!
|
185 |
+
|
186 |
+
});
|
187 |
+
|
188 |
+
};
|
189 |
+
// Bind a new element
|
190 |
+
|
191 |
+
// Add a new file to the list
|
192 |
+
d.list = function( y ){
|
193 |
+
|
194 |
+
//# Trigger Event! onFileAppend
|
195 |
+
if(!d.trigger('onFileAppend', y, d)) return false;
|
196 |
+
//# End Event!
|
197 |
+
|
198 |
+
// Insert HTML
|
199 |
+
var
|
200 |
+
t = $('#'+d.w),
|
201 |
+
r = $('<div></div>'),
|
202 |
+
v = $(y).attr('value')+'',
|
203 |
+
a = $('<span class="file" title="'+d.STRING.selected.replace('$file', v)+'">'+v.match(/[^\/\\]+$/gi)[0]+'</span>'),
|
204 |
+
b = $('<a href="#'+d.w+'">'+d.STRING.remove+'</a>');
|
205 |
+
t.append(r);
|
206 |
+
r.append('[',b,'] ',a);//.prepend(y.i+': ');
|
207 |
+
b.click(function(){
|
208 |
+
|
209 |
+
//# Trigger Event! onFileRemove
|
210 |
+
if(!d.trigger('onFileRemove', y, d)) return false;
|
211 |
+
//# End Event!
|
212 |
+
|
213 |
+
d.n--;
|
214 |
+
d.current.disabled = false;
|
215 |
+
$('#'+d.f(y.i)).remove();
|
216 |
+
$(this).parent().remove();
|
217 |
+
|
218 |
+
//# Trigger Event! afterFileRemove
|
219 |
+
if(!d.trigger('afterFileRemove', y, d)) return false;
|
220 |
+
//# End Event!
|
221 |
+
|
222 |
+
return false;
|
223 |
+
});
|
224 |
+
|
225 |
+
//# Trigger Event! afterFileAppend
|
226 |
+
if(!d.trigger('afterFileAppend', y, d)) return false;
|
227 |
+
//# End Event!
|
228 |
+
|
229 |
+
};
|
230 |
+
|
231 |
+
// Bind first file element
|
232 |
+
if(!d.ft){ d.add(d, 0); d.ft = true; }
|
233 |
+
d.I++;
|
234 |
+
d.n++;
|
235 |
+
|
236 |
+
});
|
237 |
+
// each element
|
238 |
+
|
239 |
+
}
|
240 |
+
// MultiFile function
|
241 |
+
|
242 |
+
});
|
243 |
+
// extend jQuery function library
|
244 |
+
|
245 |
+
/*# AVOID COLLISIONS #*/
|
246 |
+
})(jQuery);
|
247 |
+
/*# AVOID COLLISIONS #*/
|
admin/js/jquery.MultiFile.pack.js
ADDED
@@ -0,0 +1 @@
|
|
|
1 |
+
eval(function(p,a,c,k,e,r){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--)r[e(c)]=k[c]||e(c);k=[function(e){return r[e]}];e=function(){return'\\w+'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p}('(3($){$(3(){$.E()});$.B($,{E:3(o){6 $("1b[@12=\'s\'].1A").E(o)}});$.B($.1s,{E:3(o){2(5.10){6 $(5)}5.10=C;6 $(5).P(3(i){g d=5;d.Y=(d.J.1r(\'Y\')>0);d.c=(d.J.q(/\\b((c|1e)\\-[0-9]+)\\b/u));2(d.c){d.c=H 15((d.c+\'\').q(/[0-9]+/)[0])}1R{d.c=-1}d.7=(d.J.q(/\\b(7\\-[\\w\\|]+)\\b/u))||\'\';d.7=H p((d.7+\'\')).N(/^(7|M)\\-/i,\'\');$.P("1C,1z".X(","),3(i,o){$.P("1x,1v,1q".X(","),3(j,a){d[o+a]=3(e,v,m){}})});d.h=3(a,e){g f=d[a];2(f){g v=$(5).D(\'G\');g r=f(e,v,d);2(r!=1c)6 r}6 C};2(1a(o)==\'17\'){o={c:o}};$.B(d,d.16||{},o);$.B(d,{l:d.l||{},n:0,k:\'14\',f:3(z){6 d.k+\'1Q\'+p(i)+\'1P\'+p(z)}});d.l=$.B({A:\'A\',11:\'1M 1L 1J a $M s.\\1H 1G...\',O:\'1F O: $s\'},d.l);2(p(d.7).1E>1){d.Z=H 1D(\'\\\\.(\'+(d.7?d.7:\'\')+\')$\',\'u\')};d.w=d.k+\'1B\'+i;g x=$(d);x.1y(\'<F L="\'+d.w+\'"></F>\');d.K=3(e,a){d.n++;e.d=d;e.i=a;e.L=d.f(e.i);e.1w=e.L;2(d.c!=-1&&d.n>(d.c+1)){e.W=C};d.V=e;e=$(e);e.1t(3(){2(!d.h(\'1p\',5,d))6 8;2(d.7){g v=p(e.D(\'G\'));2(!v.q(d.Z)){e.D(\'G\',\'\');1o(d.l.11.N(\'$M\',p(v.q(/\\.\\w{1,4}$/u))));6 8}};5.U.1n=\'1m\';5.U.1u=\'-1l\';g f=$(\'<1k 12="s"/>\');$(5).T().1j(f);d.S(5);d.K(f.1i(0),5.i+1);2(!d.h(\'1h\',5,d))6 8})};d.S=3(y){2(!d.h(\'1g\',y,d))6 8;g t=$(\'#\'+d.w),r=$(\'<F></F>\'),v=$(y).D(\'G\')+\'\',a=$(\'<R 1f="s" 1d="\'+d.l.O.N(\'$s\',v)+\'">\'+v.q(/[^\\/\\\\]+$/u)[0]+\'</R>\'),b=$(\'<a 1I="#\'+d.w+\'">\'+d.l.A+\'</a>\');t.13(r);r.13(\'[\',b,\']&1K;\',a);b.19(3(){2(!d.h(\'18\',y,d))6 8;d.n--;d.V.W=8;$(\'#\'+d.f(y.i)).A();$(5).T().A();2(!d.h(\'1N\',y,d))6 8;6 8});2(!d.h(\'1O\',y,d))6 8};2(!d.Q){d.K(d,0);d.Q=C}d.I++;d.n++})}})})(1S);',62,117,'||if|function||this|return|accept|false||||max||||var|trigger||||STRING||||String|match||file||gi||||||remove|extend|true|attr|MultiFile|div|value|new||className|add|id|ext|replace|selected|each|ft|span|list|parent|style|current|disabled|split|debug|rxAccept|_MultiFile|denied|type|append|MF_|Number|data|number|onFileRemove|click|typeof|INPUT|null|title|limit|class|onFileAppend|afterFileSelect|get|prepend|input|1000px|absolute|position|alert|onFileSelect|FileAppend|indexOf|fn|change|left|FileRemove|name|FileSelect|wrap|after|multi|_MF_|on|RegExp|length|File|again|nTry|href|select|nbsp|cannot|You|afterFileRemove|afterFileAppend|_|_F_|else|jQuery'.split('|'),0,{}));
|
admin/js/jquery.js
CHANGED
@@ -1 +1 @@
|
|
1 |
-
eval(function(p,a,c,k,e,d){e=function(c){return(c<a?"":e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--){d[e(c)]=k[c]||e(c)}k=[function(e){return d[e]}];e=function(){return'\\w+'};c=1};while(c--){if(k[c]){p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c])}}return p}('7(1C 1w.6=="T"){1w.T=1w.T;B 6=u(a,c){7(1w==q)v 1p 6(a,c);a=a||17;7(6.1t(a))v 1p 6(17)[6.E.27?"27":"2O"](a);7(1C a=="23"){B m=/^[^<]*(<(.|\\s)+>)[^>]*$/.2Q(a);7(m)a=6.3k([m[1]]);J v 1p 6(c).2o(a)}v q.6r(a.1l==2y&&a||(a.3Y||a.I&&a!=1w&&!a.24&&a[0]!=T&&a[0].24)&&6.3M(a)||[a])};7(1C $!="T")6.2S$=$;B $=6;6.E=6.8p={3Y:"1.1.2",8q:u(){v q.I},I:0,2b:u(1T){v 1T==T?6.3M(q):q[1T]},2r:u(a){B L=6(a);L.6p=q;v L},6r:u(a){q.I=0;[].1g.14(q,a);v q},K:u(E,1E){v 6.K(q,E,1E)},2h:u(1c){B 4c=-1;q.K(u(i){7(q==1c)4c=i});v 4c},1I:u(1Y,O,C){B 1c=1Y;7(1Y.1l==3t)7(O==T)v q.I&&6[C||"1I"](q[0],1Y)||T;J{1c={};1c[1Y]=O}v q.K(u(2h){P(B H 1x 1c)6.1I(C?q.1q:q,H,6.H(q,1c[H],C,2h,H))})},1m:u(1Y,O){v q.1I(1Y,O,"30")},2L:u(e){7(1C e=="23")v q.3u().3r(17.8t(e));B t="";6.K(e||q,u(){6.K(q.2I,u(){7(q.24!=8)t+=q.24!=1?q.60:6.E.2L([q])})});v t},2K:u(){B a=6.3k(1A);v q.K(u(){B b=a[0].3l(U);q.11.2X(b,q);22(b.1b)b=b.1b;b.4C(q)})},3r:u(){v q.3j(1A,U,1,u(a){q.4C(a)})},5i:u(){v q.3j(1A,U,-1,u(a){q.2X(a,q.1b)})},5j:u(){v q.3j(1A,12,1,u(a){q.11.2X(a,q)})},5t:u(){v q.3j(1A,12,-1,u(a){q.11.2X(a,q.2e)})},4g:u(){v q.6p||6([])},2o:u(t){v q.2r(6.31(q,u(a){v 6.2o(t,a)}),t)},4Y:u(4N){v q.2r(6.31(q,u(a){B a=a.3l(4N!=T?4N:U);a.$1H=16;v a}))},1D:u(t){v q.2r(6.1t(t)&&6.2q(q,u(2z,2h){v t.14(2z,[2h])})||6.3z(t,q))},2g:u(t){v q.2r(t.1l==3t&&6.3z(t,q,U)||6.2q(q,u(a){v(t.1l==2y||t.3Y)?6.3y(a,t)<0:a!=t}))},1M:u(t){v q.2r(6.2k(q.2b(),t.1l==3t?6(t).2b():t.I!=T&&(!t.1f||t.1f=="8v")?t:[t]))},4l:u(1s){v 1s?6.1D(1s,q).r.I>0:12},1a:u(1a){v 1a==T?(q.I?q[0].O:16):q.1I("O",1a)},4U:u(1a){v 1a==T?(q.I?q[0].2t:16):q.3u().3r(1a)},3j:u(1E,1P,3Z,E){B 4Y=q.I>1;B a=6.3k(1E);7(3Z<0)a.8w();v q.K(u(){B 1c=q;7(1P&&6.1f(q,"1P")&&6.1f(a[0],"3m"))1c=q.5J("20")[0]||q.4C(17.6n("20"));6.K(a,u(){E.14(1c,[4Y?q.3l(U):q])})})}};6.1z=6.E.1z=u(){B 1O=1A[0],a=1;7(1A.I==1){1O=q;a=0}B H;22(H=1A[a++])P(B i 1x H)1O[i]=H[i];v 1O};6.1z({8x:u(){7(6.2S$)$=6.2S$;v 6},1t:u(E){v!!E&&1C E!="23"&&!E.1f&&1C E[0]=="T"&&/u/i.1n(E+"")},4B:u(D){v D.66&&D.5I&&!D.5I.64},1f:u(D,Y){v D.1f&&D.1f.3K()==Y.3K()},K:u(1c,E,1E){7(1c.I==T)P(B i 1x 1c)E.14(1c[i],1E||[i,1c[i]]);J P(B i=0,6q=1c.I;i<6q;i++)7(E.14(1c[i],1E||[i,1c[i]])===12)3O;v 1c},H:u(D,O,C,2h,H){7(6.1t(O))O=O.3n(D,[2h]);B 6s=/z-?2h|7P-?8A|1d|58|8B-?28/i;v O&&O.1l==3Q&&C=="30"&&!6s.1n(H)?O+"4S":O},19:{1M:u(D,c){6.K(c.3o(/\\s+/),u(i,Q){7(!6.19.2V(D.19,Q))D.19+=(D.19?" ":"")+Q})},2f:u(D,c){D.19=c?6.2q(D.19.3o(/\\s+/),u(Q){v!6.19.2V(c,Q)}).6t(" "):""},2V:u(t,c){t=t.19||t;c=c.1R(/([\\.\\\\\\+\\*\\?\\[\\^\\]\\$\\(\\)\\{\\}\\=\\!\\<\\>\\|\\:])/g,"\\\\$1");v t&&1p 4v("(^|\\\\s)"+c+"(\\\\s|$)").1n(t)}},4d:u(e,o,f){P(B i 1x o){e.1q["1N"+i]=e.1q[i];e.1q[i]=o[i]}f.14(e,[]);P(B i 1x o)e.1q[i]=e.1q["1N"+i]},1m:u(e,p){7(p=="28"||p=="3V"){B 1N={},46,3P,d=["7d","8C","8D","8E"];6.K(d,u(){1N["8F"+q]=0;1N["8G"+q+"8H"]=0});6.4d(e,1N,u(){7(6.1m(e,"1h")!="1Z"){46=e.8I;3P=e.8J}J{e=6(e.3l(U)).2o(":4j").5l("2Z").4g().1m({4n:"1G",45:"8K",1h:"2D",7I:"0",8M:"0"}).5z(e.11)[0];B 3d=6.1m(e.11,"45");7(3d==""||3d=="4b")e.11.1q.45="6x";46=e.6y;3P=e.6z;7(3d==""||3d=="4b")e.11.1q.45="4b";e.11.33(e)}});v p=="28"?46:3P}v 6.30(e,p)},30:u(D,H,53){B L;7(H=="1d"&&6.W.1j)v 6.1I(D.1q,"1d");7(H=="4h"||H=="2v")H=6.W.1j?"3T":"2v";7(!53&&D.1q[H])L=D.1q[H];J 7(17.44&&17.44.4W){7(H=="2v"||H=="3T")H="4h";H=H.1R(/([A-Z])/g,"-$1").4m();B Q=17.44.4W(D,16);7(Q)L=Q.55(H);J 7(H=="1h")L="1Z";J 6.4d(D,{1h:"2D"},u(){B c=17.44.4W(q,"");L=c&&c.55(H)||""})}J 7(D.51){B 56=H.1R(/\\-(\\w)/g,u(m,c){v c.3K()});L=D.51[H]||D.51[56]}v L},3k:u(a){B r=[];6.K(a,u(i,1r){7(!1r)v;7(1r.1l==3Q)1r=1r.6C();7(1C 1r=="23"){B s=6.35(1r),1V=17.6n("1V"),2i=[];B 2K=!s.18("<1u")&&[1,"<42>","</42>"]||(!s.18("<6D")||!s.18("<20")||!s.18("<6E"))&&[1,"<1P>","</1P>"]||!s.18("<3m")&&[2,"<1P><20>","</20></1P>"]||(!s.18("<6F")||!s.18("<6G"))&&[3,"<1P><20><3m>","</3m></20></1P>"]||[0,"",""];1V.2t=2K[1]+s+2K[2];22(2K[0]--)1V=1V.1b;7(6.W.1j){7(!s.18("<1P")&&s.18("<20")<0)2i=1V.1b&&1V.1b.2I;J 7(2K[1]=="<1P>"&&s.18("<20")<0)2i=1V.2I;P(B n=2i.I-1;n>=0;--n)7(6.1f(2i[n],"20")&&!2i[n].2I.I)2i[n].11.33(2i[n])}1r=[];P(B i=0,l=1V.2I.I;i<l;i++)1r.1g(1V.2I[i])}7(1r.I===0&&!6.1f(1r,"3w"))v;7(1r[0]==T||6.1f(1r,"3w"))r.1g(1r);J r=6.2k(r,1r)});v r},1I:u(D,Y,O){B 2j=6.4B(D)?{}:{"P":"6J","6L":"19","4h":6.W.1j?"3T":"2v",2v:6.W.1j?"3T":"2v",2t:"2t",19:"19",O:"O",2W:"2W",2Z:"2Z",89:"6N",2Y:"2Y"};7(Y=="1d"&&6.W.1j&&O!=T){D.58=1;v D.1D=D.1D.1R(/4i\\([^\\)]*\\)/6O,"")+(O==1?"":"4i(1d="+O*6g+")")}J 7(Y=="1d"&&6.W.1j)v D.1D?4T(D.1D.6P(/4i\\(1d=(.*)\\)/)[1])/6g:1;7(Y=="1d"&&6.W.3h&&O==1)O=0.6R;7(2j[Y]){7(O!=T)D[2j[Y]]=O;v D[2j[Y]]}J 7(O==T&&6.W.1j&&6.1f(D,"3w")&&(Y=="81"||Y=="80"))v D.6T(Y).60;J 7(D.66){7(O!=T)D.6V(Y,O);7(6.W.1j&&/5E|3e/.1n(Y)&&!6.4B(D))v D.36(Y,2);v D.36(Y)}J{Y=Y.1R(/-([a-z])/6W,u(z,b){v b.3K()});7(O!=T)D[Y]=O;v D[Y]}},35:u(t){v t.1R(/^\\s+|\\s+$/g,"")},3M:u(a){B r=[];7(a.1l!=2y)P(B i=0,2R=a.I;i<2R;i++)r.1g(a[i]);J r=a.3N(0);v r},3y:u(b,a){P(B i=0,2R=a.I;i<2R;i++)7(a[i]==b)v i;v-1},2k:u(2u,3H){B r=[].3N.3n(2u,0);P(B i=0,5b=3H.I;i<5b;i++)7(6.3y(3H[i],r)==-1)2u.1g(3H[i]);v 2u},2q:u(1U,E,4k){7(1C E=="23")E=1p 4w("a","i","v "+E);B 1i=[];P(B i=0,2z=1U.I;i<2z;i++)7(!4k&&E(1U[i],i)||4k&&!E(1U[i],i))1i.1g(1U[i]);v 1i},31:u(1U,E){7(1C E=="23")E=1p 4w("a","v "+E);B 1i=[],r=[];P(B i=0,2z=1U.I;i<2z;i++){B 1a=E(1U[i],i);7(1a!==16&&1a!=T){7(1a.1l!=2y)1a=[1a];1i=1i.6Z(1a)}}B r=1i.I?[1i[0]]:[];5f:P(B i=1,5e=1i.I;i<5e;i++){P(B j=0;j<i;j++)7(1i[i]==r[j])5F 5f;r.1g(1i[i])}v r}});1p u(){B b=7L.71.4m();6.W={2N:/5D/.1n(b),3f:/3f/.1n(b),1j:/1j/.1n(b)&&!/3f/.1n(b),3h:/3h/.1n(b)&&!/(72|5D)/.1n(b)};6.7H=!6.W.1j||17.74=="75"};6.K({5u:"a.11",4z:"6.4z(a)",76:"6.2a(a,2,\'2e\')",7D:"6.2a(a,2,\'5s\')",78:"6.2B(a.11.1b,a)",79:"6.2B(a.1b)"},u(i,n){6.E[i]=u(a){B L=6.31(q,n);7(a&&1C a=="23")L=6.3z(a,L);v q.2r(L)}});6.K({5z:"3r",7b:"5i",2X:"5j",7e:"5t"},u(i,n){6.E[i]=u(){B a=1A;v q.K(u(){P(B j=0,2R=a.I;j<2R;j++)6(a[j])[n](q)})}});6.K({5l:u(1Y){6.1I(q,1Y,"");q.7g(1Y)},7h:u(c){6.19.1M(q,c)},7i:u(c){6.19.2f(q,c)},7k:u(c){6.19[6.19.2V(q,c)?"2f":"1M"](q,c)},2f:u(a){7(!a||6.1D(a,[q]).r.I)q.11.33(q)},3u:u(){22(q.1b)q.33(q.1b)}},u(i,n){6.E[i]=u(){v q.K(n,1A)}});6.K(["5q","5n","5p","5v"],u(i,n){6.E[n]=u(1T,E){v q.1D(":"+n+"("+1T+")",E)}});6.K(["28","3V"],u(i,n){6.E[n]=u(h){v h==T?(q.I?6.1m(q[0],n):16):q.1m(n,h.1l==3t?h:h+"4S")}});6.1z({1s:{"":"m[2]==\'*\'||6.1f(a,m[2])","#":"a.36(\'2J\')==m[2]",":":{5n:"i<m[3]-0",5p:"i>m[3]-0",2a:"m[3]-0==i",5q:"m[3]-0==i",2u:"i==0",2T:"i==r.I-1",5R:"i%2==0",5S:"i%2","2a-3s":"6.2a(a.11.1b,m[3],\'2e\',a)==a","2u-3s":"6.2a(a.11.1b,1,\'2e\')==a","2T-3s":"6.2a(a.11.7n,1,\'5s\')==a","7p-3s":"6.2B(a.11.1b).I==1",5u:"a.1b",3u:"!a.1b",5v:"6.E.2L.14([a]).18(m[3])>=0",3i:\'a.C!="1G"&&6.1m(a,"1h")!="1Z"&&6.1m(a,"4n")!="1G"\',1G:\'a.C=="1G"||6.1m(a,"1h")=="1Z"||6.1m(a,"4n")=="1G"\',7v:"!a.2W",2W:"a.2W",2Z:"a.2Z",2Y:"a.2Y||6.1I(a,\'2Y\')",2L:"a.C==\'2L\'",4j:"a.C==\'4j\'",5x:"a.C==\'5x\'",4G:"a.C==\'4G\'",5y:"a.C==\'5y\'",4R:"a.C==\'4R\'",5A:"a.C==\'5A\'",5B:"a.C==\'5B\'",3x:\'a.C=="3x"||6.1f(a,"3x")\',5C:"/5C|42|7A|3x/i.1n(a.1f)"},".":"6.19.2V(a,m[2])","@":{"=":"z==m[4]","!=":"z!=m[4]","^=":"z&&!z.18(m[4])","$=":"z&&z.2U(z.I - m[4].I,m[4].I)==m[4]","*=":"z&&z.18(m[4])>=0","":"z",4u:u(m){v["",m[1],m[3],m[2],m[5]]},5P:"z=a[m[3]];7(!z||/5E|3e/.1n(m[3]))z=6.1I(a,m[3]);"},"[":"6.2o(m[2],a).I"},5M:[/^\\[ *(@)([a-2m-3C-]*) *([!*$^=]*) *(\'?"?)(.*?)\\4 *\\]/i,/^(\\[)\\s*(.*?(\\[.*?\\])?[^[]*?)\\s*\\]/,/^(:)([a-2m-3C-]*)\\("?\'?(.*?(\\(.*?\\))?[^(]*?)"?\'?\\)/i,/^([:.#]*)([a-2m-3C*-]*)/i],1Q:[/^(\\/?\\.\\.)/,"a.11",/^(>|\\/)/,"6.2B(a.1b)",/^(\\+)/,"6.2a(a,2,\'2e\')",/^(~)/,u(a){B s=6.2B(a.11.1b);v s.3N(6.3y(a,s)+1)}],3z:u(1s,1U,2g){B 1N,Q=[];22(1s&&1s!=1N){1N=1s;B f=6.1D(1s,1U,2g);1s=f.t.1R(/^\\s*,\\s*/,"");Q=2g?1U=f.r:6.2k(Q,f.r)}v Q},2o:u(t,1B){7(1C t!="23")v[t];7(1B&&!1B.24)1B=16;1B=1B||17;7(!t.18("//")){1B=1B.4H;t=t.2U(2,t.I)}J 7(!t.18("/")){1B=1B.4H;t=t.2U(1,t.I);7(t.18("/")>=1)t=t.2U(t.18("/"),t.I)}B L=[1B],2c=[],2T=16;22(t&&2T!=t){B r=[];2T=t;t=6.35(t).1R(/^\\/\\//i,"");B 3B=12;B 1J=/^[\\/>]\\s*([a-2m-9*-]+)/i;B m=1J.2Q(t);7(m){6.K(L,u(){P(B c=q.1b;c;c=c.2e)7(c.24==1&&(6.1f(c,m[1])||m[1]=="*"))r.1g(c)});L=r;t=t.1R(1J,"");7(t.18(" ")==0)5F;3B=U}J{P(B i=0;i<6.1Q.I;i+=2){B 1J=6.1Q[i];B m=1J.2Q(t);7(m){r=L=6.31(L,6.1t(6.1Q[i+1])?6.1Q[i+1]:u(a){v 40(6.1Q[i+1])});t=6.35(t.1R(1J,""));3B=U;3O}}}7(t&&!3B){7(!t.18(",")){7(L[0]==1B)L.4L();6.2k(2c,L);r=L=[1B];t=" "+t.2U(1,t.I)}J{B 34=/^([a-2m-3C-]+)(#)([a-2m-9\\\\*2S-]*)/i;B m=34.2Q(t);7(m){m=[0,m[2],m[3],m[1]]}J{34=/^([#.]?)([a-2m-9\\\\*2S-]*)/i;m=34.2Q(t)}7(m[1]=="#"&&L[L.I-1].4X){B 2l=L[L.I-1].4X(m[2]);7(6.W.1j&&2l&&2l.2J!=m[2])2l=6(\'[@2J="\'+m[2]+\'"]\',L[L.I-1])[0];L=r=2l&&(!m[3]||6.1f(2l,m[3]))?[2l]:[]}J{7(m[1]==".")B 4r=1p 4v("(^|\\\\s)"+m[2]+"(\\\\s|$)");6.K(L,u(){B 3E=m[1]!=""||m[0]==""?"*":m[2];7(6.1f(q,"7J")&&3E=="*")3E="3g";6.2k(r,m[1]!=""&&L.I!=1?6.4x(q,[],m[1],m[2],4r):q.5J(3E))});7(m[1]=="."&&L.I==1)r=6.2q(r,u(e){v 4r.1n(e.19)});7(m[1]=="#"&&L.I==1){B 5K=r;r=[];6.K(5K,u(){7(q.36("2J")==m[2]){r=[q];v 12}})}L=r}t=t.1R(34,"")}}7(t){B 1a=6.1D(t,r);L=r=1a.r;t=6.35(1a.t)}}7(L&&L[0]==1B)L.4L();6.2k(2c,L);v 2c},1D:u(t,r,2g){22(t&&/^[a-z[({<*:.#]/i.1n(t)){B p=6.5M,m;6.K(p,u(i,1J){m=1J.2Q(t);7(m){t=t.7M(m[0].I);7(6.1s[m[1]].4u)m=6.1s[m[1]].4u(m);v 12}});7(m[1]==":"&&m[2]=="2g")r=6.1D(m[3],r,U).r;J 7(m[1]=="."){B 1J=1p 4v("(^|\\\\s)"+m[2]+"(\\\\s|$)");r=6.2q(r,u(e){v 1J.1n(e.19||"")},2g)}J{B f=6.1s[m[1]];7(1C f!="23")f=6.1s[m[1]][m[2]];40("f = u(a,i){"+(6.1s[m[1]].5P||"")+"v "+f+"}");r=6.2q(r,f,2g)}}v{r:r,t:t}},4x:u(o,r,1Q,Y,1J){P(B s=o.1b;s;s=s.2e)7(s.24==1){B 1M=U;7(1Q==".")1M=s.19&&1J.1n(s.19);J 7(1Q=="#")1M=s.36("2J")==Y;7(1M)r.1g(s);7(1Q=="#"&&r.I)3O;7(s.1b)6.4x(s,r,1Q,Y,1J)}v r},4z:u(D){B 4A=[];B Q=D.11;22(Q&&Q!=17){4A.1g(Q);Q=Q.11}v 4A},2a:u(Q,1i,3Z,D){1i=1i||1;B 1T=0;P(;Q;Q=Q[3Z]){7(Q.24==1)1T++;7(1T==1i||1i=="5R"&&1T%2==0&&1T>1&&Q==D||1i=="5S"&&1T%2==1&&Q==D)v Q}},2B:u(n,D){B r=[];P(;n;n=n.2e){7(n.24==1&&(!D||n!=D))r.1g(n)}v r}});6.G={1M:u(S,C,1o,F){7(6.W.1j&&S.3L!=T)S=1w;7(F)1o.F=F;7(!1o.2A)1o.2A=q.2A++;7(!S.$1H)S.$1H={};B 38=S.$1H[C];7(!38){38=S.$1H[C]={};7(S["39"+C])38[0]=S["39"+C]}38[1o.2A]=1o;S["39"+C]=q.5Y;7(!q.1k[C])q.1k[C]=[];q.1k[C].1g(S)},2A:1,1k:{},2f:u(S,C,1o){7(S.$1H){B i,j,k;7(C&&C.C){1o=C.1o;C=C.C}7(C&&S.$1H[C])7(1o)5U S.$1H[C][1o.2A];J P(i 1x S.$1H[C])5U S.$1H[C][i];J P(j 1x S.$1H)q.2f(S,j);P(k 1x S.$1H[C])7(k){k=U;3O}7(!k)S["39"+C]=16}},1S:u(C,F,S){F=6.3M(F||[]);7(!S)6.K(q.1k[C]||[],u(){6.G.1S(C,F,q)});J{B 1o=S["39"+C],1a,E=6.1t(S[C]);7(1o){F.61(q.2j({C:C,1O:S}));7((1a=1o.14(S,F))!==12)q.4F=U}7(E&&1a!==12)S[C]();q.4F=12}},5Y:u(G){7(1C 6=="T"||6.G.4F)v;G=6.G.2j(G||1w.G||{});B 3R;B c=q.$1H[G.C];B 1E=[].3N.3n(1A,1);1E.61(G);P(B j 1x c){1E[0].1o=c[j];1E[0].F=c[j].F;7(c[j].14(q,1E)===12){G.2n();G.2H();3R=12}}7(6.W.1j)G.1O=G.2n=G.2H=G.1o=G.F=16;v 3R},2j:u(G){7(!G.1O&&G.63)G.1O=G.63;7(G.65==T&&G.67!=T){B e=17.4H,b=17.64;G.65=G.67+(e.68||b.68);G.7Y=G.7Z+(e.6c||b.6c)}7(6.W.2N&&G.1O.24==3){B 3a=G;G=6.1z({},3a);G.1O=3a.1O.11;G.2n=u(){v 3a.2n()};G.2H=u(){v 3a.2H()}}7(!G.2n)G.2n=u(){q.3R=12};7(!G.2H)G.2H=u(){q.82=U};v G}};6.E.1z({3U:u(C,F,E){v q.K(u(){6.G.1M(q,C,E||F,F)})},6u:u(C,F,E){v q.K(u(){6.G.1M(q,C,u(G){6(q).6f(G);v(E||F).14(q,1A)},F)})},6f:u(C,E){v q.K(u(){6.G.2f(q,C,E)})},1S:u(C,F){v q.K(u(){6.G.1S(C,F,q)})},3X:u(){B a=1A;v q.6j(u(e){q.4M=q.4M==0?1:0;e.2n();v a[q.4M].14(q,[e])||12})},83:u(f,g){u 4O(e){B p=(e.C=="41"?e.84:e.85)||e.86;22(p&&p!=q)2G{p=p.11}2w(e){p=q};7(p==q)v 12;v(e.C=="41"?f:g).14(q,[e])}v q.41(4O).6k(4O)},27:u(f){7(6.3W)f.14(17,[6]);J{6.3c.1g(u(){v f.14(q,[6])})}v q}});6.1z({3W:12,3c:[],27:u(){7(!6.3W){6.3W=U;7(6.3c){6.K(6.3c,u(){q.14(17)});6.3c=16}7(6.W.3h||6.W.3f)17.87("6o",6.27,12)}}});1p u(){6.K(("88,8a,2O,8b,8d,52,6j,8e,"+"8f,8g,8h,41,6k,8j,42,"+"4R,8k,8l,8m,2C").3o(","),u(i,o){6.E[o]=u(f){v f?q.3U(o,f):q.1S(o)}});7(6.W.3h||6.W.3f)17.8n("6o",6.27,12);J 7(6.W.1j){17.8o("<8r"+"8s 2J=62 8u=U "+"3e=//:><\\/2d>");B 2d=17.4X("62");7(2d)2d.37=u(){7(q.3D!="1X")v;q.11.33(q);6.27()};2d=16}J 7(6.W.2N)6.50=3L(u(){7(17.3D=="8y"||17.3D=="1X"){4p(6.50);6.50=16;6.27()}},10);6.G.1M(1w,"2O",6.27)};7(6.W.1j)6(1w).6u("52",u(){B 1k=6.G.1k;P(B C 1x 1k){B 4Z=1k[C],i=4Z.I;7(i&&C!=\'52\')6w 6.G.2f(4Z[i-1],C);22(--i)}});6.E.1z({6A:u(V,21,M){q.2O(V,21,M,1)},2O:u(V,21,M,1W){7(6.1t(V))v q.3U("2O",V);M=M||u(){};B C="5d";7(21)7(6.1t(21)){M=21;21=16}J{21=6.3g(21);C="5V"}B 4e=q;6.3v({V:V,C:C,F:21,1W:1W,1X:u(2P,15){7(15=="2M"||!1W&&15=="5L")4e.1I("2t",2P.3G).4V().K(M,[2P.3G,15,2P]);J M.14(4e,[2P.3G,15,2P])}});v q},6B:u(){v 6.3g(q)},4V:u(){v q.2o("2d").K(u(){7(q.3e)6.59(q.3e);J 6.4a(q.2L||q.6H||q.2t||"")}).4g()}});7(!1w.3p)3p=u(){v 1p 6I("6K.6M")};6.K("5m,5Q,5O,5W,5N,5H".3o(","),u(i,o){6.E[o]=u(f){v q.3U(o,f)}});6.1z({2b:u(V,F,M,C,1W){7(6.1t(F)){M=F;F=16}v 6.3v({V:V,F:F,2M:M,4t:C,1W:1W})},6Q:u(V,F,M,C){v 6.2b(V,F,M,C,1)},59:u(V,M){v 6.2b(V,16,M,"2d")},6S:u(V,F,M){v 6.2b(V,F,M,"6m")},6U:u(V,F,M,C){7(6.1t(F)){M=F;F={}}v 6.3v({C:"5V",V:V,F:F,2M:M,4t:C})},6X:u(29){6.3q.29=29},6Y:u(5c){6.1z(6.3q,5c)},3q:{1k:U,C:"5d",29:0,5r:"70/x-73-3w-77",5h:U,48:U,F:16},3S:{},3v:u(s){s=6.1z({},6.3q,s);7(s.F){7(s.5h&&1C s.F!="23")s.F=6.3g(s.F);7(s.C.4m()=="2b"){s.V+=((s.V.18("?")>-1)?"&":"?")+s.F;s.F=16}}7(s.1k&&!6.4E++)6.G.1S("5m");B 4y=12;B N=1p 3p();N.7j(s.C,s.V,s.48);7(s.F)N.3A("7l-7m",s.5r);7(s.1W)N.3A("7o-4K-7q",6.3S[s.V]||"7s, 7t 7w 7x 4o:4o:4o 7z");N.3A("X-7B-7C","3p");7(N.7E)N.3A("7F","7G");7(s.5G)s.5G(N);7(s.1k)6.G.1S("5H",[N,s]);B 37=u(4s){7(N&&(N.3D==4||4s=="29")){4y=U;7(3I){4p(3I);3I=16}B 15;2G{15=6.5Z(N)&&4s!="29"?s.1W&&6.69(N,s.V)?"5L":"2M":"2C";7(15!="2C"){B 3F;2G{3F=N.4P("6b-4K")}2w(e){}7(s.1W&&3F)6.3S[s.V]=3F;B F=6.6i(N,s.4t);7(s.2M)s.2M(F,15);7(s.1k)6.G.1S("5N",[N,s])}J 6.3J(s,N,15)}2w(e){15="2C";6.3J(s,N,15,e)}7(s.1k)6.G.1S("5O",[N,s]);7(s.1k&&!--6.4E)6.G.1S("5Q");7(s.1X)s.1X(N,15);7(s.48)N=16}};B 3I=3L(37,13);7(s.29>0)57(u(){7(N){N.7N();7(!4y)37("29")}},s.29);2G{N.7Q(s.F)}2w(e){6.3J(s,N,16,e)}7(!s.48)37();v N},3J:u(s,N,15,e){7(s.2C)s.2C(N,15,e);7(s.1k)6.G.1S("5W",[N,s,e])},4E:0,5Z:u(r){2G{v!r.15&&7V.7W=="4G:"||(r.15>=5X&&r.15<7X)||r.15==6d||6.W.2N&&r.15==T}2w(e){}v 12},69:u(N,V){2G{B 6e=N.4P("6b-4K");v N.15==6d||6e==6.3S[V]||6.W.2N&&N.15==T}2w(e){}v 12},6i:u(r,C){B 4Q=r.4P("8c-C");B F=!C&&4Q&&4Q.18("N")>=0;F=C=="N"||F?r.8i:r.3G;7(C=="2d")6.4a(F);7(C=="6m")40("F = "+F);7(C=="4U")6("<1V>").4U(F).4V();v F},3g:u(a){B s=[];7(a.1l==2y||a.3Y)6.K(a,u(){s.1g(2x(q.Y)+"="+2x(q.O))});J P(B j 1x a)7(a[j]&&a[j].1l==2y)6.K(a[j],u(){s.1g(2x(j)+"="+2x(q))});J s.1g(2x(j)+"="+2x(a[j]));v s.6t("&")},4a:u(F){7(1w.54)1w.54(F);J 7(6.W.2N)1w.57(F,0);J 40.3n(1w,F)}});6.E.1z({1L:u(R,M){B 1G=q.1D(":1G");R?1G.26({28:"1L",3V:"1L",1d:"1L"},R,M):1G.K(u(){q.1q.1h=q.2E?q.2E:"";7(6.1m(q,"1h")=="1Z")q.1q.1h="2D"});v q},1K:u(R,M){B 3i=q.1D(":3i");R?3i.26({28:"1K",3V:"1K",1d:"1K"},R,M):3i.K(u(){q.2E=q.2E||6.1m(q,"1h");7(q.2E=="1Z")q.2E="2D";q.1q.1h="1Z"});v q},5g:6.E.3X,3X:u(E,4I){B 1E=1A;v 6.1t(E)&&6.1t(4I)?q.5g(E,4I):q.K(u(){6(q)[6(q).4l(":1G")?"1L":"1K"].14(6(q),1E)})},7a:u(R,M){v q.26({28:"1L"},R,M)},7c:u(R,M){v q.26({28:"1K"},R,M)},7f:u(R,M){v q.K(u(){B 5k=6(q).4l(":1G")?"1L":"1K";6(q).26({28:5k},R,M)})},7r:u(R,M){v q.26({1d:"1L"},R,M)},7u:u(R,M){v q.26({1d:"1K"},R,M)},7y:u(R,43,M){v q.26({1d:43},R,M)},26:u(H,R,1v,M){v q.1F(u(){q.2F=6.1z({},H);B 1u=6.R(R,1v,M);P(B p 1x H){B e=1p 6.3b(q,1u,p);7(H[p].1l==3Q)e.2s(e.Q(),H[p]);J e[H[p]](H)}})},1F:u(C,E){7(!E){E=C;C="3b"}v q.K(u(){7(!q.1F)q.1F={};7(!q.1F[C])q.1F[C]=[];q.1F[C].1g(E);7(q.1F[C].I==1)E.14(q)})}});6.1z({R:u(R,1v,E){B 1u=R&&R.1l==7K?R:{1X:E||!E&&1v||6.1t(R)&&R,25:R,1v:E&&1v||1v&&1v.1l!=4w&&1v};1u.25=(1u.25&&1u.25.1l==3Q?1u.25:{7R:7S,7T:5X}[1u.25])||7U;1u.1N=1u.1X;1u.1X=u(){6.6a(q,"3b");7(6.1t(1u.1N))1u.1N.14(q)};v 1u},1v:{},1F:{},6a:u(D,C){C=C||"3b";7(D.1F&&D.1F[C]){D.1F[C].4L();B f=D.1F[C][0];7(f)f.14(D)}},3b:u(D,1e,H){B z=q;B y=D.1q;B 4D=6.1m(D,"1h");y.5T="1G";z.a=u(){7(1e.49)1e.49.14(D,[z.2p]);7(H=="1d")6.1I(y,"1d",z.2p);J 7(6l(z.2p))y[H]=6l(z.2p)+"4S";y.1h="2D"};z.6v=u(){v 4T(6.1m(D,H))};z.Q=u(){B r=4T(6.30(D,H));v r&&r>-8z?r:z.6v()};z.2s=u(4f,43){z.4J=(1p 5o()).5w();z.2p=4f;z.a();z.4q=3L(u(){z.49(4f,43)},13)};z.1L=u(){7(!D.1y)D.1y={};D.1y[H]=q.Q();1e.1L=U;z.2s(0,D.1y[H]);7(H!="1d")y[H]="5a"};z.1K=u(){7(!D.1y)D.1y={};D.1y[H]=q.Q();1e.1K=U;z.2s(D.1y[H],0)};z.3X=u(){7(!D.1y)D.1y={};D.1y[H]=q.Q();7(4D=="1Z"){1e.1L=U;7(H!="1d")y[H]="5a";z.2s(0,D.1y[H])}J{1e.1K=U;z.2s(D.1y[H],0)}};z.49=u(32,47){B t=(1p 5o()).5w();7(t>1e.25+z.4J){4p(z.4q);z.4q=16;z.2p=47;z.a();7(D.2F)D.2F[H]=U;B 2c=U;P(B i 1x D.2F)7(D.2F[i]!==U)2c=12;7(2c){y.5T="";y.1h=4D;7(6.1m(D,"1h")=="1Z")y.1h="2D";7(1e.1K)y.1h="1Z";7(1e.1K||1e.1L)P(B p 1x D.2F)7(p=="1d")6.1I(y,p,D.1y[p]);J y[p]=""}7(2c&&6.1t(1e.1X))1e.1X.14(D)}J{B n=t-q.4J;B p=n/1e.25;z.2p=1e.1v&&6.1v[1e.1v]?6.1v[1e.1v](p,n,32,(47-32),1e.25):((-6h.7O(p*6h.8L)/2)+0.5)*(47-32)+32;z.a()}}}})}',62,545,'||||||jQuery|if|||||||||||||||||||this||||function|return||||||var|type|elem|fn|data|event|prop|length|else|each|ret|callback|xml|value|for|cur|speed|element|undefined|true|url|browser||name|||parentNode|false||apply|status|null|document|indexOf|className|val|firstChild|obj|opacity|options|nodeName|push|display|result|msie|global|constructor|css|test|handler|new|style|arg|expr|isFunction|opt|easing|window|in|orig|extend|arguments|context|typeof|filter|args|queue|hidden|events|attr|re|hide|show|add|old|target|table|token|replace|trigger|num|elems|div|ifModified|complete|key|none|tbody|params|while|string|nodeType|duration|animate|ready|height|timeout|nth|get|done|script|nextSibling|remove|not|index|tb|fix|merge|oid|z0|preventDefault|find|now|grep|pushStack|custom|innerHTML|first|cssFloat|catch|encodeURIComponent|Array|el|guid|sibling|error|block|oldblock|curAnim|try|stopPropagation|childNodes|id|wrap|text|success|safari|load|res|exec|al|_|last|substr|has|disabled|insertBefore|selected|checked|curCSS|map|firstNum|removeChild|re2|trim|getAttribute|onreadystatechange|handlers|on|originalEvent|fx|readyList|parPos|src|opera|param|mozilla|visible|domManip|clean|cloneNode|tr|call|split|XMLHttpRequest|ajaxSettings|append|child|String|empty|ajax|form|button|inArray|multiFilter|setRequestHeader|foundToken|9_|readyState|tag|modRes|responseText|second|ival|handleError|toUpperCase|setInterval|makeArray|slice|break|oWidth|Number|returnValue|lastModified|styleFloat|bind|width|isReady|toggle|jquery|dir|eval|mouseover|select|to|defaultView|position|oHeight|lastNum|async|step|globalEval|static|pos|swap|self|from|end|float|alpha|radio|inv|is|toLowerCase|visibility|00|clearInterval|timer|rec|isTimeout|dataType|_resort|RegExp|Function|getAll|requestDone|parents|matched|isXMLDoc|appendChild|oldDisplay|active|triggered|file|documentElement|fn2|startTime|Modified|shift|lastToggle|deep|handleHover|getResponseHeader|ct|submit|px|parseFloat|html|evalScripts|getComputedStyle|getElementById|clone|els|safariTimer|currentStyle|unload|force|execScript|getPropertyValue|newProp|setTimeout|zoom|getScript|1px|sl|settings|GET|rl|check|_toggle|processData|prepend|before|state|removeAttr|ajaxStart|lt|Date|gt|eq|contentType|previousSibling|after|parent|contains|getTime|checkbox|password|appendTo|image|reset|input|webkit|href|continue|beforeSend|ajaxSend|ownerDocument|getElementsByTagName|tmp|notmodified|parse|ajaxSuccess|ajaxComplete|_prefix|ajaxStop|even|odd|overflow|delete|POST|ajaxError|200|handle|httpSuccess|nodeValue|unshift|__ie_init|srcElement|body|pageX|tagName|clientX|scrollLeft|httpNotModified|dequeue|Last|scrollTop|304|xmlRes|unbind|100|Math|httpData|click|mouseout|parseInt|json|createElement|DOMContentLoaded|prevObject|ol|setArray|exclude|join|one|max|do|relative|clientHeight|clientWidth|loadIfModified|serialize|toString|thead|tfoot|td|th|textContent|ActiveXObject|htmlFor|Microsoft|class|XMLHTTP|readOnly|gi|match|getIfModified|9999|getJSON|getAttributeNode|post|setAttribute|ig|ajaxTimeout|ajaxSetup|concat|application|userAgent|compatible|www|compatMode|CSS1Compat|next|urlencoded|siblings|children|slideDown|prependTo|slideUp|Top|insertAfter|slideToggle|removeAttribute|addClass|removeClass|open|toggleClass|Content|Type|lastChild|If|only|Since|fadeIn|Thu|01|fadeOut|enabled|Jan|1970|fadeTo|GMT|textarea|Requested|With|prev|overrideMimeType|Connection|close|boxModel|right|object|Object|navigator|substring|abort|cos|font|send|slow|600|fast|400|location|protocol|300|pageY|clientY|method|action|cancelBubble|hover|fromElement|toElement|relatedTarget|removeEventListener|blur|readonly|focus|resize|content|scroll|dblclick|mousedown|mouseup|mousemove|responseXML|change|keydown|keypress|keyup|addEventListener|write|prototype|size|scr|ipt|createTextNode|defer|FORM|reverse|noConflict|loaded|10000|weight|line|Bottom|Right|Left|padding|border|Width|offsetHeight|offsetWidth|absolute|PI|left'.split('|'),0,{}))
|
1 |
+
eval(function(p,a,c,k,e,d){e=function(c){return(c<a?"":e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--){d[e(c)]=k[c]||e(c)}k=[function(e){return d[e]}];e=function(){return'\\w+'};c=1};while(c--){if(k[c]){p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c])}}return p}('7(1C 1w.6=="T"){1w.T=1w.T;B 6=u(a,c){7(1w==q)v 1p 6(a,c);a=a||17;7(6.1t(a))v 1p 6(17)[6.E.27?"27":"2O"](a);7(1C a=="23"){B m=/^[^<]*(<(.|\\s)+>)[^>]*$/.2Q(a);7(m)a=6.3k([m[1]]);J v 1p 6(c).2o(a)}v q.6r(a.1l==2y&&a||(a.3Y||a.I&&a!=1w&&!a.24&&a[0]!=T&&a[0].24)&&6.3M(a)||[a])};7(1C $!="T")6.2S$=$;B $=6;6.E=6.8p={3Y:"1.1.2",8q:u(){v q.I},I:0,2b:u(1T){v 1T==T?6.3M(q):q[1T]},2r:u(a){B L=6(a);L.6p=q;v L},6r:u(a){q.I=0;[].1g.14(q,a);v q},K:u(E,1E){v 6.K(q,E,1E)},2h:u(1c){B 4c=-1;q.K(u(i){7(q==1c)4c=i});v 4c},1I:u(1Y,O,C){B 1c=1Y;7(1Y.1l==3t)7(O==T)v q.I&&6[C||"1I"](q[0],1Y)||T;J{1c={};1c[1Y]=O}v q.K(u(2h){P(B H 1x 1c)6.1I(C?q.1q:q,H,6.H(q,1c[H],C,2h,H))})},1m:u(1Y,O){v q.1I(1Y,O,"30")},2L:u(e){7(1C e=="23")v q.3u().3r(17.8t(e));B t="";6.K(e||q,u(){6.K(q.2I,u(){7(q.24!=8)t+=q.24!=1?q.60:6.E.2L([q])})});v t},2K:u(){B a=6.3k(1A);v q.K(u(){B b=a[0].3l(U);q.11.2X(b,q);22(b.1b)b=b.1b;b.4C(q)})},3r:u(){v q.3j(1A,U,1,u(a){q.4C(a)})},5i:u(){v q.3j(1A,U,-1,u(a){q.2X(a,q.1b)})},5j:u(){v q.3j(1A,12,1,u(a){q.11.2X(a,q)})},5t:u(){v q.3j(1A,12,-1,u(a){q.11.2X(a,q.2e)})},4g:u(){v q.6p||6([])},2o:u(t){v q.2r(6.31(q,u(a){v 6.2o(t,a)}),t)},4Y:u(4N){v q.2r(6.31(q,u(a){B a=a.3l(4N!=T?4N:U);a.$1H=16;v a}))},1D:u(t){v q.2r(6.1t(t)&&6.2q(q,u(2z,2h){v t.14(2z,[2h])})||6.3z(t,q))},2g:u(t){v q.2r(t.1l==3t&&6.3z(t,q,U)||6.2q(q,u(a){v(t.1l==2y||t.3Y)?6.3y(a,t)<0:a!=t}))},1M:u(t){v q.2r(6.2k(q.2b(),t.1l==3t?6(t).2b():t.I!=T&&(!t.1f||t.1f=="8v")?t:[t]))},4l:u(1s){v 1s?6.1D(1s,q).r.I>0:12},1a:u(1a){v 1a==T?(q.I?q[0].O:16):q.1I("O",1a)},4U:u(1a){v 1a==T?(q.I?q[0].2t:16):q.3u().3r(1a)},3j:u(1E,1P,3Z,E){B 4Y=q.I>1;B a=6.3k(1E);7(3Z<0)a.8w();v q.K(u(){B 1c=q;7(1P&&6.1f(q,"1P")&&6.1f(a[0],"3m"))1c=q.5J("20")[0]||q.4C(17.6n("20"));6.K(a,u(){E.14(1c,[4Y?q.3l(U):q])})})}};6.1z=6.E.1z=u(){B 1O=1A[0],a=1;7(1A.I==1){1O=q;a=0}B H;22(H=1A[a++])P(B i 1x H)1O[i]=H[i];v 1O};6.1z({8x:u(){7(6.2S$)$=6.2S$;v 6},1t:u(E){v!!E&&1C E!="23"&&!E.1f&&1C E[0]=="T"&&/u/i.1n(E+"")},4B:u(D){v D.66&&D.5I&&!D.5I.64},1f:u(D,Y){v D.1f&&D.1f.3K()==Y.3K()},K:u(1c,E,1E){7(1c.I==T)P(B i 1x 1c)E.14(1c[i],1E||[i,1c[i]]);J P(B i=0,6q=1c.I;i<6q;i++)7(E.14(1c[i],1E||[i,1c[i]])===12)3O;v 1c},H:u(D,O,C,2h,H){7(6.1t(O))O=O.3n(D,[2h]);B 6s=/z-?2h|7P-?8A|1d|58|8B-?28/i;v O&&O.1l==3Q&&C=="30"&&!6s.1n(H)?O+"4S":O},19:{1M:u(D,c){6.K(c.3o(/\\s+/),u(i,Q){7(!6.19.2V(D.19,Q))D.19+=(D.19?" ":"")+Q})},2f:u(D,c){D.19=c?6.2q(D.19.3o(/\\s+/),u(Q){v!6.19.2V(c,Q)}).6t(" "):""},2V:u(t,c){t=t.19||t;c=c.1R(/([\\.\\\\\\+\\*\\?\\[\\^\\]\\$\\(\\)\\{\\}\\=\\!\\<\\>\\|\\:])/g,"\\\\$1");v t&&1p 4v("(^|\\\\s)"+c+"(\\\\s|$)").1n(t)}},4d:u(e,o,f){P(B i 1x o){e.1q["1N"+i]=e.1q[i];e.1q[i]=o[i]}f.14(e,[]);P(B i 1x o)e.1q[i]=e.1q["1N"+i]},1m:u(e,p){7(p=="28"||p=="3V"){B 1N={},46,3P,d=["7d","8C","8D","8E"];6.K(d,u(){1N["8F"+q]=0;1N["8G"+q+"8H"]=0});6.4d(e,1N,u(){7(6.1m(e,"1h")!="1Z"){46=e.8I;3P=e.8J}J{e=6(e.3l(U)).2o(":4j").5l("2Z").4g().1m({4n:"1G",45:"8K",1h:"2D",7I:"0",8M:"0"}).5z(e.11)[0];B 3d=6.1m(e.11,"45");7(3d==""||3d=="4b")e.11.1q.45="6x";46=e.6y;3P=e.6z;7(3d==""||3d=="4b")e.11.1q.45="4b";e.11.33(e)}});v p=="28"?46:3P}v 6.30(e,p)},30:u(D,H,53){B L;7(H=="1d"&&6.W.1j)v 6.1I(D.1q,"1d");7(H=="4h"||H=="2v")H=6.W.1j?"3T":"2v";7(!53&&D.1q[H])L=D.1q[H];J 7(17.44&&17.44.4W){7(H=="2v"||H=="3T")H="4h";H=H.1R(/([A-Z])/g,"-$1").4m();B Q=17.44.4W(D,16);7(Q)L=Q.55(H);J 7(H=="1h")L="1Z";J 6.4d(D,{1h:"2D"},u(){B c=17.44.4W(q,"");L=c&&c.55(H)||""})}J 7(D.51){B 56=H.1R(/\\-(\\w)/g,u(m,c){v c.3K()});L=D.51[H]||D.51[56]}v L},3k:u(a){B r=[];6.K(a,u(i,1r){7(!1r)v;7(1r.1l==3Q)1r=1r.6C();7(1C 1r=="23"){B s=6.35(1r),1V=17.6n("1V"),2i=[];B 2K=!s.18("<1u")&&[1,"<42>","</42>"]||(!s.18("<6D")||!s.18("<20")||!s.18("<6E"))&&[1,"<1P>","</1P>"]||!s.18("<3m")&&[2,"<1P><20>","</20></1P>"]||(!s.18("<6F")||!s.18("<6G"))&&[3,"<1P><20><3m>","</3m></20></1P>"]||[0,"",""];1V.2t=2K[1]+s+2K[2];22(2K[0]--)1V=1V.1b;7(6.W.1j){7(!s.18("<1P")&&s.18("<20")<0)2i=1V.1b&&1V.1b.2I;J 7(2K[1]=="<1P>"&&s.18("<20")<0)2i=1V.2I;P(B n=2i.I-1;n>=0;--n)7(6.1f(2i[n],"20")&&!2i[n].2I.I)2i[n].11.33(2i[n])}1r=[];P(B i=0,l=1V.2I.I;i<l;i++)1r.1g(1V.2I[i])}7(1r.I===0&&!6.1f(1r,"3w"))v;7(1r[0]==T||6.1f(1r,"3w"))r.1g(1r);J r=6.2k(r,1r)});v r},1I:u(D,Y,O){B 2j=6.4B(D)?{}:{"P":"6J","6L":"19","4h":6.W.1j?"3T":"2v",2v:6.W.1j?"3T":"2v",2t:"2t",19:"19",O:"O",2W:"2W",2Z:"2Z",89:"6N",2Y:"2Y"};7(Y=="1d"&&6.W.1j&&O!=T){D.58=1;v D.1D=D.1D.1R(/4i\\([^\\)]*\\)/6O,"")+(O==1?"":"4i(1d="+O*6g+")")}J 7(Y=="1d"&&6.W.1j)v D.1D?4T(D.1D.6P(/4i\\(1d=(.*)\\)/)[1])/6g:1;7(Y=="1d"&&6.W.3h&&O==1)O=0.6R;7(2j[Y]){7(O!=T)D[2j[Y]]=O;v D[2j[Y]]}J 7(O==T&&6.W.1j&&6.1f(D,"3w")&&(Y=="81"||Y=="80"))v D.6T(Y).60;J 7(D.66){7(O!=T)D.6V(Y,O);7(6.W.1j&&/5E|3e/.1n(Y)&&!6.4B(D))v D.36(Y,2);v D.36(Y)}J{Y=Y.1R(/-([a-z])/6W,u(z,b){v b.3K()});7(O!=T)D[Y]=O;v D[Y]}},35:u(t){v t.1R(/^\\s+|\\s+$/g,"")},3M:u(a){B r=[];7(a.1l!=2y)P(B i=0,2R=a.I;i<2R;i++)r.1g(a[i]);J r=a.3N(0);v r},3y:u(b,a){P(B i=0,2R=a.I;i<2R;i++)7(a[i]==b)v i;v-1},2k:u(2u,3H){B r=[].3N.3n(2u,0);P(B i=0,5b=3H.I;i<5b;i++)7(6.3y(3H[i],r)==-1)2u.1g(3H[i]);v 2u},2q:u(1U,E,4k){7(1C E=="23")E=1p 4w("a","i","v "+E);B 1i=[];P(B i=0,2z=1U.I;i<2z;i++)7(!4k&&E(1U[i],i)||4k&&!E(1U[i],i))1i.1g(1U[i]);v 1i},31:u(1U,E){7(1C E=="23")E=1p 4w("a","v "+E);B 1i=[],r=[];P(B i=0,2z=1U.I;i<2z;i++){B 1a=E(1U[i],i);7(1a!==16&&1a!=T){7(1a.1l!=2y)1a=[1a];1i=1i.6Z(1a)}}B r=1i.I?[1i[0]]:[];5f:P(B i=1,5e=1i.I;i<5e;i++){P(B j=0;j<i;j++)7(1i[i]==r[j])5F 5f;r.1g(1i[i])}v r}});1p u(){B b=7L.71.4m();6.W={2N:/5D/.1n(b),3f:/3f/.1n(b),1j:/1j/.1n(b)&&!/3f/.1n(b),3h:/3h/.1n(b)&&!/(72|5D)/.1n(b)};6.7H=!6.W.1j||17.74=="75"};6.K({5u:"a.11",4z:"6.4z(a)",76:"6.2a(a,2,\'2e\')",7D:"6.2a(a,2,\'5s\')",78:"6.2B(a.11.1b,a)",79:"6.2B(a.1b)"},u(i,n){6.E[i]=u(a){B L=6.31(q,n);7(a&&1C a=="23")L=6.3z(a,L);v q.2r(L)}});6.K({5z:"3r",7b:"5i",2X:"5j",7e:"5t"},u(i,n){6.E[i]=u(){B a=1A;v q.K(u(){P(B j=0,2R=a.I;j<2R;j++)6(a[j])[n](q)})}});6.K({5l:u(1Y){6.1I(q,1Y,"");q.7g(1Y)},7h:u(c){6.19.1M(q,c)},7i:u(c){6.19.2f(q,c)},7k:u(c){6.19[6.19.2V(q,c)?"2f":"1M"](q,c)},2f:u(a){7(!a||6.1D(a,[q]).r.I)q.11.33(q)},3u:u(){22(q.1b)q.33(q.1b)}},u(i,n){6.E[i]=u(){v q.K(n,1A)}});6.K(["5q","5n","5p","5v"],u(i,n){6.E[n]=u(1T,E){v q.1D(":"+n+"("+1T+")",E)}});6.K(["28","3V"],u(i,n){6.E[n]=u(h){v h==T?(q.I?6.1m(q[0],n):16):q.1m(n,h.1l==3t?h:h+"4S")}});6.1z({1s:{"":"m[2]==\'*\'||6.1f(a,m[2])","#":"a.36(\'2J\')==m[2]",":":{5n:"i<m[3]-0",5p:"i>m[3]-0",2a:"m[3]-0==i",5q:"m[3]-0==i",2u:"i==0",2T:"i==r.I-1",5R:"i%2==0",5S:"i%2","2a-3s":"6.2a(a.11.1b,m[3],\'2e\',a)==a","2u-3s":"6.2a(a.11.1b,1,\'2e\')==a","2T-3s":"6.2a(a.11.7n,1,\'5s\')==a","7p-3s":"6.2B(a.11.1b).I==1",5u:"a.1b",3u:"!a.1b",5v:"6.E.2L.14([a]).18(m[3])>=0",3i:\'a.C!="1G"&&6.1m(a,"1h")!="1Z"&&6.1m(a,"4n")!="1G"\',1G:\'a.C=="1G"||6.1m(a,"1h")=="1Z"||6.1m(a,"4n")=="1G"\',7v:"!a.2W",2W:"a.2W",2Z:"a.2Z",2Y:"a.2Y||6.1I(a,\'2Y\')",2L:"a.C==\'2L\'",4j:"a.C==\'4j\'",5x:"a.C==\'5x\'",4G:"a.C==\'4G\'",5y:"a.C==\'5y\'",4R:"a.C==\'4R\'",5A:"a.C==\'5A\'",5B:"a.C==\'5B\'",3x:\'a.C=="3x"||6.1f(a,"3x")\',5C:"/5C|42|7A|3x/i.1n(a.1f)"},".":"6.19.2V(a,m[2])","@":{"=":"z==m[4]","!=":"z!=m[4]","^=":"z&&!z.18(m[4])","$=":"z&&z.2U(z.I - m[4].I,m[4].I)==m[4]","*=":"z&&z.18(m[4])>=0","":"z",4u:u(m){v["",m[1],m[3],m[2],m[5]]},5P:"z=a[m[3]];7(!z||/5E|3e/.1n(m[3]))z=6.1I(a,m[3]);"},"[":"6.2o(m[2],a).I"},5M:[/^\\[ *(@)([a-2m-3C-]*) *([!*$^=]*) *(\'?"?)(.*?)\\4 *\\]/i,/^(\\[)\\s*(.*?(\\[.*?\\])?[^[]*?)\\s*\\]/,/^(:)([a-2m-3C-]*)\\("?\'?(.*?(\\(.*?\\))?[^(]*?)"?\'?\\)/i,/^([:.#]*)([a-2m-3C*-]*)/i],1Q:[/^(\\/?\\.\\.)/,"a.11",/^(>|\\/)/,"6.2B(a.1b)",/^(\\+)/,"6.2a(a,2,\'2e\')",/^(~)/,u(a){B s=6.2B(a.11.1b);v s.3N(6.3y(a,s)+1)}],3z:u(1s,1U,2g){B 1N,Q=[];22(1s&&1s!=1N){1N=1s;B f=6.1D(1s,1U,2g);1s=f.t.1R(/^\\s*,\\s*/,"");Q=2g?1U=f.r:6.2k(Q,f.r)}v Q},2o:u(t,1B){7(1C t!="23")v[t];7(1B&&!1B.24)1B=16;1B=1B||17;7(!t.18("//")){1B=1B.4H;t=t.2U(2,t.I)}J 7(!t.18("/")){1B=1B.4H;t=t.2U(1,t.I);7(t.18("/")>=1)t=t.2U(t.18("/"),t.I)}B L=[1B],2c=[],2T=16;22(t&&2T!=t){B r=[];2T=t;t=6.35(t).1R(/^\\/\\//i,"");B 3B=12;B 1J=/^[\\/>]\\s*([a-2m-9*-]+)/i;B m=1J.2Q(t);7(m){6.K(L,u(){P(B c=q.1b;c;c=c.2e)7(c.24==1&&(6.1f(c,m[1])||m[1]=="*"))r.1g(c)});L=r;t=t.1R(1J,"");7(t.18(" ")==0)5F;3B=U}J{P(B i=0;i<6.1Q.I;i+=2){B 1J=6.1Q[i];B m=1J.2Q(t);7(m){r=L=6.31(L,6.1t(6.1Q[i+1])?6.1Q[i+1]:u(a){v 40(6.1Q[i+1])});t=6.35(t.1R(1J,""));3B=U;3O}}}7(t&&!3B){7(!t.18(",")){7(L[0]==1B)L.4L();6.2k(2c,L);r=L=[1B];t=" "+t.2U(1,t.I)}J{B 34=/^([a-2m-3C-]+)(#)([a-2m-9\\\\*2S-]*)/i;B m=34.2Q(t);7(m){m=[0,m[2],m[3],m[1]]}J{34=/^([#.]?)([a-2m-9\\\\*2S-]*)/i;m=34.2Q(t)}7(m[1]=="#"&&L[L.I-1].4X){B 2l=L[L.I-1].4X(m[2]);7(6.W.1j&&2l&&2l.2J!=m[2])2l=6(\'[@2J="\'+m[2]+\'"]\',L[L.I-1])[0];L=r=2l&&(!m[3]||6.1f(2l,m[3]))?[2l]:[]}J{7(m[1]==".")B 4r=1p 4v("(^|\\\\s)"+m[2]+"(\\\\s|$)");6.K(L,u(){B 3E=m[1]!=""||m[0]==""?"*":m[2];7(6.1f(q,"7J")&&3E=="*")3E="3g";6.2k(r,m[1]!=""&&L.I!=1?6.4x(q,[],m[1],m[2],4r):q.5J(3E))});7(m[1]=="."&&L.I==1)r=6.2q(r,u(e){v 4r.1n(e.19)});7(m[1]=="#"&&L.I==1){B 5K=r;r=[];6.K(5K,u(){7(q.36("2J")==m[2]){r=[q];v 12}})}L=r}t=t.1R(34,"")}}7(t){B 1a=6.1D(t,r);L=r=1a.r;t=6.35(1a.t)}}7(L&&L[0]==1B)L.4L();6.2k(2c,L);v 2c},1D:u(t,r,2g){22(t&&/^[a-z[({<*:.#]/i.1n(t)){B p=6.5M,m;6.K(p,u(i,1J){m=1J.2Q(t);7(m){t=t.7M(m[0].I);7(6.1s[m[1]].4u)m=6.1s[m[1]].4u(m);v 12}});7(m[1]==":"&&m[2]=="2g")r=6.1D(m[3],r,U).r;J 7(m[1]=="."){B 1J=1p 4v("(^|\\\\s)"+m[2]+"(\\\\s|$)");r=6.2q(r,u(e){v 1J.1n(e.19||"")},2g)}J{B f=6.1s[m[1]];7(1C f!="23")f=6.1s[m[1]][m[2]];40("f = u(a,i){"+(6.1s[m[1]].5P||"")+"v "+f+"}");r=6.2q(r,f,2g)}}v{r:r,t:t}},4x:u(o,r,1Q,Y,1J){P(B s=o.1b;s;s=s.2e)7(s.24==1){B 1M=U;7(1Q==".")1M=s.19&&1J.1n(s.19);J 7(1Q=="#")1M=s.36("2J")==Y;7(1M)r.1g(s);7(1Q=="#"&&r.I)3O;7(s.1b)6.4x(s,r,1Q,Y,1J)}v r},4z:u(D){B 4A=[];B Q=D.11;22(Q&&Q!=17){4A.1g(Q);Q=Q.11}v 4A},2a:u(Q,1i,3Z,D){1i=1i||1;B 1T=0;P(;Q;Q=Q[3Z]){7(Q.24==1)1T++;7(1T==1i||1i=="5R"&&1T%2==0&&1T>1&&Q==D||1i=="5S"&&1T%2==1&&Q==D)v Q}},2B:u(n,D){B r=[];P(;n;n=n.2e){7(n.24==1&&(!D||n!=D))r.1g(n)}v r}});6.G={1M:u(S,C,1o,F){7(6.W.1j&&S.3L!=T)S=1w;7(F)1o.F=F;7(!1o.2A)1o.2A=q.2A++;7(!S.$1H)S.$1H={};B 38=S.$1H[C];7(!38){38=S.$1H[C]={};7(S["39"+C])38[0]=S["39"+C]}38[1o.2A]=1o;S["39"+C]=q.5Y;7(!q.1k[C])q.1k[C]=[];q.1k[C].1g(S)},2A:1,1k:{},2f:u(S,C,1o){7(S.$1H){B i,j,k;7(C&&C.C){1o=C.1o;C=C.C}7(C&&S.$1H[C])7(1o)5U S.$1H[C][1o.2A];J P(i 1x S.$1H[C])5U S.$1H[C][i];J P(j 1x S.$1H)q.2f(S,j);P(k 1x S.$1H[C])7(k){k=U;3O}7(!k)S["39"+C]=16}},1S:u(C,F,S){F=6.3M(F||[]);7(!S)6.K(q.1k[C]||[],u(){6.G.1S(C,F,q)});J{B 1o=S["39"+C],1a,E=6.1t(S[C]);7(1o){F.61(q.2j({C:C,1O:S}));7((1a=1o.14(S,F))!==12)q.4F=U}7(E&&1a!==12)S[C]();q.4F=12}},5Y:u(G){7(1C 6=="T"||6.G.4F)v;G=6.G.2j(G||1w.G||{});B 3R;B c=q.$1H[G.C];B 1E=[].3N.3n(1A,1);1E.61(G);P(B j 1x c){1E[0].1o=c[j];1E[0].F=c[j].F;7(c[j].14(q,1E)===12){G.2n();G.2H();3R=12}}7(6.W.1j)G.1O=G.2n=G.2H=G.1o=G.F=16;v 3R},2j:u(G){7(!G.1O&&G.63)G.1O=G.63;7(G.65==T&&G.67!=T){B e=17.4H,b=17.64;G.65=G.67+(e.68||b.68);G.7Y=G.7Z+(e.6c||b.6c)}7(6.W.2N&&G.1O.24==3){B 3a=G;G=6.1z({},3a);G.1O=3a.1O.11;G.2n=u(){v 3a.2n()};G.2H=u(){v 3a.2H()}}7(!G.2n)G.2n=u(){q.3R=12};7(!G.2H)G.2H=u(){q.82=U};v G}};6.E.1z({3U:u(C,F,E){v q.K(u(){6.G.1M(q,C,E||F,F)})},6u:u(C,F,E){v q.K(u(){6.G.1M(q,C,u(G){6(q).6f(G);v(E||F).14(q,1A)},F)})},6f:u(C,E){v q.K(u(){6.G.2f(q,C,E)})},1S:u(C,F){v q.K(u(){6.G.1S(C,F,q)})},3X:u(){B a=1A;v q.6j(u(e){q.4M=q.4M==0?1:0;e.2n();v a[q.4M].14(q,[e])||12})},83:u(f,g){u 4O(e){B p=(e.C=="41"?e.84:e.85)||e.86;22(p&&p!=q)2G{p=p.11}2w(e){p=q};7(p==q)v 12;v(e.C=="41"?f:g).14(q,[e])}v q.41(4O).6k(4O)},27:u(f){7(6.3W)f.14(17,[6]);J{6.3c.1g(u(){v f.14(q,[6])})}v q}});6.1z({3W:12,3c:[],27:u(){7(!6.3W){6.3W=U;7(6.3c){6.K(6.3c,u(){q.14(17)});6.3c=16}7(6.W.3h||6.W.3f)17.87("6o",6.27,12)}}});1p u(){6.K(("88,8a,2O,8b,8d,52,6j,8e,"+"8f,8g,8h,41,6k,8j,42,"+"4R,8k,8l,8m,2C").3o(","),u(i,o){6.E[o]=u(f){v f?q.3U(o,f):q.1S(o)}});7(6.W.3h||6.W.3f)17.8n("6o",6.27,12);J 7(6.W.1j){17.8o("<8r"+"8s 2J=62 8u=U "+"3e=//:><\\/2d>");B 2d=17.4X("62");7(2d)2d.37=u(){7(q.3D!="1X")v;q.11.33(q);6.27()};2d=16}J 7(6.W.2N)6.50=3L(u(){7(17.3D=="8y"||17.3D=="1X"){4p(6.50);6.50=16;6.27()}},10);6.G.1M(1w,"2O",6.27)};7(6.W.1j)6(1w).6u("52",u(){B 1k=6.G.1k;P(B C 1x 1k){B 4Z=1k[C],i=4Z.I;7(i&&C!=\'52\')6w 6.G.2f(4Z[i-1],C);22(--i)}});6.E.1z({6A:u(V,21,M){q.2O(V,21,M,1)},2O:u(V,21,M,1W){7(6.1t(V))v q.3U("2O",V);M=M||u(){};B C="5d";7(21)7(6.1t(21)){M=21;21=16}J{21=6.3g(21);C="5V"}B 4e=q;6.3v({V:V,C:C,F:21,1W:1W,1X:u(2P,15){7(15=="2M"||!1W&&15=="5L")4e.1I("2t",2P.3G).4V().K(M,[2P.3G,15,2P]);J M.14(4e,[2P.3G,15,2P])}});v q},6B:u(){v 6.3g(q)},4V:u(){v q.2o("2d").K(u(){7(q.3e)6.59(q.3e);J 6.4a(q.2L||q.6H||q.2t||"")}).4g()}});7(!1w.3p)3p=u(){v 1p 6I("6K.6M")};6.K("5m,5Q,5O,5W,5N,5H".3o(","),u(i,o){6.E[o]=u(f){v q.3U(o,f)}});6.1z({2b:u(V,F,M,C,1W){7(6.1t(F)){M=F;F=16}v 6.3v({V:V,F:F,2M:M,4t:C,1W:1W})},6Q:u(V,F,M,C){v 6.2b(V,F,M,C,1)},59:u(V,M){v 6.2b(V,16,M,"2d")},6S:u(V,F,M){v 6.2b(V,F,M,"6m")},6U:u(V,F,M,C){7(6.1t(F)){M=F;F={}}v 6.3v({C:"5V",V:V,F:F,2M:M,4t:C})},6X:u(29){6.3q.29=29},6Y:u(5c){6.1z(6.3q,5c)},3q:{1k:U,C:"5d",29:0,5r:"70/x-73-3w-77",5h:U,48:U,F:16},3S:{},3v:u(s){s=6.1z({},6.3q,s);7(s.F){7(s.5h&&1C s.F!="23")s.F=6.3g(s.F);7(s.C.4m()=="2b"){s.V+=((s.V.18("?")>-1)?"&":"?")+s.F;s.F=16}}7(s.1k&&!6.4E++)6.G.1S("5m");B 4y=12;B N=1p 3p();N.7j(s.C,s.V,s.48);7(s.F)N.3A("7l-7m",s.5r);7(s.1W)N.3A("7o-4K-7q",6.3S[s.V]||"7s, 7t 7w 7x 4o:4o:4o 7z");N.3A("X-7B-7C","3p");7(N.7E)N.3A("7F","7G");7(s.5G)s.5G(N);7(s.1k)6.G.1S("5H",[N,s]);B 37=u(4s){7(N&&(N.3D==4||4s=="29")){4y=U;7(3I){4p(3I);3I=16}B 15;2G{15=6.5Z(N)&&4s!="29"?s.1W&&6.69(N,s.V)?"5L":"2M":"2C";7(15!="2C"){B 3F;2G{3F=N.4P("6b-4K")}2w(e){}7(s.1W&&3F)6.3S[s.V]=3F;B F=6.6i(N,s.4t);7(s.2M)s.2M(F,15);7(s.1k)6.G.1S("5N",[N,s])}J 6.3J(s,N,15)}2w(e){15="2C";6.3J(s,N,15,e)}7(s.1k)6.G.1S("5O",[N,s]);7(s.1k&&!--6.4E)6.G.1S("5Q");7(s.1X)s.1X(N,15);7(s.48)N=16}};B 3I=3L(37,13);7(s.29>0)57(u(){7(N){N.7N();7(!4y)37("29")}},s.29);2G{N.7Q(s.F)}2w(e){6.3J(s,N,16,e)}7(!s.48)37();v N},3J:u(s,N,15,e){7(s.2C)s.2C(N,15,e);7(s.1k)6.G.1S("5W",[N,s,e])},4E:0,5Z:u(r){2G{v!r.15&&7V.7W=="4G:"||(r.15>=5X&&r.15<7X)||r.15==6d||6.W.2N&&r.15==T}2w(e){}v 12},69:u(N,V){2G{B 6e=N.4P("6b-4K");v N.15==6d||6e==6.3S[V]||6.W.2N&&N.15==T}2w(e){}v 12},6i:u(r,C){B 4Q=r.4P("8c-C");B F=!C&&4Q&&4Q.18("N")>=0;F=C=="N"||F?r.8i:r.3G;7(C=="2d")6.4a(F);7(C=="6m")40("F = "+F);7(C=="4U")6("<1V>").4U(F).4V();v F},3g:u(a){B s=[];7(a.1l==2y||a.3Y)6.K(a,u(){s.1g(2x(q.Y)+"="+2x(q.O))});J P(B j 1x a)7(a[j]&&a[j].1l==2y)6.K(a[j],u(){s.1g(2x(j)+"="+2x(q))});J s.1g(2x(j)+"="+2x(a[j]));v s.6t("&")},4a:u(F){7(1w.54)1w.54(F);J 7(6.W.2N)1w.57(F,0);J 40.3n(1w,F)}});6.E.1z({1L:u(R,M){B 1G=q.1D(":1G");R?1G.26({28:"1L",3V:"1L",1d:"1L"},R,M):1G.K(u(){q.1q.1h=q.2E?q.2E:"";7(6.1m(q,"1h")=="1Z")q.1q.1h="2D"});v q},1K:u(R,M){B 3i=q.1D(":3i");R?3i.26({28:"1K",3V:"1K",1d:"1K"},R,M):3i.K(u(){q.2E=q.2E||6.1m(q,"1h");7(q.2E=="1Z")q.2E="2D";q.1q.1h="1Z"});v q},5g:6.E.3X,3X:u(E,4I){B 1E=1A;v 6.1t(E)&&6.1t(4I)?q.5g(E,4I):q.K(u(){6(q)[6(q).4l(":1G")?"1L":"1K"].14(6(q),1E)})},7a:u(R,M){v q.26({28:"1L"},R,M)},7c:u(R,M){v q.26({28:"1K"},R,M)},7f:u(R,M){v q.K(u(){B 5k=6(q).4l(":1G")?"1L":"1K";6(q).26({28:5k},R,M)})},7r:u(R,M){v q.26({1d:"1L"},R,M)},7u:u(R,M){v q.26({1d:"1K"},R,M)},7y:u(R,43,M){v q.26({1d:43},R,M)},26:u(H,R,1v,M){v q.1F(u(){q.2F=6.1z({},H);B 1u=6.R(R,1v,M);P(B p 1x H){B e=1p 6.3b(q,1u,p);7(H[p].1l==3Q)e.2s(e.Q(),H[p]);J e[H[p]](H)}})},1F:u(C,E){7(!E){E=C;C="3b"}v q.K(u(){7(!q.1F)q.1F={};7(!q.1F[C])q.1F[C]=[];q.1F[C].1g(E);7(q.1F[C].I==1)E.14(q)})}});6.1z({R:u(R,1v,E){B 1u=R&&R.1l==7K?R:{1X:E||!E&&1v||6.1t(R)&&R,25:R,1v:E&&1v||1v&&1v.1l!=4w&&1v};1u.25=(1u.25&&1u.25.1l==3Q?1u.25:{7R:7S,7T:5X}[1u.25])||7U;1u.1N=1u.1X;1u.1X=u(){6.6a(q,"3b");7(6.1t(1u.1N))1u.1N.14(q)};v 1u},1v:{},1F:{},6a:u(D,C){C=C||"3b";7(D.1F&&D.1F[C]){D.1F[C].4L();B f=D.1F[C][0];7(f)f.14(D)}},3b:u(D,1e,H){B z=q;B y=D.1q;B 4D=6.1m(D,"1h");y.5T="1G";z.a=u(){7(1e.49)1e.49.14(D,[z.2p]);7(H=="1d")6.1I(y,"1d",z.2p);J 7(6l(z.2p))y[H]=6l(z.2p)+"4S";y.1h="2D"};z.6v=u(){v 4T(6.1m(D,H))};z.Q=u(){B r=4T(6.30(D,H));v r&&r>-8z?r:z.6v()};z.2s=u(4f,43){z.4J=(1p 5o()).5w();z.2p=4f;z.a();z.4q=3L(u(){z.49(4f,43)},13)};z.1L=u(){7(!D.1y)D.1y={};D.1y[H]=q.Q();1e.1L=U;z.2s(0,D.1y[H]);7(H!="1d")y[H]="5a"};z.1K=u(){7(!D.1y)D.1y={};D.1y[H]=q.Q();1e.1K=U;z.2s(D.1y[H],0)};z.3X=u(){7(!D.1y)D.1y={};D.1y[H]=q.Q();7(4D=="1Z"){1e.1L=U;7(H!="1d")y[H]="5a";z.2s(0,D.1y[H])}J{1e.1K=U;z.2s(D.1y[H],0)}};z.49=u(32,47){B t=(1p 5o()).5w();7(t>1e.25+z.4J){4p(z.4q);z.4q=16;z.2p=47;z.a();7(D.2F)D.2F[H]=U;B 2c=U;P(B i 1x D.2F)7(D.2F[i]!==U)2c=12;7(2c){y.5T="";y.1h=4D;7(6.1m(D,"1h")=="1Z")y.1h="2D";7(1e.1K)y.1h="1Z";7(1e.1K||1e.1L)P(B p 1x D.2F)7(p=="1d")6.1I(y,p,D.1y[p]);J y[p]=""}7(2c&&6.1t(1e.1X))1e.1X.14(D)}J{B n=t-q.4J;B p=n/1e.25;z.2p=1e.1v&&6.1v[1e.1v]?6.1v[1e.1v](p,n,32,(47-32),1e.25):((-6h.7O(p*6h.8L)/2)+0.5)*(47-32)+32;z.a()}}}})}',62,545,'||||||jQuery|if|||||||||||||||||||this||||function|return||||||var|type|elem|fn|data|event|prop|length|else|each|ret|callback|xml|value|for|cur|speed|element|undefined|true|url|browser||name|||parentNode|false||apply|status|null|document|indexOf|className|val|firstChild|obj|opacity|options|nodeName|push|display|result|msie|global|constructor|css|test|handler|new|style|arg|expr|isFunction|opt|easing|window|in|orig|extend|arguments|context|typeof|filter|args|queue|hidden|events|attr|re|hide|show|add|old|target|table|token|replace|trigger|num|elems|div|ifModified|complete|key|none|tbody|params|while|string|nodeType|duration|animate|ready|height|timeout|nth|get|done|script|nextSibling|remove|not|index|tb|fix|merge|oid|z0|preventDefault|find|now|grep|pushStack|custom|innerHTML|first|cssFloat|catch|encodeURIComponent|Array|el|guid|sibling|error|block|oldblock|curAnim|try|stopPropagation|childNodes|id|wrap|text|success|safari|load|res|exec|al|_|last|substr|has|disabled|insertBefore|selected|checked|curCSS|map|firstNum|removeChild|re2|trim|getAttribute|onreadystatechange|handlers|on|originalEvent|fx|readyList|parPos|src|opera|param|mozilla|visible|domManip|clean|cloneNode|tr|call|split|XMLHttpRequest|ajaxSettings|append|child|String|empty|ajax|form|button|inArray|multiFilter|setRequestHeader|foundToken|9_|readyState|tag|modRes|responseText|second|ival|handleError|toUpperCase|setInterval|makeArray|slice|break|oWidth|Number|returnValue|lastModified|styleFloat|bind|width|isReady|toggle|jquery|dir|eval|mouseover|select|to|defaultView|position|oHeight|lastNum|async|step|globalEval|static|pos|swap|self|from|end|float|alpha|radio|inv|is|toLowerCase|visibility|00|clearInterval|timer|rec|isTimeout|dataType|_resort|RegExp|Function|getAll|requestDone|parents|matched|isXMLDoc|appendChild|oldDisplay|active|triggered|file|documentElement|fn2|startTime|Modified|shift|lastToggle|deep|handleHover|getResponseHeader|ct|submit|px|parseFloat|html|evalScripts|getComputedStyle|getElementById|clone|els|safariTimer|currentStyle|unload|force|execScript|getPropertyValue|newProp|setTimeout|zoom|getScript|1px|sl|settings|GET|rl|check|_toggle|processData|prepend|before|state|removeAttr|ajaxStart|lt|Date|gt|eq|contentType|previousSibling|after|parent|contains|getTime|checkbox|password|appendTo|image|reset|input|webkit|href|continue|beforeSend|ajaxSend|ownerDocument|getElementsByTagName|tmp|notmodified|parse|ajaxSuccess|ajaxComplete|_prefix|ajaxStop|even|odd|overflow|delete|POST|ajaxError|200|handle|httpSuccess|nodeValue|unshift|__ie_init|srcElement|body|pageX|tagName|clientX|scrollLeft|httpNotModified|dequeue|Last|scrollTop|304|xmlRes|unbind|100|Math|httpData|click|mouseout|parseInt|json|createElement|DOMContentLoaded|prevObject|ol|setArray|exclude|join|one|max|do|relative|clientHeight|clientWidth|loadIfModified|serialize|toString|thead|tfoot|td|th|textContent|ActiveXObject|htmlFor|Microsoft|class|XMLHTTP|readOnly|gi|match|getIfModified|9999|getJSON|getAttributeNode|post|setAttribute|ig|ajaxTimeout|ajaxSetup|concat|application|userAgent|compatible|www|compatMode|CSS1Compat|next|urlencoded|siblings|children|slideDown|prependTo|slideUp|Top|insertAfter|slideToggle|removeAttribute|addClass|removeClass|open|toggleClass|Content|Type|lastChild|If|only|Since|fadeIn|Thu|01|fadeOut|enabled|Jan|1970|fadeTo|GMT|textarea|Requested|With|prev|overrideMimeType|Connection|close|boxModel|right|object|Object|navigator|substring|abort|cos|font|send|slow|600|fast|400|location|protocol|300|pageY|clientY|method|action|cancelBubble|hover|fromElement|toElement|relatedTarget|removeEventListener|blur|readonly|focus|resize|content|scroll|dblclick|mousedown|mouseup|mousemove|responseXML|change|keydown|keypress|keyup|addEventListener|write|prototype|size|scr|ipt|createTextNode|defer|FORM|reverse|noConflict|loaded|10000|weight|line|Bottom|Right|Left|padding|border|Width|offsetHeight|offsetWidth|absolute|PI|left'.split('|'),0,{}));jQuery.noConflict();
|
admin/manage.php
CHANGED
@@ -172,6 +172,7 @@ function nggallery_manage_gallery_main() {
|
|
172 |
global $wpdb;
|
173 |
|
174 |
?>
|
|
|
175 |
<div class="wrap">
|
176 |
<h2><?php _e('Gallery Overview', 'nggallery') ?></h2>
|
177 |
<table id="the-list-x" width="100%" cellspacing="3" cellpadding="3" >
|
@@ -235,25 +236,22 @@ function nggallery_pciturelist() {
|
|
235 |
$act_thumbnail_url = get_option ('siteurl')."/".$act_gallery->path.ngg_get_thumbnail_folder($act_gallery->path, FALSE);
|
236 |
$act_thumb_prefix = ngg_get_thumbnail_prefix($act_gallery->path, FALSE);
|
237 |
|
238 |
-
//TODO: Do with wp_register_script
|
239 |
?>
|
240 |
|
241 |
-
<script type="text/javascript"
|
242 |
-
|
243 |
-
<script type="text/javascript"> $(document).ready(
|
244 |
function() {
|
245 |
-
|
246 |
-
/*
|
247 |
function() {
|
248 |
-
|
249 |
-
//
|
250 |
}
|
251 |
);
|
252 |
*/
|
253 |
});
|
254 |
</script>
|
255 |
-
<script type="text/javascript"> var tb_pathToImage = '<?php echo NGGALLERY_URLPATH ?>thickbox/
|
256 |
-
<script type="text/javascript" src="<?php echo NGGALLERY_URLPATH ?>thickbox/thickbox.js"></script>
|
257 |
<style type="text/css" media="all">@import "<?php echo NGGALLERY_URLPATH ?>thickbox/thickbox.css";</style>
|
258 |
<style type="text/css" media="all">
|
259 |
/** required for view button **/
|
172 |
global $wpdb;
|
173 |
|
174 |
?>
|
175 |
+
<script type="text/javascript"> var tb_pathToImage = '<?php echo NGGALLERY_URLPATH ?>thickbox/loadingAnimationv3.gif';</script>
|
176 |
<div class="wrap">
|
177 |
<h2><?php _e('Gallery Overview', 'nggallery') ?></h2>
|
178 |
<table id="the-list-x" width="100%" cellspacing="3" cellpadding="3" >
|
236 |
$act_thumbnail_url = get_option ('siteurl')."/".$act_gallery->path.ngg_get_thumbnail_folder($act_gallery->path, FALSE);
|
237 |
$act_thumb_prefix = ngg_get_thumbnail_prefix($act_gallery->path, FALSE);
|
238 |
|
|
|
239 |
?>
|
240 |
|
241 |
+
<script type="text/javascript">
|
242 |
+
jQuery(document).ready(
|
|
|
243 |
function() {
|
244 |
+
jQuery('.textarea1').Autoexpand([230,400]);
|
245 |
+
/* jQuery("input:checkbox").click(
|
246 |
function() {
|
247 |
+
jQuery(this).parents('tr').Highlight(500, '#ff0', function(){jQuery(this).parents('tr').css('backgroundColor', 'transparent');});
|
248 |
+
// jQuery(this).parents('tr').('#td.img').fadeOut(2000);
|
249 |
}
|
250 |
);
|
251 |
*/
|
252 |
});
|
253 |
</script>
|
254 |
+
<script type="text/javascript"> var tb_pathToImage = '<?php echo NGGALLERY_URLPATH ?>thickbox/loadingAnimationv3.gif';</script>
|
|
|
255 |
<style type="text/css" media="all">@import "<?php echo NGGALLERY_URLPATH ?>thickbox/thickbox.css";</style>
|
256 |
<style type="text/css" media="all">
|
257 |
/** required for view button **/
|
admin/settings.php
CHANGED
@@ -29,21 +29,19 @@ if(preg_match('#' . basename(__FILE__) . '#', $_SERVER['PHP_SELF'])) { die('You
|
|
29 |
if(!empty($messagetext)) { echo '<!-- Last Action --><div id="message" class="updated fade"><p>'.$messagetext.'</p></div>'; }
|
30 |
|
31 |
?>
|
32 |
-
<script type="text/javascript" src="<?php echo NGGALLERY_URLPATH ?>admin/js/jquery.js"></script>
|
33 |
-
<script type="text/javascript" src="<?php echo NGGALLERY_URLPATH ?>admin/js/interface.js"></script>
|
34 |
<script type="text/javascript">
|
35 |
var currentTab = null;
|
36 |
var inSlide = false;
|
37 |
-
|
38 |
function()
|
39 |
{
|
40 |
var url, tab = 0, tabIteration = 0;
|
41 |
|
42 |
url = window.location.href.split("#");
|
43 |
if (url.length == 2 && url[1].indexOf('-slider') > 0) {
|
44 |
-
currentTab =
|
45 |
if (currentTab.size() == 1) {
|
46 |
-
|
47 |
function(iteration)
|
48 |
{
|
49 |
if(this === currentTab.get(0)) {
|
@@ -55,11 +53,11 @@ if(preg_match('#' . basename(__FILE__) . '#', $_SERVER['PHP_SELF'])) { die('You
|
|
55 |
}
|
56 |
|
57 |
if(!currentTab) {
|
58 |
-
currentTab =
|
59 |
}
|
60 |
//Nicer, but buggy: DropToggleRight
|
61 |
currentTab.SlideToggleUp(500);
|
62 |
-
|
63 |
.eq(tabIteration).addClass('active')
|
64 |
.end()
|
65 |
.bind('click', switchTab);
|
@@ -71,15 +69,15 @@ if(preg_match('#' . basename(__FILE__) . '#', $_SERVER['PHP_SELF'])) { die('You
|
|
71 |
// get id from link
|
72 |
var tabName = this.href.split('#')[1];
|
73 |
this.blur();
|
74 |
-
if (inSlide == false && currentTab.get(0) !=
|
75 |
-
|
76 |
-
|
77 |
inSlide = true;
|
78 |
currentTab.SlideToggleUp(
|
79 |
500,
|
80 |
function()
|
81 |
{
|
82 |
-
currentTab =
|
83 |
}
|
84 |
);
|
85 |
} else {
|
@@ -92,23 +90,27 @@ if(preg_match('#' . basename(__FILE__) . '#', $_SERVER['PHP_SELF'])) { die('You
|
|
92 |
switch (value) {
|
93 |
case "none":
|
94 |
effectcode = "";
|
|
|
95 |
break;
|
96 |
case "thickbox":
|
97 |
effectcode = 'class="thickbox" rel="%GALLERY_NAME%"';
|
|
|
98 |
break;
|
99 |
case "lightbox":
|
100 |
effectcode = 'rel="lightbox[%GALLERY_NAME%]"';
|
|
|
101 |
break;
|
102 |
case "highslide":
|
103 |
effectcode = 'class="highslide" onclick="return hs.expand(this, { slideshowGroup: %GALLERY_NAME% })"';
|
|
|
104 |
break;
|
105 |
default:
|
106 |
break;
|
107 |
}
|
108 |
-
|
109 |
};
|
110 |
function setcolor(fileid,color) {
|
111 |
-
|
112 |
};
|
113 |
</script>
|
114 |
<div class="wrap" style="text-align: center">
|
@@ -162,6 +164,7 @@ if(preg_match('#' . basename(__FILE__) . '#', $_SERVER['PHP_SELF'])) { die('You
|
|
162 |
<form name="thumbnailsettings" method="POST" action="<?php echo htmlspecialchars($_SERVER['REQUEST_URI']).'#thumbnails-slider'; ?>" >
|
163 |
<input type="hidden" name="page_options" value="thumbwidth,thumbheight,thumbfix,thumbcrop,thumbresizebefore,thumbquality,thumbResampleMode" />
|
164 |
<fieldset class="options">
|
|
|
165 |
<table class="optiontable editform">
|
166 |
<tr valign="top">
|
167 |
<th align="left"><?php _e('Width x height (in pixel)','nggallery') ?></th>
|
@@ -277,7 +280,7 @@ if(preg_match('#' . basename(__FILE__) . '#', $_SERVER['PHP_SELF'])) { die('You
|
|
277 |
<div id="effects" style="display:none">
|
278 |
<h2><?php _e('Effects','nggallery'); ?></h2>
|
279 |
<form name="effectsform" method="POST" action="<?php echo htmlspecialchars($_SERVER['REQUEST_URI']).'#effects-slider'; ?>" >
|
280 |
-
<input type="hidden" name="page_options" value="thumbEffect,thumbCode" />
|
281 |
<p><?php _e('Here you can select the thumbnail effect, NextGEN Gallery will integrate the required HTML code in the images. Please note that only the Thickbox effect will automatic added to your theme.','nggallery'); ?>
|
282 |
<?php _e('With the placeholder','nggallery'); ?><strong> %GALLERY_NAME% </strong> <?php _e('you can activate a navigation through the images (depend on the effect). Change the code line only , when you use a different thumbnail effect or you know what you do.','nggallery'); ?></p>
|
283 |
<fieldset class="options">
|
@@ -298,6 +301,18 @@ if(preg_match('#' . basename(__FILE__) . '#', $_SERVER['PHP_SELF'])) { die('You
|
|
298 |
<td><textarea id="thumbCode" name="thumbCode" cols="50" rows="5"><?php echo htmlspecialchars(stripslashes($ngg_options[thumbCode])); ?></textarea></td>
|
299 |
</tr>
|
300 |
</table>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
301 |
<div class="submit"><input type="submit" name="updateoption" value="<?php _e('Update') ;?> »"/></div>
|
302 |
</fieldset>
|
303 |
</form>
|
@@ -413,11 +428,11 @@ if(preg_match('#' . basename(__FILE__) . '#', $_SERVER['PHP_SELF'])) { die('You
|
|
413 |
|
414 |
<div id="slideshow" style="display:none">
|
415 |
<form name="player_options" method="POST" action="<?php echo htmlspecialchars($_SERVER['REQUEST_URI']).'#slideshow-slider'; ?>" >
|
416 |
-
<input type="hidden" name="page_options" value="irWidth,irHeight,irShuffle,irLinkfromdisplay,irShownavigation,irShowicons,irOverstretch,irRotatetime,irTransition,irBackcolor,irFrontcolor,irLightcolor" />
|
417 |
<h2><?php _e('Slideshow','nggallery'); ?></h2>
|
418 |
<fieldset class="options">
|
419 |
<?php if (!NGGALLERY_IREXIST) { ?><p><div id="message" class="error fade"><p><?php _e('The imagerotator.swf is not in the nggallery folder, the slideshow will not work.','nggallery') ?></p></div></p><?php }?>
|
420 |
-
<p><?php _e('The settings are used in the Flash Image Rotator Version 3.
|
421 |
<?php _e('See more information for the Flash Player on the web page', 'nggallery') ?> <a href="http://www.jeroenwijering.com/?item=Flash_Image_Rotator" target="_blank">Flash Image Rotator from Jeroen Wijering</a>.<br />
|
422 |
<table class="optiontable" border="0" >
|
423 |
<tr>
|
@@ -462,13 +477,19 @@ if(preg_match('#' . basename(__FILE__) . '#', $_SERVER['PHP_SELF'])) { die('You
|
|
462 |
<select size="1" name="irTransition">
|
463 |
<option value="fade" <?php selected('fade', $ngg_options[irTransition]); ?> ><?php _e('fade', 'nggallery') ;?></option>
|
464 |
<option value="bgfade" <?php selected('bgfade', $ngg_options[irTransition]); ?> ><?php _e('bgfade', 'nggallery') ;?></option>
|
|
|
465 |
<option value="circles" <?php selected('circles', $ngg_options[irTransition]); ?> ><?php _e('circles', 'nggallery') ;?></option>
|
|
|
466 |
<option value="blocks" <?php selected('blocks', $ngg_options[irTransition]); ?> ><?php _e('blocks', 'nggallery') ;?></option>
|
467 |
<option value="fluids" <?php selected('fluids', $ngg_options[irTransition]); ?> ><?php _e('fluids', 'nggallery') ;?></option>
|
468 |
<option value="lines" <?php selected('lines', $ngg_options[irTransition]); ?> ><?php _e('lines', 'nggallery') ;?></option>
|
469 |
<option value="random" <?php selected('random', $ngg_options[irTransition]); ?> ><?php _e('random', 'nggallery') ;?></option>
|
470 |
</select>
|
471 |
</tr>
|
|
|
|
|
|
|
|
|
472 |
<tr>
|
473 |
<th><?php _e('Background Color','nggallery') ?>:</th>
|
474 |
<td><input type="text" size="6" maxlength="6" id="irBackcolor" name="irBackcolor" onchange="setcolor('#previewBack', this.value)" value="<?php echo $ngg_options[irBackcolor] ?>" />
|
@@ -484,6 +505,11 @@ if(preg_match('#' . basename(__FILE__) . '#', $_SERVER['PHP_SELF'])) { die('You
|
|
484 |
<td><input type="text" size="6" maxlength="6" id="irLightcolor" name="irLightcolor" onchange="setcolor('#previewLight', this.value)" value="<?php echo $ngg_options[irLightcolor] ?>" />
|
485 |
<input type="text" size="1" readonly="readonly" id="previewLight" style="background-color: #<?php echo $ngg_options[irLightcolor] ?>" /></td>
|
486 |
</tr>
|
|
|
|
|
|
|
|
|
|
|
487 |
</table>
|
488 |
<div class="clear"> </div>
|
489 |
<div class="submit"><input type="submit" name="updateoption" value="<?php _e('Update') ;?> »"/></div>
|
29 |
if(!empty($messagetext)) { echo '<!-- Last Action --><div id="message" class="updated fade"><p>'.$messagetext.'</p></div>'; }
|
30 |
|
31 |
?>
|
|
|
|
|
32 |
<script type="text/javascript">
|
33 |
var currentTab = null;
|
34 |
var inSlide = false;
|
35 |
+
jQuery(document).ready(
|
36 |
function()
|
37 |
{
|
38 |
var url, tab = 0, tabIteration = 0;
|
39 |
|
40 |
url = window.location.href.split("#");
|
41 |
if (url.length == 2 && url[1].indexOf('-slider') > 0) {
|
42 |
+
currentTab = jQuery('#' + url[1].substr(0, url[1].length-7));
|
43 |
if (currentTab.size() == 1) {
|
44 |
+
jQuery('#slider div').each(
|
45 |
function(iteration)
|
46 |
{
|
47 |
if(this === currentTab.get(0)) {
|
53 |
}
|
54 |
|
55 |
if(!currentTab) {
|
56 |
+
currentTab = jQuery('#slider div:first');
|
57 |
}
|
58 |
//Nicer, but buggy: DropToggleRight
|
59 |
currentTab.SlideToggleUp(500);
|
60 |
+
jQuery('#tabs a')
|
61 |
.eq(tabIteration).addClass('active')
|
62 |
.end()
|
63 |
.bind('click', switchTab);
|
69 |
// get id from link
|
70 |
var tabName = this.href.split('#')[1];
|
71 |
this.blur();
|
72 |
+
if (inSlide == false && currentTab.get(0) != jQuery('#' + tabName.substr(0, tabName.length-7)).get(0)) {
|
73 |
+
jQuery('#tabs a').removeClass('active');
|
74 |
+
jQuery(this).addClass('active');
|
75 |
inSlide = true;
|
76 |
currentTab.SlideToggleUp(
|
77 |
500,
|
78 |
function()
|
79 |
{
|
80 |
+
currentTab = jQuery('#' + tabName.substr(0, tabName.length-7)).SlideToggleUp(500, function(){inSlide=false;});
|
81 |
}
|
82 |
);
|
83 |
} else {
|
90 |
switch (value) {
|
91 |
case "none":
|
92 |
effectcode = "";
|
93 |
+
jQuery('#tbImage').hide("slow");
|
94 |
break;
|
95 |
case "thickbox":
|
96 |
effectcode = 'class="thickbox" rel="%GALLERY_NAME%"';
|
97 |
+
jQuery('#tbImage').show("slow");
|
98 |
break;
|
99 |
case "lightbox":
|
100 |
effectcode = 'rel="lightbox[%GALLERY_NAME%]"';
|
101 |
+
jQuery('#tbImage').hide("slow");
|
102 |
break;
|
103 |
case "highslide":
|
104 |
effectcode = 'class="highslide" onclick="return hs.expand(this, { slideshowGroup: %GALLERY_NAME% })"';
|
105 |
+
jQuery('#tbImage').hide("slow");
|
106 |
break;
|
107 |
default:
|
108 |
break;
|
109 |
}
|
110 |
+
jQuery("#thumbCode").val(effectcode);
|
111 |
};
|
112 |
function setcolor(fileid,color) {
|
113 |
+
jQuery(fileid).css("background", color );
|
114 |
};
|
115 |
</script>
|
116 |
<div class="wrap" style="text-align: center">
|
164 |
<form name="thumbnailsettings" method="POST" action="<?php echo htmlspecialchars($_SERVER['REQUEST_URI']).'#thumbnails-slider'; ?>" >
|
165 |
<input type="hidden" name="page_options" value="thumbwidth,thumbheight,thumbfix,thumbcrop,thumbresizebefore,thumbquality,thumbResampleMode" />
|
166 |
<fieldset class="options">
|
167 |
+
<p><?php _e('Please note : If you change the settings, you need to recreate the thumbnails under -> Manage Gallery .', 'nggallery') ?></p>
|
168 |
<table class="optiontable editform">
|
169 |
<tr valign="top">
|
170 |
<th align="left"><?php _e('Width x height (in pixel)','nggallery') ?></th>
|
280 |
<div id="effects" style="display:none">
|
281 |
<h2><?php _e('Effects','nggallery'); ?></h2>
|
282 |
<form name="effectsform" method="POST" action="<?php echo htmlspecialchars($_SERVER['REQUEST_URI']).'#effects-slider'; ?>" >
|
283 |
+
<input type="hidden" name="page_options" value="thumbEffect,thumbCode,thickboxImage" />
|
284 |
<p><?php _e('Here you can select the thumbnail effect, NextGEN Gallery will integrate the required HTML code in the images. Please note that only the Thickbox effect will automatic added to your theme.','nggallery'); ?>
|
285 |
<?php _e('With the placeholder','nggallery'); ?><strong> %GALLERY_NAME% </strong> <?php _e('you can activate a navigation through the images (depend on the effect). Change the code line only , when you use a different thumbnail effect or you know what you do.','nggallery'); ?></p>
|
286 |
<fieldset class="options">
|
301 |
<td><textarea id="thumbCode" name="thumbCode" cols="50" rows="5"><?php echo htmlspecialchars(stripslashes($ngg_options[thumbCode])); ?></textarea></td>
|
302 |
</tr>
|
303 |
</table>
|
304 |
+
|
305 |
+
<div id="tbImage" <?php if ($ngg_options[thumbEffect] != 'thickbox') echo 'style="display:none"'?> >
|
306 |
+
<table class="optiontable">
|
307 |
+
<tr valign="top">
|
308 |
+
<th><?php _e('Select loading image','nggallery') ?> :</th>
|
309 |
+
<td>
|
310 |
+
<label><input name="thickboxImage" id="v2" type="radio" title="Version 2" value="loadingAnimationv2.gif" <?php checked('loadingAnimationv2.gif', $ngg_options[thickboxImage]); ?> /></label> <img src="<?php echo NGGALLERY_URLPATH.'thickbox/loadingAnimationv2.gif' ?>" alt="Version 2" />
|
311 |
+
<label><input name="thickboxImage" id="v3" type="radio" title="Version 3" value="loadingAnimationv3.gif" <?php checked('loadingAnimationv3.gif', $ngg_options[thickboxImage]); ?> /></label> <img src="<?php echo NGGALLERY_URLPATH.'thickbox/loadingAnimationv3.gif' ?>" alt="Version 3" /></td>
|
312 |
+
</tr>
|
313 |
+
</table>
|
314 |
+
</div>
|
315 |
+
|
316 |
<div class="submit"><input type="submit" name="updateoption" value="<?php _e('Update') ;?> »"/></div>
|
317 |
</fieldset>
|
318 |
</form>
|
428 |
|
429 |
<div id="slideshow" style="display:none">
|
430 |
<form name="player_options" method="POST" action="<?php echo htmlspecialchars($_SERVER['REQUEST_URI']).'#slideshow-slider'; ?>" >
|
431 |
+
<input type="hidden" name="page_options" value="irWidth,irHeight,irShuffle,irLinkfromdisplay,irShownavigation,irShowicons,irOverstretch,irRotatetime,irTransition,irKenburns,irBackcolor,irFrontcolor,irLightcolor,irXHTMLvalid" />
|
432 |
<h2><?php _e('Slideshow','nggallery'); ?></h2>
|
433 |
<fieldset class="options">
|
434 |
<?php if (!NGGALLERY_IREXIST) { ?><p><div id="message" class="error fade"><p><?php _e('The imagerotator.swf is not in the nggallery folder, the slideshow will not work.','nggallery') ?></p></div></p><?php }?>
|
435 |
+
<p><?php _e('The settings are used in the Flash Image Rotator Version 3.8 .', 'nggallery') ?>
|
436 |
<?php _e('See more information for the Flash Player on the web page', 'nggallery') ?> <a href="http://www.jeroenwijering.com/?item=Flash_Image_Rotator" target="_blank">Flash Image Rotator from Jeroen Wijering</a>.<br />
|
437 |
<table class="optiontable" border="0" >
|
438 |
<tr>
|
477 |
<select size="1" name="irTransition">
|
478 |
<option value="fade" <?php selected('fade', $ngg_options[irTransition]); ?> ><?php _e('fade', 'nggallery') ;?></option>
|
479 |
<option value="bgfade" <?php selected('bgfade', $ngg_options[irTransition]); ?> ><?php _e('bgfade', 'nggallery') ;?></option>
|
480 |
+
<option value="slowfade" <?php selected('slowfade', $ngg_options[irTransition]); ?> ><?php _e('slowfade', 'nggallery') ;?></option>
|
481 |
<option value="circles" <?php selected('circles', $ngg_options[irTransition]); ?> ><?php _e('circles', 'nggallery') ;?></option>
|
482 |
+
<option value="bubbles" <?php selected('bubbles', $ngg_options[irTransition]); ?> ><?php _e('bubbles', 'nggallery') ;?></option>
|
483 |
<option value="blocks" <?php selected('blocks', $ngg_options[irTransition]); ?> ><?php _e('blocks', 'nggallery') ;?></option>
|
484 |
<option value="fluids" <?php selected('fluids', $ngg_options[irTransition]); ?> ><?php _e('fluids', 'nggallery') ;?></option>
|
485 |
<option value="lines" <?php selected('lines', $ngg_options[irTransition]); ?> ><?php _e('lines', 'nggallery') ;?></option>
|
486 |
<option value="random" <?php selected('random', $ngg_options[irTransition]); ?> ><?php _e('random', 'nggallery') ;?></option>
|
487 |
</select>
|
488 |
</tr>
|
489 |
+
<tr>
|
490 |
+
<th><?php _e('Use slow zooming effect','nggallery') ?>:</th>
|
491 |
+
<td><input name="irKenburns" type="checkbox" value="1" <?php checked('1', $ngg_options[irKenburns]); ?> /></td>
|
492 |
+
</tr>
|
493 |
<tr>
|
494 |
<th><?php _e('Background Color','nggallery') ?>:</th>
|
495 |
<td><input type="text" size="6" maxlength="6" id="irBackcolor" name="irBackcolor" onchange="setcolor('#previewBack', this.value)" value="<?php echo $ngg_options[irBackcolor] ?>" />
|
505 |
<td><input type="text" size="6" maxlength="6" id="irLightcolor" name="irLightcolor" onchange="setcolor('#previewLight', this.value)" value="<?php echo $ngg_options[irLightcolor] ?>" />
|
506 |
<input type="text" size="1" readonly="readonly" id="previewLight" style="background-color: #<?php echo $ngg_options[irLightcolor] ?>" /></td>
|
507 |
</tr>
|
508 |
+
<tr>
|
509 |
+
<th><?php _e('Try XHTML validation (with CDATA)','nggallery') ?>:</th>
|
510 |
+
<td><input name="irXHTMLvalid" type="checkbox" value="1" <?php checked('1', $ngg_options[irXHTMLvalid]); ?> />
|
511 |
+
<?php _e('Important : Could causes problem at some browser. Please recheck your page.','nggallery') ?></td>
|
512 |
+
</tr>
|
513 |
</table>
|
514 |
<div class="clear"> </div>
|
515 |
<div class="submit"><input type="submit" name="updateoption" value="<?php _e('Update') ;?> »"/></div>
|
admin/setup.php
CHANGED
@@ -26,7 +26,7 @@ if(preg_match('#' . basename(__FILE__) . '#', $_SERVER['PHP_SELF'])) { die('You
|
|
26 |
if(!empty($messagetext)) { echo '<!-- Last Action --><div id="message" class="updated fade"><p>'.$messagetext.'</p></div>'; }
|
27 |
|
28 |
?>
|
29 |
-
|
30 |
<div class="wrap">
|
31 |
<h2><?php _e('Reset options', 'nggallery') ;?></h2>
|
32 |
<form name="resetsettings" method="post">
|
26 |
if(!empty($messagetext)) { echo '<!-- Last Action --><div id="message" class="updated fade"><p>'.$messagetext.'</p></div>'; }
|
27 |
|
28 |
?>
|
29 |
+
|
30 |
<div class="wrap">
|
31 |
<h2><?php _e('Reset options', 'nggallery') ;?></h2>
|
32 |
<form name="resetsettings" method="post">
|
changelog.txt
CHANGED
@@ -1,6 +1,25 @@
|
|
1 |
NextGEN Gallery
|
2 |
by Alex Rabe & NextGEN DEV Team
|
3 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
4 |
V0.43 - 20.05.2007
|
5 |
- Changed : Rename Thumbnail class to avoid php name collision
|
6 |
- Bugfix : Missing translation flag in setup
|
1 |
NextGEN Gallery
|
2 |
by Alex Rabe & NextGEN DEV Team
|
3 |
|
4 |
+
V0.50 - 28.05.2007
|
5 |
+
- NEW : Select multiple files for upload (THX to Diego A., http://www.fyneworks.com)
|
6 |
+
- NEW : Sidebar widget contain now Slideshow, recent images and random images
|
7 |
+
- Added : New Option for Imagerotator 3.8 (Slow zoom effect)
|
8 |
+
- Added : Option for CDATA wrapper (not working proper)
|
9 |
+
- Added : Option for Thickbox Loading Image
|
10 |
+
- Added : CSS file for dKret2 (THK to Joern)
|
11 |
+
- Added : Better file permission check
|
12 |
+
- Changed : Fixed ratio create better thubnails in portrait mode
|
13 |
+
- Changed : All jQuery scripts are now in "No Conflict" mode
|
14 |
+
- Changed : Script loading now via wp_enqueue_script
|
15 |
+
- Changed : Add constant values for folder/file permission
|
16 |
+
- Changed : Use description in <A href title>
|
17 |
+
- Bugfix : Remove wrong DIV tag in slideshow
|
18 |
+
- Bugfix : Tag [Slideshow=id,width,height] didn't work proper
|
19 |
+
- Bugfix : Name conflict in Album script (serialize) (THX to Die-Andis)
|
20 |
+
- Bugfix : Changed check for CSS activation
|
21 |
+
- Bugfix : Changed check for safe-mode (Don't ask)
|
22 |
+
|
23 |
V0.43 - 20.05.2007
|
24 |
- Changed : Rename Thumbnail class to avoid php name collision
|
25 |
- Bugfix : Missing translation flag in setup
|
css/Black_Minimalism .css
CHANGED
@@ -98,6 +98,7 @@ it's only a template design
|
|
98 |
/* ----------- Gallery style -------------*/
|
99 |
|
100 |
.ngg-galleryoverview {
|
|
|
101 |
margin-top: 10px;
|
102 |
width: 100%;
|
103 |
clear:both;
|
@@ -178,26 +179,15 @@ it's only a template design
|
|
178 |
}
|
179 |
|
180 |
/* ----------- Sidebar widget -------------*/
|
181 |
-
.ngg-widget
|
182 |
-
|
183 |
-
|
184 |
-
|
185 |
-
ul.ngg-randomlist {
|
186 |
-
background:transparent none repeat scroll 0% !important;
|
187 |
-
display:inline;
|
188 |
margin:0pt;
|
189 |
-
padding:
|
190 |
}
|
191 |
|
192 |
-
|
193 |
border:2px solid #A9A9A9;
|
194 |
margin:0pt 2px 2px 0px;
|
195 |
padding:1px;
|
196 |
-
}
|
197 |
-
|
198 |
-
ul.ngg-randomlist li {
|
199 |
-
display:block;
|
200 |
-
float:left;
|
201 |
-
padding:0pt 2px 0px 0px;
|
202 |
-
position:relative;
|
203 |
-
}
|
98 |
/* ----------- Gallery style -------------*/
|
99 |
|
100 |
.ngg-galleryoverview {
|
101 |
+
overflow: hidden;
|
102 |
margin-top: 10px;
|
103 |
width: 100%;
|
104 |
clear:both;
|
179 |
}
|
180 |
|
181 |
/* ----------- Sidebar widget -------------*/
|
182 |
+
.ngg-widget,
|
183 |
+
.ngg-widget-slideshow {
|
184 |
+
overflow: hidden;
|
|
|
|
|
|
|
|
|
185 |
margin:0pt;
|
186 |
+
padding:5px 0px 0px 0pt;
|
187 |
}
|
188 |
|
189 |
+
.ngg-widget img {
|
190 |
border:2px solid #A9A9A9;
|
191 |
margin:0pt 2px 2px 0px;
|
192 |
padding:1px;
|
193 |
+
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
css/ngg_dKret2.css
ADDED
@@ -0,0 +1,188 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
CSS Name: DKret2 Styles
|
3 |
+
Description: NextGEN dKret2 Gallery Stylesheet
|
4 |
+
Author: J. Kretzschmar
|
5 |
+
Version: 1.10
|
6 |
+
|
7 |
+
This is a template stylesheet that can be used with NextGEN Gallery. I tested the
|
8 |
+
styles with the dKret2 theme.
|
9 |
+
|
10 |
+
*/
|
11 |
+
|
12 |
+
/* ----------- Album Styles Extend -------------*/
|
13 |
+
|
14 |
+
.ngg-albumoverview {
|
15 |
+
margin-top: 10px;
|
16 |
+
width: 100%;
|
17 |
+
clear:both;
|
18 |
+
display:block !important;
|
19 |
+
}
|
20 |
+
|
21 |
+
.ngg-album {
|
22 |
+
overflow: hidden;
|
23 |
+
padding: 5px;
|
24 |
+
margin-bottom: 5px;
|
25 |
+
border: 1px solid #cccccc;
|
26 |
+
}
|
27 |
+
|
28 |
+
.ngg-albumtitle {
|
29 |
+
text-align: left;
|
30 |
+
font-weight: bold;
|
31 |
+
margin:0px;
|
32 |
+
padding:0px;
|
33 |
+
font-size: 1.4em;
|
34 |
+
margin-bottom: 10px;
|
35 |
+
}
|
36 |
+
|
37 |
+
.ngg-thumbnail {
|
38 |
+
float: left;
|
39 |
+
margin-right: 12px;
|
40 |
+
}
|
41 |
+
|
42 |
+
.ngg-thumbnail img {
|
43 |
+
background-color:#FFFFFF;
|
44 |
+
border:1px solid #A9A9A9;
|
45 |
+
margin:4px 0px 4px 5px;
|
46 |
+
padding:4px;
|
47 |
+
position:relative;
|
48 |
+
}
|
49 |
+
|
50 |
+
.ngg-thumbnail img:hover {
|
51 |
+
background-color: #A9A9A9;
|
52 |
+
}
|
53 |
+
|
54 |
+
.ngg-description {
|
55 |
+
text-align: left;
|
56 |
+
}
|
57 |
+
|
58 |
+
/* ----------- Album Styles Compact -------------*/
|
59 |
+
|
60 |
+
.ngg-album-compact {
|
61 |
+
float:left;
|
62 |
+
height:180px;
|
63 |
+
padding-right:6px !important;
|
64 |
+
margin:0px !important;
|
65 |
+
text-align:left;
|
66 |
+
width:120px;
|
67 |
+
}
|
68 |
+
|
69 |
+
.ngg-album-compactbox {
|
70 |
+
background:transparent url(albumset.gif) no-repeat scroll 0%;
|
71 |
+
height:86px;
|
72 |
+
margin:0pt 0pt 6px !important;
|
73 |
+
padding:12px 0pt 0pt 7px !important;
|
74 |
+
width:120px;
|
75 |
+
}
|
76 |
+
|
77 |
+
|
78 |
+
.ngg-album-compactbox .Thumb {
|
79 |
+
border:1px solid #000000;
|
80 |
+
margin:0px !important;
|
81 |
+
padding:0px !important;
|
82 |
+
}
|
83 |
+
|
84 |
+
.ngg-album-compact h4 {
|
85 |
+
font-size:15px;
|
86 |
+
font-weight:bold;
|
87 |
+
margin-bottom:0px;
|
88 |
+
margin-top:0px;
|
89 |
+
width:110px;
|
90 |
+
}
|
91 |
+
|
92 |
+
.ngg-album-compact p {
|
93 |
+
font-size:11px;
|
94 |
+
margin-top:2px;
|
95 |
+
}
|
96 |
+
|
97 |
+
/* ----------- Gallery style -------------*/
|
98 |
+
|
99 |
+
.ngg-galleryoverview {
|
100 |
+
margin-top: 10px;
|
101 |
+
width: 100%;
|
102 |
+
clear:both;
|
103 |
+
display:block !important;
|
104 |
+
}
|
105 |
+
|
106 |
+
.ngg-gallery-thumbnail-box {
|
107 |
+
float: left;
|
108 |
+
}
|
109 |
+
|
110 |
+
.ngg-gallery-thumbnail {
|
111 |
+
float: left;
|
112 |
+
margin-right: 5px;
|
113 |
+
}
|
114 |
+
|
115 |
+
.ngg-gallery-thumbnail img {
|
116 |
+
background-color:#FFFFFF;
|
117 |
+
border:1px solid #A9A9A9;
|
118 |
+
display:block;
|
119 |
+
margin:4px 0px 4px 5px;
|
120 |
+
padding:4px;
|
121 |
+
position:relative;
|
122 |
+
}
|
123 |
+
|
124 |
+
.ngg-gallery-thumbnail img:hover {
|
125 |
+
background-color: #A9A9A9;
|
126 |
+
}
|
127 |
+
|
128 |
+
/* ----------- Gallery navigation -------------*/
|
129 |
+
|
130 |
+
.ngg-navigation {
|
131 |
+
font-size:0.9em !important;
|
132 |
+
clear:both !important;
|
133 |
+
display:block !important;
|
134 |
+
padding-top:15px;
|
135 |
+
text-align:center;
|
136 |
+
|
137 |
+
}
|
138 |
+
|
139 |
+
.ngg-navigation span {
|
140 |
+
font-weight:bold;
|
141 |
+
margin:0pt 6px;
|
142 |
+
}
|
143 |
+
|
144 |
+
.ngg-navigation a.page-numbers, a.next, a.prev {
|
145 |
+
border:1px solid #DDDDDD;
|
146 |
+
margin-right:3px;
|
147 |
+
padding:3px 7px;
|
148 |
+
}
|
149 |
+
|
150 |
+
.ngg-navigation a.page-numbers:hover, a.next:hover, a.prev:hover {
|
151 |
+
background-color: #0066CC;
|
152 |
+
color: #FFFFFF;
|
153 |
+
text-decoration: none;
|
154 |
+
}
|
155 |
+
|
156 |
+
/* ----------- Slideshow -------------*/
|
157 |
+
.slideshow {
|
158 |
+
margin-left: auto;
|
159 |
+
margin-right: auto;
|
160 |
+
text-align:center;
|
161 |
+
}
|
162 |
+
|
163 |
+
.slideshowlink {
|
164 |
+
|
165 |
+
}
|
166 |
+
|
167 |
+
/* ----------- Single picture -------------*/
|
168 |
+
.ngg-singlepic {
|
169 |
+
background-color:#FFFFFF;
|
170 |
+
border:1px solid #A9A9A9;
|
171 |
+
display:block;
|
172 |
+
margin:5px;
|
173 |
+
padding:4px;
|
174 |
+
position:relative;
|
175 |
+
}
|
176 |
+
|
177 |
+
/* ----------- Sidebar widget -------------*/
|
178 |
+
.ngg-widget,
|
179 |
+
.ngg-widget-slideshow {
|
180 |
+
overflow: hidden;
|
181 |
+
padding:5px 0px 0px 0pt;
|
182 |
+
}
|
183 |
+
|
184 |
+
.ngg-widget img {
|
185 |
+
border:2px solid #A9A9A9;
|
186 |
+
margin:0pt 2px 2px 0px;
|
187 |
+
padding:1px;
|
188 |
+
}
|
css/ngg_k2.css
CHANGED
@@ -185,26 +185,15 @@ it's only a template design
|
|
185 |
}
|
186 |
|
187 |
/* ----------- Sidebar widget -------------*/
|
188 |
-
.ngg-widget
|
189 |
-
|
190 |
-
|
191 |
-
|
192 |
-
ul.ngg-randomlist {
|
193 |
-
background:transparent none repeat scroll 0% !important;
|
194 |
-
display:inline;
|
195 |
margin:0pt;
|
196 |
-
padding:
|
197 |
}
|
198 |
|
199 |
-
|
200 |
border:2px solid #A9A9A9;
|
201 |
margin:0pt 2px 2px 0px;
|
202 |
padding:1px;
|
203 |
}
|
204 |
-
|
205 |
-
ul.ngg-randomlist li {
|
206 |
-
display:block;
|
207 |
-
float:left;
|
208 |
-
padding:0pt 2px 0px 0px;
|
209 |
-
position:relative;
|
210 |
-
}
|
185 |
}
|
186 |
|
187 |
/* ----------- Sidebar widget -------------*/
|
188 |
+
.ngg-widget,
|
189 |
+
.ngg-widget-slideshow {
|
190 |
+
overflow: hidden;
|
|
|
|
|
|
|
|
|
191 |
margin:0pt;
|
192 |
+
padding:5px 0px 0px 0pt;
|
193 |
}
|
194 |
|
195 |
+
.ngg-widget img {
|
196 |
border:2px solid #A9A9A9;
|
197 |
margin:0pt 2px 2px 0px;
|
198 |
padding:1px;
|
199 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
css/ngg_shadow.css
CHANGED
@@ -177,27 +177,16 @@ it's only a template design
|
|
177 |
}
|
178 |
|
179 |
/* ----------- Sidebar widget -------------*/
|
180 |
-
.ngg-widget {
|
181 |
-
|
182 |
-
}
|
183 |
|
184 |
-
|
185 |
-
|
186 |
-
|
187 |
margin:0pt;
|
188 |
-
padding:
|
189 |
}
|
190 |
|
191 |
-
|
192 |
border:2px solid #A9A9A9;
|
193 |
margin:0pt 2px 2px 0px;
|
194 |
padding:1px;
|
195 |
}
|
196 |
-
|
197 |
-
ul.ngg-randomlist li {
|
198 |
-
display:block;
|
199 |
-
float:left;
|
200 |
-
padding:0pt 2px 0px 0px;
|
201 |
-
position:relative;
|
202 |
-
}
|
203 |
-
|
177 |
}
|
178 |
|
179 |
/* ----------- Sidebar widget -------------*/
|
|
|
|
|
|
|
180 |
|
181 |
+
.ngg-widget,
|
182 |
+
.ngg-widget-slideshow {
|
183 |
+
overflow: hidden;
|
184 |
margin:0pt;
|
185 |
+
padding:5px 0px 0px 0pt;
|
186 |
}
|
187 |
|
188 |
+
.ngg-widget img {
|
189 |
border:2px solid #A9A9A9;
|
190 |
margin:0pt 2px 2px 0px;
|
191 |
padding:1px;
|
192 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
css/nggallery.css
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
CSS Name: Default Styles
|
3 |
Description: NextGEN Default Gallery Stylesheet
|
4 |
Author: Alex Rabe
|
5 |
-
Version: 1.
|
6 |
|
7 |
This is a template stylesheet that can be used with NextGEN Gallery. I tested the
|
8 |
styles with a default theme Kubrick. Modify it when your theme struggle with it,
|
@@ -20,6 +20,7 @@ it's only a template design
|
|
20 |
}
|
21 |
|
22 |
.ngg-album {
|
|
|
23 |
height: 130px;
|
24 |
padding: 5px;
|
25 |
margin-bottom: 5px;
|
@@ -98,6 +99,7 @@ it's only a template design
|
|
98 |
/* ----------- Gallery style -------------*/
|
99 |
|
100 |
.ngg-galleryoverview {
|
|
|
101 |
margin-top: 10px;
|
102 |
width: 100%;
|
103 |
clear:both;
|
@@ -167,36 +169,25 @@ it's only a template design
|
|
167 |
|
168 |
/* ----------- Single picture -------------*/
|
169 |
.ngg-singlepic {
|
|
|
170 |
background-color:#FFFFFF;
|
171 |
border:1px solid #A9A9A9;
|
172 |
display:block;
|
173 |
-
margin:5px;
|
174 |
padding:4px;
|
175 |
position:relative;
|
176 |
}
|
177 |
|
178 |
/* ----------- Sidebar widget -------------*/
|
179 |
-
.ngg-widget
|
180 |
-
|
181 |
-
|
182 |
-
|
183 |
-
ul.ngg-randomlist {
|
184 |
-
background:transparent none repeat scroll 0% !important;
|
185 |
-
display:inline;
|
186 |
margin:0pt;
|
187 |
-
padding:
|
188 |
}
|
189 |
|
190 |
-
|
191 |
border:2px solid #A9A9A9;
|
192 |
margin:0pt 2px 2px 0px;
|
193 |
padding:1px;
|
194 |
-
}
|
195 |
-
|
196 |
-
ul.ngg-randomlist li {
|
197 |
-
display:block;
|
198 |
-
float:left;
|
199 |
-
padding:0pt 2px 0px 0px;
|
200 |
-
position:relative;
|
201 |
-
}
|
202 |
-
|
2 |
CSS Name: Default Styles
|
3 |
Description: NextGEN Default Gallery Stylesheet
|
4 |
Author: Alex Rabe
|
5 |
+
Version: 1.000
|
6 |
|
7 |
This is a template stylesheet that can be used with NextGEN Gallery. I tested the
|
8 |
styles with a default theme Kubrick. Modify it when your theme struggle with it,
|
20 |
}
|
21 |
|
22 |
.ngg-album {
|
23 |
+
overflow: hidden;
|
24 |
height: 130px;
|
25 |
padding: 5px;
|
26 |
margin-bottom: 5px;
|
99 |
/* ----------- Gallery style -------------*/
|
100 |
|
101 |
.ngg-galleryoverview {
|
102 |
+
overflow: hidden;
|
103 |
margin-top: 10px;
|
104 |
width: 100%;
|
105 |
clear:both;
|
169 |
|
170 |
/* ----------- Single picture -------------*/
|
171 |
.ngg-singlepic {
|
172 |
+
float: right;
|
173 |
background-color:#FFFFFF;
|
174 |
border:1px solid #A9A9A9;
|
175 |
display:block;
|
176 |
+
margin:4px 0px 4px 5px;
|
177 |
padding:4px;
|
178 |
position:relative;
|
179 |
}
|
180 |
|
181 |
/* ----------- Sidebar widget -------------*/
|
182 |
+
.ngg-widget,
|
183 |
+
.ngg-widget-slideshow {
|
184 |
+
overflow: hidden;
|
|
|
|
|
|
|
|
|
185 |
margin:0pt;
|
186 |
+
padding:5px 0px 0px 0pt;
|
187 |
}
|
188 |
|
189 |
+
.ngg-widget img {
|
190 |
border:2px solid #A9A9A9;
|
191 |
margin:0pt 2px 2px 0px;
|
192 |
padding:1px;
|
193 |
+
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
lang/nggallery.po
CHANGED
@@ -2,7 +2,7 @@ msgid ""
|
|
2 |
msgstr ""
|
3 |
"Project-Id-Version: NextGEN Gallery\n"
|
4 |
"POT-Creation-Date: \n"
|
5 |
-
"PO-Revision-Date: 2007-05-
|
6 |
"Last-Translator: Alex Rabe\n"
|
7 |
"Language-Team: Alex Rabe\n"
|
8 |
"MIME-Version: 1.0\n"
|
@@ -15,22 +15,22 @@ msgstr ""
|
|
15 |
"X-Poedit-SearchPath-0: .\n"
|
16 |
"X-Poedit-SearchPath-1: ..\n"
|
17 |
|
18 |
-
#: ../nggallery.php:
|
19 |
msgid "Sorry, NextGEN Gallery works only under WordPress 2.1 or higher"
|
20 |
msgstr ""
|
21 |
|
22 |
#: ../nggbutton.php:36
|
23 |
-
#: ../admin/addgallery.php:
|
24 |
-
#: ../admin/addgallery.php:
|
25 |
-
#: ../admin/admin.php:
|
26 |
#: ../admin/manage.php:44
|
27 |
-
#: ../admin/manage.php:
|
28 |
-
#: ../admin/settings.php:
|
29 |
msgid "Gallery"
|
30 |
msgstr ""
|
31 |
|
32 |
#: ../nggbutton.php:37
|
33 |
-
#: ../admin/admin.php:
|
34 |
msgid "Album"
|
35 |
msgstr ""
|
36 |
|
@@ -57,14 +57,14 @@ msgid "Image list"
|
|
57 |
msgstr ""
|
58 |
|
59 |
#: ../nggbutton.php:64
|
60 |
-
#: ../admin/settings.php:
|
61 |
-
#: ../admin/settings.php:
|
62 |
-
#: ../admin/settings.php:
|
63 |
msgid "Slideshow"
|
64 |
msgstr ""
|
65 |
|
66 |
#: ../nggbutton.php:75
|
67 |
-
#: ../admin/album.php:
|
68 |
msgid "Select album"
|
69 |
msgstr ""
|
70 |
|
@@ -101,8 +101,8 @@ msgid "No effect"
|
|
101 |
msgstr ""
|
102 |
|
103 |
#: ../nggbutton.php:124
|
104 |
-
#: ../admin/settings.php:
|
105 |
-
#: ../admin/settings.php:
|
106 |
msgid "Watermark"
|
107 |
msgstr ""
|
108 |
|
@@ -151,72 +151,123 @@ msgstr ""
|
|
151 |
msgid "[Show picture list]"
|
152 |
msgstr ""
|
153 |
|
154 |
-
#: ../nggwidget.php:
|
155 |
-
msgid "
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
156 |
msgstr ""
|
157 |
|
158 |
-
#: ../nggwidget.php:
|
159 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
160 |
#: ../admin/manage.php:183
|
161 |
-
#: ../admin/manage.php:
|
162 |
msgid "Title"
|
163 |
msgstr ""
|
164 |
|
165 |
-
#: ../nggwidget.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
166 |
msgid "Number of pics"
|
167 |
msgstr ""
|
168 |
|
169 |
-
#: ../nggwidget.php:
|
170 |
-
|
|
|
171 |
msgstr ""
|
172 |
|
173 |
-
#: ../nggwidget.php:
|
174 |
-
|
|
|
175 |
msgstr ""
|
176 |
|
177 |
-
#: ../nggwidget.php:
|
|
|
178 |
msgid "Mode"
|
179 |
msgstr ""
|
180 |
|
181 |
-
#: ../nggwidget.php:
|
182 |
-
#: ../
|
|
|
183 |
msgid "none"
|
184 |
msgstr ""
|
185 |
|
186 |
-
#: ../nggwidget.php:
|
|
|
187 |
msgid "web2.0"
|
188 |
msgstr ""
|
189 |
|
190 |
-
#: ../nggwidget.php:
|
|
|
191 |
msgid "Show in the main page"
|
192 |
msgstr ""
|
193 |
|
194 |
-
#: ../nggwidget.php:
|
|
|
195 |
msgid "yes"
|
196 |
msgstr ""
|
197 |
|
198 |
-
#: ../nggwidget.php:
|
|
|
199 |
msgid "no"
|
200 |
msgstr ""
|
201 |
|
202 |
-
#: ../nggwidget.php:
|
|
|
203 |
msgid "Show in"
|
204 |
msgstr ""
|
205 |
|
206 |
-
#: ../nggwidget.php:
|
|
|
207 |
msgid "All categories"
|
208 |
msgstr ""
|
209 |
|
210 |
-
#: ../nggwidget.php:
|
|
|
211 |
msgid "Only which are not listed"
|
212 |
msgstr ""
|
213 |
|
214 |
-
#: ../nggwidget.php:
|
|
|
215 |
msgid "Only which are listed"
|
216 |
msgstr ""
|
217 |
|
218 |
-
#: ../nggwidget.php:
|
219 |
-
|
|
|
|
|
|
|
|
|
|
|
220 |
msgstr ""
|
221 |
|
222 |
#: ../admin/about.php:9
|
@@ -345,254 +396,267 @@ msgid "We would like to thank this people which support us in the work :"
|
|
345 |
msgstr ""
|
346 |
|
347 |
#: ../admin/addgallery.php:23
|
348 |
-
#: ../admin/addgallery.php:
|
349 |
msgid "Upload failed!"
|
350 |
msgstr ""
|
351 |
|
352 |
#: ../admin/addgallery.php:103
|
353 |
-
|
|
|
|
|
|
|
|
|
354 |
msgid "Add new gallery"
|
355 |
msgstr ""
|
356 |
|
357 |
-
#: ../admin/addgallery.php:
|
358 |
-
#: ../admin/addgallery.php:
|
359 |
msgid "Upload a Zip-File"
|
360 |
msgstr ""
|
361 |
|
362 |
-
#: ../admin/addgallery.php:
|
363 |
-
#: ../admin/addgallery.php:
|
364 |
msgid "Import image folder"
|
365 |
msgstr ""
|
366 |
|
367 |
-
#: ../admin/addgallery.php:
|
368 |
-
#: ../admin/addgallery.php:
|
369 |
msgid "Upload Images"
|
370 |
msgstr ""
|
371 |
|
372 |
-
#: ../admin/addgallery.php:
|
373 |
msgid "New Gallery"
|
374 |
msgstr ""
|
375 |
|
376 |
-
#: ../admin/addgallery.php:
|
377 |
msgid "Create a new , empty gallery below the folder"
|
378 |
msgstr ""
|
379 |
|
380 |
-
#: ../admin/addgallery.php:
|
381 |
msgid "Allowed characters for file and folder names are"
|
382 |
msgstr ""
|
383 |
|
384 |
-
#: ../admin/addgallery.php:
|
385 |
msgid "Add gallery"
|
386 |
msgstr ""
|
387 |
|
388 |
-
#: ../admin/addgallery.php:
|
389 |
msgid "Select Zip-File"
|
390 |
msgstr ""
|
391 |
|
392 |
-
#: ../admin/addgallery.php:
|
393 |
msgid "Upload a zip file with images"
|
394 |
msgstr ""
|
395 |
|
396 |
-
#: ../admin/addgallery.php:
|
397 |
msgid "Start upload"
|
398 |
msgstr ""
|
399 |
|
400 |
-
#: ../admin/addgallery.php:
|
401 |
msgid "Import from Server path:"
|
402 |
msgstr ""
|
403 |
|
404 |
-
#: ../admin/addgallery.php:
|
405 |
msgid "Import a folder with images. Please note :"
|
406 |
msgstr ""
|
407 |
|
408 |
-
#: ../admin/addgallery.php:
|
409 |
msgid "For save_mode = ON you need to add the subfolder thumbs manually"
|
410 |
msgstr ""
|
411 |
|
412 |
-
#: ../admin/addgallery.php:
|
413 |
msgid "Import folder"
|
414 |
msgstr ""
|
415 |
|
416 |
-
#: ../admin/addgallery.php:
|
417 |
msgid "Upload image"
|
418 |
msgstr ""
|
419 |
|
420 |
-
#: ../admin/addgallery.php:
|
421 |
msgid "in to"
|
422 |
msgstr ""
|
423 |
|
424 |
-
#: ../admin/addgallery.php:
|
425 |
msgid "Choose gallery"
|
426 |
msgstr ""
|
427 |
|
428 |
-
#: ../admin/addgallery.php:
|
429 |
-
msgid "
|
430 |
msgstr ""
|
431 |
|
432 |
-
#: ../admin/addgallery.php:
|
433 |
msgid "Upload images"
|
434 |
msgstr ""
|
435 |
|
436 |
-
#: ../admin/addgallery.php:
|
437 |
msgid "No valid gallery name!"
|
438 |
msgstr ""
|
439 |
|
440 |
-
#: ../admin/addgallery.php:
|
441 |
-
#: ../admin/addgallery.php:
|
442 |
-
#: ../admin/addgallery.php:
|
443 |
-
#: ../admin/addgallery.php:
|
444 |
msgid "Directory"
|
445 |
msgstr ""
|
446 |
|
447 |
-
#: ../admin/addgallery.php:
|
448 |
-
msgid "didn't have the permissions
|
449 |
msgstr ""
|
450 |
|
451 |
-
#: ../admin/addgallery.php:
|
452 |
msgid "already exists!"
|
453 |
msgstr ""
|
454 |
|
455 |
-
#: ../admin/addgallery.php:
|
456 |
-
#: ../admin/addgallery.php:
|
457 |
-
#: ../admin/addgallery.php:
|
458 |
-
#: ../admin/addgallery.php:
|
459 |
-
#: ../admin/addgallery.php:
|
460 |
msgid "Unable to create directory "
|
461 |
msgstr ""
|
462 |
|
463 |
-
#: ../admin/addgallery.php:
|
464 |
-
#: ../admin/addgallery.php:
|
465 |
-
#: ../admin/addgallery.php:
|
466 |
msgid "Unable to set directory permissions "
|
467 |
msgstr ""
|
468 |
|
469 |
-
#: ../admin/addgallery.php:
|
470 |
msgid "Unable to set directory permissions"
|
471 |
msgstr ""
|
472 |
|
473 |
-
#: ../admin/addgallery.php:
|
474 |
msgid "The server Safe-Mode is on !"
|
475 |
msgstr ""
|
476 |
|
477 |
-
#: ../admin/addgallery.php:
|
478 |
msgid "Please create directory "
|
479 |
msgstr ""
|
480 |
|
481 |
-
#: ../admin/addgallery.php:
|
482 |
msgid "and the thumbnails directory "
|
483 |
msgstr ""
|
484 |
|
485 |
-
#: ../admin/addgallery.php:
|
486 |
msgid "with permission 777 manually !"
|
487 |
msgstr ""
|
488 |
|
489 |
-
#: ../admin/addgallery.php:
|
490 |
msgid "already exists"
|
491 |
msgstr ""
|
492 |
|
493 |
-
#: ../admin/addgallery.php:
|
494 |
msgid "Gallery successfully created!"
|
495 |
msgstr ""
|
496 |
|
497 |
-
#: ../admin/addgallery.php:
|
498 |
-
#: ../admin/addgallery.php:
|
499 |
msgid "doesn`t exist"
|
500 |
msgstr ""
|
501 |
|
502 |
-
#: ../admin/addgallery.php:
|
503 |
msgid "contains no pictures"
|
504 |
msgstr ""
|
505 |
|
506 |
-
#: ../admin/addgallery.php:
|
507 |
msgid "Thumbnail Directory"
|
508 |
msgstr ""
|
509 |
|
510 |
-
#: ../admin/addgallery.php:
|
511 |
msgid "Please create the folder <i>thumbs</i> in your gallery folder."
|
512 |
msgstr ""
|
513 |
|
514 |
-
#: ../admin/addgallery.php:
|
515 |
msgid "Database error. Could not add gallery!"
|
516 |
msgstr ""
|
517 |
|
518 |
-
#: ../admin/addgallery.php:
|
519 |
msgid "successfully created!"
|
520 |
msgstr ""
|
521 |
|
522 |
-
#: ../admin/addgallery.php:
|
523 |
msgid " pictures added."
|
524 |
msgstr ""
|
525 |
|
526 |
-
#: ../admin/addgallery.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
527 |
msgid "Uploaded file was no or a faulty zip file ! The server recognize : "
|
528 |
msgstr ""
|
529 |
|
530 |
-
#: ../admin/addgallery.php:
|
531 |
msgid "Directory already exists, please rename zip file"
|
532 |
msgstr ""
|
533 |
|
534 |
-
#: ../admin/addgallery.php:
|
535 |
msgid "Unable to unlink zip file "
|
536 |
msgstr ""
|
537 |
|
538 |
-
#: ../admin/addgallery.php:
|
539 |
msgid "Zip-File successfully unpacked"
|
540 |
msgstr ""
|
541 |
|
542 |
-
#: ../admin/addgallery.php:
|
543 |
-
#: ../admin/addgallery.php:
|
544 |
msgid "Unable to unlink file "
|
545 |
msgstr ""
|
546 |
|
547 |
-
#: ../admin/addgallery.php:
|
548 |
msgid "No gallery selected !"
|
549 |
msgstr ""
|
550 |
|
551 |
-
#: ../admin/addgallery.php:
|
552 |
msgid "Failure in database, no gallery path set !"
|
553 |
msgstr ""
|
554 |
|
555 |
-
#: ../admin/addgallery.php:
|
556 |
msgid "Error, the file could not moved to : "
|
557 |
msgstr ""
|
558 |
|
559 |
-
#: ../admin/addgallery.php:
|
560 |
msgid "Error, the file permissions could not set"
|
561 |
msgstr ""
|
562 |
|
563 |
-
#: ../admin/addgallery.php:
|
564 |
-
msgid "Images successfully added"
|
565 |
msgstr ""
|
566 |
|
567 |
-
#: ../admin/admin.php:
|
568 |
msgid "Add Gallery"
|
569 |
msgstr ""
|
570 |
|
571 |
-
#: ../admin/admin.php:
|
572 |
msgid "Manage Gallery"
|
573 |
msgstr ""
|
574 |
|
575 |
-
#: ../admin/admin.php:
|
576 |
msgid "Options"
|
577 |
msgstr ""
|
578 |
|
579 |
-
#: ../admin/admin.php:
|
580 |
msgid "Style"
|
581 |
msgstr ""
|
582 |
|
583 |
-
#: ../admin/admin.php:
|
584 |
msgid "Setup Gallery"
|
585 |
msgstr ""
|
586 |
|
587 |
-
#: ../admin/admin.php:
|
588 |
msgid "Setup"
|
589 |
msgstr ""
|
590 |
|
591 |
-
#: ../admin/admin.php:
|
592 |
msgid "About this Gallery"
|
593 |
msgstr ""
|
594 |
|
595 |
-
#: ../admin/admin.php:
|
596 |
msgid "About"
|
597 |
msgstr ""
|
598 |
|
@@ -605,66 +669,66 @@ msgstr ""
|
|
605 |
msgid "Album deleted"
|
606 |
msgstr ""
|
607 |
|
608 |
-
#: ../admin/album.php:
|
609 |
msgid "Manage Albums"
|
610 |
msgstr ""
|
611 |
|
612 |
-
#: ../admin/album.php:
|
613 |
msgid "No album selected"
|
614 |
msgstr ""
|
615 |
|
616 |
-
#: ../admin/album.php:
|
617 |
msgid "Add new album"
|
618 |
msgstr ""
|
619 |
|
620 |
-
#: ../admin/album.php:
|
621 |
#: ../admin/manage.php:207
|
622 |
-
#: ../admin/manage.php:
|
623 |
msgid "Delete"
|
624 |
msgstr ""
|
625 |
|
626 |
-
#: ../admin/album.php:
|
627 |
msgid "Delete album ?"
|
628 |
msgstr ""
|
629 |
|
630 |
-
#: ../admin/album.php:
|
631 |
-
#: ../admin/settings.php:
|
632 |
-
#: ../admin/settings.php:
|
633 |
-
#: ../admin/settings.php:
|
634 |
-
#: ../admin/settings.php:
|
635 |
-
#: ../admin/settings.php:
|
636 |
-
#: ../admin/settings.php:
|
637 |
-
#: ../admin/settings.php:
|
638 |
msgid "Update"
|
639 |
msgstr ""
|
640 |
|
641 |
-
#: ../admin/album.php:
|
642 |
msgid "After you create and select a album, you can drag and drop a gallery into your album below"
|
643 |
msgstr ""
|
644 |
|
645 |
-
#: ../admin/album.php:
|
646 |
msgid "Select Gallery"
|
647 |
msgstr ""
|
648 |
|
649 |
-
#: ../admin/album.php:
|
650 |
msgid "Album Page ID"
|
651 |
msgstr ""
|
652 |
|
653 |
-
#: ../admin/album.php:
|
654 |
msgid "No album selected!"
|
655 |
msgstr ""
|
656 |
|
657 |
-
#: ../admin/album.php:
|
658 |
#: ../admin/manage.php:181
|
659 |
-
#: ../admin/manage.php:
|
660 |
msgid "ID"
|
661 |
msgstr ""
|
662 |
|
663 |
-
#: ../admin/album.php:
|
664 |
msgid "Name"
|
665 |
msgstr ""
|
666 |
|
667 |
-
#: ../admin/album.php:
|
668 |
msgid "Page"
|
669 |
msgstr ""
|
670 |
|
@@ -695,7 +759,7 @@ msgstr ""
|
|
695 |
msgid "Update successfully"
|
696 |
msgstr ""
|
697 |
|
698 |
-
#: ../admin/manage.php:
|
699 |
msgid " picture(s) successfully added"
|
700 |
msgstr ""
|
701 |
|
@@ -708,8 +772,8 @@ msgid "Gallery name"
|
|
708 |
msgstr ""
|
709 |
|
710 |
#: ../admin/manage.php:184
|
711 |
-
#: ../admin/manage.php:
|
712 |
-
#: ../admin/manage.php:
|
713 |
#: ../admin/style.php:97
|
714 |
msgid "Description"
|
715 |
msgstr ""
|
@@ -723,7 +787,7 @@ msgid "Quantity"
|
|
723 |
msgstr ""
|
724 |
|
725 |
#: ../admin/manage.php:187
|
726 |
-
#: ../admin/manage.php:
|
727 |
msgid "Action"
|
728 |
msgstr ""
|
729 |
|
@@ -732,73 +796,73 @@ msgid "Edit"
|
|
732 |
msgstr ""
|
733 |
|
734 |
#: ../admin/manage.php:207
|
735 |
-
#: ../admin/manage.php:
|
736 |
msgid "Delete this file ?"
|
737 |
msgstr ""
|
738 |
|
739 |
#: ../admin/manage.php:212
|
740 |
-
#: ../admin/manage.php:
|
741 |
msgid "No entries found"
|
742 |
msgstr ""
|
743 |
|
744 |
-
#: ../admin/manage.php:
|
745 |
msgid "Page Link to"
|
746 |
msgstr ""
|
747 |
|
748 |
-
#: ../admin/manage.php:
|
749 |
msgid "Not linked"
|
750 |
msgstr ""
|
751 |
|
752 |
-
#: ../admin/manage.php:
|
753 |
msgid "Preview image"
|
754 |
msgstr ""
|
755 |
|
756 |
-
#: ../admin/manage.php:
|
757 |
msgid "No Picture"
|
758 |
msgstr ""
|
759 |
|
760 |
-
#: ../admin/manage.php:
|
761 |
msgid "Path"
|
762 |
msgstr ""
|
763 |
|
764 |
-
#: ../admin/manage.php:
|
765 |
msgid "Scan Folder for new images"
|
766 |
msgstr ""
|
767 |
|
768 |
-
#: ../admin/manage.php:
|
769 |
-
#: ../admin/manage.php:
|
770 |
msgid "Save Changes"
|
771 |
msgstr ""
|
772 |
|
773 |
-
#: ../admin/manage.php:
|
774 |
msgid "No action"
|
775 |
msgstr ""
|
776 |
|
777 |
-
#: ../admin/manage.php:
|
778 |
msgid "Set watermark"
|
779 |
msgstr ""
|
780 |
|
781 |
-
#: ../admin/manage.php:
|
782 |
msgid "Create new thumbnails"
|
783 |
msgstr ""
|
784 |
|
785 |
-
#: ../admin/manage.php:
|
786 |
msgid "Resize images"
|
787 |
msgstr ""
|
788 |
|
789 |
-
#: ../admin/manage.php:
|
790 |
msgid "Delete images"
|
791 |
msgstr ""
|
792 |
|
793 |
-
#: ../admin/manage.php:
|
794 |
msgid "OK"
|
795 |
msgstr ""
|
796 |
|
797 |
-
#: ../admin/manage.php:
|
798 |
msgid "No images selected"
|
799 |
msgstr ""
|
800 |
|
801 |
-
#: ../admin/manage.php:
|
802 |
#, php-format
|
803 |
msgid ""
|
804 |
"You are about to start the bulk edit for %s images \n"
|
@@ -806,24 +870,20 @@ msgid ""
|
|
806 |
" 'Cancel' to stop, 'OK' to proceed."
|
807 |
msgstr ""
|
808 |
|
809 |
-
#: ../admin/manage.php:
|
810 |
-
#: ../admin/settings.php:
|
811 |
msgid "File name"
|
812 |
msgstr ""
|
813 |
|
814 |
-
#: ../admin/manage.php:
|
815 |
-
msgid "Thumbnail"
|
816 |
-
msgstr ""
|
817 |
-
|
818 |
-
#: ../admin/manage.php:382
|
819 |
msgid "Alt & Title Text"
|
820 |
msgstr ""
|
821 |
|
822 |
-
#: ../admin/manage.php:
|
823 |
msgid "exclude"
|
824 |
msgstr ""
|
825 |
|
826 |
-
#: ../admin/manage.php:
|
827 |
msgid "View"
|
828 |
msgstr ""
|
829 |
|
@@ -969,348 +1029,376 @@ msgstr ""
|
|
969 |
msgid "PHP Max Script Execute Time"
|
970 |
msgstr ""
|
971 |
|
972 |
-
#: ../admin/settings.php:
|
973 |
-
#: ../admin/settings.php:
|
974 |
msgid "General Options"
|
975 |
msgstr ""
|
976 |
|
977 |
-
#: ../admin/settings.php:
|
978 |
-
#: ../admin/settings.php:
|
979 |
msgid "Thumbnails"
|
980 |
msgstr ""
|
981 |
|
982 |
-
#: ../admin/settings.php:
|
983 |
msgid "Images"
|
984 |
msgstr ""
|
985 |
|
986 |
-
#: ../admin/settings.php:
|
987 |
-
#: ../admin/settings.php:
|
988 |
msgid "Effects"
|
989 |
msgstr ""
|
990 |
|
991 |
-
#: ../admin/settings.php:
|
992 |
msgid "Gallery path"
|
993 |
msgstr ""
|
994 |
|
995 |
-
#: ../admin/settings.php:
|
996 |
msgid "This is the default path for all galleries"
|
997 |
msgstr ""
|
998 |
|
999 |
-
#: ../admin/settings.php:
|
1000 |
msgid "Scan folders during runtime"
|
1001 |
msgstr ""
|
1002 |
|
1003 |
-
#: ../admin/settings.php:
|
1004 |
msgid "Search automatic in the folders for new images (not working)"
|
1005 |
msgstr ""
|
1006 |
|
1007 |
-
#: ../admin/settings.php:
|
1008 |
msgid "Delete image files"
|
1009 |
msgstr ""
|
1010 |
|
1011 |
-
#: ../admin/settings.php:
|
1012 |
msgid "Delete files, when removing a gallery in the database"
|
1013 |
msgstr ""
|
1014 |
|
1015 |
-
#: ../admin/settings.php:
|
1016 |
msgid "Thumbnail settings"
|
1017 |
msgstr ""
|
1018 |
|
1019 |
#: ../admin/settings.php:167
|
|
|
|
|
|
|
|
|
1020 |
msgid "Width x height (in pixel)"
|
1021 |
msgstr ""
|
1022 |
|
1023 |
-
#: ../admin/settings.php:
|
1024 |
msgid "This values are maxium values "
|
1025 |
msgstr ""
|
1026 |
|
1027 |
-
#: ../admin/settings.php:
|
1028 |
msgid "Set fix dimension"
|
1029 |
msgstr ""
|
1030 |
|
1031 |
-
#: ../admin/settings.php:
|
1032 |
msgid "Ignore the aspect ratio, no portrait thumbnails"
|
1033 |
msgstr ""
|
1034 |
|
1035 |
-
#: ../admin/settings.php:
|
1036 |
msgid "Crop thumbnail from image"
|
1037 |
msgstr ""
|
1038 |
|
1039 |
-
#: ../admin/settings.php:
|
1040 |
msgid "Create square thumbnails from the center"
|
1041 |
msgstr ""
|
1042 |
|
1043 |
-
#: ../admin/settings.php:
|
1044 |
msgid "Do resize before cropping"
|
1045 |
msgstr ""
|
1046 |
|
1047 |
-
#: ../admin/settings.php:
|
1048 |
msgid "Generates square thumbnails without cropping to much"
|
1049 |
msgstr ""
|
1050 |
|
1051 |
-
#: ../admin/settings.php:
|
1052 |
msgid "Thumbnail quality"
|
1053 |
msgstr ""
|
1054 |
|
1055 |
-
#: ../admin/settings.php:
|
1056 |
-
#: ../admin/settings.php:
|
1057 |
msgid "Resample Mode"
|
1058 |
msgstr ""
|
1059 |
|
1060 |
-
#: ../admin/settings.php:
|
1061 |
-
#: ../admin/settings.php:
|
1062 |
msgid "Value between 1-5 (higher value, more CPU load)"
|
1063 |
msgstr ""
|
1064 |
|
1065 |
-
#: ../admin/settings.php:
|
1066 |
msgid "Image settings"
|
1067 |
msgstr ""
|
1068 |
|
1069 |
-
#: ../admin/settings.php:
|
1070 |
msgid "Resize Images"
|
1071 |
msgstr ""
|
1072 |
|
1073 |
-
#: ../admin/settings.php:
|
1074 |
msgid "Width x height (in pixel). NextGEN Gallery will keep ratio size"
|
1075 |
msgstr ""
|
1076 |
|
1077 |
-
#: ../admin/settings.php:
|
1078 |
msgid "Image quality"
|
1079 |
msgstr ""
|
1080 |
|
1081 |
-
#: ../admin/settings.php:
|
1082 |
msgid "Add link in [singlepic] tag "
|
1083 |
msgstr ""
|
1084 |
|
1085 |
-
#: ../admin/settings.php:
|
1086 |
msgid "Add the fullsize picture as link. Didn't support watermark mode on the fly."
|
1087 |
msgstr ""
|
1088 |
|
1089 |
-
#: ../admin/settings.php:
|
1090 |
msgid "Gallery settings"
|
1091 |
msgstr ""
|
1092 |
|
1093 |
-
#: ../admin/settings.php:
|
1094 |
msgid "Number of images per page"
|
1095 |
msgstr ""
|
1096 |
|
1097 |
-
#: ../admin/settings.php:
|
1098 |
msgid "0 will disable pagination, all images on one page"
|
1099 |
msgstr ""
|
1100 |
|
1101 |
-
#: ../admin/settings.php:
|
1102 |
msgid "Integrate slideshow"
|
1103 |
msgstr ""
|
1104 |
|
1105 |
-
#: ../admin/settings.php:
|
1106 |
msgid "Show first"
|
1107 |
msgstr ""
|
1108 |
|
1109 |
-
#: ../admin/settings.php:
|
1110 |
msgid "Sort thumbnails"
|
1111 |
msgstr ""
|
1112 |
|
1113 |
-
#: ../admin/settings.php:
|
1114 |
msgid "Image ID"
|
1115 |
msgstr ""
|
1116 |
|
1117 |
-
#: ../admin/settings.php:
|
1118 |
msgid "Alt / Title text"
|
1119 |
msgstr ""
|
1120 |
|
1121 |
-
#: ../admin/settings.php:
|
1122 |
msgid "Here you can select the thumbnail effect, NextGEN Gallery will integrate the required HTML code in the images. Please note that only the Thickbox effect will automatic added to your theme."
|
1123 |
msgstr ""
|
1124 |
|
1125 |
-
#: ../admin/settings.php:
|
1126 |
msgid "With the placeholder"
|
1127 |
msgstr ""
|
1128 |
|
1129 |
-
#: ../admin/settings.php:
|
1130 |
msgid "you can activate a navigation through the images (depend on the effect). Change the code line only , when you use a different thumbnail effect or you know what you do."
|
1131 |
msgstr ""
|
1132 |
|
1133 |
-
#: ../admin/settings.php:
|
1134 |
msgid "JavaScript Thumbnail effect"
|
1135 |
msgstr ""
|
1136 |
|
1137 |
-
#: ../admin/settings.php:
|
1138 |
msgid "None"
|
1139 |
msgstr ""
|
1140 |
|
1141 |
-
#: ../admin/settings.php:
|
1142 |
msgid "Thickbox"
|
1143 |
msgstr ""
|
1144 |
|
1145 |
-
#: ../admin/settings.php:
|
1146 |
msgid "Lightbox"
|
1147 |
msgstr ""
|
1148 |
|
1149 |
-
#: ../admin/settings.php:
|
1150 |
msgid "Highslide"
|
1151 |
msgstr ""
|
1152 |
|
1153 |
-
#: ../admin/settings.php:
|
1154 |
msgid "Custom"
|
1155 |
msgstr ""
|
1156 |
|
1157 |
-
#: ../admin/settings.php:
|
1158 |
msgid "Link Code line"
|
1159 |
msgstr ""
|
1160 |
|
1161 |
-
#: ../admin/settings.php:
|
|
|
|
|
|
|
|
|
1162 |
msgid "Preview"
|
1163 |
msgstr ""
|
1164 |
|
1165 |
-
#: ../admin/settings.php:
|
1166 |
-
#: ../admin/settings.php:
|
1167 |
msgid "Position"
|
1168 |
msgstr ""
|
1169 |
|
1170 |
-
#: ../admin/settings.php:
|
1171 |
msgid "Offset"
|
1172 |
msgstr ""
|
1173 |
|
1174 |
-
#: ../admin/settings.php:
|
1175 |
msgid "Use image as watermark"
|
1176 |
msgstr ""
|
1177 |
|
1178 |
-
#: ../admin/settings.php:
|
1179 |
msgid "URL to file"
|
1180 |
msgstr ""
|
1181 |
|
1182 |
-
#: ../admin/settings.php:
|
1183 |
msgid "Use text as watermark"
|
1184 |
msgstr ""
|
1185 |
|
1186 |
-
#: ../admin/settings.php:
|
1187 |
msgid "Font"
|
1188 |
msgstr ""
|
1189 |
|
1190 |
-
#: ../admin/settings.php:
|
1191 |
msgid "You can upload more fonts in the folder <strong>nggallery/fonts</strong>"
|
1192 |
msgstr ""
|
1193 |
|
1194 |
-
#: ../admin/settings.php:
|
1195 |
msgid "Size"
|
1196 |
msgstr ""
|
1197 |
|
1198 |
-
#: ../admin/settings.php:
|
1199 |
msgid "Color"
|
1200 |
msgstr ""
|
1201 |
|
1202 |
-
#: ../admin/settings.php:
|
1203 |
msgid "(hex w/o #)"
|
1204 |
msgstr ""
|
1205 |
|
1206 |
-
#: ../admin/settings.php:
|
1207 |
msgid "Text"
|
1208 |
msgstr ""
|
1209 |
|
1210 |
-
#: ../admin/settings.php:
|
1211 |
msgid "Opaque"
|
1212 |
msgstr ""
|
1213 |
|
1214 |
-
#: ../admin/settings.php:
|
1215 |
msgid "The imagerotator.swf is not in the nggallery folder, the slideshow will not work."
|
1216 |
msgstr ""
|
1217 |
|
1218 |
-
#: ../admin/settings.php:
|
1219 |
-
msgid "The settings are used in the Flash Image Rotator Version 3.
|
1220 |
msgstr ""
|
1221 |
|
1222 |
-
#: ../admin/settings.php:
|
1223 |
msgid "See more information for the Flash Player on the web page"
|
1224 |
msgstr ""
|
1225 |
|
1226 |
-
#: ../admin/settings.php:
|
1227 |
msgid "Default size (W x H)"
|
1228 |
msgstr ""
|
1229 |
|
1230 |
-
#: ../admin/settings.php:
|
1231 |
msgid "Shuffle mode"
|
1232 |
msgstr ""
|
1233 |
|
1234 |
-
#: ../admin/settings.php:
|
1235 |
msgid "Show next image on click"
|
1236 |
msgstr ""
|
1237 |
|
1238 |
-
#: ../admin/settings.php:
|
1239 |
msgid "Show navigation bar"
|
1240 |
msgstr ""
|
1241 |
|
1242 |
-
#: ../admin/settings.php:
|
1243 |
msgid "Show loading icon"
|
1244 |
msgstr ""
|
1245 |
|
1246 |
-
#: ../admin/settings.php:
|
1247 |
msgid "Stretch image"
|
1248 |
msgstr ""
|
1249 |
|
1250 |
-
#: ../admin/settings.php:
|
1251 |
msgid "true"
|
1252 |
msgstr ""
|
1253 |
|
1254 |
-
#: ../admin/settings.php:
|
1255 |
msgid "false"
|
1256 |
msgstr ""
|
1257 |
|
1258 |
-
#: ../admin/settings.php:
|
1259 |
msgid "fit"
|
1260 |
msgstr ""
|
1261 |
|
1262 |
-
#: ../admin/settings.php:
|
1263 |
msgid "Duration time"
|
1264 |
msgstr ""
|
1265 |
|
1266 |
-
#: ../admin/settings.php:
|
1267 |
msgid "sec."
|
1268 |
msgstr ""
|
1269 |
|
1270 |
-
#: ../admin/settings.php:
|
1271 |
msgid "Transition / Fade effect"
|
1272 |
msgstr ""
|
1273 |
|
1274 |
-
#: ../admin/settings.php:
|
1275 |
msgid "fade"
|
1276 |
msgstr ""
|
1277 |
|
1278 |
-
#: ../admin/settings.php:
|
1279 |
msgid "bgfade"
|
1280 |
msgstr ""
|
1281 |
|
1282 |
-
#: ../admin/settings.php:
|
|
|
|
|
|
|
|
|
1283 |
msgid "circles"
|
1284 |
msgstr ""
|
1285 |
|
1286 |
-
#: ../admin/settings.php:
|
|
|
|
|
|
|
|
|
1287 |
msgid "blocks"
|
1288 |
msgstr ""
|
1289 |
|
1290 |
-
#: ../admin/settings.php:
|
1291 |
msgid "fluids"
|
1292 |
msgstr ""
|
1293 |
|
1294 |
-
#: ../admin/settings.php:
|
1295 |
msgid "lines"
|
1296 |
msgstr ""
|
1297 |
|
1298 |
-
#: ../admin/settings.php:
|
1299 |
msgid "random"
|
1300 |
msgstr ""
|
1301 |
|
1302 |
-
#: ../admin/settings.php:
|
|
|
|
|
|
|
|
|
1303 |
msgid "Background Color"
|
1304 |
msgstr ""
|
1305 |
|
1306 |
-
#: ../admin/settings.php:
|
1307 |
msgid "Texts / Buttons Color"
|
1308 |
msgstr ""
|
1309 |
|
1310 |
-
#: ../admin/settings.php:
|
1311 |
msgid "Rollover / Active Color"
|
1312 |
msgstr ""
|
1313 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1314 |
#: ../admin/setup.php:10
|
1315 |
msgid "Reset all settings to default parameter"
|
1316 |
msgstr ""
|
2 |
msgstr ""
|
3 |
"Project-Id-Version: NextGEN Gallery\n"
|
4 |
"POT-Creation-Date: \n"
|
5 |
+
"PO-Revision-Date: 2007-05-28 00:51+0100\n"
|
6 |
"Last-Translator: Alex Rabe\n"
|
7 |
"Language-Team: Alex Rabe\n"
|
8 |
"MIME-Version: 1.0\n"
|
15 |
"X-Poedit-SearchPath-0: .\n"
|
16 |
"X-Poedit-SearchPath-1: ..\n"
|
17 |
|
18 |
+
#: ../nggallery.php:252
|
19 |
msgid "Sorry, NextGEN Gallery works only under WordPress 2.1 or higher"
|
20 |
msgstr ""
|
21 |
|
22 |
#: ../nggbutton.php:36
|
23 |
+
#: ../admin/addgallery.php:239
|
24 |
+
#: ../admin/addgallery.php:290
|
25 |
+
#: ../admin/admin.php:42
|
26 |
#: ../admin/manage.php:44
|
27 |
+
#: ../admin/manage.php:303
|
28 |
+
#: ../admin/settings.php:121
|
29 |
msgid "Gallery"
|
30 |
msgstr ""
|
31 |
|
32 |
#: ../nggbutton.php:37
|
33 |
+
#: ../admin/admin.php:45
|
34 |
msgid "Album"
|
35 |
msgstr ""
|
36 |
|
57 |
msgstr ""
|
58 |
|
59 |
#: ../nggbutton.php:64
|
60 |
+
#: ../admin/settings.php:124
|
61 |
+
#: ../admin/settings.php:264
|
62 |
+
#: ../admin/settings.php:432
|
63 |
msgid "Slideshow"
|
64 |
msgstr ""
|
65 |
|
66 |
#: ../nggbutton.php:75
|
67 |
+
#: ../admin/album.php:98
|
68 |
msgid "Select album"
|
69 |
msgstr ""
|
70 |
|
101 |
msgstr ""
|
102 |
|
103 |
#: ../nggbutton.php:124
|
104 |
+
#: ../admin/settings.php:123
|
105 |
+
#: ../admin/settings.php:330
|
106 |
msgid "Watermark"
|
107 |
msgstr ""
|
108 |
|
151 |
msgid "[Show picture list]"
|
152 |
msgstr ""
|
153 |
|
154 |
+
#: ../nggwidget.php:140
|
155 |
+
msgid "Title:"
|
156 |
+
msgstr ""
|
157 |
+
|
158 |
+
#: ../nggwidget.php:141
|
159 |
+
msgid "Select Gallery:"
|
160 |
+
msgstr ""
|
161 |
+
|
162 |
+
#: ../nggwidget.php:152
|
163 |
+
msgid "Height:"
|
164 |
msgstr ""
|
165 |
|
166 |
+
#: ../nggwidget.php:153
|
167 |
+
msgid "Width:"
|
168 |
+
msgstr ""
|
169 |
+
|
170 |
+
#: ../nggwidget.php:345
|
171 |
+
msgid "NextGEN Recent Image"
|
172 |
+
msgstr ""
|
173 |
+
|
174 |
+
#: ../nggwidget.php:385
|
175 |
+
#: ../nggwidget.php:584
|
176 |
+
#: ../admin/album.php:213
|
177 |
#: ../admin/manage.php:183
|
178 |
+
#: ../admin/manage.php:310
|
179 |
msgid "Title"
|
180 |
msgstr ""
|
181 |
|
182 |
+
#: ../nggwidget.php:388
|
183 |
+
#: ../nggwidget.php:587
|
184 |
+
msgid "Display type"
|
185 |
+
msgstr ""
|
186 |
+
|
187 |
+
#: ../nggwidget.php:390
|
188 |
+
#: ../nggwidget.php:589
|
189 |
+
#: ../admin/manage.php:377
|
190 |
+
msgid "Thumbnail"
|
191 |
+
msgstr ""
|
192 |
+
|
193 |
+
#: ../nggwidget.php:391
|
194 |
+
#: ../nggwidget.php:590
|
195 |
+
msgid "Orginal"
|
196 |
+
msgstr ""
|
197 |
+
|
198 |
+
#: ../nggwidget.php:394
|
199 |
+
#: ../nggwidget.php:594
|
200 |
msgid "Number of pics"
|
201 |
msgstr ""
|
202 |
|
203 |
+
#: ../nggwidget.php:405
|
204 |
+
#: ../nggwidget.php:605
|
205 |
+
msgid "Width (px)"
|
206 |
msgstr ""
|
207 |
|
208 |
+
#: ../nggwidget.php:407
|
209 |
+
#: ../nggwidget.php:607
|
210 |
+
msgid "Height (px)"
|
211 |
msgstr ""
|
212 |
|
213 |
+
#: ../nggwidget.php:409
|
214 |
+
#: ../nggwidget.php:609
|
215 |
msgid "Mode"
|
216 |
msgstr ""
|
217 |
|
218 |
+
#: ../nggwidget.php:411
|
219 |
+
#: ../nggwidget.php:611
|
220 |
+
#: ../admin/settings.php:466
|
221 |
msgid "none"
|
222 |
msgstr ""
|
223 |
|
224 |
+
#: ../nggwidget.php:412
|
225 |
+
#: ../nggwidget.php:612
|
226 |
msgid "web2.0"
|
227 |
msgstr ""
|
228 |
|
229 |
+
#: ../nggwidget.php:416
|
230 |
+
#: ../nggwidget.php:616
|
231 |
msgid "Show in the main page"
|
232 |
msgstr ""
|
233 |
|
234 |
+
#: ../nggwidget.php:418
|
235 |
+
#: ../nggwidget.php:618
|
236 |
msgid "yes"
|
237 |
msgstr ""
|
238 |
|
239 |
+
#: ../nggwidget.php:419
|
240 |
+
#: ../nggwidget.php:619
|
241 |
msgid "no"
|
242 |
msgstr ""
|
243 |
|
244 |
+
#: ../nggwidget.php:422
|
245 |
+
#: ../nggwidget.php:622
|
246 |
msgid "Show in"
|
247 |
msgstr ""
|
248 |
|
249 |
+
#: ../nggwidget.php:424
|
250 |
+
#: ../nggwidget.php:624
|
251 |
msgid "All categories"
|
252 |
msgstr ""
|
253 |
|
254 |
+
#: ../nggwidget.php:425
|
255 |
+
#: ../nggwidget.php:625
|
256 |
msgid "Only which are not listed"
|
257 |
msgstr ""
|
258 |
|
259 |
+
#: ../nggwidget.php:426
|
260 |
+
#: ../nggwidget.php:626
|
261 |
msgid "Only which are listed"
|
262 |
msgstr ""
|
263 |
|
264 |
+
#: ../nggwidget.php:429
|
265 |
+
#: ../nggwidget.php:629
|
266 |
+
msgid "Categories (id (use , to seperate)"
|
267 |
+
msgstr ""
|
268 |
+
|
269 |
+
#: ../nggwidget.php:543
|
270 |
+
msgid "NextGEN Random Image"
|
271 |
msgstr ""
|
272 |
|
273 |
#: ../admin/about.php:9
|
396 |
msgstr ""
|
397 |
|
398 |
#: ../admin/addgallery.php:23
|
399 |
+
#: ../admin/addgallery.php:37
|
400 |
msgid "Upload failed!"
|
401 |
msgstr ""
|
402 |
|
403 |
#: ../admin/addgallery.php:103
|
404 |
+
msgid "remove"
|
405 |
+
msgstr ""
|
406 |
+
|
407 |
+
#: ../admin/addgallery.php:111
|
408 |
+
#: ../admin/addgallery.php:123
|
409 |
msgid "Add new gallery"
|
410 |
msgstr ""
|
411 |
|
412 |
+
#: ../admin/addgallery.php:113
|
413 |
+
#: ../admin/addgallery.php:140
|
414 |
msgid "Upload a Zip-File"
|
415 |
msgstr ""
|
416 |
|
417 |
+
#: ../admin/addgallery.php:115
|
418 |
+
#: ../admin/addgallery.php:156
|
419 |
msgid "Import image folder"
|
420 |
msgstr ""
|
421 |
|
422 |
+
#: ../admin/addgallery.php:116
|
423 |
+
#: ../admin/addgallery.php:173
|
424 |
msgid "Upload Images"
|
425 |
msgstr ""
|
426 |
|
427 |
+
#: ../admin/addgallery.php:128
|
428 |
msgid "New Gallery"
|
429 |
msgstr ""
|
430 |
|
431 |
+
#: ../admin/addgallery.php:130
|
432 |
msgid "Create a new , empty gallery below the folder"
|
433 |
msgstr ""
|
434 |
|
435 |
+
#: ../admin/addgallery.php:131
|
436 |
msgid "Allowed characters for file and folder names are"
|
437 |
msgstr ""
|
438 |
|
439 |
+
#: ../admin/addgallery.php:134
|
440 |
msgid "Add gallery"
|
441 |
msgstr ""
|
442 |
|
443 |
+
#: ../admin/addgallery.php:145
|
444 |
msgid "Select Zip-File"
|
445 |
msgstr ""
|
446 |
|
447 |
+
#: ../admin/addgallery.php:147
|
448 |
msgid "Upload a zip file with images"
|
449 |
msgstr ""
|
450 |
|
451 |
+
#: ../admin/addgallery.php:150
|
452 |
msgid "Start upload"
|
453 |
msgstr ""
|
454 |
|
455 |
+
#: ../admin/addgallery.php:161
|
456 |
msgid "Import from Server path:"
|
457 |
msgstr ""
|
458 |
|
459 |
+
#: ../admin/addgallery.php:163
|
460 |
msgid "Import a folder with images. Please note :"
|
461 |
msgstr ""
|
462 |
|
463 |
+
#: ../admin/addgallery.php:164
|
464 |
msgid "For save_mode = ON you need to add the subfolder thumbs manually"
|
465 |
msgstr ""
|
466 |
|
467 |
+
#: ../admin/addgallery.php:167
|
468 |
msgid "Import folder"
|
469 |
msgstr ""
|
470 |
|
471 |
+
#: ../admin/addgallery.php:178
|
472 |
msgid "Upload image"
|
473 |
msgstr ""
|
474 |
|
475 |
+
#: ../admin/addgallery.php:182
|
476 |
msgid "in to"
|
477 |
msgstr ""
|
478 |
|
479 |
+
#: ../admin/addgallery.php:184
|
480 |
msgid "Choose gallery"
|
481 |
msgstr ""
|
482 |
|
483 |
+
#: ../admin/addgallery.php:194
|
484 |
+
msgid "Note : The upload limit on your server is "
|
485 |
msgstr ""
|
486 |
|
487 |
+
#: ../admin/addgallery.php:197
|
488 |
msgid "Upload images"
|
489 |
msgstr ""
|
490 |
|
491 |
+
#: ../admin/addgallery.php:217
|
492 |
msgid "No valid gallery name!"
|
493 |
msgstr ""
|
494 |
|
495 |
+
#: ../admin/addgallery.php:219
|
496 |
+
#: ../admin/addgallery.php:224
|
497 |
+
#: ../admin/addgallery.php:259
|
498 |
+
#: ../admin/addgallery.php:263
|
499 |
msgid "Directory"
|
500 |
msgstr ""
|
501 |
|
502 |
+
#: ../admin/addgallery.php:219
|
503 |
+
msgid "didn't have the permissions "
|
504 |
msgstr ""
|
505 |
|
506 |
+
#: ../admin/addgallery.php:224
|
507 |
msgid "already exists!"
|
508 |
msgstr ""
|
509 |
|
510 |
+
#: ../admin/addgallery.php:228
|
511 |
+
#: ../admin/addgallery.php:230
|
512 |
+
#: ../admin/addgallery.php:269
|
513 |
+
#: ../admin/addgallery.php:464
|
514 |
+
#: ../admin/addgallery.php:466
|
515 |
msgid "Unable to create directory "
|
516 |
msgstr ""
|
517 |
|
518 |
+
#: ../admin/addgallery.php:229
|
519 |
+
#: ../admin/addgallery.php:465
|
520 |
+
#: ../admin/addgallery.php:467
|
521 |
msgid "Unable to set directory permissions "
|
522 |
msgstr ""
|
523 |
|
524 |
+
#: ../admin/addgallery.php:231
|
525 |
msgid "Unable to set directory permissions"
|
526 |
msgstr ""
|
527 |
|
528 |
+
#: ../admin/addgallery.php:233
|
529 |
msgid "The server Safe-Mode is on !"
|
530 |
msgstr ""
|
531 |
|
532 |
+
#: ../admin/addgallery.php:234
|
533 |
msgid "Please create directory "
|
534 |
msgstr ""
|
535 |
|
536 |
+
#: ../admin/addgallery.php:235
|
537 |
msgid "and the thumbnails directory "
|
538 |
msgstr ""
|
539 |
|
540 |
+
#: ../admin/addgallery.php:235
|
541 |
msgid "with permission 777 manually !"
|
542 |
msgstr ""
|
543 |
|
544 |
+
#: ../admin/addgallery.php:239
|
545 |
msgid "already exists"
|
546 |
msgstr ""
|
547 |
|
548 |
+
#: ../admin/addgallery.php:242
|
549 |
msgid "Gallery successfully created!"
|
550 |
msgstr ""
|
551 |
|
552 |
+
#: ../admin/addgallery.php:259
|
553 |
+
#: ../admin/addgallery.php:268
|
554 |
msgid "doesn`t exist"
|
555 |
msgstr ""
|
556 |
|
557 |
+
#: ../admin/addgallery.php:263
|
558 |
msgid "contains no pictures"
|
559 |
msgstr ""
|
560 |
|
561 |
+
#: ../admin/addgallery.php:268
|
562 |
msgid "Thumbnail Directory"
|
563 |
msgstr ""
|
564 |
|
565 |
+
#: ../admin/addgallery.php:268
|
566 |
msgid "Please create the folder <i>thumbs</i> in your gallery folder."
|
567 |
msgstr ""
|
568 |
|
569 |
+
#: ../admin/addgallery.php:276
|
570 |
msgid "Database error. Could not add gallery!"
|
571 |
msgstr ""
|
572 |
|
573 |
+
#: ../admin/addgallery.php:290
|
574 |
msgid "successfully created!"
|
575 |
msgstr ""
|
576 |
|
577 |
+
#: ../admin/addgallery.php:290
|
578 |
msgid " pictures added."
|
579 |
msgstr ""
|
580 |
|
581 |
+
#: ../admin/addgallery.php:333
|
582 |
+
#: ../admin/addgallery.php:371
|
583 |
+
msgid "Some pictures are not writeable :"
|
584 |
+
msgstr ""
|
585 |
+
|
586 |
+
#: ../admin/addgallery.php:425
|
587 |
+
msgid "Some thumbnails are not writeable :"
|
588 |
+
msgstr ""
|
589 |
+
|
590 |
+
#: ../admin/addgallery.php:455
|
591 |
msgid "Uploaded file was no or a faulty zip file ! The server recognize : "
|
592 |
msgstr ""
|
593 |
|
594 |
+
#: ../admin/addgallery.php:470
|
595 |
msgid "Directory already exists, please rename zip file"
|
596 |
msgstr ""
|
597 |
|
598 |
+
#: ../admin/addgallery.php:475
|
599 |
msgid "Unable to unlink zip file "
|
600 |
msgstr ""
|
601 |
|
602 |
+
#: ../admin/addgallery.php:477
|
603 |
msgid "Zip-File successfully unpacked"
|
604 |
msgstr ""
|
605 |
|
606 |
+
#: ../admin/addgallery.php:504
|
607 |
+
#: ../admin/addgallery.php:511
|
608 |
msgid "Unable to unlink file "
|
609 |
msgstr ""
|
610 |
|
611 |
+
#: ../admin/addgallery.php:505
|
612 |
msgid "No gallery selected !"
|
613 |
msgstr ""
|
614 |
|
615 |
+
#: ../admin/addgallery.php:512
|
616 |
msgid "Failure in database, no gallery path set !"
|
617 |
msgstr ""
|
618 |
|
619 |
+
#: ../admin/addgallery.php:518
|
620 |
msgid "Error, the file could not moved to : "
|
621 |
msgstr ""
|
622 |
|
623 |
+
#: ../admin/addgallery.php:519
|
624 |
msgid "Error, the file permissions could not set"
|
625 |
msgstr ""
|
626 |
|
627 |
+
#: ../admin/addgallery.php:539
|
628 |
+
msgid " Images successfully added"
|
629 |
msgstr ""
|
630 |
|
631 |
+
#: ../admin/admin.php:43
|
632 |
msgid "Add Gallery"
|
633 |
msgstr ""
|
634 |
|
635 |
+
#: ../admin/admin.php:44
|
636 |
msgid "Manage Gallery"
|
637 |
msgstr ""
|
638 |
|
639 |
+
#: ../admin/admin.php:46
|
640 |
msgid "Options"
|
641 |
msgstr ""
|
642 |
|
643 |
+
#: ../admin/admin.php:47
|
644 |
msgid "Style"
|
645 |
msgstr ""
|
646 |
|
647 |
+
#: ../admin/admin.php:48
|
648 |
msgid "Setup Gallery"
|
649 |
msgstr ""
|
650 |
|
651 |
+
#: ../admin/admin.php:48
|
652 |
msgid "Setup"
|
653 |
msgstr ""
|
654 |
|
655 |
+
#: ../admin/admin.php:49
|
656 |
msgid "About this Gallery"
|
657 |
msgstr ""
|
658 |
|
659 |
+
#: ../admin/admin.php:49
|
660 |
msgid "About"
|
661 |
msgstr ""
|
662 |
|
669 |
msgid "Album deleted"
|
670 |
msgstr ""
|
671 |
|
672 |
+
#: ../admin/album.php:93
|
673 |
msgid "Manage Albums"
|
674 |
msgstr ""
|
675 |
|
676 |
+
#: ../admin/album.php:101
|
677 |
msgid "No album selected"
|
678 |
msgstr ""
|
679 |
|
680 |
+
#: ../admin/album.php:114
|
681 |
msgid "Add new album"
|
682 |
msgstr ""
|
683 |
|
684 |
+
#: ../admin/album.php:118
|
685 |
#: ../admin/manage.php:207
|
686 |
+
#: ../admin/manage.php:410
|
687 |
msgid "Delete"
|
688 |
msgstr ""
|
689 |
|
690 |
+
#: ../admin/album.php:118
|
691 |
msgid "Delete album ?"
|
692 |
msgstr ""
|
693 |
|
694 |
+
#: ../admin/album.php:120
|
695 |
+
#: ../admin/settings.php:155
|
696 |
+
#: ../admin/settings.php:199
|
697 |
+
#: ../admin/settings.php:236
|
698 |
+
#: ../admin/settings.php:273
|
699 |
+
#: ../admin/settings.php:316
|
700 |
+
#: ../admin/settings.php:422
|
701 |
+
#: ../admin/settings.php:515
|
702 |
msgid "Update"
|
703 |
msgstr ""
|
704 |
|
705 |
+
#: ../admin/album.php:126
|
706 |
msgid "After you create and select a album, you can drag and drop a gallery into your album below"
|
707 |
msgstr ""
|
708 |
|
709 |
+
#: ../admin/album.php:131
|
710 |
msgid "Select Gallery"
|
711 |
msgstr ""
|
712 |
|
713 |
+
#: ../admin/album.php:164
|
714 |
msgid "Album Page ID"
|
715 |
msgstr ""
|
716 |
|
717 |
+
#: ../admin/album.php:176
|
718 |
msgid "No album selected!"
|
719 |
msgstr ""
|
720 |
|
721 |
+
#: ../admin/album.php:211
|
722 |
#: ../admin/manage.php:181
|
723 |
+
#: ../admin/manage.php:375
|
724 |
msgid "ID"
|
725 |
msgstr ""
|
726 |
|
727 |
+
#: ../admin/album.php:212
|
728 |
msgid "Name"
|
729 |
msgstr ""
|
730 |
|
731 |
+
#: ../admin/album.php:214
|
732 |
msgid "Page"
|
733 |
msgstr ""
|
734 |
|
759 |
msgid "Update successfully"
|
760 |
msgstr ""
|
761 |
|
762 |
+
#: ../admin/manage.php:154
|
763 |
msgid " picture(s) successfully added"
|
764 |
msgstr ""
|
765 |
|
772 |
msgstr ""
|
773 |
|
774 |
#: ../admin/manage.php:184
|
775 |
+
#: ../admin/manage.php:329
|
776 |
+
#: ../admin/manage.php:378
|
777 |
#: ../admin/style.php:97
|
778 |
msgid "Description"
|
779 |
msgstr ""
|
787 |
msgstr ""
|
788 |
|
789 |
#: ../admin/manage.php:187
|
790 |
+
#: ../admin/manage.php:381
|
791 |
msgid "Action"
|
792 |
msgstr ""
|
793 |
|
796 |
msgstr ""
|
797 |
|
798 |
#: ../admin/manage.php:207
|
799 |
+
#: ../admin/manage.php:410
|
800 |
msgid "Delete this file ?"
|
801 |
msgstr ""
|
802 |
|
803 |
#: ../admin/manage.php:212
|
804 |
+
#: ../admin/manage.php:415
|
805 |
msgid "No entries found"
|
806 |
msgstr ""
|
807 |
|
808 |
+
#: ../admin/manage.php:312
|
809 |
msgid "Page Link to"
|
810 |
msgstr ""
|
811 |
|
812 |
+
#: ../admin/manage.php:315
|
813 |
msgid "Not linked"
|
814 |
msgstr ""
|
815 |
|
816 |
+
#: ../admin/manage.php:331
|
817 |
msgid "Preview image"
|
818 |
msgstr ""
|
819 |
|
820 |
+
#: ../admin/manage.php:334
|
821 |
msgid "No Picture"
|
822 |
msgstr ""
|
823 |
|
824 |
+
#: ../admin/manage.php:349
|
825 |
msgid "Path"
|
826 |
msgstr ""
|
827 |
|
828 |
+
#: ../admin/manage.php:357
|
829 |
msgid "Scan Folder for new images"
|
830 |
msgstr ""
|
831 |
|
832 |
+
#: ../admin/manage.php:358
|
833 |
+
#: ../admin/manage.php:422
|
834 |
msgid "Save Changes"
|
835 |
msgstr ""
|
836 |
|
837 |
+
#: ../admin/manage.php:363
|
838 |
msgid "No action"
|
839 |
msgstr ""
|
840 |
|
841 |
+
#: ../admin/manage.php:364
|
842 |
msgid "Set watermark"
|
843 |
msgstr ""
|
844 |
|
845 |
+
#: ../admin/manage.php:365
|
846 |
msgid "Create new thumbnails"
|
847 |
msgstr ""
|
848 |
|
849 |
+
#: ../admin/manage.php:366
|
850 |
msgid "Resize images"
|
851 |
msgstr ""
|
852 |
|
853 |
+
#: ../admin/manage.php:367
|
854 |
msgid "Delete images"
|
855 |
msgstr ""
|
856 |
|
857 |
+
#: ../admin/manage.php:369
|
858 |
msgid "OK"
|
859 |
msgstr ""
|
860 |
|
861 |
+
#: ../admin/manage.php:369
|
862 |
msgid "No images selected"
|
863 |
msgstr ""
|
864 |
|
865 |
+
#: ../admin/manage.php:369
|
866 |
#, php-format
|
867 |
msgid ""
|
868 |
"You are about to start the bulk edit for %s images \n"
|
870 |
" 'Cancel' to stop, 'OK' to proceed."
|
871 |
msgstr ""
|
872 |
|
873 |
+
#: ../admin/manage.php:376
|
874 |
+
#: ../admin/settings.php:269
|
875 |
msgid "File name"
|
876 |
msgstr ""
|
877 |
|
878 |
+
#: ../admin/manage.php:379
|
|
|
|
|
|
|
|
|
879 |
msgid "Alt & Title Text"
|
880 |
msgstr ""
|
881 |
|
882 |
+
#: ../admin/manage.php:380
|
883 |
msgid "exclude"
|
884 |
msgstr ""
|
885 |
|
886 |
+
#: ../admin/manage.php:409
|
887 |
msgid "View"
|
888 |
msgstr ""
|
889 |
|
1029 |
msgid "PHP Max Script Execute Time"
|
1030 |
msgstr ""
|
1031 |
|
1032 |
+
#: ../admin/settings.php:118
|
1033 |
+
#: ../admin/settings.php:134
|
1034 |
msgid "General Options"
|
1035 |
msgstr ""
|
1036 |
|
1037 |
+
#: ../admin/settings.php:119
|
1038 |
+
#: ../admin/settings.php:263
|
1039 |
msgid "Thumbnails"
|
1040 |
msgstr ""
|
1041 |
|
1042 |
+
#: ../admin/settings.php:120
|
1043 |
msgid "Images"
|
1044 |
msgstr ""
|
1045 |
|
1046 |
+
#: ../admin/settings.php:122
|
1047 |
+
#: ../admin/settings.php:281
|
1048 |
msgid "Effects"
|
1049 |
msgstr ""
|
1050 |
|
1051 |
+
#: ../admin/settings.php:140
|
1052 |
msgid "Gallery path"
|
1053 |
msgstr ""
|
1054 |
|
1055 |
+
#: ../admin/settings.php:142
|
1056 |
msgid "This is the default path for all galleries"
|
1057 |
msgstr ""
|
1058 |
|
1059 |
+
#: ../admin/settings.php:145
|
1060 |
msgid "Scan folders during runtime"
|
1061 |
msgstr ""
|
1062 |
|
1063 |
+
#: ../admin/settings.php:147
|
1064 |
msgid "Search automatic in the folders for new images (not working)"
|
1065 |
msgstr ""
|
1066 |
|
1067 |
+
#: ../admin/settings.php:150
|
1068 |
msgid "Delete image files"
|
1069 |
msgstr ""
|
1070 |
|
1071 |
+
#: ../admin/settings.php:152
|
1072 |
msgid "Delete files, when removing a gallery in the database"
|
1073 |
msgstr ""
|
1074 |
|
1075 |
+
#: ../admin/settings.php:163
|
1076 |
msgid "Thumbnail settings"
|
1077 |
msgstr ""
|
1078 |
|
1079 |
#: ../admin/settings.php:167
|
1080 |
+
msgid "Please note : If you change the settings, you need to recreate the thumbnails under -> Manage Gallery ."
|
1081 |
+
msgstr ""
|
1082 |
+
|
1083 |
+
#: ../admin/settings.php:170
|
1084 |
msgid "Width x height (in pixel)"
|
1085 |
msgstr ""
|
1086 |
|
1087 |
+
#: ../admin/settings.php:172
|
1088 |
msgid "This values are maxium values "
|
1089 |
msgstr ""
|
1090 |
|
1091 |
+
#: ../admin/settings.php:175
|
1092 |
msgid "Set fix dimension"
|
1093 |
msgstr ""
|
1094 |
|
1095 |
+
#: ../admin/settings.php:177
|
1096 |
msgid "Ignore the aspect ratio, no portrait thumbnails"
|
1097 |
msgstr ""
|
1098 |
|
1099 |
+
#: ../admin/settings.php:180
|
1100 |
msgid "Crop thumbnail from image"
|
1101 |
msgstr ""
|
1102 |
|
1103 |
+
#: ../admin/settings.php:182
|
1104 |
msgid "Create square thumbnails from the center"
|
1105 |
msgstr ""
|
1106 |
|
1107 |
+
#: ../admin/settings.php:185
|
1108 |
msgid "Do resize before cropping"
|
1109 |
msgstr ""
|
1110 |
|
1111 |
+
#: ../admin/settings.php:187
|
1112 |
msgid "Generates square thumbnails without cropping to much"
|
1113 |
msgstr ""
|
1114 |
|
1115 |
+
#: ../admin/settings.php:190
|
1116 |
msgid "Thumbnail quality"
|
1117 |
msgstr ""
|
1118 |
|
1119 |
+
#: ../admin/settings.php:194
|
1120 |
+
#: ../admin/settings.php:224
|
1121 |
msgid "Resample Mode"
|
1122 |
msgstr ""
|
1123 |
|
1124 |
+
#: ../admin/settings.php:196
|
1125 |
+
#: ../admin/settings.php:227
|
1126 |
msgid "Value between 1-5 (higher value, more CPU load)"
|
1127 |
msgstr ""
|
1128 |
|
1129 |
+
#: ../admin/settings.php:207
|
1130 |
msgid "Image settings"
|
1131 |
msgstr ""
|
1132 |
|
1133 |
+
#: ../admin/settings.php:213
|
1134 |
msgid "Resize Images"
|
1135 |
msgstr ""
|
1136 |
|
1137 |
+
#: ../admin/settings.php:216
|
1138 |
msgid "Width x height (in pixel). NextGEN Gallery will keep ratio size"
|
1139 |
msgstr ""
|
1140 |
|
1141 |
+
#: ../admin/settings.php:219
|
1142 |
msgid "Image quality"
|
1143 |
msgstr ""
|
1144 |
|
1145 |
+
#: ../admin/settings.php:230
|
1146 |
msgid "Add link in [singlepic] tag "
|
1147 |
msgstr ""
|
1148 |
|
1149 |
+
#: ../admin/settings.php:233
|
1150 |
msgid "Add the fullsize picture as link. Didn't support watermark mode on the fly."
|
1151 |
msgstr ""
|
1152 |
|
1153 |
+
#: ../admin/settings.php:244
|
1154 |
msgid "Gallery settings"
|
1155 |
msgstr ""
|
1156 |
|
1157 |
+
#: ../admin/settings.php:250
|
1158 |
msgid "Number of images per page"
|
1159 |
msgstr ""
|
1160 |
|
1161 |
+
#: ../admin/settings.php:252
|
1162 |
msgid "0 will disable pagination, all images on one page"
|
1163 |
msgstr ""
|
1164 |
|
1165 |
+
#: ../admin/settings.php:255
|
1166 |
msgid "Integrate slideshow"
|
1167 |
msgstr ""
|
1168 |
|
1169 |
+
#: ../admin/settings.php:262
|
1170 |
msgid "Show first"
|
1171 |
msgstr ""
|
1172 |
|
1173 |
+
#: ../admin/settings.php:267
|
1174 |
msgid "Sort thumbnails"
|
1175 |
msgstr ""
|
1176 |
|
1177 |
+
#: ../admin/settings.php:268
|
1178 |
msgid "Image ID"
|
1179 |
msgstr ""
|
1180 |
|
1181 |
+
#: ../admin/settings.php:270
|
1182 |
msgid "Alt / Title text"
|
1183 |
msgstr ""
|
1184 |
|
1185 |
+
#: ../admin/settings.php:284
|
1186 |
msgid "Here you can select the thumbnail effect, NextGEN Gallery will integrate the required HTML code in the images. Please note that only the Thickbox effect will automatic added to your theme."
|
1187 |
msgstr ""
|
1188 |
|
1189 |
+
#: ../admin/settings.php:285
|
1190 |
msgid "With the placeholder"
|
1191 |
msgstr ""
|
1192 |
|
1193 |
+
#: ../admin/settings.php:285
|
1194 |
msgid "you can activate a navigation through the images (depend on the effect). Change the code line only , when you use a different thumbnail effect or you know what you do."
|
1195 |
msgstr ""
|
1196 |
|
1197 |
+
#: ../admin/settings.php:289
|
1198 |
msgid "JavaScript Thumbnail effect"
|
1199 |
msgstr ""
|
1200 |
|
1201 |
+
#: ../admin/settings.php:292
|
1202 |
msgid "None"
|
1203 |
msgstr ""
|
1204 |
|
1205 |
+
#: ../admin/settings.php:293
|
1206 |
msgid "Thickbox"
|
1207 |
msgstr ""
|
1208 |
|
1209 |
+
#: ../admin/settings.php:294
|
1210 |
msgid "Lightbox"
|
1211 |
msgstr ""
|
1212 |
|
1213 |
+
#: ../admin/settings.php:295
|
1214 |
msgid "Highslide"
|
1215 |
msgstr ""
|
1216 |
|
1217 |
+
#: ../admin/settings.php:296
|
1218 |
msgid "Custom"
|
1219 |
msgstr ""
|
1220 |
|
1221 |
+
#: ../admin/settings.php:300
|
1222 |
msgid "Link Code line"
|
1223 |
msgstr ""
|
1224 |
|
1225 |
+
#: ../admin/settings.php:308
|
1226 |
+
msgid "Select loading image"
|
1227 |
+
msgstr ""
|
1228 |
+
|
1229 |
+
#: ../admin/settings.php:334
|
1230 |
msgid "Preview"
|
1231 |
msgstr ""
|
1232 |
|
1233 |
+
#: ../admin/settings.php:336
|
1234 |
+
#: ../admin/settings.php:340
|
1235 |
msgid "Position"
|
1236 |
msgstr ""
|
1237 |
|
1238 |
+
#: ../admin/settings.php:360
|
1239 |
msgid "Offset"
|
1240 |
msgstr ""
|
1241 |
|
1242 |
+
#: ../admin/settings.php:378
|
1243 |
msgid "Use image as watermark"
|
1244 |
msgstr ""
|
1245 |
|
1246 |
+
#: ../admin/settings.php:381
|
1247 |
msgid "URL to file"
|
1248 |
msgstr ""
|
1249 |
|
1250 |
+
#: ../admin/settings.php:388
|
1251 |
msgid "Use text as watermark"
|
1252 |
msgstr ""
|
1253 |
|
1254 |
+
#: ../admin/settings.php:391
|
1255 |
msgid "Font"
|
1256 |
msgstr ""
|
1257 |
|
1258 |
+
#: ../admin/settings.php:399
|
1259 |
msgid "You can upload more fonts in the folder <strong>nggallery/fonts</strong>"
|
1260 |
msgstr ""
|
1261 |
|
1262 |
+
#: ../admin/settings.php:403
|
1263 |
msgid "Size"
|
1264 |
msgstr ""
|
1265 |
|
1266 |
+
#: ../admin/settings.php:407
|
1267 |
msgid "Color"
|
1268 |
msgstr ""
|
1269 |
|
1270 |
+
#: ../admin/settings.php:409
|
1271 |
msgid "(hex w/o #)"
|
1272 |
msgstr ""
|
1273 |
|
1274 |
+
#: ../admin/settings.php:412
|
1275 |
msgid "Text"
|
1276 |
msgstr ""
|
1277 |
|
1278 |
+
#: ../admin/settings.php:416
|
1279 |
msgid "Opaque"
|
1280 |
msgstr ""
|
1281 |
|
1282 |
+
#: ../admin/settings.php:434
|
1283 |
msgid "The imagerotator.swf is not in the nggallery folder, the slideshow will not work."
|
1284 |
msgstr ""
|
1285 |
|
1286 |
+
#: ../admin/settings.php:435
|
1287 |
+
msgid "The settings are used in the Flash Image Rotator Version 3.8 ."
|
1288 |
msgstr ""
|
1289 |
|
1290 |
+
#: ../admin/settings.php:436
|
1291 |
msgid "See more information for the Flash Player on the web page"
|
1292 |
msgstr ""
|
1293 |
|
1294 |
+
#: ../admin/settings.php:439
|
1295 |
msgid "Default size (W x H)"
|
1296 |
msgstr ""
|
1297 |
|
1298 |
+
#: ../admin/settings.php:444
|
1299 |
msgid "Shuffle mode"
|
1300 |
msgstr ""
|
1301 |
|
1302 |
+
#: ../admin/settings.php:448
|
1303 |
msgid "Show next image on click"
|
1304 |
msgstr ""
|
1305 |
|
1306 |
+
#: ../admin/settings.php:452
|
1307 |
msgid "Show navigation bar"
|
1308 |
msgstr ""
|
1309 |
|
1310 |
+
#: ../admin/settings.php:456
|
1311 |
msgid "Show loading icon"
|
1312 |
msgstr ""
|
1313 |
|
1314 |
+
#: ../admin/settings.php:460
|
1315 |
msgid "Stretch image"
|
1316 |
msgstr ""
|
1317 |
|
1318 |
+
#: ../admin/settings.php:463
|
1319 |
msgid "true"
|
1320 |
msgstr ""
|
1321 |
|
1322 |
+
#: ../admin/settings.php:464
|
1323 |
msgid "false"
|
1324 |
msgstr ""
|
1325 |
|
1326 |
+
#: ../admin/settings.php:465
|
1327 |
msgid "fit"
|
1328 |
msgstr ""
|
1329 |
|
1330 |
+
#: ../admin/settings.php:471
|
1331 |
msgid "Duration time"
|
1332 |
msgstr ""
|
1333 |
|
1334 |
+
#: ../admin/settings.php:472
|
1335 |
msgid "sec."
|
1336 |
msgstr ""
|
1337 |
|
1338 |
+
#: ../admin/settings.php:475
|
1339 |
msgid "Transition / Fade effect"
|
1340 |
msgstr ""
|
1341 |
|
1342 |
+
#: ../admin/settings.php:478
|
1343 |
msgid "fade"
|
1344 |
msgstr ""
|
1345 |
|
1346 |
+
#: ../admin/settings.php:479
|
1347 |
msgid "bgfade"
|
1348 |
msgstr ""
|
1349 |
|
1350 |
+
#: ../admin/settings.php:480
|
1351 |
+
msgid "slowfade"
|
1352 |
+
msgstr ""
|
1353 |
+
|
1354 |
+
#: ../admin/settings.php:481
|
1355 |
msgid "circles"
|
1356 |
msgstr ""
|
1357 |
|
1358 |
+
#: ../admin/settings.php:482
|
1359 |
+
msgid "bubbles"
|
1360 |
+
msgstr ""
|
1361 |
+
|
1362 |
+
#: ../admin/settings.php:483
|
1363 |
msgid "blocks"
|
1364 |
msgstr ""
|
1365 |
|
1366 |
+
#: ../admin/settings.php:484
|
1367 |
msgid "fluids"
|
1368 |
msgstr ""
|
1369 |
|
1370 |
+
#: ../admin/settings.php:485
|
1371 |
msgid "lines"
|
1372 |
msgstr ""
|
1373 |
|
1374 |
+
#: ../admin/settings.php:486
|
1375 |
msgid "random"
|
1376 |
msgstr ""
|
1377 |
|
1378 |
+
#: ../admin/settings.php:490
|
1379 |
+
msgid "Use slow zooming effect"
|
1380 |
+
msgstr ""
|
1381 |
+
|
1382 |
+
#: ../admin/settings.php:494
|
1383 |
msgid "Background Color"
|
1384 |
msgstr ""
|
1385 |
|
1386 |
+
#: ../admin/settings.php:499
|
1387 |
msgid "Texts / Buttons Color"
|
1388 |
msgstr ""
|
1389 |
|
1390 |
+
#: ../admin/settings.php:504
|
1391 |
msgid "Rollover / Active Color"
|
1392 |
msgstr ""
|
1393 |
|
1394 |
+
#: ../admin/settings.php:509
|
1395 |
+
msgid "Try XHTML validation (with CDATA)"
|
1396 |
+
msgstr ""
|
1397 |
+
|
1398 |
+
#: ../admin/settings.php:511
|
1399 |
+
msgid "Important : Could causes problem at some browser. Please recheck your page."
|
1400 |
+
msgstr ""
|
1401 |
+
|
1402 |
#: ../admin/setup.php:10
|
1403 |
msgid "Reset all settings to default parameter"
|
1404 |
msgstr ""
|
lib/thumbnail.inc.php
CHANGED
@@ -679,7 +679,7 @@ class ngg_Thumbnail {
|
|
679 |
function gatherImageMeta() {
|
680 |
//only attempt to retrieve info if exif exists
|
681 |
if(function_exists("exif_read_data") && $this->format == 'JPG') {
|
682 |
-
$imageData = exif_read_data($this->fileName);
|
683 |
if(isset($imageData['Make']))
|
684 |
$this->imageMeta['make'] = ucwords(strtolower($imageData['Make']));
|
685 |
if(isset($imageData['Model']))
|
679 |
function gatherImageMeta() {
|
680 |
//only attempt to retrieve info if exif exists
|
681 |
if(function_exists("exif_read_data") && $this->format == 'JPG') {
|
682 |
+
$imageData = @exif_read_data($this->fileName);
|
683 |
if(isset($imageData['Make']))
|
684 |
$this->imageMeta['make'] = ucwords(strtolower($imageData['Make']));
|
685 |
if(isset($imageData['Model']))
|
nggallery.php
CHANGED
@@ -4,7 +4,7 @@ Plugin Name: NextGEN Gallery
|
|
4 |
Plugin URI: http://alexrabe.boelinger.com/?page_id=80
|
5 |
Description: A NextGENeration Photo gallery for the WEB2.0(beta).
|
6 |
Author: NextGEN DEV-Team
|
7 |
-
Version: 0.
|
8 |
|
9 |
Author URI: http://alexrabe.boelinger.com/
|
10 |
|
@@ -38,11 +38,14 @@ if(preg_match('#' . basename(__FILE__) . '#', $_SERVER['PHP_SELF'])) { die('You
|
|
38 |
|
39 |
global $wpdb, $wp_version;
|
40 |
|
|
|
|
|
|
|
41 |
//This works only in WP2.1 or higher
|
42 |
if (version_compare($wp_version, '2.1', '>=')) {
|
43 |
|
44 |
// Version and path to check version
|
45 |
-
define('NGGVERSION', "0.
|
46 |
define('NGGURL', "http://nextgen.boelinger.com/version.php");
|
47 |
|
48 |
// define URL
|
@@ -52,13 +55,17 @@ define('NGGFOLDER', dirname(plugin_basename(__FILE__)));
|
|
52 |
define('NGGALLERY_ABSPATH', $myabspath.'wp-content/plugins/' . NGGFOLDER .'/');
|
53 |
define('NGGALLERY_URLPATH', get_option('siteurl').'/wp-content/plugins/' . NGGFOLDER.'/');
|
54 |
|
|
|
|
|
|
|
|
|
55 |
// look for imagerotator
|
56 |
define('NGGALLERY_IREXIST', file_exists(NGGALLERY_ABSPATH.'imagerotator.swf'));
|
57 |
|
58 |
// get value for safe mode
|
59 |
if ((gettype(ini_get('safe_mode')) == 'string')) {
|
60 |
// if sever did in in a other way
|
61 |
-
if (ini_get('safe_mode') == '
|
62 |
else define('SAFE_MODE', ini_get('safe_mode'));
|
63 |
} else
|
64 |
define('SAFE_MODE', ini_get('safe_mode'));
|
@@ -74,7 +81,7 @@ $wpdb->nggalbum = $wpdb->prefix . 'ngg_album';
|
|
74 |
// Load language
|
75 |
function nggallery_init ()
|
76 |
{
|
77 |
-
load_plugin_textdomain('nggallery','wp-content/plugins/' . NGGFOLDER.'/lang');
|
78 |
}
|
79 |
|
80 |
// Load admin panel
|
@@ -82,36 +89,34 @@ include_once ("ngginstall.php");
|
|
82 |
include_once ("nggfunctions.php");
|
83 |
include_once ("admin/admin.php");
|
84 |
|
85 |
-
// add
|
86 |
-
|
87 |
-
|
|
|
|
|
88 |
echo "<meta name='NextGEN' content='".NGGVERSION."' />\n";
|
89 |
-
|
|
|
90 |
if ($ngg_options[thumbEffect] == "thickbox") {
|
91 |
-
|
92 |
-
|
93 |
-
|
94 |
-
|
95 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
96 |
}
|
97 |
-
if (!function_exists('integrate_swfobject'))
|
98 |
-
echo "\n".'<script type="text/javascript" src="'.NGGALLERY_URLPATH.'js/swfobject.js'.'"></script>'."\n";
|
99 |
-
}
|
100 |
-
// Filter hook to activate CSS in header
|
101 |
-
if ($ngg_options[activateCSS]) add_filter('wp_head', 'integrate_nggheader');
|
102 |
-
|
103 |
-
add_action('admin_head', 'ngg_nocache');
|
104 |
-
// add header to theme
|
105 |
-
function ngg_nocache() {
|
106 |
-
echo "\n".'<meta name="NextGEN" content="'.NGGVERSION.'" />';
|
107 |
-
echo "\n".'<meta http-equiv="pragma" content="no-cache" />'."\n";
|
108 |
}
|
109 |
|
110 |
// load language file
|
111 |
add_action('init', 'nggallery_init');
|
112 |
|
113 |
add_action('activate_' . NGGFOLDER.'/nggallery.php', 'ngg_install');
|
114 |
-
// init
|
115 |
function ngg_install() {
|
116 |
nggallery_install();
|
117 |
}
|
4 |
Plugin URI: http://alexrabe.boelinger.com/?page_id=80
|
5 |
Description: A NextGENeration Photo gallery for the WEB2.0(beta).
|
6 |
Author: NextGEN DEV-Team
|
7 |
+
Version: 0.50a
|
8 |
|
9 |
Author URI: http://alexrabe.boelinger.com/
|
10 |
|
38 |
|
39 |
global $wpdb, $wp_version;
|
40 |
|
41 |
+
// ini_set('display_errors', '1');
|
42 |
+
// ini_set('error_reporting', E_ALL);
|
43 |
+
|
44 |
//This works only in WP2.1 or higher
|
45 |
if (version_compare($wp_version, '2.1', '>=')) {
|
46 |
|
47 |
// Version and path to check version
|
48 |
+
define('NGGVERSION', "0.50");
|
49 |
define('NGGURL', "http://nextgen.boelinger.com/version.php");
|
50 |
|
51 |
// define URL
|
55 |
define('NGGALLERY_ABSPATH', $myabspath.'wp-content/plugins/' . NGGFOLDER .'/');
|
56 |
define('NGGALLERY_URLPATH', get_option('siteurl').'/wp-content/plugins/' . NGGFOLDER.'/');
|
57 |
|
58 |
+
// Permission settings
|
59 |
+
define('NGGFOLDER_PERMISSION', 0777);
|
60 |
+
define('NGGFILE_PERMISSION', 0666);
|
61 |
+
|
62 |
// look for imagerotator
|
63 |
define('NGGALLERY_IREXIST', file_exists(NGGALLERY_ABSPATH.'imagerotator.swf'));
|
64 |
|
65 |
// get value for safe mode
|
66 |
if ((gettype(ini_get('safe_mode')) == 'string')) {
|
67 |
// if sever did in in a other way
|
68 |
+
if (ini_get('safe_mode') == 'off') define('SAFE_MODE', FALSE);
|
69 |
else define('SAFE_MODE', ini_get('safe_mode'));
|
70 |
} else
|
71 |
define('SAFE_MODE', ini_get('safe_mode'));
|
81 |
// Load language
|
82 |
function nggallery_init ()
|
83 |
{
|
84 |
+
load_plugin_textdomain('nggallery','wp-content/plugins/' . NGGFOLDER.'/lang');
|
85 |
}
|
86 |
|
87 |
// Load admin panel
|
89 |
include_once ("nggfunctions.php");
|
90 |
include_once ("admin/admin.php");
|
91 |
|
92 |
+
// add javascript to header
|
93 |
+
add_action('wp_head', 'ngg_addjs', 1);
|
94 |
+
function ngg_addjs() {
|
95 |
+
global $wp_version, $ngg_options;
|
96 |
+
|
97 |
echo "<meta name='NextGEN' content='".NGGVERSION."' />\n";
|
98 |
+
if ($ngg_options[activateCSS])
|
99 |
+
echo "\n".'<style type="text/css" media="screen">@import "'.NGGALLERY_URLPATH.'css/'.$ngg_options[CSSfile].'";</style>';
|
100 |
if ($ngg_options[thumbEffect] == "thickbox") {
|
101 |
+
echo "\n".'<script type="text/javascript"> var tb_pathToImage = "'.NGGALLERY_URLPATH.'thickbox/'.$ngg_options[thickboxImage].'";</script>';
|
102 |
+
echo "\n".'<style type="text/css" media="screen">@import "'.NGGALLERY_URLPATH.'thickbox/thickbox.css";</style>'."\n";
|
103 |
+
if ($wp_version < "2.2") {
|
104 |
+
wp_enqueue_script('jquery', NGGALLERY_URLPATH .'admin/js/jquery.js', FALSE, '1.1.2');
|
105 |
+
}
|
106 |
+
wp_enqueue_script('thickbox', NGGALLERY_URLPATH .'thickbox/thickbox-pack.js', array('jquery'), '3.0.1');
|
107 |
+
}
|
108 |
+
|
109 |
+
// test for wordtube function
|
110 |
+
if (!function_exists('integrate_swfobject')) {
|
111 |
+
wp_enqueue_script('swfobject', NGGALLERY_URLPATH .'js/swfobject.js', FALSE, '1.5');
|
112 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
113 |
}
|
114 |
|
115 |
// load language file
|
116 |
add_action('init', 'nggallery_init');
|
117 |
|
118 |
add_action('activate_' . NGGFOLDER.'/nggallery.php', 'ngg_install');
|
119 |
+
// init tables in wp-database if plugin is activated
|
120 |
function ngg_install() {
|
121 |
nggallery_install();
|
122 |
}
|
nggfunctions.php
CHANGED
@@ -66,8 +66,8 @@ function searchnggallerytags($content) {
|
|
66 |
if($galleryID) {
|
67 |
$search = $matches[0][$key];
|
68 |
// get the size if they are set
|
69 |
-
$
|
70 |
-
$
|
71 |
$replace= nggShowSlideshow($galleryID,$irWidth,$irHeight);
|
72 |
$content= str_replace ($search, $replace, $content);
|
73 |
}
|
@@ -88,10 +88,10 @@ function nggShowSlideshow($galleryID,$irWidth,$irHeight) {
|
|
88 |
if (empty($irHeight)) $irHeight = $ngg_options[irHeight];
|
89 |
|
90 |
$replace .= "\n".'<div class="slideshow" id="ngg_slideshow'.$galleryID.'">';
|
91 |
-
$replace .= '<a href="http://www.macromedia.com/go/getflashplayer">
|
92 |
$replace .= "\n\t".'<script type="text/javascript">';
|
93 |
-
|
94 |
-
$replace .= "\n\t".'//<![CDATA[';
|
95 |
$replace .= "\n\t\t".'var so = new SWFObject("'.NGGALLERY_URLPATH.'imagerotator.swf", "ngg_slideshow'.$galleryID.'", "'.$irWidth.'", "'.$irHeight.'", "7", "#'.$ngg_options[irBackcolor].'");';
|
96 |
$replace .= "\n\t\t".'so.addParam("wmode", "opaque");';
|
97 |
$replace .= "\n\t\t".'so.addVariable("file", "'.NGGALLERY_URLPATH.'nggextractXML.php?gid='.$galleryID.'");';
|
@@ -99,19 +99,19 @@ function nggShowSlideshow($galleryID,$irWidth,$irHeight) {
|
|
99 |
if ($ngg_options[irLinkfromdisplay]) $replace .= "\n\t\t".'so.addVariable("linkfromdisplay", "false");';
|
100 |
if ($ngg_options[irShownavigation]) $replace .= "\n\t\t".'so.addVariable("shownavigation", "true");';
|
101 |
if ($ngg_options[irShowicons]) $replace .= "\n\t\t".'so.addVariable("showicons", "true");';
|
|
|
102 |
$replace .= "\n\t\t".'so.addVariable("overstretch", "'.$ngg_options[irOverstretch].'");';
|
103 |
$replace .= "\n\t\t".'so.addVariable("backcolor", "0x'.$ngg_options[irBackcolor].'");';
|
104 |
$replace .= "\n\t\t".'so.addVariable("frontcolor", "0x'.$ngg_options[irFrontcolor].'");';
|
105 |
$replace .= "\n\t\t".'so.addVariable("lightcolor", "0x'.$ngg_options[irLightcolor].'");';
|
106 |
$replace .= "\n\t\t".'so.addVariable("rotatetime", "'.$ngg_options[irRotatetime].'");';
|
107 |
-
$replace .= "\n\t\t".'so.addVariable("transition", "'.$ngg_options[irTransition].'");';
|
108 |
$replace .= "\n\t\t".'so.addVariable("width", "'.$irWidth.'");';
|
109 |
$replace .= "\n\t\t".'so.addVariable("height", "'.$irHeight.'");';
|
110 |
$replace .= "\n\t\t".'so.write("ngg_slideshow'.$galleryID.'");';
|
111 |
-
$replace .= "\n\t".'//]]>';
|
112 |
-
|
113 |
$replace .= "\n\t".'</script>';
|
114 |
-
$replace .= '</div>'."\n";
|
115 |
|
116 |
return $replace;
|
117 |
}
|
@@ -219,7 +219,7 @@ function nggShowGallery($galleryID) {
|
|
219 |
);
|
220 |
$gallerycontent .= '<div class="ngg-gallery-thumbnail-box">'."\n\t";
|
221 |
$gallerycontent .= '<div class="ngg-gallery-thumbnail">'."\n\t";
|
222 |
-
$gallerycontent .= '<a href="'.$folder_url.$picturefile.'" title="'.$picture->
|
223 |
$gallerycontent .= '<img title="'.$picture->alttext.'" alt="'.$picture->alttext.'" src="'.$thumbnailURL.$thumb_prefix.$picture->filename.'" '.$thumbsize.' />';
|
224 |
$gallerycontent .= '</a>'."\n".'</div>'."\n".'</div>'."\n";
|
225 |
}
|
@@ -326,7 +326,7 @@ function nggSinglePicture($imageID,$width=250,$height=250,$mode="",$float="") {
|
|
326 |
if ($ngg_options[thumbEffect] == "highslide") $thumbcode = str_replace("%GALLERY_NAME%", "'".$act_gallery->name."'", $thumbcode);
|
327 |
else $thumbcode = str_replace("%GALLERY_NAME%", $act_gallery->name, $thumbcode);
|
328 |
|
329 |
-
$link = '<a href="'.$folder_url.$picture->filename.'" title="'.$picture->
|
330 |
}
|
331 |
|
332 |
// add float to img
|
66 |
if($galleryID) {
|
67 |
$search = $matches[0][$key];
|
68 |
// get the size if they are set
|
69 |
+
$irWidth = $matches[3][$key];
|
70 |
+
$irHeight = $matches[5][$key];
|
71 |
$replace= nggShowSlideshow($galleryID,$irWidth,$irHeight);
|
72 |
$content= str_replace ($search, $replace, $content);
|
73 |
}
|
88 |
if (empty($irHeight)) $irHeight = $ngg_options[irHeight];
|
89 |
|
90 |
$replace .= "\n".'<div class="slideshow" id="ngg_slideshow'.$galleryID.'">';
|
91 |
+
$replace .= '<p>The <a href="http://www.macromedia.com/go/getflashplayer">Flash Player</a> and <a href="http://www.mozilla.com/firefox/">a browser with Javascript support</a> are needed..</p></div>';
|
92 |
$replace .= "\n\t".'<script type="text/javascript">';
|
93 |
+
if ($ngg_options[irXHTMLvalid]) $replace .= "\n\t".'<!--';
|
94 |
+
if ($ngg_options[irXHTMLvalid]) $replace .= "\n\t".'//<![CDATA[';
|
95 |
$replace .= "\n\t\t".'var so = new SWFObject("'.NGGALLERY_URLPATH.'imagerotator.swf", "ngg_slideshow'.$galleryID.'", "'.$irWidth.'", "'.$irHeight.'", "7", "#'.$ngg_options[irBackcolor].'");';
|
96 |
$replace .= "\n\t\t".'so.addParam("wmode", "opaque");';
|
97 |
$replace .= "\n\t\t".'so.addVariable("file", "'.NGGALLERY_URLPATH.'nggextractXML.php?gid='.$galleryID.'");';
|
99 |
if ($ngg_options[irLinkfromdisplay]) $replace .= "\n\t\t".'so.addVariable("linkfromdisplay", "false");';
|
100 |
if ($ngg_options[irShownavigation]) $replace .= "\n\t\t".'so.addVariable("shownavigation", "true");';
|
101 |
if ($ngg_options[irShowicons]) $replace .= "\n\t\t".'so.addVariable("showicons", "true");';
|
102 |
+
if ($ngg_options[irKenburns]) $replace .= "\n\t\t".'so.addVariable("kenburns", "true");';
|
103 |
$replace .= "\n\t\t".'so.addVariable("overstretch", "'.$ngg_options[irOverstretch].'");';
|
104 |
$replace .= "\n\t\t".'so.addVariable("backcolor", "0x'.$ngg_options[irBackcolor].'");';
|
105 |
$replace .= "\n\t\t".'so.addVariable("frontcolor", "0x'.$ngg_options[irFrontcolor].'");';
|
106 |
$replace .= "\n\t\t".'so.addVariable("lightcolor", "0x'.$ngg_options[irLightcolor].'");';
|
107 |
$replace .= "\n\t\t".'so.addVariable("rotatetime", "'.$ngg_options[irRotatetime].'");';
|
108 |
+
$replace .= "\n\t\t".'so.addVariable("transition", "'.$ngg_options[irTransition].'");';
|
109 |
$replace .= "\n\t\t".'so.addVariable("width", "'.$irWidth.'");';
|
110 |
$replace .= "\n\t\t".'so.addVariable("height", "'.$irHeight.'");';
|
111 |
$replace .= "\n\t\t".'so.write("ngg_slideshow'.$galleryID.'");';
|
112 |
+
if ($ngg_options[irXHTMLvalid]) $replace .= "\n\t".'//]]>';
|
113 |
+
if ($ngg_options[irXHTMLvalid]) $replace .= "\n\t".'-->';
|
114 |
$replace .= "\n\t".'</script>';
|
|
|
115 |
|
116 |
return $replace;
|
117 |
}
|
219 |
);
|
220 |
$gallerycontent .= '<div class="ngg-gallery-thumbnail-box">'."\n\t";
|
221 |
$gallerycontent .= '<div class="ngg-gallery-thumbnail">'."\n\t";
|
222 |
+
$gallerycontent .= '<a href="'.$folder_url.$picturefile.'" title="'.$picture->description.'" '.$thumbcode.' >';
|
223 |
$gallerycontent .= '<img title="'.$picture->alttext.'" alt="'.$picture->alttext.'" src="'.$thumbnailURL.$thumb_prefix.$picture->filename.'" '.$thumbsize.' />';
|
224 |
$gallerycontent .= '</a>'."\n".'</div>'."\n".'</div>'."\n";
|
225 |
}
|
326 |
if ($ngg_options[thumbEffect] == "highslide") $thumbcode = str_replace("%GALLERY_NAME%", "'".$act_gallery->name."'", $thumbcode);
|
327 |
else $thumbcode = str_replace("%GALLERY_NAME%", $act_gallery->name, $thumbcode);
|
328 |
|
329 |
+
$link = '<a href="'.$folder_url.$picture->filename.'" title="'.$picture->description.'" '.$thumbcode.' >';
|
330 |
}
|
331 |
|
332 |
// add float to img
|
ngginstall.php
CHANGED
@@ -103,6 +103,7 @@ function ngg_default_options() {
|
|
103 |
// Thumbnail Effect
|
104 |
$ngg_options[thumbEffect] = "thickbox"; // select effect
|
105 |
$ngg_options[thumbCode] = "class=\"thickbox\" rel=\"%GALLERY_NAME%\"";
|
|
|
106 |
|
107 |
// Watermark settings
|
108 |
$ngg_options[wmPos] = "botRight"; // Postion
|
@@ -117,6 +118,8 @@ function ngg_default_options() {
|
|
117 |
$ngg_options[wmOpaque] = "100"; // Font Opaque
|
118 |
|
119 |
// Image Rotator settings
|
|
|
|
|
120 |
$ngg_options[irWidth] = 320;
|
121 |
$ngg_options[irHeight] = 240;
|
122 |
$ngg_options[irShuffle] = true;
|
@@ -126,6 +129,7 @@ function ngg_default_options() {
|
|
126 |
$ngg_options[irOverstretch] = "true";
|
127 |
$ngg_options[irRotatetime] = 10;
|
128 |
$ngg_options[irTransition] = "random";
|
|
|
129 |
$ngg_options[irBackcolor] = "000000";
|
130 |
$ngg_options[irFrontcolor] = "FFFFFF";
|
131 |
$ngg_options[irLightcolor] = "CC0000";
|
103 |
// Thumbnail Effect
|
104 |
$ngg_options[thumbEffect] = "thickbox"; // select effect
|
105 |
$ngg_options[thumbCode] = "class=\"thickbox\" rel=\"%GALLERY_NAME%\"";
|
106 |
+
$ngg_options[thickboxImage] = "loadingAnimationv3.gif"; // thickbox Loading Image
|
107 |
|
108 |
// Watermark settings
|
109 |
$ngg_options[wmPos] = "botRight"; // Postion
|
118 |
$ngg_options[wmOpaque] = "100"; // Font Opaque
|
119 |
|
120 |
// Image Rotator settings
|
121 |
+
|
122 |
+
$ngg_options[irXHTMLvalid] = false;
|
123 |
$ngg_options[irWidth] = 320;
|
124 |
$ngg_options[irHeight] = 240;
|
125 |
$ngg_options[irShuffle] = true;
|
129 |
$ngg_options[irOverstretch] = "true";
|
130 |
$ngg_options[irRotatetime] = 10;
|
131 |
$ngg_options[irTransition] = "random";
|
132 |
+
$ngg_options[irKenburns] = false;
|
133 |
$ngg_options[irBackcolor] = "000000";
|
134 |
$ngg_options[irFrontcolor] = "FFFFFF";
|
135 |
$ngg_options[irLightcolor] = "CC0000";
|
nggwidget.php
CHANGED
@@ -1,278 +1,644 @@
|
|
1 |
-
<?php
|
2 |
-
/*
|
3 |
-
Plugin Name: NextGEN Gallery Widget
|
4 |
-
Description: Adds a sidebar widget to
|
5 |
-
Author: KeViN
|
6 |
-
Version: 0.
|
7 |
-
Author URI: http://www.kev.hu
|
8 |
-
Plugin URI: http://www.kev.hu
|
9 |
-
|
10 |
-
This program is free software; you can redistribute it and/or modify
|
11 |
-
it under the terms of the GNU General Public License as published by
|
12 |
-
the Free Software Foundation; either version 2 of the License, or
|
13 |
-
(at your option) any later version.
|
14 |
-
|
15 |
-
This program is distributed in the hope that it will be useful,
|
16 |
-
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
17 |
-
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
18 |
-
GNU General Public License for more details.
|
19 |
-
|
20 |
-
You should have received a copy of the GNU General Public License
|
21 |
-
along with this program; if not, write to the Free Software
|
22 |
-
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
23 |
-
|
24 |
-
*/
|
25 |
-
|
26 |
-
function getCSVValues($string,$separator=",")
|
27 |
-
{
|
28 |
-
$string = str_replace('""', "'", $string);
|
29 |
-
// split the string at double quotes "
|
30 |
-
$bits = explode('"',$string);
|
31 |
-
$elements = array();
|
32 |
-
for ( $i=0; $i < count($bits) ; $i++ ) {
|
33 |
-
/*
|
34 |
-
odd numbered elements would have been
|
35 |
-
enclosed by double quotes
|
36 |
-
even numbered elements would not have been
|
37 |
-
*/
|
38 |
-
if (($i%2) == 1) {
|
39 |
-
/* if the element number is odd add the
|
40 |
-
whole string to the output array */
|
41 |
-
$elements[] = $bits[$i];
|
42 |
-
} else
|
43 |
-
{
|
44 |
-
/* otherwise split the unquoted stuff at commas
|
45 |
-
and add the elements to the array */
|
46 |
-
$rest = $bits[$i];
|
47 |
-
$rest = preg_replace("/^".$separator."/","",$rest);
|
48 |
-
$rest = preg_replace("/".$separator."$/","",$rest);
|
49 |
-
$elements = array_merge($elements,explode($separator,$rest));
|
50 |
-
}
|
51 |
-
}
|
52 |
-
return $elements;
|
53 |
-
}
|
54 |
-
|
55 |
-
|
56 |
-
|
57 |
-
|
58 |
-
|
59 |
-
|
60 |
-
|
61 |
-
|
62 |
-
|
63 |
-
|
64 |
-
|
65 |
-
|
66 |
-
|
67 |
-
|
68 |
-
|
69 |
-
|
70 |
-
|
71 |
-
|
72 |
-
|
73 |
-
|
74 |
-
|
75 |
-
|
76 |
-
|
77 |
-
|
78 |
-
|
79 |
-
|
80 |
-
|
81 |
-
|
82 |
-
|
83 |
-
|
84 |
-
|
85 |
-
|
86 |
-
|
87 |
-
|
88 |
-
|
89 |
-
|
90 |
-
|
91 |
-
|
92 |
-
|
93 |
-
|
94 |
-
|
95 |
-
|
96 |
-
|
97 |
-
|
98 |
-
|
99 |
-
|
100 |
-
|
101 |
-
|
102 |
-
|
103 |
-
|
104 |
-
|
105 |
-
|
106 |
-
|
107 |
-
|
108 |
-
|
109 |
-
|
110 |
-
|
111 |
-
|
112 |
-
|
113 |
-
|
114 |
-
|
115 |
-
|
116 |
-
|
117 |
-
|
118 |
-
|
119 |
-
|
120 |
-
|
121 |
-
|
122 |
-
|
123 |
-
|
124 |
-
|
125 |
-
|
126 |
-
|
127 |
-
|
128 |
-
|
129 |
-
|
130 |
-
|
131 |
-
|
132 |
-
|
133 |
-
|
134 |
-
|
135 |
-
|
136 |
-
|
137 |
-
|
138 |
-
|
139 |
-
|
140 |
-
|
141 |
-
|
142 |
-
|
143 |
-
|
144 |
-
|
145 |
-
|
146 |
-
|
147 |
-
|
148 |
-
|
149 |
-
|
150 |
-
|
151 |
-
|
152 |
-
|
153 |
-
|
154 |
-
|
155 |
-
|
156 |
-
|
157 |
-
|
158 |
-
|
159 |
-
|
160 |
-
|
161 |
-
|
162 |
-
|
163 |
-
|
164 |
-
|
165 |
-
|
166 |
-
|
167 |
-
|
168 |
-
//
|
169 |
-
|
170 |
-
|
171 |
-
|
172 |
-
|
173 |
-
|
174 |
-
|
175 |
-
|
176 |
-
|
177 |
-
|
178 |
-
|
179 |
-
|
180 |
-
|
181 |
-
|
182 |
-
|
183 |
-
|
184 |
-
|
185 |
-
|
186 |
-
|
187 |
-
|
188 |
-
|
189 |
-
|
190 |
-
|
191 |
-
|
192 |
-
|
193 |
-
|
194 |
-
|
195 |
-
|
196 |
-
|
197 |
-
|
198 |
-
|
199 |
-
|
200 |
-
|
201 |
-
|
202 |
-
|
203 |
-
|
204 |
-
|
205 |
-
|
206 |
-
|
207 |
-
|
208 |
-
|
209 |
-
|
210 |
-
|
211 |
-
|
212 |
-
|
213 |
-
|
214 |
-
|
215 |
-
|
216 |
-
|
217 |
-
|
218 |
-
|
219 |
-
|
220 |
-
|
221 |
-
|
222 |
-
|
223 |
-
|
224 |
-
|
225 |
-
|
226 |
-
|
227 |
-
|
228 |
-
|
229 |
-
|
230 |
-
|
231 |
-
|
232 |
-
|
233 |
-
|
234 |
-
|
235 |
-
|
236 |
-
|
237 |
-
|
238 |
-
|
239 |
-
|
240 |
-
|
241 |
-
|
242 |
-
|
243 |
-
|
244 |
-
|
245 |
-
|
246 |
-
|
247 |
-
|
248 |
-
|
249 |
-
|
250 |
-
|
251 |
-
|
252 |
-
|
253 |
-
|
254 |
-
|
255 |
-
|
256 |
-
|
257 |
-
|
258 |
-
|
259 |
-
|
260 |
-
|
261 |
-
|
262 |
-
|
263 |
-
|
264 |
-
|
265 |
-
|
266 |
-
|
267 |
-
|
268 |
-
|
269 |
-
|
270 |
-
|
271 |
-
|
272 |
-
|
273 |
-
|
274 |
-
|
275 |
-
|
276 |
-
|
277 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
278 |
?>
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
Plugin Name: NextGEN Gallery Widget
|
4 |
+
Description: Adds a sidebar widget support to your NextGEN Gallery!
|
5 |
+
Author: KeViN
|
6 |
+
Version: 0.98b
|
7 |
+
Author URI: http://www.kev.hu
|
8 |
+
Plugin URI: http://www.kev.hu
|
9 |
+
|
10 |
+
This program is free software; you can redistribute it and/or modify
|
11 |
+
it under the terms of the GNU General Public License as published by
|
12 |
+
the Free Software Foundation; either version 2 of the License, or
|
13 |
+
(at your option) any later version.
|
14 |
+
|
15 |
+
This program is distributed in the hope that it will be useful,
|
16 |
+
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
17 |
+
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
18 |
+
GNU General Public License for more details.
|
19 |
+
|
20 |
+
You should have received a copy of the GNU General Public License
|
21 |
+
along with this program; if not, write to the Free Software
|
22 |
+
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
23 |
+
|
24 |
+
*/
|
25 |
+
|
26 |
+
function getCSVValues($string,$separator=",")
|
27 |
+
{
|
28 |
+
$string = str_replace('""', "'", $string);
|
29 |
+
// split the string at double quotes "
|
30 |
+
$bits = explode('"',$string);
|
31 |
+
$elements = array();
|
32 |
+
for ( $i=0; $i < count($bits) ; $i++ ) {
|
33 |
+
/*
|
34 |
+
odd numbered elements would have been
|
35 |
+
enclosed by double quotes
|
36 |
+
even numbered elements would not have been
|
37 |
+
*/
|
38 |
+
if (($i%2) == 1) {
|
39 |
+
/* if the element number is odd add the
|
40 |
+
whole string to the output array */
|
41 |
+
$elements[] = $bits[$i];
|
42 |
+
} else
|
43 |
+
{
|
44 |
+
/* otherwise split the unquoted stuff at commas
|
45 |
+
and add the elements to the array */
|
46 |
+
$rest = $bits[$i];
|
47 |
+
$rest = preg_replace("/^".$separator."/","",$rest);
|
48 |
+
$rest = preg_replace("/".$separator."$/","",$rest);
|
49 |
+
$elements = array_merge($elements,explode($separator,$rest));
|
50 |
+
}
|
51 |
+
}
|
52 |
+
return $elements;
|
53 |
+
}
|
54 |
+
|
55 |
+
/**********************************************************/
|
56 |
+
/* Slidehow widget function
|
57 |
+
/**********************************************************/
|
58 |
+
function nggSlideshowWidget($galleryID,$irWidth,$irHeight) {
|
59 |
+
|
60 |
+
global $wpdb;
|
61 |
+
$ngg_options = get_option('ngg_options');
|
62 |
+
|
63 |
+
if (empty($irWidth) ) $irWidth = $ngg_options[irWidth];
|
64 |
+
if (empty($irHeight)) $irHeight = $ngg_options[irHeight];
|
65 |
+
|
66 |
+
$replace .= "\n".'<div class="ngg-widget-slideshow" id="ngg_widget_slideshow'.$galleryID.'">';
|
67 |
+
$replace .= '<a href="http://www.macromedia.com/go/getflashplayer">Get the Flash Player</a> to see the slideshow.</div>';
|
68 |
+
$replace .= "\n\t".'<script type="text/javascript">';
|
69 |
+
$replace .= "\n\t".'<!--';
|
70 |
+
$replace .= "\n\t".'//<![CDATA[';
|
71 |
+
$replace .= "\n\t\t".'var so = new SWFObject("'.NGGALLERY_URLPATH.'imagerotator.swf", "ngg_slideshow'.$galleryID.'", "'.$irWidth.'", "'.$irHeight.'", "7", "#'.$ngg_options[irBackcolor].'");';
|
72 |
+
$replace .= "\n\t\t".'so.addParam("wmode", "opaque");';
|
73 |
+
$replace .= "\n\t\t".'so.addVariable("file", "'.NGGALLERY_URLPATH.'nggextractXML.php?gid='.$galleryID.'");';
|
74 |
+
if (!$ngg_options[irShuffle]) $replace .= "\n\t\t".'so.addVariable("shuffle", "false");';
|
75 |
+
// if ($ngg_options[irLinkfromdisplay]) $replace .= "\n\t\t".'so.addVariable("linkfromdisplay", "false");';
|
76 |
+
// if ($ngg_options[irShownavigation]) $replace .= "\n\t\t".'so.addVariable("shownavigation", "true");';
|
77 |
+
if ($ngg_options[irShowicons]) $replace .= "\n\t\t".'so.addVariable("showicons", "true");';
|
78 |
+
$replace .= "\n\t\t".'so.addVariable("overstretch", "'.$ngg_options[irOverstretch].'");';
|
79 |
+
$replace .= "\n\t\t".'so.addVariable("backcolor", "0x'.$ngg_options[irBackcolor].'");';
|
80 |
+
$replace .= "\n\t\t".'so.addVariable("frontcolor", "0x'.$ngg_options[irFrontcolor].'");';
|
81 |
+
$replace .= "\n\t\t".'so.addVariable("lightcolor", "0x'.$ngg_options[irLightcolor].'");';
|
82 |
+
$replace .= "\n\t\t".'so.addVariable("rotatetime", "'.$ngg_options[irRotatetime].'");';
|
83 |
+
$replace .= "\n\t\t".'so.addVariable("transition", "'.$ngg_options[irTransition].'");';
|
84 |
+
$replace .= "\n\t\t".'so.addVariable("width", "'.$irWidth.'");';
|
85 |
+
$replace .= "\n\t\t".'so.addVariable("height", "'.$irHeight.'");';
|
86 |
+
$replace .= "\n\t\t".'so.write("ngg_widget_slideshow'.$galleryID.'");';
|
87 |
+
$replace .= "\n\t".'//]]>';
|
88 |
+
$replace .= "\n\t".'-->';
|
89 |
+
$replace .= "\n\t".'</script>';
|
90 |
+
|
91 |
+
echo $replace;
|
92 |
+
}
|
93 |
+
|
94 |
+
|
95 |
+
/**********************************************************/
|
96 |
+
/* Slidehow widget control
|
97 |
+
/**********************************************************/
|
98 |
+
function widget_ngg_slideshow() {
|
99 |
+
|
100 |
+
// Check for the required plugin functions.
|
101 |
+
if ( !function_exists('register_sidebar_widget') )
|
102 |
+
return;
|
103 |
+
|
104 |
+
function widget_show_ngg_slideshow($args) {
|
105 |
+
|
106 |
+
extract($args);
|
107 |
+
|
108 |
+
// Each widget can store its own options. We keep strings here.
|
109 |
+
$options = get_option('widget_nggslideshow');
|
110 |
+
|
111 |
+
// These lines generate our output.
|
112 |
+
echo $before_widget . $before_title . $options['title'] . $after_title;
|
113 |
+
$url_parts = parse_url(get_bloginfo('home'));
|
114 |
+
nggSlideshowWidget($options['galleryid'] , $options['width'] , $options['height']);
|
115 |
+
echo $after_widget;
|
116 |
+
|
117 |
+
}
|
118 |
+
|
119 |
+
// Admin section
|
120 |
+
function widget_control_ngg_slideshow() {
|
121 |
+
global $wpdb;
|
122 |
+
$options = get_option('widget_nggslideshow');
|
123 |
+
if ( !is_array($options) )
|
124 |
+
$options = array('title'=>'Slideshow', 'galleryid'=>'0','height'=>'120','width'=>'160',);
|
125 |
+
|
126 |
+
if ( $_POST['ngg-submit'] ) {
|
127 |
+
|
128 |
+
$options['title'] = strip_tags(stripslashes($_POST['ngg-title']));
|
129 |
+
$options['galleryid'] = $_POST['ngg-galleryid'];
|
130 |
+
$options['height'] = $_POST['ngg-height'];
|
131 |
+
$options['width'] = $_POST['ngg-width'];
|
132 |
+
update_option('widget_nggslideshow', $options);
|
133 |
+
}
|
134 |
+
|
135 |
+
$title = htmlspecialchars($options['title'], ENT_QUOTES);
|
136 |
+
$height = $options['height'];
|
137 |
+
$width = $options['width'];
|
138 |
+
|
139 |
+
// The Box content
|
140 |
+
echo '<p style="text-align:right;"><label for="ngg-title">' . __('Title:', 'nggallery') . ' <input style="width: 200px;" id="ngg-title" name="ngg-title" type="text" value="'.$title.'" /></label></p>';
|
141 |
+
echo '<p style="text-align:right;"><label for="ngg-galleryid">' . __('Select Gallery:', 'nggallery'). ' </label>';
|
142 |
+
echo '<select size="1" name="ngg-galleryid" id="ngg-galleryid">';
|
143 |
+
$tables = $wpdb->get_results("SELECT * FROM $wpdb->nggallery ORDER BY 'name' ASC ");
|
144 |
+
if($tables) {
|
145 |
+
foreach($tables as $table) {
|
146 |
+
echo '<option value="'.$table->gid.'" ';
|
147 |
+
if ($table->gid == $options['galleryid']) echo "selected='selected' ";
|
148 |
+
echo '>'.$table->name.'</option>'."\n\t";
|
149 |
+
}
|
150 |
+
}
|
151 |
+
echo '</select></p>';
|
152 |
+
echo '<p style="text-align:right;"><label for="ngg-height">' . __('Height:', 'nggallery') . ' <input style="width: 50px;" id="ngg-height" name="ngg-height" type="text" value="'.$height.'" /></label></p>';
|
153 |
+
echo '<p style="text-align:right;"><label for="ngg-width">' . __('Width:', 'nggallery') . ' <input style="width: 50px;" id="ngg-width" name="ngg-width" type="text" value="'.$width.'" /></label></p>';
|
154 |
+
echo '<input type="hidden" id="ngg-submit" name="ngg-submit" value="1" />';
|
155 |
+
|
156 |
+
}
|
157 |
+
|
158 |
+
register_sidebar_widget(array('NextGEN Slideshow', 'widgets'), 'widget_show_ngg_slideshow');
|
159 |
+
register_widget_control(array('NextGEN Slideshow', 'widgets'), 'widget_control_ngg_slideshow', 300, 200);
|
160 |
+
}
|
161 |
+
|
162 |
+
/*******************************************************/
|
163 |
+
/* DISPLAY FUNCTION TO THE RECENT & RANDOM IMAGES
|
164 |
+
/*******************************************************/
|
165 |
+
function nggDisplayImagesWidget($thumb,$number,$sizeX,$sizeY,$mode,$imgtype,$thumbcode) {
|
166 |
+
|
167 |
+
|
168 |
+
// Put your HTML code here if you want to personalize the image display!
|
169 |
+
$IMGbefore = ''; // NOT IN USE!
|
170 |
+
$IMGafter = ''; // NOT IN USE!
|
171 |
+
|
172 |
+
$Abefore = ''; // NOT IN USE!
|
173 |
+
$Aafter = ''; // NOT IN USE!
|
174 |
+
|
175 |
+
for ($i=1; $i<=$number; $i++) {
|
176 |
+
|
177 |
+
global $wpdb;
|
178 |
+
|
179 |
+
// Get a random image from the database
|
180 |
+
if (($imgtype == "random")) {
|
181 |
+
$imageID = $wpdb->get_var("SELECT pid FROM $wpdb->nggpictures ORDER by rand() limit 1");
|
182 |
+
}
|
183 |
+
else {
|
184 |
+
// Get the $i latest image from the database
|
185 |
+
$imageID = $wpdb->get_var("SELECT pid FROM $wpdb->nggpictures ORDER by pid DESC limit ".$i.",1");
|
186 |
+
}
|
187 |
+
|
188 |
+
// [0.97] new variable -> Set up the strings
|
189 |
+
$Astart = '<a href="'.ngg_get_image_url($imageID).'" title="" '.$thumbcode.'>';
|
190 |
+
$Aend = '</a>';
|
191 |
+
|
192 |
+
|
193 |
+
// Here comes the display
|
194 |
+
echo $Abefore;
|
195 |
+
|
196 |
+
// [0.95] new function -> Thumbnail or Normal image
|
197 |
+
if ( ($thumb == "false") ) {
|
198 |
+
// NORMAL IMAGE mode
|
199 |
+
if ( ($mode == 'web20') ) {
|
200 |
+
// [0.95] [deleted] -> <li> </li>
|
201 |
+
// [0.97] [edited] -> class="ngg-widget-img" -> id="ngg-widget-img"
|
202 |
+
// [0.98] [deleted] -> id="ngg-widget-img"
|
203 |
+
echo $Astart;
|
204 |
+
echo $IMGbefore.'<img src="'.NGGALLERY_URLPATH.'nggshow.php?pid='.$imageID.'&width='.$sizeX.'&height='.$sizeY.'&mode=web20" />';
|
205 |
+
echo $Aend.$IMGafter."\n";
|
206 |
+
}
|
207 |
+
else {
|
208 |
+
// [0.95] [deleted] -> <li> </li>
|
209 |
+
// [0.97] [edited] -> class="ngg-widget-img" -> id="ngg-widget-img"
|
210 |
+
// [0.98] [deleted] -> id="ngg-widget-img"
|
211 |
+
echo $Astart;
|
212 |
+
echo $IMGbefore.'<img src="'.NGGALLERY_URLPATH.'nggshow.php?pid='.$imageID.'&width='.$sizeX.'&height='.$sizeY.'" />';
|
213 |
+
echo $Aend.$IMGafter."\n";
|
214 |
+
}
|
215 |
+
}
|
216 |
+
else {
|
217 |
+
// THUMBNAIL mode
|
218 |
+
//if web20
|
219 |
+
if ( ($mode == 'web20') ) {
|
220 |
+
|
221 |
+
// [0.95] [deleted] -> <li> </li>
|
222 |
+
// [0.95] [edited] -> class="ngg-widget-img"
|
223 |
+
echo $Astart;
|
224 |
+
// [0.95] [deleted] -> nggshow because it displays the ORIGYNAL picture and not the THUMBNAIL!
|
225 |
+
// [0.95] [new line] -> showreflection.php -> for the web20 thumbnail!
|
226 |
+
echo $IMGbefore.'<img src="'.NGGALLERY_URLPATH.'showreflection.php?pid='.$imageID.'&width='.$sizeX.'&height='.$sizeY.' />';
|
227 |
+
echo $Aend.$IMGafter."\n";
|
228 |
+
}
|
229 |
+
else {
|
230 |
+
echo $Astart;
|
231 |
+
echo $IMGbefore.'<img src="'.ngg_get_thumbnail_url($imageID).'" style="width:'.$sizeX.'px;height:'.$sizeY.'px;" />';
|
232 |
+
echo $Aend.$IMGafter."\n";
|
233 |
+
}
|
234 |
+
}
|
235 |
+
|
236 |
+
echo $Aafter;
|
237 |
+
|
238 |
+
}
|
239 |
+
}
|
240 |
+
|
241 |
+
/**********************************************************/
|
242 |
+
/* Recent widget
|
243 |
+
/**********************************************************/
|
244 |
+
|
245 |
+
/* HERE COMES THE RECENT IMAGE WIDGET */
|
246 |
+
|
247 |
+
|
248 |
+
function widget_ngg_recentimage() {
|
249 |
+
|
250 |
+
// Check for the required plugin functions. This will prevent fatal
|
251 |
+
// errors occurring when you deactivate the dynamic-sidebar plugin.
|
252 |
+
if ( !function_exists('register_sidebar_widget') )
|
253 |
+
return;
|
254 |
+
|
255 |
+
// This is the function that outputs our little widget...
|
256 |
+
function widget_nextgenrecentimage($args) {
|
257 |
+
|
258 |
+
// $args is an array of strings that help widgets to conform to
|
259 |
+
// the active theme: before_widget, before_title, after_widget,
|
260 |
+
// and after_title are the array keys.
|
261 |
+
extract($args);
|
262 |
+
|
263 |
+
// Each widget can store its own options. We keep strings here.
|
264 |
+
$options = get_option('widget_NextGenrecentimage');
|
265 |
+
|
266 |
+
$title = $options['title'];
|
267 |
+
$thumb = $options['thumb'];
|
268 |
+
$number = $options['number'];
|
269 |
+
$sizeX = $options['sizeX'];
|
270 |
+
$sizeY = $options['sizeY'];
|
271 |
+
$mode = $options['mode'];
|
272 |
+
|
273 |
+
$showinhome = htmlspecialchars($options['showinhome'], ENT_QUOTES);
|
274 |
+
$showcategory = htmlspecialchars($options['showcategory'], ENT_QUOTES);
|
275 |
+
$categorylist = htmlspecialchars($options['categorylist'], ENT_QUOTES);
|
276 |
+
|
277 |
+
// [0.95] -> [add function -> imagetype (imgtype) -> random or recent
|
278 |
+
$imgtype = "recent"; //$options['imgtype'];
|
279 |
+
|
280 |
+
//origy ngg options
|
281 |
+
$ngg_options = get_option('ngg_options');
|
282 |
+
|
283 |
+
// get the effect code
|
284 |
+
if ($ngg_options[thumbEffect] != "none") $thumbcode = stripslashes($ngg_options[thumbCode]);
|
285 |
+
if ($ngg_options[thumbEffect] == "highslide") $thumbcode = str_replace("%GALLERY_NAME%", "'sidebar'", $thumbcode);
|
286 |
+
else $thumbcode = str_replace("%GALLERY_NAME%", "sidebar", $thumbcode);
|
287 |
+
|
288 |
+
|
289 |
+
$show_widget = false; // checking display status (category or home)
|
290 |
+
$categorieslist = getCSVValues($categorylist,','); // Make array for checking the categories
|
291 |
+
|
292 |
+
if (($showcategory == "denied")) { // Denied list -> enable everywhere and make false if found!
|
293 |
+
$show_widget = true;
|
294 |
+
foreach((get_the_category()) as $cat)
|
295 |
+
{ if ((in_array($cat->cat_ID , $categorieslist)))
|
296 |
+
$show_widget = false;
|
297 |
+
}
|
298 |
+
}
|
299 |
+
|
300 |
+
if (($showcategory == "allow")) // Allow list -> false is the default -> enable if found
|
301 |
+
foreach((get_the_category()) as $cat)
|
302 |
+
{ if ((in_array($cat->cat_ID , $categorieslist)))
|
303 |
+
$show_widget = true;
|
304 |
+
}
|
305 |
+
|
306 |
+
if (($showcategory == "all")) // All categories -> if it's not the home -> enable
|
307 |
+
if ((is_home() != true))
|
308 |
+
$show_widget = true;
|
309 |
+
|
310 |
+
if (($showinhome == "yes")) // Home page -> If yes -> enable
|
311 |
+
if ((is_home()))
|
312 |
+
$show_widget = true;
|
313 |
+
|
314 |
+
|
315 |
+
$url_parts = parse_url(get_bloginfo('home'));
|
316 |
+
|
317 |
+
// Null parameters check
|
318 |
+
if ( ($number == '') ) $number = 1;
|
319 |
+
if ( ($sizeX == '') ) $sizeX = 190;
|
320 |
+
if ( ($sizeY == '') ) $sizeY = 190;
|
321 |
+
|
322 |
+
if ($show_widget) {
|
323 |
+
|
324 |
+
echo $before_widget . $before_title . $title . $after_title;
|
325 |
+
echo "\n".'<div class="ngg-widget">'."\n";
|
326 |
+
|
327 |
+
nggDisplayImagesWidget($thumb,$number,$sizeX,$sizeY,$mode,$imgtype,$thumbcode);
|
328 |
+
|
329 |
+
echo '</div>'."\n";
|
330 |
+
// v.095 [deleted] -> echo '<div style="clear:both;"></div>'."\n";
|
331 |
+
echo $after_widget;
|
332 |
+
}
|
333 |
+
}
|
334 |
+
|
335 |
+
/**
|
336 |
+
* @desc Output of plugin�s editform in te adminarea
|
337 |
+
* @author KeViN
|
338 |
+
*/
|
339 |
+
|
340 |
+
function widget_nextgenrecentimage_control($number=1) {
|
341 |
+
|
342 |
+
$options = get_option('widget_NextGenrecentimage');
|
343 |
+
|
344 |
+
if ( !is_array($options) )
|
345 |
+
$options = array('title'=>'Recent Images', 'buttontext'=>__('NextGEN Recent Image','nggallery'));
|
346 |
+
|
347 |
+
if ( $_POST['nextgen-recentsubmit'] ) {
|
348 |
+
// Remember to sanitize and format use input appropriately.
|
349 |
+
$options = "";
|
350 |
+
$options['title'] = strip_tags(stripslashes($_POST['nextgen-recenttitle']));
|
351 |
+
$options['thumb'] = strip_tags(stripslashes($_POST['nextgen-recentthumb']));
|
352 |
+
$options['number'] = strip_tags(stripslashes($_POST['nextgen-recentnumber']));
|
353 |
+
$options['sizeX'] = strip_tags(stripslashes($_POST['nextgen-recentsizeX']));
|
354 |
+
$options['sizeY'] = strip_tags(stripslashes($_POST['nextgen-recentsizeY']));
|
355 |
+
|
356 |
+
// [0.80] [new functiions and newvariables] -> Category controll
|
357 |
+
$options['showinhome'] = strip_tags(stripslashes($_POST['nextgen-recentshowinhome']));
|
358 |
+
$options['showcategory']= strip_tags(stripslashes($_POST['nextgen-recentshowcategory']));
|
359 |
+
$options['categorylist']= strip_tags(stripslashes($_POST['nextgen-recentcategorylist']));
|
360 |
+
|
361 |
+
// [0.95] [new variable] -> (random / recent)
|
362 |
+
$options['imgtype'] = strip_tags(stripslashes($_POST['nextgen-recentimgtype']));
|
363 |
+
|
364 |
+
update_option('widget_NextGenrecentimage', $options);
|
365 |
+
}
|
366 |
+
|
367 |
+
// Be sure you format your options to be valid HTML attributes.
|
368 |
+
$title = htmlspecialchars($options['title'], ENT_QUOTES);
|
369 |
+
$thumb = htmlspecialchars($options['thumb'], ENT_QUOTES);
|
370 |
+
$number = htmlspecialchars($options['number'], ENT_QUOTES);
|
371 |
+
$sizeX = htmlspecialchars($options['sizeX'], ENT_QUOTES);
|
372 |
+
$sizeY = htmlspecialchars($options['sizeY'], ENT_QUOTES);
|
373 |
+
$mode = htmlspecialchars($options['mode'], ENT_QUOTES);
|
374 |
+
|
375 |
+
// [0.80] [new functiions and newvariables] -> Category controll
|
376 |
+
$showinhome = htmlspecialchars($options['showinhome'], ENT_QUOTES);
|
377 |
+
$showcategory = htmlspecialchars($options['showcategory'], ENT_QUOTES);
|
378 |
+
$categorylist = htmlspecialchars($options['categorylist'], ENT_QUOTES);
|
379 |
+
|
380 |
+
// [0.95] [new variable] -> (random / recent)
|
381 |
+
$mode = htmlspecialchars($options['imgtype'], ENT_QUOTES);
|
382 |
+
|
383 |
+
// Here comes the form
|
384 |
+
|
385 |
+
echo'<p style="text-align:right;"><label for="nextgen-recenttitle">' . __('Title','nggallery') . ': <input style="width: 150px;" id="nextgen-recenttitle" name="nextgen-recenttitle" type="text" value="'.$title.'" /></label></p>';
|
386 |
+
|
387 |
+
// [0.95] [new function] -> Thumbnail or Normal Image?
|
388 |
+
echo '<p style="text-align:right;"><label for="nextgen-recentthumb">' . __('Display type','nggallery').':';
|
389 |
+
echo ' <select name="nextgen-recentthumb" size="1">';
|
390 |
+
echo ' <option id="1" ';if (($thumb == "true")) echo 'selected="selected"'; echo ' value="true">' . __('Thumbnail','nggallery') . '</option>';
|
391 |
+
echo ' <option id="2" ';if (($thumb == "false")) echo 'selected="selected"'; echo ' value="false">' . __('Orginal','nggallery') . '</option>';
|
392 |
+
echo ' </select></label></p>';
|
393 |
+
|
394 |
+
echo '<p style="text-align:right;"><label for="nextgen-recentnumber">' . __('Number of pics','nggallery').':';
|
395 |
+
echo ' <select name="nextgen-recentnumber" size="1">';
|
396 |
+
echo ' <option id="1" ';if (($number == 1)) echo 'selected="selected"'; echo ' value="1">1</option>';
|
397 |
+
echo ' <option id="2" ';if (($number == 2)) echo 'selected="selected"'; echo ' value="2">2</option>';
|
398 |
+
echo ' <option id="3" ';if (($number == 3)) echo 'selected="selected"'; echo ' value="3">3</option>';
|
399 |
+
echo ' <option id="4" ';if (($number == 4)) echo 'selected="selected"'; echo ' value="4">4</option>';
|
400 |
+
echo ' <option id="6" ';if (($number == 6)) echo 'selected="selected"'; echo ' value="6">6</option>';
|
401 |
+
echo ' <option id="8" ';if (($number == 8)) echo 'selected="selected"'; echo ' value="8">8</option>';
|
402 |
+
echo ' <option id="10" ';if (($number == 10)) echo 'selected="selected"'; echo ' value="10">10</option>';
|
403 |
+
echo ' </select></label></p>';
|
404 |
+
|
405 |
+
echo '<p style="text-align:right;"><label for="nextgen-recentsizeX">' . __('Width (px)','nggallery') . ': <input style="width: 50px;" id="nextgen-recentsizeX" name="nextgen-recentsizeX" type="text" value="'.$sizeX.'" /></label></p>';
|
406 |
+
|
407 |
+
echo '<p style="text-align:right;"><label for="nextgen-recentsizeY">' . __('Height (px)','nggallery') . ': <input style="width: 50px;" id="nextgen-recentsizeY" name="nextgen-recentsizeY" type="text" value="'.$sizeY.'" /></label></p>';
|
408 |
+
|
409 |
+
echo '<p style="text-align:right;"><label for="nextgen-recentnumber">' . __('Mode','nggallery').':';
|
410 |
+
echo ' <select name="nextgen-recentmode" size="1">';
|
411 |
+
echo ' <option id="none" ';if (($mode == "")) echo 'selected="selected"'; echo ' value="">'. __('none','nggallery').'</option>';
|
412 |
+
echo ' <option id="web20" ';if (($mode == "web20")) echo 'selected="selected"'; echo ' value="web20">'. __('web2.0','nggallery').'</option>';
|
413 |
+
echo ' </select></label></p>';
|
414 |
+
|
415 |
+
// [0.80] [new variables] -> category control
|
416 |
+
echo '<p style="text-align:right;"><label for="nextgen-recentshowinhome">' . __('Show in the main page','nggallery').':';
|
417 |
+
echo ' <select name="nextgen-recentshowinhome" size="1">';
|
418 |
+
echo ' <option id="1" ';if ($showinhome == "yes") echo 'selected="selected"'; echo ' value="yes" >'. __('yes','nggallery').'</option>';
|
419 |
+
echo ' <option id="2" ';if ($showinhome == "no") echo 'selected="selected"'; echo ' value="no" >'. __('no','nggallery').'</option>';
|
420 |
+
echo ' </select></label></p>';
|
421 |
+
|
422 |
+
echo '<p style="text-align:right;"><label for="nextgen-recentshowcategory">' . __('Show in','nggallery').':';
|
423 |
+
echo ' <select name="nextgen-recentshowcategory" size="1">';
|
424 |
+
echo ' <option id="1" ';if (($showcategory == "all")) echo 'selected="selected"'; echo ' value="all" >'. __('All categories','nggallery').'</option>';
|
425 |
+
echo ' <option id="2" ';if (($showcategory == "denied")) echo 'selected="selected"'; echo ' value="denied" >'. __('Only which are not listed','nggallery').'</option>';
|
426 |
+
echo ' <option id="3" ';if (($showcategory == "allow")) echo 'selected="selected"'; echo ' value="allow" >'. __('Only which are listed','nggallery').'</option>';
|
427 |
+
echo ' </select></label></p>';
|
428 |
+
|
429 |
+
echo '<p style="text-align:right;"><label for="nextgen-recentcategorylist">' . __('Categories (id (use , to seperate)','nggallery') . ': <input style="width: 150px;" id="nextgen-recentcategorylist" name="nextgen-recentcategorylist" type="text" value="'.$categorylist.'" /></label></p>';
|
430 |
+
|
431 |
+
echo '<input type="hidden" id="nextgen-recentsubmit" name="nextgen-recentsubmit" value="1" />';
|
432 |
+
}
|
433 |
+
|
434 |
+
// This registers our widget so it appears with the other available
|
435 |
+
// widgets and can be dragged and dropped into any active sidebars.
|
436 |
+
register_sidebar_widget(array('NextGEN Recent Image', 'widgets'), 'widget_nextgenrecentimage');
|
437 |
+
register_widget_control(array('NextGEN Recent Image', 'widgets'), 'widget_nextgenrecentimage_control', 300, 400);
|
438 |
+
}
|
439 |
+
|
440 |
+
|
441 |
+
/* */
|
442 |
+
|
443 |
+
/**********************************************************/
|
444 |
+
/* Random widget
|
445 |
+
/**********************************************************/
|
446 |
+
function widget_ngg_randomimage() {
|
447 |
+
|
448 |
+
// Check for the required plugin functions. This will prevent fatal
|
449 |
+
// errors occurring when you deactivate the dynamic-sidebar plugin.
|
450 |
+
if ( !function_exists('register_sidebar_widget') )
|
451 |
+
return;
|
452 |
+
|
453 |
+
// This is the function that outputs our little widget...
|
454 |
+
function widget_nextgenimage($args) {
|
455 |
+
|
456 |
+
// $args is an array of strings that help widgets to conform to
|
457 |
+
// the active theme: before_widget, before_title, after_widget,
|
458 |
+
// and after_title are the array keys.
|
459 |
+
extract($args);
|
460 |
+
|
461 |
+
// Each widget can store its own options. We keep strings here.
|
462 |
+
$options = get_option('widget_NextGenimage');
|
463 |
+
|
464 |
+
$title = $options['title'];
|
465 |
+
$thumb = $options['thumb'];
|
466 |
+
$number = $options['number'];
|
467 |
+
$sizeX = $options['sizeX'];
|
468 |
+
$sizeY = $options['sizeY'];
|
469 |
+
$mode = $options['mode'];
|
470 |
+
|
471 |
+
$showinhome = htmlspecialchars($options['showinhome'], ENT_QUOTES);
|
472 |
+
$showcategory = htmlspecialchars($options['showcategory'], ENT_QUOTES);
|
473 |
+
$categorylist = htmlspecialchars($options['categorylist'], ENT_QUOTES);
|
474 |
+
|
475 |
+
// [0.95] -> [add function -> imagetype (imgtype) -> random or recent
|
476 |
+
$imgtype = "random"; //$options['imgtype'];
|
477 |
+
|
478 |
+
//origy ngg options
|
479 |
+
$ngg_options = get_option('ngg_options');
|
480 |
+
|
481 |
+
// get the effect code
|
482 |
+
if ($ngg_options[thumbEffect] != "none") $thumbcode = stripslashes($ngg_options[thumbCode]);
|
483 |
+
if ($ngg_options[thumbEffect] == "highslide") $thumbcode = str_replace("%GALLERY_NAME%", "'sidebar'", $thumbcode);
|
484 |
+
else $thumbcode = str_replace("%GALLERY_NAME%", "sidebar", $thumbcode);
|
485 |
+
|
486 |
+
|
487 |
+
$show_widget = false; // checking display status (category or home)
|
488 |
+
$categorieslist = getCSVValues($categorylist,','); // Make array for checking the categories
|
489 |
+
|
490 |
+
if (($showcategory == "denied")) { // Denied list -> enable everywhere and make false if found!
|
491 |
+
$show_widget = true;
|
492 |
+
foreach((get_the_category()) as $cat)
|
493 |
+
{ if ((in_array($cat->cat_ID , $categorieslist)))
|
494 |
+
$show_widget = false;
|
495 |
+
}
|
496 |
+
}
|
497 |
+
|
498 |
+
if (($showcategory == "allow")) // Allow list -> false is the default -> enable if found
|
499 |
+
foreach((get_the_category()) as $cat)
|
500 |
+
{ if ((in_array($cat->cat_ID , $categorieslist)))
|
501 |
+
$show_widget = true;
|
502 |
+
}
|
503 |
+
|
504 |
+
if (($showcategory == "all")) // All categories -> if it's not the home -> enable
|
505 |
+
if ((is_home() != true))
|
506 |
+
$show_widget = true;
|
507 |
+
|
508 |
+
if (($showinhome == "yes")) // Home page -> If yes -> enable
|
509 |
+
if ((is_home()))
|
510 |
+
$show_widget = true;
|
511 |
+
|
512 |
+
|
513 |
+
$url_parts = parse_url(get_bloginfo('home'));
|
514 |
+
|
515 |
+
// Null parameters check
|
516 |
+
if ( ($number == '') ) $number = 1;
|
517 |
+
if ( ($sizeX == '') ) $sizeX = 190;
|
518 |
+
if ( ($sizeY == '') ) $sizeY = 190;
|
519 |
+
|
520 |
+
if ($show_widget) {
|
521 |
+
|
522 |
+
echo $before_widget . $before_title . $title . $after_title;
|
523 |
+
echo "\n".'<div class="ngg-widget">'."\n";
|
524 |
+
|
525 |
+
nggDisplayImagesWidget($thumb,$number,$sizeX,$sizeY,$mode,$imgtype,$thumbcode);
|
526 |
+
|
527 |
+
echo '</div>'."\n";
|
528 |
+
// v.095 [deleted] -> echo '<div style="clear:both;"></div>'."\n";
|
529 |
+
echo $after_widget;
|
530 |
+
}
|
531 |
+
}
|
532 |
+
|
533 |
+
/**
|
534 |
+
* @desc Output of plugin�s editform in te adminarea
|
535 |
+
* @author KeViN
|
536 |
+
*/
|
537 |
+
|
538 |
+
function widget_nextgenimage_control($number=1) {
|
539 |
+
|
540 |
+
$options = get_option('widget_NextGenimage');
|
541 |
+
|
542 |
+
if ( !is_array($options) )
|
543 |
+
$options = array('title'=>'', 'buttontext'=>__('NextGEN Random Image','nggallery'));
|
544 |
+
|
545 |
+
if ( $_POST['nextgen-submit'] ) {
|
546 |
+
// Remember to sanitize and format use input appropriately.
|
547 |
+
$options = "";
|
548 |
+
$options['title'] = strip_tags(stripslashes($_POST['nextgen-title']));
|
549 |
+
$options['thumb'] = strip_tags(stripslashes($_POST['nextgen-thumb']));
|
550 |
+
$options['number'] = strip_tags(stripslashes($_POST['nextgen-number']));
|
551 |
+
$options['sizeX'] = strip_tags(stripslashes($_POST['nextgen-sizeX']));
|
552 |
+
$options['sizeY'] = strip_tags(stripslashes($_POST['nextgen-sizeY']));
|
553 |
+
$options['mode'] = strip_tags(stripslashes($_POST['nextgen-mode']));
|
554 |
+
|
555 |
+
// [0.80] [new functiions and newvariables] -> Category controll
|
556 |
+
$options['showinhome'] = strip_tags(stripslashes($_POST['nextgen-showinhome']));
|
557 |
+
$options['showcategory']= strip_tags(stripslashes($_POST['nextgen-showcategory']));
|
558 |
+
$options['categorylist']= strip_tags(stripslashes($_POST['nextgen-categorylist']));
|
559 |
+
|
560 |
+
// [0.95] [new variable] -> (random / recent)
|
561 |
+
$options['imgtype'] = strip_tags(stripslashes($_POST['nextgen-imgtype']));
|
562 |
+
|
563 |
+
update_option('widget_NextGenimage', $options);
|
564 |
+
}
|
565 |
+
|
566 |
+
// Be sure you format your options to be valid HTML attributes.
|
567 |
+
$title = htmlspecialchars($options['title'], ENT_QUOTES);
|
568 |
+
$thumb = htmlspecialchars($options['thumb'], ENT_QUOTES);
|
569 |
+
$number = htmlspecialchars($options['number'], ENT_QUOTES);
|
570 |
+
$sizeX = htmlspecialchars($options['sizeX'], ENT_QUOTES);
|
571 |
+
$sizeY = htmlspecialchars($options['sizeY'], ENT_QUOTES);
|
572 |
+
//$mode = htmlspecialchars($options['mode'], ENT_QUOTES);
|
573 |
+
|
574 |
+
// [0.80] [new functiions and newvariables] -> Category controll
|
575 |
+
$showinhome = htmlspecialchars($options['showinhome'], ENT_QUOTES);
|
576 |
+
$showcategory = htmlspecialchars($options['showcategory'], ENT_QUOTES);
|
577 |
+
$categorylist = htmlspecialchars($options['categorylist'], ENT_QUOTES);
|
578 |
+
|
579 |
+
// [0.95] [new variable] -> (random / recent)
|
580 |
+
$mode = htmlspecialchars($options['imgtype'], ENT_QUOTES);
|
581 |
+
|
582 |
+
// Here comes the form
|
583 |
+
|
584 |
+
echo'<p style="text-align:right;"><label for="nextgen-title">' . __('Title','nggallery') . ': <input style="width: 150px;" id="nextgen-title" name="nextgen-title" type="text" value="'.$title.'" /></label></p>';
|
585 |
+
|
586 |
+
// [0.95] [new function] -> Thumbnail or Normal Image?
|
587 |
+
echo '<p style="text-align:right;"><label for="nextgen-thumb">' . __('Display type','nggallery').':';
|
588 |
+
echo ' <select name="nextgen-thumb" size="1">';
|
589 |
+
echo ' <option id="1" ';if (($thumb == "true")) echo 'selected="selected"'; echo ' value="true">' . __('Thumbnail','nggallery') . '</option>';
|
590 |
+
echo ' <option id="2" ';if (($thumb == "false")) echo 'selected="selected"'; echo ' value="false">' . __('Orginal','nggallery') . '</option>';
|
591 |
+
echo ' </select></label></p>';
|
592 |
+
|
593 |
+
|
594 |
+
echo '<p style="text-align:right;"><label for="nextgen-number">' . __('Number of pics','nggallery').':';
|
595 |
+
echo ' <select name="nextgen-number" size="1">';
|
596 |
+
echo ' <option id="1" ';if (($number == 1)) echo 'selected="selected"'; echo ' value="1">1</option>';
|
597 |
+
echo ' <option id="2" ';if (($number == 2)) echo 'selected="selected"'; echo ' value="2">2</option>';
|
598 |
+
echo ' <option id="3" ';if (($number == 3)) echo 'selected="selected"'; echo ' value="3">3</option>';
|
599 |
+
echo ' <option id="4" ';if (($number == 4)) echo 'selected="selected"'; echo ' value="4">4</option>';
|
600 |
+
echo ' <option id="6" ';if (($number == 6)) echo 'selected="selected"'; echo ' value="6">6</option>';
|
601 |
+
echo ' <option id="8" ';if (($number == 8)) echo 'selected="selected"'; echo ' value="8">8</option>';
|
602 |
+
echo ' <option id="10" ';if (($number == 10)) echo 'selected="selected"'; echo ' value="10">10</option>';
|
603 |
+
echo ' </select></label></p>';
|
604 |
+
|
605 |
+
echo '<p style="text-align:right;"><label for="nextgen-sizeX">' . __('Width (px)','nggallery') . ': <input style="width: 50px;" id="nextgen-sizeX" name="nextgen-sizeX" type="text" value="'.$sizeX.'" /></label></p>';
|
606 |
+
|
607 |
+
echo '<p style="text-align:right;"><label for="nextgen-sizeY">' . __('Height (px)','nggallery') . ': <input style="width: 50px;" id="nextgen-sizeY" name="nextgen-sizeY" type="text" value="'.$sizeY.'" /></label></p>';
|
608 |
+
|
609 |
+
echo '<p style="text-align:right;"><label for="nextgen-number">' . __('Mode','nggallery').':';
|
610 |
+
echo ' <select name="nextgen-mode" size="1">';
|
611 |
+
echo ' <option id="none" ';if (($mode == "")) echo 'selected="selected"'; echo ' value="">'. __('none','nggallery').'</option>';
|
612 |
+
echo ' <option id="web20" ';if (($mode == "web20")) echo 'selected="selected"'; echo ' value="web20">'. __('web2.0','nggallery').'</option>';
|
613 |
+
echo ' </select></label></p>';
|
614 |
+
|
615 |
+
// [0.80] [new variables] -> category control
|
616 |
+
echo '<p style="text-align:right;"><label for="nextgen-showinhome">' . __('Show in the main page','nggallery').':';
|
617 |
+
echo ' <select name="nextgen-showinhome" size="1">';
|
618 |
+
echo ' <option id="1" ';if ($showinhome == "yes") echo 'selected="selected"'; echo ' value="yes" >'. __('yes','nggallery').'</option>';
|
619 |
+
echo ' <option id="2" ';if ($showinhome == "no") echo 'selected="selected"'; echo ' value="no" >'. __('no','nggallery').'</option>';
|
620 |
+
echo ' </select></label></p>';
|
621 |
+
|
622 |
+
echo '<p style="text-align:right;"><label for="nextgen-showcategory">' . __('Show in','nggallery').':';
|
623 |
+
echo ' <select name="nextgen-showcategory" size="1">';
|
624 |
+
echo ' <option id="1" ';if (($showcategory == "all")) echo 'selected="selected"'; echo ' value="all" >'. __('All categories','nggallery').'</option>';
|
625 |
+
echo ' <option id="2" ';if (($showcategory == "denied")) echo 'selected="selected"'; echo ' value="denied" >'. __('Only which are not listed','nggallery').'</option>';
|
626 |
+
echo ' <option id="3" ';if (($showcategory == "allow")) echo 'selected="selected"'; echo ' value="allow" >'. __('Only which are listed','nggallery').'</option>';
|
627 |
+
echo ' </select></label></p>';
|
628 |
+
|
629 |
+
echo '<p style="text-align:right;"><label for="nextgen-categorylist">' . __('Categories (id (use , to seperate)','nggallery') . ': <input style="width: 150px;" id="nextgen-categorylist" name="nextgen-categorylist" type="text" value="'.$categorylist.'" /></label></p>';
|
630 |
+
|
631 |
+
echo '<input type="hidden" id="nextgen-submit" name="nextgen-submit" value="1" />';
|
632 |
+
}
|
633 |
+
|
634 |
+
// This registers our widget so it appears with the other available
|
635 |
+
// widgets and can be dragged and dropped into any active sidebars.
|
636 |
+
register_sidebar_widget(array('NextGEN Random Image', 'widgets'), 'widget_nextgenimage');
|
637 |
+
register_widget_control(array('NextGEN Random Image', 'widgets'), 'widget_nextgenimage_control', 300, 400);
|
638 |
+
}
|
639 |
+
|
640 |
+
// Run our code later in case this loads prior to any required plugins.
|
641 |
+
add_action('widgets_init', 'widget_ngg_randomimage');
|
642 |
+
add_action('widgets_init', 'widget_ngg_slideshow');
|
643 |
+
add_action('widgets_init', 'widget_ngg_recentimage');
|
644 |
?>
|
readme.txt
CHANGED
@@ -1,12 +1,12 @@
|
|
1 |
=== NextGEN Gallery ===
|
2 |
Contributors: Alex Rabe
|
3 |
Donate link: http://alexrabe.boelinger.com/?page_id=80
|
4 |
-
Tags: flash, slideshow, images, gallery, media, admin, post
|
5 |
Requires at least: 2.1.3
|
6 |
Tested up to: 2.2
|
7 |
-
Stable tag: 0.
|
8 |
|
9 |
-
NextGEN Gallery is a Image Gallery plugin for WordPress.
|
10 |
|
11 |
== Description ==
|
12 |
|
@@ -22,7 +22,7 @@ Features:
|
|
22 |
* Multiple CSS Stylesheet : Use a nice shadow effect for your thumbnails with your own CSS file
|
23 |
* Slideshow : Full integrated flash slideshow
|
24 |
* TinyMCE : Button integration for easy adding the gallery tags
|
25 |
-
* Sidebar Widget : Show a random picture at your sidebar
|
26 |
|
27 |
|
28 |
PLEASE NOTE !! This gallery plugin is still in development, it can be contain many bugs !
|
1 |
=== NextGEN Gallery ===
|
2 |
Contributors: Alex Rabe
|
3 |
Donate link: http://alexrabe.boelinger.com/?page_id=80
|
4 |
+
Tags: photos, flash, slideshow, images, gallery, media, admin, post
|
5 |
Requires at least: 2.1.3
|
6 |
Tested up to: 2.2
|
7 |
+
Stable tag: 0.50
|
8 |
|
9 |
+
NextGEN Gallery is a full integrated Image Gallery plugin for WordPress.
|
10 |
|
11 |
== Description ==
|
12 |
|
22 |
* Multiple CSS Stylesheet : Use a nice shadow effect for your thumbnails with your own CSS file
|
23 |
* Slideshow : Full integrated flash slideshow
|
24 |
* TinyMCE : Button integration for easy adding the gallery tags
|
25 |
+
* Sidebar Widget : Show a slideshow, random or recent picture at your sidebar
|
26 |
|
27 |
|
28 |
PLEASE NOTE !! This gallery plugin is still in development, it can be contain many bugs !
|
thickbox/thickbox-pack.js
ADDED
@@ -0,0 +1,10 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
* Thickbox 3 - One Box To Rule Them All.
|
3 |
+
* By Cody Lindley (http://www.codylindley.com)
|
4 |
+
* Copyright (c) 2007 cody lindley
|
5 |
+
* Licensed under the MIT License: http://www.opensource.org/licenses/mit-license.php
|
6 |
+
*/
|
7 |
+
|
8 |
+
//Version 3.0.1 : alex.rabe : jQuery no colision mode, loading image
|
9 |
+
|
10 |
+
eval(function(p,a,c,k,e,r){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--)r[e(c)]=k[c]||e(c);k=[function(e){return r[e]}];e=function(){return'\\w+'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p}('(8($){$(9).2k(8(){1d(\'a.14, 2l.14, 2m.14\');1e=1f 1g();1e.M=2n});8 1d(b){$(b).o(8(){6 t=N.O||N.1B||I;6 a=N.q||N.1C;6 g=N.1D||P;15(t,a,g);N.2o();J P})}8 15(d,f,g){2p{3(1h 9.r.K.1E==="1i"){$("r","L").p({z:"1F%",u:"1F%"});$("L").p("1G","2q");3(9.1H("1j")===I){$("r").A("<16 5=\'1j\'></16><4 5=\'E\'></4><4 5=\'7\'></4>");$("#E").o(B)}}n{3(9.1H("E")===I){$("r").A("<4 5=\'E\'></4><4 5=\'7\'>");$("#E").o(B)}}3(d===I){d=""}$("r").A("<4 5=\'F\'><1I M=\'"+1e.M+"\' /></4>");$(\'#F\').2r();6 h;3(f.W("?")!==-1){h=f.2s(0,f.W("?"))}n{h=f}6 i=/\\.1J|\\.1K|\\.1L|\\.1M|\\.1N/g;6 j=h.1O().1P(i);3(j==\'.1J\'||j==\'.1K\'||j==\'.1L\'||j==\'.1M\'||j==\'.1N\'){1k="";1l="";X="";1m="";1n="";Q="";1o="";1p=P;3(g){C=$("a[@1D="+g+"]").2t();1Q(v=0;((v<C.18)&&(Q===""));v++){6 k=C[v].q.1O().1P(i);3(!(C[v].q==f)){3(1p){1m=C[v].O;1n=C[v].q;Q="<19 5=\'1R\'>&1a;&1a;<a q=\'#\'>2u &2v;</a></19>"}n{1k=C[v].O;1l=C[v].q;X="<19 5=\'1S\'>&1a;&1a;<a q=\'#\'>&2w; 2x</a></19>"}}n{1p=1T;1o="1g "+(v+1)+" 2y "+(C.18)}}}R=1f 1g();R.1q=8(){R.1q=I;6 a=1U();6 x=a[0]-1V;6 y=a[1]-1V;6 b=R.u;6 c=R.z;3(b>x){c=c*(x/b);b=x;3(c>y){b=b*(y/c);c=y}}n 3(c>y){b=b*(y/c);c=y;3(b>x){c=c*(x/b);b=x}}Y=b+30;1b=c+2z;$("#7").A("<a q=\'\' 5=\'1W\' O=\'1r\'><1I 5=\'2A\' M=\'"+f+"\' u=\'"+b+"\' z=\'"+c+"\' 1C=\'"+d+"\'/></a>"+"<4 5=\'2B\'>"+d+"<4 5=\'2C\'>"+1o+X+Q+"</4></4><4 5=\'2D\'><a q=\'#\' 5=\'S\' O=\'1r\'>1s</a> 1t 1u 1v</4>");$("#S").o(B);3(!(X==="")){8 Z(){3($(9).T("o",Z)){$(9).T("o",Z)}$("#7").D();$("r").A("<4 5=\'7\'></4>");15(1k,1l,g);J P}$("#1S").o(Z)}3(!(Q==="")){8 1w(){$("#7").D();$("r").A("<4 5=\'7\'></4>");15(1m,1n,g);J P}$("#1R").o(1w)}9.1c=8(e){3(e==I){G=1X.1x}n{G=e.1Y}3(G==27){B()}n 3(G==2E){3(!(Q=="")){9.1c="";1w()}}n 3(G==2F){3(!(X=="")){9.1c="";Z()}}};11();$("#F").D();$("#1W").o(B);$("#7").p({U:"V"})};R.M=f}n{6 l=f.1Z(/^[^\\?]+\\??/,\'\');6 m=20(l);Y=(m[\'u\']*1)+30||2G;1b=(m[\'z\']*1)+2H||2I;12=Y-30;13=1b-2J;3(f.W(\'21\')!=-1){22=f.1y(\'2K\');$("#7").A("<4 5=\'23\'><4 5=\'1z\'>"+d+"</4><4 5=\'24\'><a q=\'#\' 5=\'S\' O=\'1r\'>1s</a> 1t 1u 1v</4></4><16 2L=\'0\' 2M=\'0\' M=\'"+22[0]+"\' 5=\'1A\' 1B=\'1A\' K=\'u:"+(12+29)+"s;z:"+(13+17)+"s;\' 1q=\'25()\'> </16>")}n{3($("#7").p("U")!="V"){3(m[\'26\']!="1T"){$("#7").A("<4 5=\'23\'><4 5=\'1z\'>"+d+"</4><4 5=\'24\'><a q=\'#\' 5=\'S\'>1s</a> 1t 1u 1v</4></4><4 5=\'H\' K=\'u:"+12+"s;z:"+13+"s\'></4>")}n{$("#E").T();$("#7").A("<4 5=\'H\' 2N=\'2O\' K=\'u:"+12+"s;z:"+13+"s;\'></4>")}}n{$("#H")[0].K.u=12+"s";$("#H")[0].K.z=13+"s";$("#H")[0].2P=0;$("#1z").L(d)}}$("#S").o(B);3(f.W(\'2Q\')!=-1){$("#H").L($(\'#\'+m[\'2R\']).L());11();$("#F").D();$("#7").p({U:"V"})}n 3(f.W(\'21\')!=-1){11();3(2S[\'1A\']===1i){$("#F").D();$("#7").p({U:"V"});$(9).2T(8(e){6 a=e.1x;3(a==27){B()}})}}n{$("#H").2U(f+="&2V="+(1f 2W().2X()),8(){11();$("#F").D();1d("#H a.14");$("#7").p({U:"V"})})}}3(!m[\'26\']){9.2Y=8(e){3(e==I){G=1X.1x}n{G=e.1Y}3(G==27){B()}}}}2Z(e){}}8 25(){$("#F").D();$("#7").p({U:"V"})}8 B(){$("#31").T("o");$("#E").T("o");$("#S").T("o");$("#7").32("33",8(){$(\'#7,#E,#1j\').D()});$("#F").D();3(1h 9.r.K.1E=="1i"){$("r","L").p({z:"28",u:"28"});$("L").p("1G","")}9.1c="";J P}8 11(){$("#7").p({34:\'-\'+2a((Y/2),10)+\'s\',u:Y+\'s\'});3(!(2b.35.36&&1h 37==\'8\')){$("#7").p({38:\'-\'+2a((1b/2),10)+\'s\'})}}8 20(a){6 b={};3(!a){J b}6 c=a.1y(/[;&]/);1Q(6 i=0;i<c.18;i++){6 d=c[i].1y(\'=\');3(!d||d.18!=2){39}6 e=2c(d[0]);6 f=2c(d[1]);f=f.1Z(/\\+/g,\' \');b[e]=f}J b}8 1U(){6 a=9.3a;6 w=2d.2e||2f.2e||(a&&a.2g)||9.r.2g;6 h=2d.2h||2f.2h||(a&&a.2i)||9.r.2i;2j=[w,h];J 2j}})(2b);',62,197,'|||if|div|id|var|TB_window|function|document||||||||||||||else|click|css|href|body|px||width|TB_Counter||||height|append|tb_remove|TB_TempArray|remove|TB_overlay|TB_load|keycode|TB_ajaxContent|null|return|style|html|src|this|title|false|TB_NextHTML|imgPreloader|TB_closeWindowButton|unbind|display|block|indexOf|TB_PrevHTML|TB_WIDTH|goPrev||tb_position|ajaxContentW|ajaxContentH|thickbox|tb_show|iframe||length|span|nbsp|TB_HEIGHT|onkeydown|tb_init|imgLoader|new|Image|typeof|undefined|TB_HideSelect|TB_PrevCaption|TB_PrevURL|TB_NextCaption|TB_NextURL|TB_imageCount|TB_FoundURL|onload|Close|close|or|Esc|Key|goNext|keyCode|split|TB_ajaxWindowTitle|TB_iframeContent|name|alt|rel|maxHeight|100|overflow|getElementById|img|jpg|jpeg|png|gif|bmp|toLowerCase|match|for|TB_next|TB_prev|true|tb_getPageSize|150|TB_ImageOff|event|which|replace|tb_parseQuery|TB_iframe|urlNoQuery|TB_title|TB_closeAjaxWindow|tb_showIframe|modal||auto||parseInt|jQuery|unescape|window|innerWidth|self|clientWidth|innerHeight|clientHeight|arrayPageSize|ready|area|input|tb_pathToImage|blur|try|hidden|show|substr|get|Next|gt|lt|Prev|of|60|TB_Image|TB_caption|TB_secondLine|TB_closeWindow|190|188|630|40|440|45|TB_|frameborder|hspace|class|TB_modal|scrollTop|TB_inline|inlineId|frames|keyup|load|random|Date|getTime|onkeyup|catch||TB_imageOff|fadeOut|fast|marginLeft|browser|msie|XMLHttpRequest|marginTop|continue|documentElement'.split('|'),0,{}))
|
thickbox/thickbox.js
CHANGED
@@ -5,4 +5,302 @@
|
|
5 |
* Licensed under the MIT License: http://www.opensource.org/licenses/mit-license.php
|
6 |
*/
|
7 |
|
8 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
5 |
* Licensed under the MIT License: http://www.opensource.org/licenses/mit-license.php
|
6 |
*/
|
7 |
|
8 |
+
//Version 3.0.1 : alex.rabe : jQuery no colision mode, loading image
|
9 |
+
|
10 |
+
// var tb_pathToImage = "images/loadingAnimation.gif";
|
11 |
+
|
12 |
+
/*!!!!!!!!!!!!!!!!! edit below this line at your own risk !!!!!!!!!!!!!!!!!!!!!!!*/
|
13 |
+
|
14 |
+
/*# AVOID COLLISIONS #*/
|
15 |
+
(function($){
|
16 |
+
/*# AVOID COLLISIONS #*/
|
17 |
+
|
18 |
+
//on page load call tb_init
|
19 |
+
$(document).ready(function(){
|
20 |
+
tb_init('a.thickbox, area.thickbox, input.thickbox');//pass where to apply thickbox
|
21 |
+
imgLoader = new Image();// preload image
|
22 |
+
imgLoader.src = tb_pathToImage;
|
23 |
+
});
|
24 |
+
|
25 |
+
//add thickbox to href & area elements that have a class of .thickbox
|
26 |
+
function tb_init(domChunk){
|
27 |
+
$(domChunk).click(function(){
|
28 |
+
var t = this.title || this.name || null;
|
29 |
+
var a = this.href || this.alt;
|
30 |
+
var g = this.rel || false;
|
31 |
+
tb_show(t,a,g);
|
32 |
+
this.blur();
|
33 |
+
return false;
|
34 |
+
});
|
35 |
+
}
|
36 |
+
|
37 |
+
function tb_show(caption, url, imageGroup) {//function called when the user clicks on a thickbox link
|
38 |
+
|
39 |
+
try {
|
40 |
+
if (typeof document.body.style.maxHeight === "undefined") {//if IE 6
|
41 |
+
$("body","html").css({height: "100%", width: "100%"});
|
42 |
+
$("html").css("overflow","hidden");
|
43 |
+
if (document.getElementById("TB_HideSelect") === null) {//iframe to hide select elements in ie6
|
44 |
+
$("body").append("<iframe id='TB_HideSelect'></iframe><div id='TB_overlay'></div><div id='TB_window'></div>");
|
45 |
+
$("#TB_overlay").click(tb_remove);
|
46 |
+
}
|
47 |
+
}else{//all others
|
48 |
+
if(document.getElementById("TB_overlay") === null){
|
49 |
+
$("body").append("<div id='TB_overlay'></div><div id='TB_window'>");
|
50 |
+
$("#TB_overlay").click(tb_remove);
|
51 |
+
}
|
52 |
+
}
|
53 |
+
|
54 |
+
if(caption===null){caption="";}
|
55 |
+
$("body").append("<div id='TB_load'><img src='"+imgLoader.src+"' /></div>");//add loader to the page
|
56 |
+
$('#TB_load').show();//show loader
|
57 |
+
|
58 |
+
var baseURL;
|
59 |
+
if(url.indexOf("?")!==-1){ //ff there is a query string involved
|
60 |
+
baseURL = url.substr(0, url.indexOf("?"));
|
61 |
+
}else{
|
62 |
+
baseURL = url;
|
63 |
+
}
|
64 |
+
|
65 |
+
var urlString = /\.jpg|\.jpeg|\.png|\.gif|\.bmp/g;
|
66 |
+
var urlType = baseURL.toLowerCase().match(urlString);
|
67 |
+
|
68 |
+
if(urlType == '.jpg' || urlType == '.jpeg' || urlType == '.png' || urlType == '.gif' || urlType == '.bmp'){//code to show images
|
69 |
+
|
70 |
+
TB_PrevCaption = "";
|
71 |
+
TB_PrevURL = "";
|
72 |
+
TB_PrevHTML = "";
|
73 |
+
TB_NextCaption = "";
|
74 |
+
TB_NextURL = "";
|
75 |
+
TB_NextHTML = "";
|
76 |
+
TB_imageCount = "";
|
77 |
+
TB_FoundURL = false;
|
78 |
+
if(imageGroup){
|
79 |
+
TB_TempArray = $("a[@rel="+imageGroup+"]").get();
|
80 |
+
for (TB_Counter = 0; ((TB_Counter < TB_TempArray.length) && (TB_NextHTML === "")); TB_Counter++) {
|
81 |
+
var urlTypeTemp = TB_TempArray[TB_Counter].href.toLowerCase().match(urlString);
|
82 |
+
if (!(TB_TempArray[TB_Counter].href == url)) {
|
83 |
+
if (TB_FoundURL) {
|
84 |
+
TB_NextCaption = TB_TempArray[TB_Counter].title;
|
85 |
+
TB_NextURL = TB_TempArray[TB_Counter].href;
|
86 |
+
TB_NextHTML = "<span id='TB_next'> <a href='#'>Next ></a></span>";
|
87 |
+
} else {
|
88 |
+
TB_PrevCaption = TB_TempArray[TB_Counter].title;
|
89 |
+
TB_PrevURL = TB_TempArray[TB_Counter].href;
|
90 |
+
TB_PrevHTML = "<span id='TB_prev'> <a href='#'>< Prev</a></span>";
|
91 |
+
}
|
92 |
+
} else {
|
93 |
+
TB_FoundURL = true;
|
94 |
+
TB_imageCount = "Image " + (TB_Counter + 1) +" of "+ (TB_TempArray.length);
|
95 |
+
}
|
96 |
+
}
|
97 |
+
}
|
98 |
+
|
99 |
+
imgPreloader = new Image();
|
100 |
+
imgPreloader.onload = function(){
|
101 |
+
imgPreloader.onload = null;
|
102 |
+
|
103 |
+
// Resizing large images - orginal by Christian Montoya edited by me.
|
104 |
+
var pagesize = tb_getPageSize();
|
105 |
+
var x = pagesize[0] - 150;
|
106 |
+
var y = pagesize[1] - 150;
|
107 |
+
var imageWidth = imgPreloader.width;
|
108 |
+
var imageHeight = imgPreloader.height;
|
109 |
+
if (imageWidth > x) {
|
110 |
+
imageHeight = imageHeight * (x / imageWidth);
|
111 |
+
imageWidth = x;
|
112 |
+
if (imageHeight > y) {
|
113 |
+
imageWidth = imageWidth * (y / imageHeight);
|
114 |
+
imageHeight = y;
|
115 |
+
}
|
116 |
+
} else if (imageHeight > y) {
|
117 |
+
imageWidth = imageWidth * (y / imageHeight);
|
118 |
+
imageHeight = y;
|
119 |
+
if (imageWidth > x) {
|
120 |
+
imageHeight = imageHeight * (x / imageWidth);
|
121 |
+
imageWidth = x;
|
122 |
+
}
|
123 |
+
}
|
124 |
+
// End Resizing
|
125 |
+
|
126 |
+
TB_WIDTH = imageWidth + 30;
|
127 |
+
TB_HEIGHT = imageHeight + 60;
|
128 |
+
$("#TB_window").append("<a href='' id='TB_ImageOff' title='Close'><img id='TB_Image' src='"+url+"' width='"+imageWidth+"' height='"+imageHeight+"' alt='"+caption+"'/></a>" + "<div id='TB_caption'>"+caption+"<div id='TB_secondLine'>" + TB_imageCount + TB_PrevHTML + TB_NextHTML + "</div></div><div id='TB_closeWindow'><a href='#' id='TB_closeWindowButton' title='Close'>close</a> or Esc Key</div>");
|
129 |
+
|
130 |
+
$("#TB_closeWindowButton").click(tb_remove);
|
131 |
+
|
132 |
+
if (!(TB_PrevHTML === "")) {
|
133 |
+
function goPrev(){
|
134 |
+
if($(document).unbind("click",goPrev)){$(document).unbind("click",goPrev);}
|
135 |
+
$("#TB_window").remove();
|
136 |
+
$("body").append("<div id='TB_window'></div>");
|
137 |
+
tb_show(TB_PrevCaption, TB_PrevURL, imageGroup);
|
138 |
+
return false;
|
139 |
+
}
|
140 |
+
$("#TB_prev").click(goPrev);
|
141 |
+
}
|
142 |
+
|
143 |
+
if (!(TB_NextHTML === "")) {
|
144 |
+
function goNext(){
|
145 |
+
$("#TB_window").remove();
|
146 |
+
$("body").append("<div id='TB_window'></div>");
|
147 |
+
tb_show(TB_NextCaption, TB_NextURL, imageGroup);
|
148 |
+
return false;
|
149 |
+
}
|
150 |
+
$("#TB_next").click(goNext);
|
151 |
+
|
152 |
+
}
|
153 |
+
|
154 |
+
document.onkeydown = function(e){
|
155 |
+
if (e == null) { // ie
|
156 |
+
keycode = event.keyCode;
|
157 |
+
} else { // mozilla
|
158 |
+
keycode = e.which;
|
159 |
+
}
|
160 |
+
if(keycode == 27){ // close
|
161 |
+
tb_remove();
|
162 |
+
} else if(keycode == 190){ // display previous image
|
163 |
+
if(!(TB_NextHTML == "")){
|
164 |
+
document.onkeydown = "";
|
165 |
+
goNext();
|
166 |
+
}
|
167 |
+
} else if(keycode == 188){ // display next image
|
168 |
+
if(!(TB_PrevHTML == "")){
|
169 |
+
document.onkeydown = "";
|
170 |
+
goPrev();
|
171 |
+
}
|
172 |
+
}
|
173 |
+
};
|
174 |
+
|
175 |
+
tb_position();
|
176 |
+
$("#TB_load").remove();
|
177 |
+
$("#TB_ImageOff").click(tb_remove);
|
178 |
+
$("#TB_window").css({display:"block"}); //for safari using css instead of show
|
179 |
+
};
|
180 |
+
|
181 |
+
imgPreloader.src = url;
|
182 |
+
}else{//code to show html pages
|
183 |
+
|
184 |
+
var queryString = url.replace(/^[^\?]+\??/,'');
|
185 |
+
var params = tb_parseQuery( queryString );
|
186 |
+
|
187 |
+
TB_WIDTH = (params['width']*1) + 30 || 630; //defaults to 630 if no paramaters were added to URL
|
188 |
+
TB_HEIGHT = (params['height']*1) + 40 || 440; //defaults to 440 if no paramaters were added to URL
|
189 |
+
ajaxContentW = TB_WIDTH - 30;
|
190 |
+
ajaxContentH = TB_HEIGHT - 45;
|
191 |
+
|
192 |
+
if(url.indexOf('TB_iframe') != -1){
|
193 |
+
urlNoQuery = url.split('TB_');
|
194 |
+
$("#TB_window").append("<div id='TB_title'><div id='TB_ajaxWindowTitle'>"+caption+"</div><div id='TB_closeAjaxWindow'><a href='#' id='TB_closeWindowButton' title='Close'>close</a> or Esc Key</div></div><iframe frameborder='0' hspace='0' src='"+urlNoQuery[0]+"' id='TB_iframeContent' name='TB_iframeContent' style='width:"+(ajaxContentW + 29)+"px;height:"+(ajaxContentH + 17)+"px;' onload='tb_showIframe()'> </iframe>");
|
195 |
+
}else{
|
196 |
+
if($("#TB_window").css("display") != "block"){
|
197 |
+
if(params['modal'] != "true"){
|
198 |
+
$("#TB_window").append("<div id='TB_title'><div id='TB_ajaxWindowTitle'>"+caption+"</div><div id='TB_closeAjaxWindow'><a href='#' id='TB_closeWindowButton'>close</a> or Esc Key</div></div><div id='TB_ajaxContent' style='width:"+ajaxContentW+"px;height:"+ajaxContentH+"px'></div>");
|
199 |
+
}else{
|
200 |
+
$("#TB_overlay").unbind();
|
201 |
+
$("#TB_window").append("<div id='TB_ajaxContent' class='TB_modal' style='width:"+ajaxContentW+"px;height:"+ajaxContentH+"px;'></div>");
|
202 |
+
}
|
203 |
+
}else{
|
204 |
+
$("#TB_ajaxContent")[0].style.width = ajaxContentW +"px";
|
205 |
+
$("#TB_ajaxContent")[0].style.height = ajaxContentH +"px";
|
206 |
+
$("#TB_ajaxContent")[0].scrollTop = 0;
|
207 |
+
$("#TB_ajaxWindowTitle").html(caption);
|
208 |
+
}
|
209 |
+
}
|
210 |
+
|
211 |
+
$("#TB_closeWindowButton").click(tb_remove);
|
212 |
+
|
213 |
+
if(url.indexOf('TB_inline') != -1){
|
214 |
+
$("#TB_ajaxContent").html($('#' + params['inlineId']).html());
|
215 |
+
tb_position();
|
216 |
+
$("#TB_load").remove();
|
217 |
+
$("#TB_window").css({display:"block"});
|
218 |
+
}else if(url.indexOf('TB_iframe') != -1){
|
219 |
+
tb_position();
|
220 |
+
if(frames['TB_iframeContent'] === undefined){//be nice to safari
|
221 |
+
$("#TB_load").remove();
|
222 |
+
$("#TB_window").css({display:"block"});
|
223 |
+
$(document).keyup( function(e){ var key = e.keyCode; if(key == 27){tb_remove();}});
|
224 |
+
}
|
225 |
+
}else{
|
226 |
+
$("#TB_ajaxContent").load(url += "&random=" + (new Date().getTime()),function(){//to do a post change this load method
|
227 |
+
tb_position();
|
228 |
+
$("#TB_load").remove();
|
229 |
+
tb_init("#TB_ajaxContent a.thickbox");
|
230 |
+
$("#TB_window").css({display:"block"});
|
231 |
+
});
|
232 |
+
}
|
233 |
+
|
234 |
+
}
|
235 |
+
|
236 |
+
if(!params['modal']){
|
237 |
+
document.onkeyup = function(e){
|
238 |
+
if (e == null) { // ie
|
239 |
+
keycode = event.keyCode;
|
240 |
+
} else { // mozilla
|
241 |
+
keycode = e.which;
|
242 |
+
}
|
243 |
+
if(keycode == 27){ // close
|
244 |
+
tb_remove();
|
245 |
+
}
|
246 |
+
};
|
247 |
+
}
|
248 |
+
|
249 |
+
} catch(e) {
|
250 |
+
//nothing here
|
251 |
+
}
|
252 |
+
}
|
253 |
+
|
254 |
+
//helper functions below
|
255 |
+
function tb_showIframe(){
|
256 |
+
$("#TB_load").remove();
|
257 |
+
$("#TB_window").css({display:"block"});
|
258 |
+
}
|
259 |
+
|
260 |
+
function tb_remove() {
|
261 |
+
$("#TB_imageOff").unbind("click");
|
262 |
+
$("#TB_overlay").unbind("click");
|
263 |
+
$("#TB_closeWindowButton").unbind("click");
|
264 |
+
$("#TB_window").fadeOut("fast",function(){$('#TB_window,#TB_overlay,#TB_HideSelect').remove();});
|
265 |
+
$("#TB_load").remove();
|
266 |
+
if (typeof document.body.style.maxHeight == "undefined") {//if IE 6
|
267 |
+
$("body","html").css({height: "auto", width: "auto"});
|
268 |
+
$("html").css("overflow","");
|
269 |
+
}
|
270 |
+
document.onkeydown = "";
|
271 |
+
return false;
|
272 |
+
}
|
273 |
+
|
274 |
+
function tb_position() {
|
275 |
+
$("#TB_window").css({marginLeft: '-' + parseInt((TB_WIDTH / 2),10) + 'px', width: TB_WIDTH + 'px'});
|
276 |
+
if ( !(jQuery.browser.msie && typeof XMLHttpRequest == 'function')) { // take away IE6
|
277 |
+
$("#TB_window").css({marginTop: '-' + parseInt((TB_HEIGHT / 2),10) + 'px'});
|
278 |
+
}
|
279 |
+
}
|
280 |
+
|
281 |
+
function tb_parseQuery ( query ) {
|
282 |
+
var Params = {};
|
283 |
+
if ( ! query ) {return Params;}// return empty object
|
284 |
+
var Pairs = query.split(/[;&]/);
|
285 |
+
for ( var i = 0; i < Pairs.length; i++ ) {
|
286 |
+
var KeyVal = Pairs[i].split('=');
|
287 |
+
if ( ! KeyVal || KeyVal.length != 2 ) {continue;}
|
288 |
+
var key = unescape( KeyVal[0] );
|
289 |
+
var val = unescape( KeyVal[1] );
|
290 |
+
val = val.replace(/\+/g, ' ');
|
291 |
+
Params[key] = val;
|
292 |
+
}
|
293 |
+
return Params;
|
294 |
+
}
|
295 |
+
|
296 |
+
function tb_getPageSize(){
|
297 |
+
var de = document.documentElement;
|
298 |
+
var w = window.innerWidth || self.innerWidth || (de&&de.clientWidth) || document.body.clientWidth;
|
299 |
+
var h = window.innerHeight || self.innerHeight || (de&&de.clientHeight) || document.body.clientHeight;
|
300 |
+
arrayPageSize = [w,h];
|
301 |
+
return arrayPageSize;
|
302 |
+
}
|
303 |
+
|
304 |
+
/*# AVOID COLLISIONS #*/
|
305 |
+
})(jQuery);
|
306 |
+
/*# AVOID COLLISIONS #*/
|