Version Notes
1.9.2.0
Download this release
Release Info
Developer | Magento Core Team |
Extension | Lib_Varien |
Version | 1.9.2.0 |
Comparing to | |
See all releases |
Code changes from version 1.9.1.1 to 1.9.2.0
- lib/Varien/Cache/Backend/Database.php +126 -58
- lib/Varien/Crypt/Mcrypt.php +11 -11
- lib/Varien/Db/Adapter/Pdo/Mysql.php +108 -6
- lib/Varien/File/Uploader/Image.php +15 -11
- lib/Varien/Filter/Template/Simple.php +44 -2
- lib/Varien/Image/Adapter/Gd2.php +51 -11
- lib/Varien/Io/File.php +19 -2
- package.xml +6 -6
lib/Varien/Cache/Backend/Database.php
CHANGED
@@ -42,14 +42,16 @@ CREATE TABLE IF NOT EXISTS `core_cache_tag` (
|
|
42 |
`cache_id` VARCHAR(255) NOT NULL,
|
43 |
KEY `IDX_TAG` (`tag`),
|
44 |
KEY `IDX_CACHE_ID` (`cache_id`),
|
45 |
-
CONSTRAINT `FK_CORE_CACHE_TAG` FOREIGN KEY (`cache_id`)
|
|
|
46 |
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
|
47 |
*/
|
48 |
|
49 |
/**
|
50 |
* Database cache backend
|
51 |
*/
|
52 |
-
class Varien_Cache_Backend_Database
|
|
|
53 |
{
|
54 |
/**
|
55 |
* Available options
|
@@ -171,16 +173,18 @@ class Varien_Cache_Backend_Database extends Zend_Cache_Backend implements Zend_C
|
|
171 |
}
|
172 |
|
173 |
/**
|
174 |
-
* Save
|
175 |
*
|
176 |
* Note : $data is always "string" (serialization is done by the
|
177 |
* core not by the backend)
|
178 |
*
|
179 |
-
* @param string $data
|
180 |
-
* @param string $id
|
181 |
-
* @param array $tags
|
182 |
-
* @param int
|
183 |
-
*
|
|
|
|
|
184 |
*/
|
185 |
public function save($data, $id, $tags = array(), $specificLifetime = false)
|
186 |
{
|
@@ -221,13 +225,35 @@ class Varien_Cache_Backend_Database extends Zend_Cache_Backend implements Zend_C
|
|
221 |
*/
|
222 |
public function remove($id)
|
223 |
{
|
|
|
|
|
224 |
if ($this->_options['store_data']) {
|
225 |
-
$
|
226 |
-
$result = $adapter->delete($this->_getDataTable(), array('id=?'=>$id));
|
227 |
-
return $result;
|
228 |
-
} else {
|
229 |
-
return false;
|
230 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
231 |
}
|
232 |
|
233 |
/**
|
@@ -250,23 +276,18 @@ class Varien_Cache_Backend_Database extends Zend_Cache_Backend implements Zend_C
|
|
250 |
public function clean($mode = Zend_Cache::CLEANING_MODE_ALL, $tags = array())
|
251 |
{
|
252 |
$adapter = $this->_getAdapter();
|
|
|
|
|
253 |
switch($mode) {
|
254 |
case Zend_Cache::CLEANING_MODE_ALL:
|
255 |
if ($this->_options['store_data']) {
|
256 |
-
$result = $adapter->query('TRUNCATE TABLE '
|
257 |
-
} else {
|
258 |
-
$result = true;
|
259 |
}
|
260 |
-
$result = $result && $adapter->query('TRUNCATE TABLE '
|
261 |
break;
|
262 |
case Zend_Cache::CLEANING_MODE_OLD:
|
263 |
if ($this->_options['store_data']) {
|
264 |
-
$result = $
|
265 |
-
'expire_time> ?' => 0,
|
266 |
-
'expire_time<= ?' => time()
|
267 |
-
));
|
268 |
-
} else {
|
269 |
-
$result = true;
|
270 |
}
|
271 |
break;
|
272 |
case Zend_Cache::CLEANING_MODE_MATCHING_TAG:
|
@@ -282,6 +303,47 @@ class Varien_Cache_Backend_Database extends Zend_Cache_Backend implements Zend_C
|
|
282 |
return $result;
|
283 |
}
|
284 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
285 |
/**
|
286 |
* Return an array of stored cache ids
|
287 |
*
|
@@ -472,6 +534,7 @@ class Varien_Cache_Backend_Database extends Zend_Cache_Backend implements Zend_C
|
|
472 |
->where('cache_id=?', $id)
|
473 |
->where('tag IN(?)', $tags);
|
474 |
|
|
|
475 |
$existingTags = $adapter->fetchCol($select);
|
476 |
$insertTags = array_diff($tags, $existingTags);
|
477 |
if (!empty($insertTags)) {
|
@@ -483,10 +546,10 @@ class Varien_Cache_Backend_Database extends Zend_Cache_Backend implements Zend_C
|
|
483 |
$bind[] = $tag;
|
484 |
$bind[] = $id;
|
485 |
}
|
486 |
-
$query.= implode(',', $lines);
|
487 |
-
$adapter->query($query, $bind);
|
488 |
}
|
489 |
-
|
490 |
return $result;
|
491 |
}
|
492 |
|
@@ -499,46 +562,51 @@ class Varien_Cache_Backend_Database extends Zend_Cache_Backend implements Zend_C
|
|
499 |
*/
|
500 |
protected function _cleanByTags($mode, $tags)
|
501 |
{
|
502 |
-
|
503 |
-
|
504 |
-
|
505 |
-
|
506 |
-
|
507 |
-
|
508 |
-
|
509 |
-
|
510 |
-
|
511 |
break;
|
512 |
-
|
513 |
-
|
514 |
break;
|
515 |
-
|
516 |
-
|
517 |
break;
|
518 |
-
|
519 |
-
|
520 |
break;
|
521 |
-
|
522 |
|
523 |
-
|
524 |
-
|
525 |
-
|
526 |
-
|
527 |
-
|
528 |
-
|
529 |
-
|
530 |
-
|
531 |
-
|
532 |
-
|
533 |
-
|
|
|
534 |
}
|
|
|
|
|
|
|
535 |
}
|
536 |
-
|
537 |
-
|
|
|
|
|
538 |
}
|
539 |
-
|
540 |
-
} else {
|
541 |
-
return true;
|
542 |
}
|
|
|
543 |
}
|
544 |
}
|
42 |
`cache_id` VARCHAR(255) NOT NULL,
|
43 |
KEY `IDX_TAG` (`tag`),
|
44 |
KEY `IDX_CACHE_ID` (`cache_id`),
|
45 |
+
CONSTRAINT `FK_CORE_CACHE_TAG` FOREIGN KEY (`cache_id`)
|
46 |
+
REFERENCES `core_cache` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
|
47 |
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
|
48 |
*/
|
49 |
|
50 |
/**
|
51 |
* Database cache backend
|
52 |
*/
|
53 |
+
class Varien_Cache_Backend_Database
|
54 |
+
extends Zend_Cache_Backend implements Zend_Cache_Backend_ExtendedInterface
|
55 |
{
|
56 |
/**
|
57 |
* Available options
|
173 |
}
|
174 |
|
175 |
/**
|
176 |
+
* Save data into a cache storage
|
177 |
*
|
178 |
* Note : $data is always "string" (serialization is done by the
|
179 |
* core not by the backend)
|
180 |
*
|
181 |
+
* @param string $data Data to cache
|
182 |
+
* @param string $id Cache id
|
183 |
+
* @param array $tags Array of strings, the cache record will be tagged by each string entry
|
184 |
+
* @param int|bool|null $specificLifetime If != false, set a specific lifetime for this cache record
|
185 |
+
* (null => infinite lifetime)
|
186 |
+
*
|
187 |
+
* @return bool true if no problem
|
188 |
*/
|
189 |
public function save($data, $id, $tags = array(), $specificLifetime = false)
|
190 |
{
|
225 |
*/
|
226 |
public function remove($id)
|
227 |
{
|
228 |
+
$adapter = $this->_getAdapter();
|
229 |
+
$result = true;
|
230 |
if ($this->_options['store_data']) {
|
231 |
+
$result = $adapter->delete($this->_getDataTable(), array('id = ?' => $id));
|
|
|
|
|
|
|
|
|
232 |
}
|
233 |
+
|
234 |
+
return $result && $adapter->delete($this->_getTagsTable(), array('cache_id = ?' => $id));
|
235 |
+
}
|
236 |
+
|
237 |
+
/**
|
238 |
+
* Delete cache rows from Data table
|
239 |
+
*
|
240 |
+
* @param $cacheIdsToRemove
|
241 |
+
* @return int
|
242 |
+
*/
|
243 |
+
protected function _deleteCachesFromDataTable($cacheIdsToRemove)
|
244 |
+
{
|
245 |
+
return $this->_getAdapter()->delete($this->_getDataTable(), array('id IN (?)' => $cacheIdsToRemove));
|
246 |
+
}
|
247 |
+
|
248 |
+
/**
|
249 |
+
* Delete cache rows from Tags table
|
250 |
+
*
|
251 |
+
* @param $cacheIdsToRemove
|
252 |
+
* @return int
|
253 |
+
*/
|
254 |
+
protected function _deleteCachesFromTagsTable($cacheIdsToRemove)
|
255 |
+
{
|
256 |
+
return $this->_getAdapter()->delete($this->_getTagsTable(), array('cache_id IN (?)' => $cacheIdsToRemove));
|
257 |
}
|
258 |
|
259 |
/**
|
276 |
public function clean($mode = Zend_Cache::CLEANING_MODE_ALL, $tags = array())
|
277 |
{
|
278 |
$adapter = $this->_getAdapter();
|
279 |
+
$result = true;
|
280 |
+
|
281 |
switch($mode) {
|
282 |
case Zend_Cache::CLEANING_MODE_ALL:
|
283 |
if ($this->_options['store_data']) {
|
284 |
+
$result = $adapter->query('TRUNCATE TABLE ' . $this->_getDataTable());
|
|
|
|
|
285 |
}
|
286 |
+
$result = $result && $adapter->query('TRUNCATE TABLE ' . $this->_getTagsTable());
|
287 |
break;
|
288 |
case Zend_Cache::CLEANING_MODE_OLD:
|
289 |
if ($this->_options['store_data']) {
|
290 |
+
$result = $this->_cleanOldCache();
|
|
|
|
|
|
|
|
|
|
|
291 |
}
|
292 |
break;
|
293 |
case Zend_Cache::CLEANING_MODE_MATCHING_TAG:
|
303 |
return $result;
|
304 |
}
|
305 |
|
306 |
+
/**
|
307 |
+
* Clean old cache data and related cache tag data
|
308 |
+
*
|
309 |
+
* @return bool
|
310 |
+
*/
|
311 |
+
protected function _cleanOldCache()
|
312 |
+
{
|
313 |
+
$time = time();
|
314 |
+
$counter = 0;
|
315 |
+
$result = true;
|
316 |
+
$adapter = $this->_getAdapter();
|
317 |
+
$cacheIdsToRemove = array();
|
318 |
+
|
319 |
+
$select = $adapter->select()
|
320 |
+
->from($this->_getDataTable(), 'id')
|
321 |
+
->where('expire_time > ?', 0)
|
322 |
+
->where('expire_time <= ?', $time)
|
323 |
+
;
|
324 |
+
|
325 |
+
$statement = $adapter->query($select);
|
326 |
+
while ($row = $statement->fetch()) {
|
327 |
+
if (!$result) {
|
328 |
+
break;
|
329 |
+
}
|
330 |
+
$cacheIdsToRemove[] = $row['id'];
|
331 |
+
$counter++;
|
332 |
+
if ($counter > 100) {
|
333 |
+
$result = $result && $this->_deleteCachesFromDataTable($cacheIdsToRemove);
|
334 |
+
$result = $result && $this->_deleteCachesFromTagsTable($cacheIdsToRemove);
|
335 |
+
$cacheIdsToRemove = array();
|
336 |
+
$counter = 0;
|
337 |
+
}
|
338 |
+
}
|
339 |
+
if (!empty($cacheIdsToRemove)) {
|
340 |
+
$result = $result && $this->_deleteCachesFromDataTable($cacheIdsToRemove);
|
341 |
+
$result = $result && $this->_deleteCachesFromTagsTable($cacheIdsToRemove);
|
342 |
+
}
|
343 |
+
|
344 |
+
return $result;
|
345 |
+
}
|
346 |
+
|
347 |
/**
|
348 |
* Return an array of stored cache ids
|
349 |
*
|
534 |
->where('cache_id=?', $id)
|
535 |
->where('tag IN(?)', $tags);
|
536 |
|
537 |
+
$result = true;
|
538 |
$existingTags = $adapter->fetchCol($select);
|
539 |
$insertTags = array_diff($tags, $existingTags);
|
540 |
if (!empty($insertTags)) {
|
546 |
$bind[] = $tag;
|
547 |
$bind[] = $id;
|
548 |
}
|
549 |
+
$query .= implode(',', $lines);
|
550 |
+
$result = $adapter->query($query, $bind);
|
551 |
}
|
552 |
+
|
553 |
return $result;
|
554 |
}
|
555 |
|
562 |
*/
|
563 |
protected function _cleanByTags($mode, $tags)
|
564 |
{
|
565 |
+
$adapter = $this->_getAdapter();
|
566 |
+
$result = true;
|
567 |
+
$select = $adapter->select()
|
568 |
+
->from($this->_getTagsTable(), 'cache_id');
|
569 |
+
switch ($mode) {
|
570 |
+
case Zend_Cache::CLEANING_MODE_MATCHING_TAG:
|
571 |
+
$select->where('tag IN (?)', $tags)
|
572 |
+
->group('cache_id')
|
573 |
+
->having('COUNT(cache_id) = ' . count($tags));
|
574 |
break;
|
575 |
+
case Zend_Cache::CLEANING_MODE_NOT_MATCHING_TAG:
|
576 |
+
$select->where('tag NOT IN (?)', $tags);
|
577 |
break;
|
578 |
+
case Zend_Cache::CLEANING_MODE_MATCHING_ANY_TAG:
|
579 |
+
$select->where('tag IN (?)', $tags);
|
580 |
break;
|
581 |
+
default:
|
582 |
+
Zend_Cache::throwException('Invalid mode for _cleanByTags() method');
|
583 |
break;
|
584 |
+
}
|
585 |
|
586 |
+
$cacheIdsToRemove = array();
|
587 |
+
$counter = 0;
|
588 |
+
$statement = $adapter->query($select);
|
589 |
+
while ($row = $statement->fetch()) {
|
590 |
+
if (!$result) {
|
591 |
+
break;
|
592 |
+
}
|
593 |
+
$cacheIdsToRemove[] = $row['cache_id'];
|
594 |
+
$counter++;
|
595 |
+
if ($counter > 100) {
|
596 |
+
if ($this->_options['store_data']) {
|
597 |
+
$result = $result && $this->_deleteCachesFromDataTable($cacheIdsToRemove);
|
598 |
}
|
599 |
+
$result = $result && $this->_deleteCachesFromTagsTable($cacheIdsToRemove);
|
600 |
+
$cacheIdsToRemove = array();
|
601 |
+
$counter = 0;
|
602 |
}
|
603 |
+
}
|
604 |
+
if (!empty($cacheIdsToRemove)) {
|
605 |
+
if ($this->_options['store_data']) {
|
606 |
+
$result = $result && $this->_deleteCachesFromDataTable($cacheIdsToRemove);
|
607 |
}
|
608 |
+
$result = $result && $this->_deleteCachesFromTagsTable($cacheIdsToRemove);
|
|
|
|
|
609 |
}
|
610 |
+
return $result;
|
611 |
}
|
612 |
}
|
lib/Varien/Crypt/Mcrypt.php
CHANGED
@@ -41,9 +41,20 @@ class Varien_Crypt_Mcrypt extends Varien_Crypt_Abstract
|
|
41 |
*/
|
42 |
public function __construct(array $data=array())
|
43 |
{
|
|
|
44 |
parent::__construct($data);
|
45 |
}
|
46 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
47 |
/**
|
48 |
* Initialize mcrypt module
|
49 |
*
|
@@ -119,17 +130,6 @@ class Varien_Crypt_Mcrypt extends Varien_Crypt_Abstract
|
|
119 |
return mdecrypt_generic($this->getHandler(), $data);
|
120 |
}
|
121 |
|
122 |
-
/**
|
123 |
-
* Desctruct cipher module
|
124 |
-
*
|
125 |
-
*/
|
126 |
-
public function __destruct()
|
127 |
-
{
|
128 |
-
if ($this->getHandler()) {
|
129 |
-
$this->_reset();
|
130 |
-
}
|
131 |
-
}
|
132 |
-
|
133 |
protected function _reset()
|
134 |
{
|
135 |
mcrypt_generic_deinit($this->getHandler());
|
41 |
*/
|
42 |
public function __construct(array $data=array())
|
43 |
{
|
44 |
+
register_shutdown_function(array($this, 'destruct'));
|
45 |
parent::__construct($data);
|
46 |
}
|
47 |
|
48 |
+
/**
|
49 |
+
* Close mcrypt module on shutdown
|
50 |
+
*/
|
51 |
+
public function destruct()
|
52 |
+
{
|
53 |
+
if ($this->getHandler()) {
|
54 |
+
$this->_reset();
|
55 |
+
}
|
56 |
+
}
|
57 |
+
|
58 |
/**
|
59 |
* Initialize mcrypt module
|
60 |
*
|
130 |
return mdecrypt_generic($this->getHandler(), $data);
|
131 |
}
|
132 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
133 |
protected function _reset()
|
134 |
{
|
135 |
mcrypt_generic_deinit($this->getHandler());
|
lib/Varien/Db/Adapter/Pdo/Mysql.php
CHANGED
@@ -48,6 +48,14 @@ class Varien_Db_Adapter_Pdo_Mysql extends Zend_Db_Adapter_Pdo_Mysql implements V
|
|
48 |
const LENGTH_INDEX_NAME = 64;
|
49 |
const LENGTH_FOREIGN_NAME = 64;
|
50 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
51 |
/**
|
52 |
* MEMORY engine type for MySQL tables
|
53 |
*/
|
@@ -294,6 +302,61 @@ class Varien_Db_Adapter_Pdo_Mysql extends Zend_Db_Adapter_Pdo_Mysql implements V
|
|
294 |
return $this->formatDate($datetime, true);
|
295 |
}
|
296 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
297 |
/**
|
298 |
* Creates a PDO object and connects to the database.
|
299 |
*
|
@@ -309,11 +372,24 @@ class Varien_Db_Adapter_Pdo_Mysql extends Zend_Db_Adapter_Pdo_Mysql implements V
|
|
309 |
throw new Zend_Db_Adapter_Exception('pdo_mysql extension is not installed');
|
310 |
}
|
311 |
|
312 |
-
|
313 |
-
|
314 |
-
|
315 |
-
|
316 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
317 |
}
|
318 |
|
319 |
$this->_debugTimer();
|
@@ -1560,6 +1636,23 @@ class Varien_Db_Adapter_Pdo_Mysql extends Zend_Db_Adapter_Pdo_Mysql implements V
|
|
1560 |
return $this;
|
1561 |
}
|
1562 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1563 |
/**
|
1564 |
* Returns the column descriptions for a table.
|
1565 |
*
|
@@ -1593,7 +1686,13 @@ class Varien_Db_Adapter_Pdo_Mysql extends Zend_Db_Adapter_Pdo_Mysql implements V
|
|
1593 |
$cacheKey = $this->_getTableName($tableName, $schemaName);
|
1594 |
$ddl = $this->loadDdlCache($cacheKey, self::DDL_DESCRIBE);
|
1595 |
if ($ddl === false) {
|
1596 |
-
$ddl =
|
|
|
|
|
|
|
|
|
|
|
|
|
1597 |
/**
|
1598 |
* Remove bug in some MySQL versions, when int-column without default value is described as:
|
1599 |
* having default empty string value
|
@@ -1786,6 +1885,9 @@ class Varien_Db_Adapter_Pdo_Mysql extends Zend_Db_Adapter_Pdo_Mysql implements V
|
|
1786 |
case 'decimal':
|
1787 |
case 'numeric':
|
1788 |
return Varien_Db_Ddl_Table::TYPE_DECIMAL;
|
|
|
|
|
|
|
1789 |
}
|
1790 |
}
|
1791 |
|
48 |
const LENGTH_INDEX_NAME = 64;
|
49 |
const LENGTH_FOREIGN_NAME = 64;
|
50 |
|
51 |
+
/**
|
52 |
+
* Those constants are defining the possible address types
|
53 |
+
*/
|
54 |
+
const ADDRESS_TYPE_HOSTNAME = 'hostname';
|
55 |
+
const ADDRESS_TYPE_UNIX_SOCKET = 'unix_socket';
|
56 |
+
const ADDRESS_TYPE_IPV4_ADDRESS = 'ipv4';
|
57 |
+
const ADDRESS_TYPE_IPV6_ADDRESS = 'ipv6';
|
58 |
+
|
59 |
/**
|
60 |
* MEMORY engine type for MySQL tables
|
61 |
*/
|
302 |
return $this->formatDate($datetime, true);
|
303 |
}
|
304 |
|
305 |
+
/**
|
306 |
+
* Parse a source hostname and generate a host info
|
307 |
+
* @param $hostName
|
308 |
+
*
|
309 |
+
* @return Varien_Object
|
310 |
+
*/
|
311 |
+
protected function _getHostInfo($hostName)
|
312 |
+
{
|
313 |
+
$hostInfo = new Varien_Object();
|
314 |
+
$matches = array();
|
315 |
+
if (strpos($hostName, '/') !== false) {
|
316 |
+
$hostInfo->setAddressType(self::ADDRESS_TYPE_UNIX_SOCKET)
|
317 |
+
->setUnixSocket($hostName);
|
318 |
+
} elseif (
|
319 |
+
preg_match(
|
320 |
+
'/^\[(([0-9a-f]{1,4})?(:([0-9a-f]{1,4})?){1,}:([0-9a-f]{1,4}))(%[0-9a-z]+)?\](:([0-9]+))?$/i',
|
321 |
+
$hostName,
|
322 |
+
$matches
|
323 |
+
)
|
324 |
+
) {
|
325 |
+
$hostName = isset($matches[1]) ? $matches[1] : null;
|
326 |
+
!is_null($hostName) && isset($matches[6]) && ($hostName .= $matches[6]);
|
327 |
+
$hostInfo->setAddressType(self::ADDRESS_TYPE_IPV6_ADDRESS)
|
328 |
+
->setHostName($hostName)
|
329 |
+
->setPort(isset($matches[8]) ? $matches[8] : null);
|
330 |
+
} elseif (
|
331 |
+
preg_match(
|
332 |
+
'/^(([0-9a-f]{1,4})?(:([0-9a-f]{1,4})?){1,}:([0-9a-f]{1,4}))(%[0-9a-z]+)?$/i',
|
333 |
+
$hostName,
|
334 |
+
$matches
|
335 |
+
)
|
336 |
+
) {
|
337 |
+
$hostName = isset($matches[1]) ? $matches[1] : null;
|
338 |
+
!is_null($hostName) && isset($matches[6]) && ($hostName .= $matches[6]);
|
339 |
+
$hostInfo->setAddressType(self::ADDRESS_TYPE_IPV6_ADDRESS)
|
340 |
+
->setHostName($hostName);
|
341 |
+
} elseif (strpos($hostName, ':') !== false) {
|
342 |
+
list($hostAddress, $hostPort) = explode(':', $hostName);
|
343 |
+
$hostInfo->setAddressType(
|
344 |
+
filter_var($hostAddress, FILTER_VALIDATE_IP, FILTER_FLAG_IPV4)
|
345 |
+
? self::ADDRESS_TYPE_IPV4_ADDRESS
|
346 |
+
: self::ADDRESS_TYPE_HOSTNAME
|
347 |
+
)->setHostName($hostAddress)
|
348 |
+
->setPort($hostPort);
|
349 |
+
} else {
|
350 |
+
$hostInfo->setAddressType(
|
351 |
+
filter_var($hostName, FILTER_VALIDATE_IP, FILTER_FLAG_IPV4)
|
352 |
+
? self::ADDRESS_TYPE_IPV4_ADDRESS
|
353 |
+
: self::ADDRESS_TYPE_HOSTNAME
|
354 |
+
)->setHostName($hostName);
|
355 |
+
}
|
356 |
+
|
357 |
+
return $hostInfo;
|
358 |
+
}
|
359 |
+
|
360 |
/**
|
361 |
* Creates a PDO object and connects to the database.
|
362 |
*
|
372 |
throw new Zend_Db_Adapter_Exception('pdo_mysql extension is not installed');
|
373 |
}
|
374 |
|
375 |
+
|
376 |
+
$hostInfo = $this->_getHostInfo($this->_config['host']);
|
377 |
+
|
378 |
+
switch ($hostInfo->getAddressType()) {
|
379 |
+
case self::ADDRESS_TYPE_UNIX_SOCKET:
|
380 |
+
$this->_config['unix_socket'] = $hostInfo->getUnixSocket();
|
381 |
+
unset($this->_config['host']);
|
382 |
+
break;
|
383 |
+
case self::ADDRESS_TYPE_IPV6_ADDRESS: // break intentionally omitted
|
384 |
+
case self::ADDRESS_TYPE_IPV4_ADDRESS: // break intentionally omitted
|
385 |
+
case self::ADDRESS_TYPE_HOSTNAME:
|
386 |
+
$this->_config['host'] = $hostInfo->getHostName();
|
387 |
+
if ($hostInfo->getPort()) {
|
388 |
+
$this->_config['port'] = $hostInfo->getPort();
|
389 |
+
}
|
390 |
+
break;
|
391 |
+
default:
|
392 |
+
break;
|
393 |
}
|
394 |
|
395 |
$this->_debugTimer();
|
1636 |
return $this;
|
1637 |
}
|
1638 |
|
1639 |
+
/**
|
1640 |
+
* Decorate a table info by detecting and parsing the binary/varbinary fields
|
1641 |
+
* @param $tableColumnInfo
|
1642 |
+
*
|
1643 |
+
* @return mixed
|
1644 |
+
*/
|
1645 |
+
public function decorateTableInfo($tableColumnInfo)
|
1646 |
+
{
|
1647 |
+
$matches = array();
|
1648 |
+
if (preg_match('/^((?:var)?binary)\((\d+)\)/', $tableColumnInfo['DATA_TYPE'], $matches)) {
|
1649 |
+
list ($fieldFullDescription, $fieldType, $fieldLength) = $matches;
|
1650 |
+
$tableColumnInfo['DATA_TYPE'] = $fieldType;
|
1651 |
+
$tableColumnInfo['LENGTH'] = $fieldLength;
|
1652 |
+
}
|
1653 |
+
return $tableColumnInfo;
|
1654 |
+
}
|
1655 |
+
|
1656 |
/**
|
1657 |
* Returns the column descriptions for a table.
|
1658 |
*
|
1686 |
$cacheKey = $this->_getTableName($tableName, $schemaName);
|
1687 |
$ddl = $this->loadDdlCache($cacheKey, self::DDL_DESCRIBE);
|
1688 |
if ($ddl === false) {
|
1689 |
+
$ddl = array_map(
|
1690 |
+
array(
|
1691 |
+
$this,
|
1692 |
+
'decorateTableInfo'
|
1693 |
+
),
|
1694 |
+
parent::describeTable($tableName, $schemaName)
|
1695 |
+
);
|
1696 |
/**
|
1697 |
* Remove bug in some MySQL versions, when int-column without default value is described as:
|
1698 |
* having default empty string value
|
1885 |
case 'decimal':
|
1886 |
case 'numeric':
|
1887 |
return Varien_Db_Ddl_Table::TYPE_DECIMAL;
|
1888 |
+
case 'varbinary':
|
1889 |
+
return Varien_Db_Ddl_Table::TYPE_VARBINARY;
|
1890 |
+
break;
|
1891 |
}
|
1892 |
}
|
1893 |
|
lib/Varien/File/Uploader/Image.php
CHANGED
@@ -37,9 +37,18 @@ class Varien_File_Uploader_Image extends Varien_File_Uploader
|
|
37 |
|
38 |
function __construct($file=null)
|
39 |
{
|
|
|
40 |
$this->newUploader($file);
|
41 |
}
|
42 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
43 |
/**
|
44 |
* Resizes an image
|
45 |
* Set parameters to the wanted (or maximum/minimum) width for the processed image, in pixels
|
@@ -148,7 +157,7 @@ class Varien_File_Uploader_Image extends Varien_File_Uploader
|
|
148 |
* $absoluteY sets the twatermark absolute Y position within the image
|
149 |
*
|
150 |
* Value is in pixels, representing the distance between the left of the image and the watermark
|
151 |
-
* If a negative value is used, it will represent the distance between the right of the image and the watermark
|
152 |
*
|
153 |
*/
|
154 |
public function addWatermark($fileName=null, $position="BL", $absoluteX=null, $absoluteY=null)
|
@@ -168,11 +177,11 @@ class Varien_File_Uploader_Image extends Varien_File_Uploader
|
|
168 |
*
|
169 |
* Value is an integer in pixels, or a string which format can be in pixels or percentage.
|
170 |
* For instance, values can be : 40, '40', '40px' or '40%'
|
171 |
-
*
|
172 |
* $space sets the space between the source image and its relection
|
173 |
*
|
174 |
* Value is an integer in pixels, which can be negative
|
175 |
-
*
|
176 |
* $color sets the color of the reflection background.
|
177 |
*
|
178 |
* Value is an hexadecimal color, such as #FFFFFF
|
@@ -180,14 +189,14 @@ class Varien_File_Uploader_Image extends Varien_File_Uploader
|
|
180 |
* $opacity sets the initial opacity of the reflection
|
181 |
*
|
182 |
* Value is an integer between 0 (no opacity) and 100 (full opacity).
|
183 |
-
*
|
184 |
*/
|
185 |
public function addReflection($height="10%", $space=0, $color="#FFFFFF", $opacity=60)
|
186 |
{
|
187 |
if( intval($height) == 0 ) {
|
188 |
return;
|
189 |
}
|
190 |
-
|
191 |
$this->uploader->image_reflection_height = $height;
|
192 |
$this->uploader->image_reflection_space = $space;
|
193 |
$this->uploader->image_reflection_color = $color;
|
@@ -353,13 +362,8 @@ class Varien_File_Uploader_Image extends Varien_File_Uploader
|
|
353 |
{
|
354 |
$this->uploader->image_background_color = $color;
|
355 |
}
|
356 |
-
|
357 |
-
function __destruct()
|
358 |
-
{
|
359 |
-
$this->uploader->Clean();
|
360 |
-
}
|
361 |
}
|
362 |
-
|
363 |
// ft:php
|
364 |
// fileformat:unix
|
365 |
// tabstop:4
|
37 |
|
38 |
function __construct($file=null)
|
39 |
{
|
40 |
+
register_shutdown_function(array($this, 'destruct'));
|
41 |
$this->newUploader($file);
|
42 |
}
|
43 |
|
44 |
+
/**
|
45 |
+
* Uploader clean on shutdown
|
46 |
+
*/
|
47 |
+
public function destruct()
|
48 |
+
{
|
49 |
+
$this->uploader->Clean();
|
50 |
+
}
|
51 |
+
|
52 |
/**
|
53 |
* Resizes an image
|
54 |
* Set parameters to the wanted (or maximum/minimum) width for the processed image, in pixels
|
157 |
* $absoluteY sets the twatermark absolute Y position within the image
|
158 |
*
|
159 |
* Value is in pixels, representing the distance between the left of the image and the watermark
|
160 |
+
* If a negative value is used, it will represent the distance between the right of the image and the watermark
|
161 |
*
|
162 |
*/
|
163 |
public function addWatermark($fileName=null, $position="BL", $absoluteX=null, $absoluteY=null)
|
177 |
*
|
178 |
* Value is an integer in pixels, or a string which format can be in pixels or percentage.
|
179 |
* For instance, values can be : 40, '40', '40px' or '40%'
|
180 |
+
*
|
181 |
* $space sets the space between the source image and its relection
|
182 |
*
|
183 |
* Value is an integer in pixels, which can be negative
|
184 |
+
*
|
185 |
* $color sets the color of the reflection background.
|
186 |
*
|
187 |
* Value is an hexadecimal color, such as #FFFFFF
|
189 |
* $opacity sets the initial opacity of the reflection
|
190 |
*
|
191 |
* Value is an integer between 0 (no opacity) and 100 (full opacity).
|
192 |
+
*
|
193 |
*/
|
194 |
public function addReflection($height="10%", $space=0, $color="#FFFFFF", $opacity=60)
|
195 |
{
|
196 |
if( intval($height) == 0 ) {
|
197 |
return;
|
198 |
}
|
199 |
+
|
200 |
$this->uploader->image_reflection_height = $height;
|
201 |
$this->uploader->image_reflection_space = $space;
|
202 |
$this->uploader->image_reflection_color = $color;
|
362 |
{
|
363 |
$this->uploader->image_background_color = $color;
|
364 |
}
|
|
|
|
|
|
|
|
|
|
|
365 |
}
|
366 |
+
|
367 |
// ft:php
|
368 |
// fileformat:unix
|
369 |
// tabstop:4
|
lib/Varien/Filter/Template/Simple.php
CHANGED
@@ -24,12 +24,32 @@
|
|
24 |
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
25 |
*/
|
26 |
|
27 |
-
|
|
|
|
|
28 |
class Varien_Filter_Template_Simple extends Varien_Object implements Zend_Filter_Interface
|
29 |
{
|
|
|
|
|
|
|
|
|
|
|
30 |
protected $_startTag = '{{';
|
|
|
|
|
|
|
|
|
|
|
|
|
31 |
protected $_endTag = '}}';
|
32 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
33 |
public function setTags($start, $end)
|
34 |
{
|
35 |
$this->_startTag = $start;
|
@@ -37,8 +57,30 @@ class Varien_Filter_Template_Simple extends Varien_Object implements Zend_Filter
|
|
37 |
return $this;
|
38 |
}
|
39 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
40 |
public function filter($value)
|
41 |
{
|
42 |
-
return
|
|
|
|
|
|
|
|
|
43 |
}
|
44 |
}
|
|
24 |
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
25 |
*/
|
26 |
|
27 |
+
/**
|
28 |
+
* Class Varien_Filter_Template_Simple
|
29 |
+
*/
|
30 |
class Varien_Filter_Template_Simple extends Varien_Object implements Zend_Filter_Interface
|
31 |
{
|
32 |
+
/**
|
33 |
+
* Start tag for variable in template
|
34 |
+
*
|
35 |
+
* @var string
|
36 |
+
*/
|
37 |
protected $_startTag = '{{';
|
38 |
+
|
39 |
+
/**
|
40 |
+
* End tag for variable in template
|
41 |
+
*
|
42 |
+
* @var string
|
43 |
+
*/
|
44 |
protected $_endTag = '}}';
|
45 |
|
46 |
+
/**
|
47 |
+
* Define start tag and end tag
|
48 |
+
*
|
49 |
+
* @param string $start
|
50 |
+
* @param string $end
|
51 |
+
* @return Varien_Filter_Template_Simple
|
52 |
+
*/
|
53 |
public function setTags($start, $end)
|
54 |
{
|
55 |
$this->_startTag = $start;
|
57 |
return $this;
|
58 |
}
|
59 |
|
60 |
+
/**
|
61 |
+
* Return result of getData method for matched variables
|
62 |
+
*
|
63 |
+
* @param array $matches
|
64 |
+
* @return mixed
|
65 |
+
*/
|
66 |
+
protected function _filterDataItem($matches)
|
67 |
+
{
|
68 |
+
return $this->getData($matches[1]);
|
69 |
+
}
|
70 |
+
|
71 |
+
/**
|
72 |
+
* Insert data to template
|
73 |
+
*
|
74 |
+
* @param string $value
|
75 |
+
* @return string
|
76 |
+
*/
|
77 |
public function filter($value)
|
78 |
{
|
79 |
+
return preg_replace_callback(
|
80 |
+
'#' . $this->_startTag . '(.*?)' . $this->_endTag . '#',
|
81 |
+
array($this, '_filterDataItem'),
|
82 |
+
$value
|
83 |
+
);
|
84 |
}
|
85 |
}
|
86 |
+
|
lib/Varien/Image/Adapter/Gd2.php
CHANGED
@@ -43,6 +43,20 @@ class Varien_Image_Adapter_Gd2 extends Varien_Image_Adapter_Abstract
|
|
43 |
*/
|
44 |
protected $_resized = false;
|
45 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
46 |
/**
|
47 |
* Opens image file.
|
48 |
*
|
@@ -68,26 +82,56 @@ class Varien_Image_Adapter_Gd2 extends Varien_Image_Adapter_Abstract
|
|
68 |
protected function _isMemoryLimitReached()
|
69 |
{
|
70 |
$limit = $this->_convertToByte(ini_get('memory_limit'));
|
|
|
|
|
|
|
|
|
|
|
|
|
71 |
$size = getimagesize($this->_fileName);
|
72 |
$requiredMemory = $size[0] * $size[1] * 3;
|
|
|
73 |
return (memory_get_usage(true) + $requiredMemory) > $limit;
|
74 |
}
|
75 |
|
76 |
/**
|
77 |
-
*
|
78 |
-
*
|
|
|
79 |
*
|
80 |
* @param string $memoryValue
|
|
|
|
|
|
|
|
|
81 |
* @return int
|
82 |
*/
|
83 |
protected function _convertToByte($memoryValue)
|
84 |
{
|
85 |
-
|
86 |
-
|
87 |
-
|
88 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
89 |
}
|
90 |
-
|
|
|
|
|
91 |
}
|
92 |
|
93 |
public function save($destination=null, $newName=null)
|
@@ -577,10 +621,6 @@ class Varien_Image_Adapter_Gd2 extends Varien_Image_Adapter_Abstract
|
|
577 |
$this->_imageSrcHeight = imagesy($this->_imageHandler);
|
578 |
}
|
579 |
|
580 |
-
function __destruct()
|
581 |
-
{
|
582 |
-
@imagedestroy($this->_imageHandler);
|
583 |
-
}
|
584 |
|
585 |
/*
|
586 |
* Fixes saving PNG alpha channel
|
43 |
*/
|
44 |
protected $_resized = false;
|
45 |
|
46 |
+
public function __construct()
|
47 |
+
{
|
48 |
+
// Initialize shutdown function
|
49 |
+
register_shutdown_function(array($this, 'destruct'));
|
50 |
+
}
|
51 |
+
|
52 |
+
/**
|
53 |
+
* Destroy object image on shutdown
|
54 |
+
*/
|
55 |
+
public function destruct()
|
56 |
+
{
|
57 |
+
@imagedestroy($this->_imageHandler);
|
58 |
+
}
|
59 |
+
|
60 |
/**
|
61 |
* Opens image file.
|
62 |
*
|
82 |
protected function _isMemoryLimitReached()
|
83 |
{
|
84 |
$limit = $this->_convertToByte(ini_get('memory_limit'));
|
85 |
+
/**
|
86 |
+
* In case if memory limit was converted to 0, treat it as unlimited
|
87 |
+
*/
|
88 |
+
if ($limit === 0) {
|
89 |
+
return false;
|
90 |
+
}
|
91 |
$size = getimagesize($this->_fileName);
|
92 |
$requiredMemory = $size[0] * $size[1] * 3;
|
93 |
+
|
94 |
return (memory_get_usage(true) + $requiredMemory) > $limit;
|
95 |
}
|
96 |
|
97 |
/**
|
98 |
+
* Convert PHP memory limit value into bytes
|
99 |
+
* Notation in value is supported only for PHP
|
100 |
+
* Shorthand byte options are case insensitive
|
101 |
*
|
102 |
* @param string $memoryValue
|
103 |
+
*
|
104 |
+
* @throws Varien_Exception
|
105 |
+
* @see http://php.net/manual/en/faq.using.php#faq.using.shorthandbytes
|
106 |
+
*
|
107 |
* @return int
|
108 |
*/
|
109 |
protected function _convertToByte($memoryValue)
|
110 |
{
|
111 |
+
$memoryValue = trim($memoryValue);
|
112 |
+
if (empty($memoryValue)) {
|
113 |
+
return 0;
|
114 |
+
}
|
115 |
+
if (preg_match('~^([1-9][0-9]*)[\s]*(k|m|g)b?$~i', $memoryValue, $matches)) {
|
116 |
+
$option = strtolower($matches[2]);
|
117 |
+
$memoryValue = $matches[1];
|
118 |
+
switch ($option) {
|
119 |
+
case 'g':
|
120 |
+
$memoryValue *= 1024;
|
121 |
+
// no break
|
122 |
+
case 'm':
|
123 |
+
$memoryValue *= 1024;
|
124 |
+
// no break
|
125 |
+
case 'k':
|
126 |
+
$memoryValue *= 1024;
|
127 |
+
break;
|
128 |
+
default:
|
129 |
+
break;
|
130 |
+
}
|
131 |
}
|
132 |
+
$memoryValue = (int)$memoryValue;
|
133 |
+
|
134 |
+
return $memoryValue > 0 ? $memoryValue : 0;
|
135 |
}
|
136 |
|
137 |
public function save($destination=null, $newName=null)
|
621 |
$this->_imageSrcHeight = imagesy($this->_imageHandler);
|
622 |
}
|
623 |
|
|
|
|
|
|
|
|
|
624 |
|
625 |
/*
|
626 |
* Fixes saving PNG alpha channel
|
lib/Varien/Io/File.php
CHANGED
@@ -99,10 +99,16 @@ class Varien_Io_File extends Varien_Io_Abstract
|
|
99 |
*/
|
100 |
protected $_streamLocked = false;
|
101 |
|
|
|
|
|
|
|
|
|
|
|
|
|
102 |
/**
|
103 |
-
*
|
104 |
*/
|
105 |
-
public function
|
106 |
{
|
107 |
if ($this->_streamHandler) {
|
108 |
$this->streamClose();
|
@@ -226,6 +232,17 @@ class Varien_Io_File extends Varien_Io_Abstract
|
|
226 |
if (!$this->_streamHandler) {
|
227 |
return false;
|
228 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
229 |
return @fputcsv($this->_streamHandler, $row, $delimiter, $enclosure);
|
230 |
}
|
231 |
|
99 |
*/
|
100 |
protected $_streamLocked = false;
|
101 |
|
102 |
+
public function __construct()
|
103 |
+
{
|
104 |
+
// Initialize shutdown function
|
105 |
+
register_shutdown_function(array($this, 'destruct'));
|
106 |
+
}
|
107 |
+
|
108 |
/**
|
109 |
+
* stream close on shutdown
|
110 |
*/
|
111 |
+
public function destruct()
|
112 |
{
|
113 |
if ($this->_streamHandler) {
|
114 |
$this->streamClose();
|
232 |
if (!$this->_streamHandler) {
|
233 |
return false;
|
234 |
}
|
235 |
+
|
236 |
+
/**
|
237 |
+
* Security enchancement for CSV data processing by Excel-like applications.
|
238 |
+
* @see https://bugzilla.mozilla.org/show_bug.cgi?id=1054702
|
239 |
+
*/
|
240 |
+
foreach ($row as $key => $value) {
|
241 |
+
if (substr($value, 0, 1) === '=') {
|
242 |
+
$row[$key] = ' ' . $value;
|
243 |
+
}
|
244 |
+
}
|
245 |
+
|
246 |
return @fputcsv($this->_streamHandler, $row, $delimiter, $enclosure);
|
247 |
}
|
248 |
|
package.xml
CHANGED
@@ -1,18 +1,18 @@
|
|
1 |
<?xml version="1.0"?>
|
2 |
<package>
|
3 |
<name>Lib_Varien</name>
|
4 |
-
<version>1.9.
|
5 |
<stability>stable</stability>
|
6 |
<license uri="http://opensource.org/licenses/osl-3.0.php">OSL v3.0</license>
|
7 |
<channel>community</channel>
|
8 |
<extends/>
|
9 |
<summary>Varien Library</summary>
|
10 |
<description>Varien Library</description>
|
11 |
-
<notes>1.9.
|
12 |
<authors><author><name>Magento Core Team</name><user>core</user><email>core@magentocommerce.com</email></author></authors>
|
13 |
-
<date>2015-
|
14 |
-
<time>
|
15 |
-
<contents><target name="magelib"><dir name="Varien"><file name="Autoload.php" hash="dc766f666b682fe85691c496d2b1ce7c"/><dir name="Cache"><dir name="Backend"><file name="Database.php" hash="ab6f03ab9e8acf55aa30794482694e12"/><file name="Eaccelerator.php" hash="aa8840e2fff1ea84b643931feb7e89a0"/><file name="Memcached.php" hash="a602dda3f1a951ac779ec567b10d022e"/></dir><file name="Core.php" hash="afe76b8b6f0a641e420369a11da19a53"/></dir><dir name="Convert"><dir name="Action"><file name="Abstract.php" hash="b0748e1973155e3358471318dd690f54"/><file name="Interface.php" hash="b872ae40e0fe7a6a293cc9c2f0ecf8fb"/></dir><file name="Action.php" hash="f84e93e12575d66637c719a5ace10048"/><dir name="Adapter"><file name="Abstract.php" hash="c1b5d3898623903decab5b357f3042fb"/><dir name="Db"><file name="Table.php" hash="98fde56f12db1913f48130d3815766c5"/></dir><dir name="Http"><file name="Curl.php" hash="e9862db1732ae6976320e03fb31bbbd4"/></dir><file name="Http.php" hash="e54efc7a0a96aa888fcd186246493376"/><file name="Interface.php" hash="2f274fc1f48fffa9c671e1137be8aa74"/><file name="Io.php" hash="3d6b294c17c0ec1aa008d04a0a4d7241"/><file name="Soap.php" hash="c8562680e671f55ad1bd52aa5458fbe0"/><file name="Std.php" hash="155af022ca5a37f5635a364550af868a"/><dir name="Zend"><file name="Cache.php" hash="ea07c530e19a4007416be5c8d30f0ebe"/><file name="Db.php" hash="ed8c973b6f73239a8827467907c526e5"/></dir></dir><dir name="Container"><file name="Abstract.php" hash="9951bcccf153f812574291802cc3c16b"/><file name="Collection.php" hash="db70f8aa7534eff8fae7294bd8697d03"/><file name="Generic.php" hash="1335a7ba43def19bc79e6d0e9c842f36"/><file name="Interface.php" hash="98dd1b9d1207127e120fe52a0a3b3488"/></dir><file name="Exception.php" hash="002048d6913a53d76e5eab3defb90cac"/><dir name="Mapper"><file name="Abstract.php" hash="db499970eb5428470d8f229ba57aca02"/><file name="Column.php" hash="7e62b7cff2fe33358bb91fa3df41d2e8"/><file name="Interface.php" hash="603d0788e329635024810f928b49fa4f"/></dir><dir name="Parser"><file name="Abstract.php" hash="cc1941daffcd4b9cce0a86ee5d7ab471"/><file name="Csv.php" hash="7d0d9ee5d331615f1b8265501f9be71e"/><file name="Interface.php" hash="a616758d6ddab992ca89d38f00fdc76d"/><file name="Serialize.php" hash="8b41217392591f2c15c44a613e4e9ae9"/><dir name="Xml"><file name="Excel.php" hash="fa2359e440f0b3d70751d23fd299f8d8"/></dir></dir><dir name="Profile"><file name="Abstract.php" hash="3b1b884474c7947b812ed99e5eecf990"/><file name="Collection.php" hash="bdb09b51f16897f5254edc076ffce681"/></dir><file name="Profile.php" hash="96fab155f31ec5ef3e7b4bdf9248b2b8"/><dir name="Validator"><file name="Abstract.php" hash="5ee13d15f5c1d20a69e60f2a5c9d635d"/><file name="Column.php" hash="96de1db93ae007be456f1f56e88a9939"/><file name="Dryrun.php" hash="e43002dc3a8025dfcabf13f0a485965e"/><file name="Interface.php" hash="f54198b10cd39596a831e0e78c56dc11"/></dir></dir><file name="Convert.php" hash="d56a14d6636dd1ee7f6f1a81b384f2f5"/><dir name="Crypt"><file name="Abstract.php" hash="3867789b8516cda284a8f6177adb22d1"/><file name="Mcrypt.php" hash="b0fe1a04187faadb16e71a4877080c71"/></dir><file name="Crypt.php" hash="7372f5e6f7d7b96f0181f13834e56f4b"/><dir name="Data"><dir name="Collection"><file name="Db.php" hash="8b18a93b1f8b43c8e5f333a283fff495"/><file name="Filesystem.php" hash="40661586b77407a71ee1f756e5553adb"/></dir><file name="Collection.php" hash="6d5170bb9dbec7a7ee864dd973e0d500"/><dir name="Form"><file name="Abstract.php" hash="864c5ddad40817e65f8188390c33eb15"/><dir name="Element"><file name="Abstract.php" hash="b484d100f5693cd4e912c9ca93857603"/><file name="Button.php" hash="57ebd4aeb6f96fdf6e08f864a134729d"/><file name="Checkbox.php" hash="0a0e8a35e7f4a71b264747685d00f122"/><file name="Checkboxes.php" hash="ec5ca55d06b8aab1f9e9a224b38a0e94"/><file name="Collection.php" hash="115eeeed84dbcf8f43c6ca92f4339eb7"/><file name="Column.php" hash="541d994eaee258e5ebbc458628ade2c3"/><file name="Date.php" hash="855de0485c028fd315d47b35b0c6a8be"/><file name="Datetime.php" hash="72ed0fdbe0770cc967232aef07c90e80"/><file name="Editor.php" hash="f536ae5cab23ed5dfaba6fffcacee69d"/><file name="Fieldset.php" hash="3c8946dd8ec889719376ab59a346da4f"/><file name="File.php" hash="a95837ceeea1be891a7f55b198585c2b"/><file name="Gallery.php" hash="ba27a76f65df878bf55565ac75de8f17"/><file name="Hidden.php" hash="fd70cf5f1a27d969578de0ffef5f0a38"/><file name="Image.php" hash="1fecc228200ce23a307f4ff95511ee36"/><file name="Imagefile.php" hash="ced6ccd0ee7a48d60887dab8d2f4e5a5"/><file name="Label.php" hash="d1cc044aa76571e90848aa69db749285"/><file name="Link.php" hash="4ac31ec26330bbef008e5917e2cec619"/><file name="Multiline.php" hash="5ad29f476881912bc6d21445133ceafd"/><file name="Multiselect.php" hash="e51e5a49c816b0da1ab61adfa9e11a5e"/><file name="Note.php" hash="b599a56b74f6e851b61d9d529621907c"/><file name="Obscure.php" hash="1ec4d2b87a537698932a60f0a1c26364"/><file name="Password.php" hash="7e78125059c1d8ee405ba946e3779e62"/><file name="Radio.php" hash="14d9ac8df9b00d3061c9c0528dcb8f05"/><file name="Radios.php" hash="142d3afe02f03f40b0b2cff371135d64"/><dir name="Renderer"><file name="Interface.php" hash="1333c6ebb3e531ce1cc62880a76df176"/></dir><file name="Reset.php" hash="cfaa070a01ff533534c93e40cb8a8a50"/><file name="Select.php" hash="4cfded15810a229390ccde56370848bc"/><file name="Submit.php" hash="d873762f62e3acc9a89ee48ba0ea5c04"/><file name="Text.php" hash="4f52cc4fbb36a0fff6ce4df87cf02839"/><file name="Textarea.php" hash="67a4950f867a996bed2b5e1ec6f8f909"/><file name="Time.php" hash="3f3b2f792cbcbfeddea892527e02d4c2"/></dir><dir name="Filter"><file name="Date.php" hash="5e4a78a6346f1bad02568591a8f22ffc"/><file name="Datetime.php" hash="b959e710b5444364e1c289118305fa20"/><file name="Escapehtml.php" hash="9b45defc86b0a40e6b01e815b776c64c"/><file name="Interface.php" hash="7f80d12ed17a0e59e9fda5e597832898"/><file name="Striptags.php" hash="155804951f94a18cf1ce080a31ad231f"/></dir></dir><file name="Form.php" hash="c763be17e07293924af068a9d6f5b2cc"/><dir name="Tree"><file name="Db.php" hash="b3511f3bba2c4cb3b48b5c06b2f61962"/><file name="Dbp.php" hash="52a556c1c672cf1b6edd74f7f8a1c22f"/><dir name="Node"><file name="Collection.php" hash="2eba70122d32e195945d0608546eefb7"/></dir><file name="Node.php" hash="247635d415b01075f976de73477628ca"/></dir><file name="Tree.php" hash="65ad695cdb2d44624e3f8a6d4bded2fc"/></dir><file name="Date.php" hash="cf75993db21737871d847c40cf69eabd"/><dir name="Db"><dir name="Adapter"><file name="Interface.php" hash="20618cca9ec0970359a758a7bb19aa1d"/><file name="Mysqli.php" hash="34bfba6a62779cc52afa45d94e4204b0"/><dir name="Pdo"><file name="Mysql.php" hash="c2b2d1b45a815dbdeac53c14c83a976c"/></dir></dir><dir name="Ddl"><file name="Table.php" hash="4ea54d6f0da26b7b3ebdf53a22bce157"/></dir><file name="Exception.php" hash="459a3ba64822195d1716394b0666c6ef"/><file name="Helper.php" hash="068814d81e6d2c10fb02abfd075f9732"/><file name="Select.php" hash="cae369c5e0ace008e64c4eef0742eec9"/><dir name="Statement"><file name="Parameter.php" hash="3c876a17bbdb2fa8285e3a2c931b29a2"/><dir name="Pdo"><file name="Mysql.php" hash="989ef975be060d75bcfb56b88d8b5dc4"/></dir></dir><dir name="Tree"><file name="Exception.php" hash="d9a2ded99bd0a0f48c30ea373b053d2e"/><dir name="Node"><file name="Exception.php" hash="e0a051b9da1620549cbf001ccd08b46b"/></dir><file name="Node.php" hash="1181ffb30d23bad0abdb2a00760c6b5c"/><dir name="NodeSet"><file name="Exception.php" hash="464e6f22c47148e847a7d70635b03e9d"/></dir><file name="NodeSet.php" hash="5d94f8d55e6a85e9d1843b4b4ab0f523"/></dir><file name="Tree.php" hash="0224ac5093e6e20a894ef8598c642962"/></dir><file name="Debug.php" hash="1fe7210f700b50eefa42d72107d5c77d"/><dir name="Directory"><file name="Collection.php" hash="55fa81e35a94e276dd58b80f616c4b3b"/><file name="Factory.php" hash="fd3cc7bede04563dcf240465be02b114"/><file name="IFactory.php" hash="462a88798efd2980a110f5d5bcd0cf91"/><file name="a.txt" hash="026e450c46ac92ea375302955a4f42fb"/></dir><dir name="Event"><file name="Collection.php" hash="6e3aa26a760229de731e5deb7586271e"/><dir name="Observer"><file name="Collection.php" hash="5b75ddd0cdf40e3c7ebdc6caef6b49fc"/><file name="Cron.php" hash="dbc005bcbf59d24766b22fe0e1ea7ec2"/><file name="Regex.php" hash="e8b73dd83e6a0181a3b902ce670d33f8"/></dir><file name="Observer.php" hash="529a4e7a186686946161acb751d80088"/></dir><file name="Event.php" hash="bde863ce12014af6d26891917313471c"/><file name="Exception.php" hash="80e9a22385477d5410f3493eafcda326"/><dir name="File"><file name="Csv.php" hash="f3879e8a8d0ece43bd1ed82a97f6fa78"/><file name="CsvMulty.php" hash="4370e09d0fea88df8079096fe6c89c2f"/><file name="Object.php" hash="81831a7af12515faf48db2064dd2b700"/><dir name="Transfer"><dir name="Adapter"><file name="Http.php" hash="0f2df4d6d534bfc4fd1ba35cdcabf425"/></dir></dir><dir name="Uploader"><file name="Image.php" hash="e4476d02c53e4b932132f90511eb33eb"/></dir><file name="Uploader.php" hash="29bd46737e32230216c90b3fa7b9d81f"/></dir><dir name="Filter"><dir name="Array"><file name="Grid.php" hash="3a1e7d366046fbb806f4df65b5d43bce"/></dir><file name="Array.php" hash="ee2c63311116db215a17d5c6a6d53ea8"/><file name="Email.php" hash="ef31a8b4a24efef65f233c5cbc469d48"/><file name="Money.php" hash="fcfbf636218ac3b9175d743ab601712d"/><dir name="Object"><file name="Grid.php" hash="b905567ede56769d4af9642ea77361b4"/></dir><file name="Object.php" hash="226c84edc99ad7c95ae89fabb0625ed4"/><file name="Sprintf.php" hash="6c534392c58d387ff09e88bd272d4d11"/><dir name="Template"><file name="Simple.php" hash="224e0e605a0ca3ddcb4d1c04d6de3a4f"/><dir name="Tokenizer"><file name="Abstract.php" hash="1553cf9ad676e024bd50e68998d5c2f3"/><file name="Parameter.php" hash="a71db1a7a12e505409a8eb396b4fac53"/><file name="Variable.php" hash="6db874de901ba51215acc834251ac7d6"/></dir></dir><file name="Template.php" hash="d35924fef8fb2015af97cdf93ce942af"/></dir><dir name="Http"><dir name="Adapter"><file name="Curl.php" hash="967d7ebda9ca4407578663bd56d91e30"/></dir><file name="Client.php" hash="8e8c9badb27cf839870c9cac33256522"/></dir><dir name="Image"><dir name="Adapter"><file name="Abstract.php" hash="95fa6f5dcbfe5e14505f62f32eaac03d"/><file name="Gd2.php" hash="daf9a5a37ab1718d297a9d26be7687f2"/></dir><file name="Adapter.php" hash="6ee7421d63c8ce983b29087be640a3f1"/></dir><file name="Image.php" hash="f22e05f3df7c6daa13daa5ecd4284fa1"/><dir name="Io"><file name="Abstract.php" hash="f452d74122309888e459dec9ce357f6c"/><file name="Exception.php" hash="cdd1b92cc59bac44bb83cac2d270b27f"/><file name="File.php" hash="64d1d903e62b3cb13615a67f9f2ad9b1"/><file name="Ftp.php" hash="4234722492e84b962c1936a4b3fe9467"/><file name="Interface.php" hash="f9fbf2011c2d76bfce45ed2eb11b0fc3"/><file name="Sftp.php" hash="38e78f345ab1699c60209276f36bdce7"/></dir><dir name="Object"><file name="Cache.php" hash="6ee96c531c7ed6abebe6e088f083269e"/><file name="Mapper.php" hash="e01cd2fc8ce04f2301ae5272eb0eb8fe"/></dir><file name="Object.php" hash="a73a915543d26fbb8ec8d5bfad926813"/><dir name="Pear"><file name="Frontend.php" hash="2a364509ecb3509d88b394f2ff8e379c"/><file name="Package.php" hash="00d889cdae532e40bf231a6dc49f43a2"/><file name="Registry.php" hash="20f14ad14bc6e5ff404ef919e9e03ad9"/></dir><file name="Pear.php" hash="989e1140ba8cb691a6eb29ec6ca14e4e"/><file name="Profiler.php" hash="8f0833c09792a44cf4cec3c4ca1ab83e"/><dir name="Simplexml"><dir name="Config"><dir name="Cache"><file name="Abstract.php" hash="2d903ac5990d3adb281ea817f683a2b1"/><file name="File.php" hash="99fe5b7935433870674d6244f4f24996"/></dir></dir><file name="Config.php" hash="59765741a00934da08bb2acfeae3e95d"/><file name="Element.php" hash="3af48d7f8053cc49d7f52b6b00aec648"/></dir></dir></target></contents>
|
16 |
<compatible/>
|
17 |
-
<dependencies><required><php><min>5.2.0</min><max>6.0.0</max></php><package><name>Lib_ZF</name><channel>community</channel><min>1.12.
|
18 |
</package>
|
1 |
<?xml version="1.0"?>
|
2 |
<package>
|
3 |
<name>Lib_Varien</name>
|
4 |
+
<version>1.9.2.0</version>
|
5 |
<stability>stable</stability>
|
6 |
<license uri="http://opensource.org/licenses/osl-3.0.php">OSL v3.0</license>
|
7 |
<channel>community</channel>
|
8 |
<extends/>
|
9 |
<summary>Varien Library</summary>
|
10 |
<description>Varien Library</description>
|
11 |
+
<notes>1.9.2.0</notes>
|
12 |
<authors><author><name>Magento Core Team</name><user>core</user><email>core@magentocommerce.com</email></author></authors>
|
13 |
+
<date>2015-06-26</date>
|
14 |
+
<time>13:48:53</time>
|
15 |
+
<contents><target name="magelib"><dir name="Varien"><file name="Autoload.php" hash="dc766f666b682fe85691c496d2b1ce7c"/><dir name="Cache"><dir name="Backend"><file name="Database.php" hash="20e586bd013bb7cb436e0ac02186e49d"/><file name="Eaccelerator.php" hash="aa8840e2fff1ea84b643931feb7e89a0"/><file name="Memcached.php" hash="a602dda3f1a951ac779ec567b10d022e"/></dir><file name="Core.php" hash="afe76b8b6f0a641e420369a11da19a53"/></dir><dir name="Convert"><dir name="Action"><file name="Abstract.php" hash="b0748e1973155e3358471318dd690f54"/><file name="Interface.php" hash="b872ae40e0fe7a6a293cc9c2f0ecf8fb"/></dir><file name="Action.php" hash="f84e93e12575d66637c719a5ace10048"/><dir name="Adapter"><file name="Abstract.php" hash="c1b5d3898623903decab5b357f3042fb"/><dir name="Db"><file name="Table.php" hash="98fde56f12db1913f48130d3815766c5"/></dir><dir name="Http"><file name="Curl.php" hash="e9862db1732ae6976320e03fb31bbbd4"/></dir><file name="Http.php" hash="e54efc7a0a96aa888fcd186246493376"/><file name="Interface.php" hash="2f274fc1f48fffa9c671e1137be8aa74"/><file name="Io.php" hash="3d6b294c17c0ec1aa008d04a0a4d7241"/><file name="Soap.php" hash="c8562680e671f55ad1bd52aa5458fbe0"/><file name="Std.php" hash="155af022ca5a37f5635a364550af868a"/><dir name="Zend"><file name="Cache.php" hash="ea07c530e19a4007416be5c8d30f0ebe"/><file name="Db.php" hash="ed8c973b6f73239a8827467907c526e5"/></dir></dir><dir name="Container"><file name="Abstract.php" hash="9951bcccf153f812574291802cc3c16b"/><file name="Collection.php" hash="db70f8aa7534eff8fae7294bd8697d03"/><file name="Generic.php" hash="1335a7ba43def19bc79e6d0e9c842f36"/><file name="Interface.php" hash="98dd1b9d1207127e120fe52a0a3b3488"/></dir><file name="Exception.php" hash="002048d6913a53d76e5eab3defb90cac"/><dir name="Mapper"><file name="Abstract.php" hash="db499970eb5428470d8f229ba57aca02"/><file name="Column.php" hash="7e62b7cff2fe33358bb91fa3df41d2e8"/><file name="Interface.php" hash="603d0788e329635024810f928b49fa4f"/></dir><dir name="Parser"><file name="Abstract.php" hash="cc1941daffcd4b9cce0a86ee5d7ab471"/><file name="Csv.php" hash="7d0d9ee5d331615f1b8265501f9be71e"/><file name="Interface.php" hash="a616758d6ddab992ca89d38f00fdc76d"/><file name="Serialize.php" hash="8b41217392591f2c15c44a613e4e9ae9"/><dir name="Xml"><file name="Excel.php" hash="fa2359e440f0b3d70751d23fd299f8d8"/></dir></dir><dir name="Profile"><file name="Abstract.php" hash="3b1b884474c7947b812ed99e5eecf990"/><file name="Collection.php" hash="bdb09b51f16897f5254edc076ffce681"/></dir><file name="Profile.php" hash="96fab155f31ec5ef3e7b4bdf9248b2b8"/><dir name="Validator"><file name="Abstract.php" hash="5ee13d15f5c1d20a69e60f2a5c9d635d"/><file name="Column.php" hash="96de1db93ae007be456f1f56e88a9939"/><file name="Dryrun.php" hash="e43002dc3a8025dfcabf13f0a485965e"/><file name="Interface.php" hash="f54198b10cd39596a831e0e78c56dc11"/></dir></dir><file name="Convert.php" hash="d56a14d6636dd1ee7f6f1a81b384f2f5"/><dir name="Crypt"><file name="Abstract.php" hash="3867789b8516cda284a8f6177adb22d1"/><file name="Mcrypt.php" hash="3022218cb5206a5f95db75a78e7c7527"/></dir><file name="Crypt.php" hash="7372f5e6f7d7b96f0181f13834e56f4b"/><dir name="Data"><dir name="Collection"><file name="Db.php" hash="8b18a93b1f8b43c8e5f333a283fff495"/><file name="Filesystem.php" hash="40661586b77407a71ee1f756e5553adb"/></dir><file name="Collection.php" hash="6d5170bb9dbec7a7ee864dd973e0d500"/><dir name="Form"><file name="Abstract.php" hash="864c5ddad40817e65f8188390c33eb15"/><dir name="Element"><file name="Abstract.php" hash="b484d100f5693cd4e912c9ca93857603"/><file name="Button.php" hash="57ebd4aeb6f96fdf6e08f864a134729d"/><file name="Checkbox.php" hash="0a0e8a35e7f4a71b264747685d00f122"/><file name="Checkboxes.php" hash="ec5ca55d06b8aab1f9e9a224b38a0e94"/><file name="Collection.php" hash="115eeeed84dbcf8f43c6ca92f4339eb7"/><file name="Column.php" hash="541d994eaee258e5ebbc458628ade2c3"/><file name="Date.php" hash="855de0485c028fd315d47b35b0c6a8be"/><file name="Datetime.php" hash="72ed0fdbe0770cc967232aef07c90e80"/><file name="Editor.php" hash="f536ae5cab23ed5dfaba6fffcacee69d"/><file name="Fieldset.php" hash="3c8946dd8ec889719376ab59a346da4f"/><file name="File.php" hash="a95837ceeea1be891a7f55b198585c2b"/><file name="Gallery.php" hash="ba27a76f65df878bf55565ac75de8f17"/><file name="Hidden.php" hash="fd70cf5f1a27d969578de0ffef5f0a38"/><file name="Image.php" hash="1fecc228200ce23a307f4ff95511ee36"/><file name="Imagefile.php" hash="ced6ccd0ee7a48d60887dab8d2f4e5a5"/><file name="Label.php" hash="d1cc044aa76571e90848aa69db749285"/><file name="Link.php" hash="4ac31ec26330bbef008e5917e2cec619"/><file name="Multiline.php" hash="5ad29f476881912bc6d21445133ceafd"/><file name="Multiselect.php" hash="e51e5a49c816b0da1ab61adfa9e11a5e"/><file name="Note.php" hash="b599a56b74f6e851b61d9d529621907c"/><file name="Obscure.php" hash="1ec4d2b87a537698932a60f0a1c26364"/><file name="Password.php" hash="7e78125059c1d8ee405ba946e3779e62"/><file name="Radio.php" hash="14d9ac8df9b00d3061c9c0528dcb8f05"/><file name="Radios.php" hash="142d3afe02f03f40b0b2cff371135d64"/><dir name="Renderer"><file name="Interface.php" hash="1333c6ebb3e531ce1cc62880a76df176"/></dir><file name="Reset.php" hash="cfaa070a01ff533534c93e40cb8a8a50"/><file name="Select.php" hash="4cfded15810a229390ccde56370848bc"/><file name="Submit.php" hash="d873762f62e3acc9a89ee48ba0ea5c04"/><file name="Text.php" hash="4f52cc4fbb36a0fff6ce4df87cf02839"/><file name="Textarea.php" hash="67a4950f867a996bed2b5e1ec6f8f909"/><file name="Time.php" hash="3f3b2f792cbcbfeddea892527e02d4c2"/></dir><dir name="Filter"><file name="Date.php" hash="5e4a78a6346f1bad02568591a8f22ffc"/><file name="Datetime.php" hash="b959e710b5444364e1c289118305fa20"/><file name="Escapehtml.php" hash="9b45defc86b0a40e6b01e815b776c64c"/><file name="Interface.php" hash="7f80d12ed17a0e59e9fda5e597832898"/><file name="Striptags.php" hash="155804951f94a18cf1ce080a31ad231f"/></dir></dir><file name="Form.php" hash="c763be17e07293924af068a9d6f5b2cc"/><dir name="Tree"><file name="Db.php" hash="b3511f3bba2c4cb3b48b5c06b2f61962"/><file name="Dbp.php" hash="52a556c1c672cf1b6edd74f7f8a1c22f"/><dir name="Node"><file name="Collection.php" hash="2eba70122d32e195945d0608546eefb7"/></dir><file name="Node.php" hash="247635d415b01075f976de73477628ca"/></dir><file name="Tree.php" hash="65ad695cdb2d44624e3f8a6d4bded2fc"/></dir><file name="Date.php" hash="cf75993db21737871d847c40cf69eabd"/><dir name="Db"><dir name="Adapter"><file name="Interface.php" hash="20618cca9ec0970359a758a7bb19aa1d"/><file name="Mysqli.php" hash="34bfba6a62779cc52afa45d94e4204b0"/><dir name="Pdo"><file name="Mysql.php" hash="9306a10cb16b5f4fcaa2a18dac0bd31a"/></dir></dir><dir name="Ddl"><file name="Table.php" hash="4ea54d6f0da26b7b3ebdf53a22bce157"/></dir><file name="Exception.php" hash="459a3ba64822195d1716394b0666c6ef"/><file name="Helper.php" hash="068814d81e6d2c10fb02abfd075f9732"/><file name="Select.php" hash="cae369c5e0ace008e64c4eef0742eec9"/><dir name="Statement"><file name="Parameter.php" hash="3c876a17bbdb2fa8285e3a2c931b29a2"/><dir name="Pdo"><file name="Mysql.php" hash="989ef975be060d75bcfb56b88d8b5dc4"/></dir></dir><dir name="Tree"><file name="Exception.php" hash="d9a2ded99bd0a0f48c30ea373b053d2e"/><dir name="Node"><file name="Exception.php" hash="e0a051b9da1620549cbf001ccd08b46b"/></dir><file name="Node.php" hash="1181ffb30d23bad0abdb2a00760c6b5c"/><dir name="NodeSet"><file name="Exception.php" hash="464e6f22c47148e847a7d70635b03e9d"/></dir><file name="NodeSet.php" hash="5d94f8d55e6a85e9d1843b4b4ab0f523"/></dir><file name="Tree.php" hash="0224ac5093e6e20a894ef8598c642962"/></dir><file name="Debug.php" hash="1fe7210f700b50eefa42d72107d5c77d"/><dir name="Directory"><file name="Collection.php" hash="55fa81e35a94e276dd58b80f616c4b3b"/><file name="Factory.php" hash="fd3cc7bede04563dcf240465be02b114"/><file name="IFactory.php" hash="462a88798efd2980a110f5d5bcd0cf91"/><file name="a.txt" hash="026e450c46ac92ea375302955a4f42fb"/></dir><dir name="Event"><file name="Collection.php" hash="6e3aa26a760229de731e5deb7586271e"/><dir name="Observer"><file name="Collection.php" hash="5b75ddd0cdf40e3c7ebdc6caef6b49fc"/><file name="Cron.php" hash="dbc005bcbf59d24766b22fe0e1ea7ec2"/><file name="Regex.php" hash="e8b73dd83e6a0181a3b902ce670d33f8"/></dir><file name="Observer.php" hash="529a4e7a186686946161acb751d80088"/></dir><file name="Event.php" hash="bde863ce12014af6d26891917313471c"/><file name="Exception.php" hash="80e9a22385477d5410f3493eafcda326"/><dir name="File"><file name="Csv.php" hash="f3879e8a8d0ece43bd1ed82a97f6fa78"/><file name="CsvMulty.php" hash="4370e09d0fea88df8079096fe6c89c2f"/><file name="Object.php" hash="81831a7af12515faf48db2064dd2b700"/><dir name="Transfer"><dir name="Adapter"><file name="Http.php" hash="0f2df4d6d534bfc4fd1ba35cdcabf425"/></dir></dir><dir name="Uploader"><file name="Image.php" hash="e1a33ce7c7f42c92ff7a1afb4dc85440"/></dir><file name="Uploader.php" hash="29bd46737e32230216c90b3fa7b9d81f"/></dir><dir name="Filter"><dir name="Array"><file name="Grid.php" hash="3a1e7d366046fbb806f4df65b5d43bce"/></dir><file name="Array.php" hash="ee2c63311116db215a17d5c6a6d53ea8"/><file name="Email.php" hash="ef31a8b4a24efef65f233c5cbc469d48"/><file name="Money.php" hash="fcfbf636218ac3b9175d743ab601712d"/><dir name="Object"><file name="Grid.php" hash="b905567ede56769d4af9642ea77361b4"/></dir><file name="Object.php" hash="226c84edc99ad7c95ae89fabb0625ed4"/><file name="Sprintf.php" hash="6c534392c58d387ff09e88bd272d4d11"/><dir name="Template"><file name="Simple.php" hash="57d6179c99972f24b272bad6987a2969"/><dir name="Tokenizer"><file name="Abstract.php" hash="1553cf9ad676e024bd50e68998d5c2f3"/><file name="Parameter.php" hash="a71db1a7a12e505409a8eb396b4fac53"/><file name="Variable.php" hash="6db874de901ba51215acc834251ac7d6"/></dir></dir><file name="Template.php" hash="d35924fef8fb2015af97cdf93ce942af"/></dir><dir name="Http"><dir name="Adapter"><file name="Curl.php" hash="967d7ebda9ca4407578663bd56d91e30"/></dir><file name="Client.php" hash="8e8c9badb27cf839870c9cac33256522"/></dir><dir name="Image"><dir name="Adapter"><file name="Abstract.php" hash="95fa6f5dcbfe5e14505f62f32eaac03d"/><file name="Gd2.php" hash="1d4e06ea2d76031e5083ff766d06d98a"/></dir><file name="Adapter.php" hash="6ee7421d63c8ce983b29087be640a3f1"/></dir><file name="Image.php" hash="f22e05f3df7c6daa13daa5ecd4284fa1"/><dir name="Io"><file name="Abstract.php" hash="f452d74122309888e459dec9ce357f6c"/><file name="Exception.php" hash="cdd1b92cc59bac44bb83cac2d270b27f"/><file name="File.php" hash="73ca38dbf70b9142a84a68d4cb604366"/><file name="Ftp.php" hash="4234722492e84b962c1936a4b3fe9467"/><file name="Interface.php" hash="f9fbf2011c2d76bfce45ed2eb11b0fc3"/><file name="Sftp.php" hash="38e78f345ab1699c60209276f36bdce7"/></dir><dir name="Object"><file name="Cache.php" hash="6ee96c531c7ed6abebe6e088f083269e"/><file name="Mapper.php" hash="e01cd2fc8ce04f2301ae5272eb0eb8fe"/></dir><file name="Object.php" hash="a73a915543d26fbb8ec8d5bfad926813"/><dir name="Pear"><file name="Frontend.php" hash="2a364509ecb3509d88b394f2ff8e379c"/><file name="Package.php" hash="00d889cdae532e40bf231a6dc49f43a2"/><file name="Registry.php" hash="20f14ad14bc6e5ff404ef919e9e03ad9"/></dir><file name="Pear.php" hash="989e1140ba8cb691a6eb29ec6ca14e4e"/><file name="Profiler.php" hash="8f0833c09792a44cf4cec3c4ca1ab83e"/><dir name="Simplexml"><dir name="Config"><dir name="Cache"><file name="Abstract.php" hash="2d903ac5990d3adb281ea817f683a2b1"/><file name="File.php" hash="99fe5b7935433870674d6244f4f24996"/></dir></dir><file name="Config.php" hash="59765741a00934da08bb2acfeae3e95d"/><file name="Element.php" hash="3af48d7f8053cc49d7f52b6b00aec648"/></dir></dir></target></contents>
|
16 |
<compatible/>
|
17 |
+
<dependencies><required><php><min>5.2.0</min><max>6.0.0</max></php><package><name>Lib_ZF</name><channel>community</channel><min>1.12.10.0</min><max>1.12.10.0</max></package><extension><name>PDO</name><min></min><max></max></extension><extension><name>SPL</name><min></min><max></max></extension><extension><name>curl</name><min></min><max></max></extension><extension><name>SimpleXML</name><min></min><max></max></extension><extension><name>dom</name><min></min><max></max></extension><extension><name>gd</name><min></min><max></max></extension><extension><name>iconv</name><min></min><max></max></extension><extension><name>pdo_mysql</name><min></min><max></max></extension><extension><name>mcrypt</name><min></min><max></max></extension><extension><name>pcre</name><min></min><max></max></extension><extension><name>Reflection</name><min></min><max></max></extension><extension><name>session</name><min></min><max></max></extension></required></dependencies>
|
18 |
</package>
|