OSDN Git Service

if is IE use openWYSIWYG, is is NOT ie use WYMeditor.
[feedblog/feedgenerator.git] / openwysiwyg / addons / imagelibrary / select_image.php
1 <?php
2 /********************************************************************
3  * openImageLibrary addon Copyright (c) 2006 openWebWare.com
4  * Contact us at devs@openwebware.com
5  * This copyright notice MUST stay intact for use.
6  ********************************************************************/
7 require('config.inc.php');
8 error_reporting(0);
9 if((substr($imagebaseurl, -1, 1)!='/') && $imagebaseurl!='') $imagebaseurl = $imagebaseurl . '/';
10 if((substr($imagebasedir, -1, 1)!='/') && $imagebasedir!='') $imagebasedir = $imagebasedir . '/';
11 $leadon = $imagebasedir;
12 if($leadon=='.') $leadon = '';
13 if((substr($leadon, -1, 1)!='/') && $leadon!='') $leadon = $leadon . '/';
14 $startdir = $leadon;
15
16 if($_GET['dir']) {
17         if(substr($_GET['dir'], -1, 1)!='/') {
18                 $_GET['dir'] = $_GET['dir'] . '/';
19         }
20         $dirok = true;
21         $dirnames = split('/', $_GET['dir']);
22         for($di=0; $di<sizeof($dirnames); $di++) {
23                 if($di<(sizeof($dirnames)-2)) {
24                         $dotdotdir = $dotdotdir . $dirnames[$di] . '/';
25                 }
26         }
27         if(substr($_GET['dir'], 0, 1)=='/') {
28                 $dirok = false;
29         }
30
31         if($_GET['dir'] == $leadon) {
32                 $dirok = false;
33         }
34         
35         if($dirok) {
36                 $leadon = $_GET['dir'];
37         }
38 }
39
40 $opendir = $leadon;
41 if(!$leadon) $opendir = '.';
42 if(!file_exists($opendir)) {
43         $opendir = '.';
44         $leadon = $startdir;
45 }
46
47 clearstatcache();
48 if ($handle = opendir($opendir)) {
49         while (false !== ($file = readdir($handle))) { 
50                 //first see if this file is required in the listing
51                 if ($file == "." || $file == "..")  continue;
52                 if (@filetype($leadon.$file) == "dir") {
53                         if(!$browsedirs) continue;
54                 
55                         $n++;
56                         if($_GET['sort']=="date") {
57                                 $key = @filemtime($leadon.$file) . ".$n";
58                         }
59                         else {
60                                 $key = $n;
61                         }
62                         $dirs[$key] = $file . "/";
63                 }
64                 else {
65                         $n++;
66                         if($_GET['sort']=="date") {
67                                 $key = @filemtime($leadon.$file) . ".$n";
68                         }
69                         elseif($_GET['sort']=="size") {
70                                 $key = @filesize($leadon.$file) . ".$n";
71                         }
72                         else {
73                                 $key = $n;
74                         }
75                         $files[$key] = $file;
76                 }
77         }
78         closedir($handle); 
79 }
80
81 //sort our files
82 if($_GET['sort']=="date") {
83         @ksort($dirs, SORT_NUMERIC);
84         @ksort($files, SORT_NUMERIC);
85 }
86 elseif($_GET['sort']=="size") {
87         @natcasesort($dirs); 
88         @ksort($files, SORT_NUMERIC);
89 }
90 else {
91         @natcasesort($dirs); 
92         @natcasesort($files);
93 }
94
95 //order correctly
96 if($_GET['order']=="desc" && $_GET['sort']!="size") {$dirs = @array_reverse($dirs);}
97 if($_GET['order']=="desc") {$files = @array_reverse($files);}
98 $dirs = @array_values($dirs); $files = @array_values($files);
99 ?>
100
101 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
102
103 <html>
104 <head>
105 <title>openWYSIWYG | Select Image</title>
106 <style type="text/css">
107 body {
108         margin: 0px;
109 }
110 a {
111         font-family: Arial, verdana, helvetica; 
112         font-size: 11px; 
113         color: #000000;
114         text-decoration: none;
115 }
116 a:hover {
117         text-decoration: underline;
118 }
119 </style>
120 <script type="text/javascript">
121         function selectImage(url) {
122                 if(parent) {
123                         parent.document.getElementById("src").value = url;
124                 }
125         }
126         
127         if(parent) {
128                 parent.document.getElementById("dir").value = '<?php echo $leadon; ?>';
129         }
130         
131 </script>
132 </head>
133 <body>
134         <table border="0">
135                 <tbody>
136                  <?php
137                         $breadcrumbs = split('/', str_replace($basedir."/", "", $leadon));
138                         if(($bsize = sizeof($breadcrumbs)) > 0) {
139                                 if(($bsize-1) > 0) {    
140                                         echo "<tr><td>";
141                                         $sofar = '';
142                                         for($bi=0;$bi<($bsize-1);$bi++) {
143                                                 $sofar = $sofar . $breadcrumbs[$bi] . '/';
144                                                 echo '<a href="'.$_SERVER['PHP_SELF'].'?dir='.urlencode($sofar).'" style="font-size:10px;font-family:Tahoma;">&raquo; '.$breadcrumbs[$bi].'</a><br>';
145                                         }
146                                         echo "</td></tr>";
147                                 }
148                         }
149                   ?>
150                 <tr>
151                         <td>
152                                   <?php
153                                         $class = 'b';
154                                         if($dirok) {
155                                         ?>
156                                         <a href="<?php echo $_SERVER['PHP_SELF'].'?dir='.urlencode($dotdotdir); ?>"><img src="images/dirup.png" alt="Folder" border="0" /> <strong>..</strong></a><br>
157                                         <?php
158                                                 if($class=='b') $class='w';
159                                                 else $class = 'b';
160                                         }
161                                         $arsize = sizeof($dirs);
162                                         for($i=0;$i<$arsize;$i++) {
163                                                 $dir = substr($dirs[$i], 0, strlen($dirs[$i]) - 1);
164                                         ?>
165                                         <a href="<?php echo $_SERVER['PHP_SELF'].'?dir='.urlencode($leadon.$dirs[$i]); ?>"><img src="images/folder.png" alt="<?php echo $dir; ?>" border="0" /> <strong><?php echo $dir; ?></strong></a><br>
166                                         <?php
167                                                 if($class=='b') $class='w';
168                                                 else $class = 'b';      
169                                         }
170                                         
171                                         $arsize = sizeof($files);
172                                         for($i=0;$i<$arsize;$i++) {
173                                                 $icon = 'unknown.png';
174                                                 $ext = strtolower(substr($files[$i], strrpos($files[$i], '.')+1));
175                                                 if(in_array($ext, $supportedextentions)) {
176                                                         
177                                                         $thumb = '';
178                                                         if($filetypes[$ext]) {
179                                                                 $icon = $filetypes[$ext];
180                                                         }
181                                                         
182                                                         $filename = $files[$i];
183                                                         if(strlen($filename)>43) {
184                                                                 $filename = substr($files[$i], 0, 40) . '...';
185                                                         }
186                                                         $fileurl = $leadon . $files[$i];
187                                                         $filedir = str_replace($imagebasedir, "", $leadon);
188                                         ?>
189                                         <a href="javascript:void(0)" onclick="selectImage('<?php echo $imagebaseurl.$filedir.$filename; ?>');"><img src="images/<?php echo $icon; ?>" alt="<?php echo $files[$i]; ?>" border="0" /> <strong><?php echo $filename; ?></strong></a><br>
190                                         <?php
191                                                         if($class=='b') $class='w';
192                                                         else $class = 'b';      
193                                                 }
194                                         }       
195                                         ?>
196                                 </td>
197                         </tr>
198                 </tbody>
199         </table>
200 </body>
201 </html>