Version Notes
1.7.0.0
Download this release
Release Info
| Developer | Magento Core Team |
| Extension | Lib_Varien |
| Version | 1.7.0.0 |
| Comparing to | |
| See all releases | |
Code changes from version 1.6.1.0 to 1.7.0.0
- lib/Varien/Autoload.php +2 -2
- lib/Varien/Convert/Adapter/Http/Curl.php +2 -0
- lib/Varien/Convert/Parser/Xml/Excel.php +3 -1
- lib/Varien/Data/Collection.php +15 -3
- lib/Varien/Data/Collection/Db.php +78 -31
- lib/Varien/Data/Collection/Filesystem.php +1 -1
- lib/Varien/Data/Form/Abstract.php +9 -6
- lib/Varien/Data/Form/Element/Abstract.php +10 -5
- lib/Varien/Data/Form/Element/Collection.php +4 -3
- lib/Varien/Data/Form/Element/Editor.php +1 -1
- lib/Varien/Data/Form/Element/Image.php +21 -16
- lib/Varien/Data/Form/Element/Label.php +17 -8
- lib/Varien/Date.php +1 -1
- lib/Varien/Db/Adapter/Interface.php +30 -0
- lib/Varien/Db/Adapter/Pdo/Mysql.php +80 -18
- lib/Varien/Db/Select.php +8 -8
- lib/Varien/Directory/Collection.php +2 -2
- lib/Varien/Directory/Factory.php +2 -2
- lib/Varien/Directory/IFactory.php +1 -1
- lib/Varien/File/Object.php +6 -9
- lib/Varien/File/Uploader.php +14 -8
- lib/Varien/Http/Adapter/Curl.php +97 -32
- lib/Varien/Pear.php +1 -1
- lib/Varien/Pear/Frontend.php +1 -1
- lib/Varien/Pear/Package.php +2 -2
- lib/Varien/Pear/Registry.php +2 -2
- package.xml +5 -5
lib/Varien/Autoload.php
CHANGED
|
@@ -84,7 +84,7 @@ class Varien_Autoload
|
|
| 84 |
$this->_arrLoadedClasses[self::$_scope][] = $class;
|
| 85 |
}
|
| 86 |
if ($this->_isIncludePathDefined) {
|
| 87 |
-
$classFile = $class;
|
| 88 |
} else {
|
| 89 |
$classFile = str_replace(' ', DIRECTORY_SEPARATOR, ucwords(str_replace('_', ' ', $class)));
|
| 90 |
}
|
|
@@ -104,7 +104,7 @@ class Varien_Autoload
|
|
| 104 |
{
|
| 105 |
self::$_scope = $code;
|
| 106 |
if (defined('COMPILER_INCLUDE_PATH')) {
|
| 107 |
-
@
|
| 108 |
}
|
| 109 |
}
|
| 110 |
|
| 84 |
$this->_arrLoadedClasses[self::$_scope][] = $class;
|
| 85 |
}
|
| 86 |
if ($this->_isIncludePathDefined) {
|
| 87 |
+
$classFile = COMPILER_INCLUDE_PATH . DIRECTORY_SEPARATOR . $class;
|
| 88 |
} else {
|
| 89 |
$classFile = str_replace(' ', DIRECTORY_SEPARATOR, ucwords(str_replace('_', ' ', $class)));
|
| 90 |
}
|
| 104 |
{
|
| 105 |
self::$_scope = $code;
|
| 106 |
if (defined('COMPILER_INCLUDE_PATH')) {
|
| 107 |
+
@include COMPILER_INCLUDE_PATH . DIRECTORY_SEPARATOR . self::SCOPE_FILE_PREFIX.$code.'.php';
|
| 108 |
}
|
| 109 |
}
|
| 110 |
|
lib/Varien/Convert/Adapter/Http/Curl.php
CHANGED
|
@@ -54,6 +54,8 @@ class Varien_Convert_Adapter_Http_Curl extends Varien_Convert_Adapter_Abstract
|
|
| 54 |
// read the remote file
|
| 55 |
$data = $http->read();
|
| 56 |
|
|
|
|
|
|
|
| 57 |
$data = preg_split('/^\r?$/m', $data, 2);
|
| 58 |
$data = trim($data[1]);
|
| 59 |
|
| 54 |
// read the remote file
|
| 55 |
$data = $http->read();
|
| 56 |
|
| 57 |
+
$http->close();
|
| 58 |
+
|
| 59 |
$data = preg_split('/^\r?$/m', $data, 2);
|
| 60 |
$data = trim($data[1]);
|
| 61 |
|
lib/Varien/Convert/Parser/Xml/Excel.php
CHANGED
|
@@ -214,6 +214,8 @@ class Varien_Convert_Parser_Xml_Excel extends Varien_Convert_Parser_Abstract
|
|
| 214 |
$dataType = "String";
|
| 215 |
if (is_numeric($value)) {
|
| 216 |
$dataType = "Number";
|
|
|
|
|
|
|
| 217 |
}
|
| 218 |
$value = str_replace("\r\n", ' ', $value);
|
| 219 |
$value = str_replace("\r", ' ', $value);
|
|
@@ -225,4 +227,4 @@ class Varien_Convert_Parser_Xml_Excel extends Varien_Convert_Parser_Abstract
|
|
| 225 |
|
| 226 |
return join('', $xmlData);
|
| 227 |
}
|
| 228 |
-
}
|
| 214 |
$dataType = "String";
|
| 215 |
if (is_numeric($value)) {
|
| 216 |
$dataType = "Number";
|
| 217 |
+
// is_numeric(' 96000') returns true, but Excel argues about space
|
| 218 |
+
$value = trim($value);
|
| 219 |
}
|
| 220 |
$value = str_replace("\r\n", ' ', $value);
|
| 221 |
$value = str_replace("\r", ' ', $value);
|
| 227 |
|
| 228 |
return join('', $xmlData);
|
| 229 |
}
|
| 230 |
+
}
|
lib/Varien/Data/Collection.php
CHANGED
|
@@ -145,7 +145,7 @@ class Varien_Data_Collection implements IteratorAggregate, Countable
|
|
| 145 |
* - 'foo' -- get the first filter with field name 'foo'
|
| 146 |
* - array('foo') -- get all filters with field name 'foo'
|
| 147 |
* - array('foo', 'bar') -- get all filters with field name 'foo' or 'bar'
|
| 148 |
-
* - array() -- get all filters
|
| 149 |
*
|
| 150 |
* @param string|array $field
|
| 151 |
* @return Varien_Object|array|null
|
|
@@ -164,7 +164,7 @@ class Varien_Data_Collection implements IteratorAggregate, Countable
|
|
| 164 |
$result[] = $filter;
|
| 165 |
}
|
| 166 |
}
|
| 167 |
-
return $result;
|
| 168 |
}
|
| 169 |
|
| 170 |
// get a first filter by specified name
|
|
@@ -374,11 +374,23 @@ class Varien_Data_Collection implements IteratorAggregate, Countable
|
|
| 374 |
}
|
| 375 |
$this->_items[$itemId] = $item;
|
| 376 |
} else {
|
| 377 |
-
$this->
|
| 378 |
}
|
| 379 |
return $this;
|
| 380 |
}
|
| 381 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 382 |
/**
|
| 383 |
* Retrieve item id
|
| 384 |
*
|
| 145 |
* - 'foo' -- get the first filter with field name 'foo'
|
| 146 |
* - array('foo') -- get all filters with field name 'foo'
|
| 147 |
* - array('foo', 'bar') -- get all filters with field name 'foo' or 'bar'
|
| 148 |
+
* - array() -- get all filters
|
| 149 |
*
|
| 150 |
* @param string|array $field
|
| 151 |
* @return Varien_Object|array|null
|
| 164 |
$result[] = $filter;
|
| 165 |
}
|
| 166 |
}
|
| 167 |
+
return $result;
|
| 168 |
}
|
| 169 |
|
| 170 |
// get a first filter by specified name
|
| 374 |
}
|
| 375 |
$this->_items[$itemId] = $item;
|
| 376 |
} else {
|
| 377 |
+
$this->_addItem($item);
|
| 378 |
}
|
| 379 |
return $this;
|
| 380 |
}
|
| 381 |
|
| 382 |
+
/**
|
| 383 |
+
* Add item that has no id to collection
|
| 384 |
+
*
|
| 385 |
+
* @param Varien_Object $item
|
| 386 |
+
* @return Varien_Data_Collection
|
| 387 |
+
*/
|
| 388 |
+
protected function _addItem($item)
|
| 389 |
+
{
|
| 390 |
+
$this->_items[] = $item;
|
| 391 |
+
return $this;
|
| 392 |
+
}
|
| 393 |
+
|
| 394 |
/**
|
| 395 |
* Retrieve item id
|
| 396 |
*
|
lib/Varien/Data/Collection/Db.php
CHANGED
|
@@ -93,6 +93,13 @@ class Varien_Data_Collection_Db extends Varien_Data_Collection
|
|
| 93 |
*/
|
| 94 |
protected $_fetchStmt = null;
|
| 95 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 96 |
public function __construct($conn=null)
|
| 97 |
{
|
| 98 |
parent::__construct();
|
|
@@ -182,6 +189,7 @@ class Varien_Data_Collection_Db extends Varien_Data_Collection
|
|
| 182 |
|
| 183 |
$this->_conn = $conn;
|
| 184 |
$this->_select = $this->_conn->select();
|
|
|
|
| 185 |
return $this;
|
| 186 |
}
|
| 187 |
|
|
@@ -299,20 +307,19 @@ class Varien_Data_Collection_Db extends Varien_Data_Collection
|
|
| 299 |
*/
|
| 300 |
private function _setOrder($field, $direction, $unshift = false)
|
| 301 |
{
|
|
|
|
| 302 |
$field = (string)$this->_getMappedField($field);
|
| 303 |
$direction = (strtoupper($direction) == self::SORT_ORDER_ASC) ? self::SORT_ORDER_ASC : self::SORT_ORDER_DESC;
|
| 304 |
-
|
|
|
|
| 305 |
if ($unshift) {
|
| 306 |
-
$orders = array($field =>
|
| 307 |
-
foreach ($this->_orders as $key => $
|
| 308 |
-
|
| 309 |
-
$orders[$key] = $expression;
|
| 310 |
-
}
|
| 311 |
}
|
| 312 |
$this->_orders = $orders;
|
| 313 |
-
}
|
| 314 |
-
|
| 315 |
-
$this->_orders[$field] = new Zend_Db_Expr($field . ' ' . $direction);
|
| 316 |
}
|
| 317 |
return $this;
|
| 318 |
}
|
|
@@ -366,42 +373,76 @@ class Varien_Data_Collection_Db extends Varien_Data_Collection
|
|
| 366 |
* Add field filter to collection
|
| 367 |
*
|
| 368 |
* @see self::_getConditionSql for $condition
|
| 369 |
-
*
|
| 370 |
-
* @param
|
| 371 |
-
* @
|
|
|
|
|
|
|
| 372 |
*/
|
| 373 |
-
public function addFieldToFilter($field, $condition=null)
|
| 374 |
{
|
| 375 |
-
|
| 376 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 377 |
return $this;
|
| 378 |
}
|
| 379 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 380 |
/**
|
| 381 |
* Try to get mapped field name for filter to collection
|
| 382 |
*
|
| 383 |
-
* @param
|
| 384 |
-
* @return
|
| 385 |
*/
|
| 386 |
protected function _getMappedField($field)
|
| 387 |
{
|
| 388 |
-
$mappedFiled = $field;
|
| 389 |
-
|
| 390 |
$mapper = $this->_getMapper();
|
| 391 |
|
| 392 |
if (isset($mapper['fields'][$field])) {
|
| 393 |
$mappedFiled = $mapper['fields'][$field];
|
|
|
|
|
|
|
| 394 |
}
|
| 395 |
|
| 396 |
return $mappedFiled;
|
| 397 |
}
|
| 398 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 399 |
protected function _getMapper()
|
| 400 |
{
|
| 401 |
if (isset($this->_map)) {
|
| 402 |
return $this->_map;
|
| 403 |
-
}
|
| 404 |
-
else {
|
| 405 |
return false;
|
| 406 |
}
|
| 407 |
}
|
|
@@ -454,12 +495,11 @@ class Varien_Data_Collection_Db extends Varien_Data_Collection
|
|
| 454 |
*/
|
| 455 |
protected function _renderOrders()
|
| 456 |
{
|
| 457 |
-
|
| 458 |
-
|
| 459 |
-
|
| 460 |
-
|
| 461 |
-
|
| 462 |
-
}
|
| 463 |
}
|
| 464 |
|
| 465 |
return $this;
|
|
@@ -482,7 +522,9 @@ class Varien_Data_Collection_Db extends Varien_Data_Collection
|
|
| 482 |
/**
|
| 483 |
* Set select distinct
|
| 484 |
*
|
| 485 |
-
* @param
|
|
|
|
|
|
|
| 486 |
*/
|
| 487 |
public function distinct($flag)
|
| 488 |
{
|
|
@@ -503,6 +545,9 @@ class Varien_Data_Collection_Db extends Varien_Data_Collection
|
|
| 503 |
/**
|
| 504 |
* Load data
|
| 505 |
*
|
|
|
|
|
|
|
|
|
|
| 506 |
* @return Varien_Data_Collection_Db
|
| 507 |
*/
|
| 508 |
public function load($printQuery = false, $logQuery = false)
|
|
@@ -541,7 +586,7 @@ class Varien_Data_Collection_Db extends Varien_Data_Collection
|
|
| 541 |
* Returns a collection item that corresponds to the fetched row
|
| 542 |
* and moves the internal data pointer ahead
|
| 543 |
*
|
| 544 |
-
* return
|
| 545 |
*/
|
| 546 |
public function fetchItem()
|
| 547 |
{
|
|
@@ -637,8 +682,10 @@ class Varien_Data_Collection_Db extends Varien_Data_Collection
|
|
| 637 |
/**
|
| 638 |
* Print and/or log query
|
| 639 |
*
|
| 640 |
-
* @param
|
| 641 |
-
* @param
|
|
|
|
|
|
|
| 642 |
* @return Varien_Data_Collection_Db
|
| 643 |
*/
|
| 644 |
public function printLogQuery($printQuery = false, $logQuery = false, $sql = null) {
|
| 93 |
*/
|
| 94 |
protected $_fetchStmt = null;
|
| 95 |
|
| 96 |
+
/**
|
| 97 |
+
* Whether orders are rendered
|
| 98 |
+
*
|
| 99 |
+
* @var bool
|
| 100 |
+
*/
|
| 101 |
+
protected $_isOrdersRendered = false;
|
| 102 |
+
|
| 103 |
public function __construct($conn=null)
|
| 104 |
{
|
| 105 |
parent::__construct();
|
| 189 |
|
| 190 |
$this->_conn = $conn;
|
| 191 |
$this->_select = $this->_conn->select();
|
| 192 |
+
$this->_isOrdersRendered = false;
|
| 193 |
return $this;
|
| 194 |
}
|
| 195 |
|
| 307 |
*/
|
| 308 |
private function _setOrder($field, $direction, $unshift = false)
|
| 309 |
{
|
| 310 |
+
$this->_isOrdersRendered = false;
|
| 311 |
$field = (string)$this->_getMappedField($field);
|
| 312 |
$direction = (strtoupper($direction) == self::SORT_ORDER_ASC) ? self::SORT_ORDER_ASC : self::SORT_ORDER_DESC;
|
| 313 |
+
|
| 314 |
+
unset($this->_orders[$field]); // avoid ordering by the same field twice
|
| 315 |
if ($unshift) {
|
| 316 |
+
$orders = array($field => $direction);
|
| 317 |
+
foreach ($this->_orders as $key => $dir) {
|
| 318 |
+
$orders[$key] = $dir;
|
|
|
|
|
|
|
| 319 |
}
|
| 320 |
$this->_orders = $orders;
|
| 321 |
+
} else {
|
| 322 |
+
$this->_orders[$field] = $direction;
|
|
|
|
| 323 |
}
|
| 324 |
return $this;
|
| 325 |
}
|
| 373 |
* Add field filter to collection
|
| 374 |
*
|
| 375 |
* @see self::_getConditionSql for $condition
|
| 376 |
+
*
|
| 377 |
+
* @param string|array $field
|
| 378 |
+
* @param null|string|array $condition
|
| 379 |
+
*
|
| 380 |
+
* @return Mage_Eav_Model_Entity_Collection_Abstract
|
| 381 |
*/
|
| 382 |
+
public function addFieldToFilter($field, $condition = null)
|
| 383 |
{
|
| 384 |
+
if (!is_array($field)) {
|
| 385 |
+
$resultCondition = $this->_translateCondition($field, $condition);
|
| 386 |
+
} else {
|
| 387 |
+
$conditions = array();
|
| 388 |
+
foreach ($field as $key => $currField) {
|
| 389 |
+
$conditions[] = $this->_translateCondition(
|
| 390 |
+
$currField,
|
| 391 |
+
isset($condition[$key]) ? $condition[$key] : null
|
| 392 |
+
);
|
| 393 |
+
}
|
| 394 |
+
|
| 395 |
+
$resultCondition = '(' . join(') ' . Zend_Db_Select::SQL_OR . ' (', $conditions) . ')';
|
| 396 |
+
}
|
| 397 |
+
|
| 398 |
+
$this->_select->where($resultCondition);
|
| 399 |
+
|
| 400 |
return $this;
|
| 401 |
}
|
| 402 |
|
| 403 |
+
/**
|
| 404 |
+
* Build sql where condition part
|
| 405 |
+
*
|
| 406 |
+
* @param string|array $field
|
| 407 |
+
* @param null|string|array $condition
|
| 408 |
+
*
|
| 409 |
+
* @return string
|
| 410 |
+
*/
|
| 411 |
+
protected function _translateCondition($field, $condition)
|
| 412 |
+
{
|
| 413 |
+
$field = $this->_getMappedField($field);
|
| 414 |
+
return $this->_getConditionSql($field, $condition);
|
| 415 |
+
}
|
| 416 |
+
|
| 417 |
/**
|
| 418 |
* Try to get mapped field name for filter to collection
|
| 419 |
*
|
| 420 |
+
* @param string $field
|
| 421 |
+
* @return string
|
| 422 |
*/
|
| 423 |
protected function _getMappedField($field)
|
| 424 |
{
|
|
|
|
|
|
|
| 425 |
$mapper = $this->_getMapper();
|
| 426 |
|
| 427 |
if (isset($mapper['fields'][$field])) {
|
| 428 |
$mappedFiled = $mapper['fields'][$field];
|
| 429 |
+
} else {
|
| 430 |
+
$mappedFiled = $field;
|
| 431 |
}
|
| 432 |
|
| 433 |
return $mappedFiled;
|
| 434 |
}
|
| 435 |
|
| 436 |
+
/**
|
| 437 |
+
* Retrieve mapper data
|
| 438 |
+
*
|
| 439 |
+
* @return array|bool|null
|
| 440 |
+
*/
|
| 441 |
protected function _getMapper()
|
| 442 |
{
|
| 443 |
if (isset($this->_map)) {
|
| 444 |
return $this->_map;
|
| 445 |
+
} else {
|
|
|
|
| 446 |
return false;
|
| 447 |
}
|
| 448 |
}
|
| 495 |
*/
|
| 496 |
protected function _renderOrders()
|
| 497 |
{
|
| 498 |
+
if (!$this->_isOrdersRendered) {
|
| 499 |
+
foreach ($this->_orders as $field => $direction) {
|
| 500 |
+
$this->_select->order(new Zend_Db_Expr($field . ' ' . $direction));
|
| 501 |
+
}
|
| 502 |
+
$this->_isOrdersRendered = true;
|
|
|
|
| 503 |
}
|
| 504 |
|
| 505 |
return $this;
|
| 522 |
/**
|
| 523 |
* Set select distinct
|
| 524 |
*
|
| 525 |
+
* @param bool $flag
|
| 526 |
+
*
|
| 527 |
+
* @return Varien_Data_Collection_Db
|
| 528 |
*/
|
| 529 |
public function distinct($flag)
|
| 530 |
{
|
| 545 |
/**
|
| 546 |
* Load data
|
| 547 |
*
|
| 548 |
+
* @param bool $printQuery
|
| 549 |
+
* @param bool $logQuery
|
| 550 |
+
*
|
| 551 |
* @return Varien_Data_Collection_Db
|
| 552 |
*/
|
| 553 |
public function load($printQuery = false, $logQuery = false)
|
| 586 |
* Returns a collection item that corresponds to the fetched row
|
| 587 |
* and moves the internal data pointer ahead
|
| 588 |
*
|
| 589 |
+
* @return Varien_Object|bool
|
| 590 |
*/
|
| 591 |
public function fetchItem()
|
| 592 |
{
|
| 682 |
/**
|
| 683 |
* Print and/or log query
|
| 684 |
*
|
| 685 |
+
* @param bool $printQuery
|
| 686 |
+
* @param bool $logQuery
|
| 687 |
+
* @param string $sql
|
| 688 |
+
*
|
| 689 |
* @return Varien_Data_Collection_Db
|
| 690 |
*/
|
| 691 |
public function printLogQuery($printQuery = false, $logQuery = false, $sql = null) {
|
lib/Varien/Data/Collection/Filesystem.php
CHANGED
|
@@ -511,7 +511,7 @@ class Varien_Data_Collection_Filesystem extends Varien_Data_Collection
|
|
| 511 |
return $this->addCallbackFilter($field, $cond['in'], $type, array($this, 'filterCallbackInArray'));
|
| 512 |
}
|
| 513 |
if (isset($cond['nin'])) {
|
| 514 |
-
return $this->addCallbackFilter($field, $cond['nin'], $type, array($this, '
|
| 515 |
}
|
| 516 |
if (isset($cond['notnull'])) {
|
| 517 |
return $this->addCallbackFilter($field, $cond['notnull'], $type, array($this, 'filterCallbackIsNull'), $inverted);
|
| 511 |
return $this->addCallbackFilter($field, $cond['in'], $type, array($this, 'filterCallbackInArray'));
|
| 512 |
}
|
| 513 |
if (isset($cond['nin'])) {
|
| 514 |
+
return $this->addCallbackFilter($field, $cond['nin'], $type, array($this, 'filterCallbackInArray'), $inverted);
|
| 515 |
}
|
| 516 |
if (isset($cond['notnull'])) {
|
| 517 |
return $this->addCallbackFilter($field, $cond['notnull'], $type, array($this, 'filterCallbackIsNull'), $inverted);
|
lib/Varien/Data/Form/Abstract.php
CHANGED
|
@@ -110,10 +110,12 @@ class Varien_Data_Form_Abstract extends Varien_Object
|
|
| 110 |
/**
|
| 111 |
* Add form element
|
| 112 |
*
|
| 113 |
-
* @param
|
| 114 |
-
* @
|
|
|
|
|
|
|
| 115 |
*/
|
| 116 |
-
public function addElement(Varien_Data_Form_Element_Abstract $element, $after=null)
|
| 117 |
{
|
| 118 |
$element->setForm($this);
|
| 119 |
$this->getElements()->add($element, $after);
|
|
@@ -163,11 +165,12 @@ class Varien_Data_Form_Abstract extends Varien_Object
|
|
| 163 |
* Enter description here...
|
| 164 |
*
|
| 165 |
* @param string $elementId
|
| 166 |
-
* @param
|
| 167 |
-
* @param
|
|
|
|
| 168 |
* @return Varien_Data_Form_Element_Fieldset
|
| 169 |
*/
|
| 170 |
-
public function addFieldset($elementId, $config, $after=false)
|
| 171 |
{
|
| 172 |
$element = new Varien_Data_Form_Element_Fieldset($config);
|
| 173 |
$element->setId($elementId);
|
| 110 |
/**
|
| 111 |
* Add form element
|
| 112 |
*
|
| 113 |
+
* @param Varien_Data_Form_Element_Abstract $element
|
| 114 |
+
* @param bool|string|null $after
|
| 115 |
+
*
|
| 116 |
+
* @return Varien_Data_Form
|
| 117 |
*/
|
| 118 |
+
public function addElement(Varien_Data_Form_Element_Abstract $element, $after = null)
|
| 119 |
{
|
| 120 |
$element->setForm($this);
|
| 121 |
$this->getElements()->add($element, $after);
|
| 165 |
* Enter description here...
|
| 166 |
*
|
| 167 |
* @param string $elementId
|
| 168 |
+
* @param array $config
|
| 169 |
+
* @param bool|string|null $after
|
| 170 |
+
*
|
| 171 |
* @return Varien_Data_Form_Element_Fieldset
|
| 172 |
*/
|
| 173 |
+
public function addFieldset($elementId, $config, $after = false)
|
| 174 |
{
|
| 175 |
$element = new Varien_Data_Form_Element_Fieldset($config);
|
| 176 |
$element->setId($elementId);
|
lib/Varien/Data/Form/Element/Abstract.php
CHANGED
|
@@ -30,7 +30,7 @@
|
|
| 30 |
*
|
| 31 |
* @category Varien
|
| 32 |
* @package Varien_Data
|
| 33 |
-
* @author
|
| 34 |
*/
|
| 35 |
abstract class Varien_Data_Form_Element_Abstract extends Varien_Data_Form_Abstract
|
| 36 |
{
|
|
@@ -185,13 +185,18 @@ abstract class Varien_Data_Form_Element_Abstract extends Varien_Data_Form_Abstra
|
|
| 185 |
return $this->getData('after_element_html');
|
| 186 |
}
|
| 187 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 188 |
public function getLabelHtml($idSuffix = '')
|
| 189 |
{
|
| 190 |
if (!is_null($this->getLabel())) {
|
| 191 |
-
$html = '<label for="'.$this->getHtmlId() . $idSuffix . '">'
|
| 192 |
-
|
| 193 |
-
}
|
| 194 |
-
else {
|
| 195 |
$html = '';
|
| 196 |
}
|
| 197 |
return $html;
|
| 30 |
*
|
| 31 |
* @category Varien
|
| 32 |
* @package Varien_Data
|
| 33 |
+
* @author Magento Core Team <core@magentocommerce.com>
|
| 34 |
*/
|
| 35 |
abstract class Varien_Data_Form_Element_Abstract extends Varien_Data_Form_Abstract
|
| 36 |
{
|
| 185 |
return $this->getData('after_element_html');
|
| 186 |
}
|
| 187 |
|
| 188 |
+
/**
|
| 189 |
+
* Render HTML for element's label
|
| 190 |
+
*
|
| 191 |
+
* @param string $idSuffix
|
| 192 |
+
* @return string
|
| 193 |
+
*/
|
| 194 |
public function getLabelHtml($idSuffix = '')
|
| 195 |
{
|
| 196 |
if (!is_null($this->getLabel())) {
|
| 197 |
+
$html = '<label for="'.$this->getHtmlId() . $idSuffix . '">' . $this->_escape($this->getLabel())
|
| 198 |
+
. ( $this->getRequired() ? ' <span class="required">*</span>' : '' ) . '</label>' . "\n";
|
| 199 |
+
} else {
|
|
|
|
| 200 |
$html = '';
|
| 201 |
}
|
| 202 |
return $html;
|
lib/Varien/Data/Form/Element/Collection.php
CHANGED
|
@@ -116,10 +116,11 @@ class Varien_Data_Form_Element_Collection implements ArrayAccess, IteratorAggreg
|
|
| 116 |
*
|
| 117 |
* @todo get it straight with $after
|
| 118 |
* @param Varien_Data_Form_Element_Abstract $element
|
| 119 |
-
* @param
|
| 120 |
-
*
|
|
|
|
| 121 |
*/
|
| 122 |
-
public function add(Varien_Data_Form_Element_Abstract $element, $after=false)
|
| 123 |
{
|
| 124 |
// Set the Form for the node
|
| 125 |
if ($this->_container->getForm() instanceof Varien_Data_Form) {
|
| 116 |
*
|
| 117 |
* @todo get it straight with $after
|
| 118 |
* @param Varien_Data_Form_Element_Abstract $element
|
| 119 |
+
* @param bool|string $after
|
| 120 |
+
*
|
| 121 |
+
* @return Varien_Data_Form_Element_Collection
|
| 122 |
*/
|
| 123 |
+
public function add(Varien_Data_Form_Element_Abstract $element, $after = false)
|
| 124 |
{
|
| 125 |
// Set the Form for the node
|
| 126 |
if ($this->_container->getForm() instanceof Varien_Data_Form) {
|
lib/Varien/Data/Form/Element/Editor.php
CHANGED
|
@@ -308,7 +308,7 @@ class Varien_Data_Form_Element_Editor extends Varien_Data_Form_Element_Textarea
|
|
| 308 |
$html.= isset($data['style']) ? ' style="'.$data['style'].'"' : '';
|
| 309 |
$html.= isset($data['id']) ? ' id="'.$data['id'].'"' : '';
|
| 310 |
$html.= '>';
|
| 311 |
-
$html.= isset($data['title']) ? '<span>'.$data['title'].'</span>' : '';
|
| 312 |
$html.= '</button>';
|
| 313 |
|
| 314 |
return $html;
|
| 308 |
$html.= isset($data['style']) ? ' style="'.$data['style'].'"' : '';
|
| 309 |
$html.= isset($data['id']) ? ' id="'.$data['id'].'"' : '';
|
| 310 |
$html.= '>';
|
| 311 |
+
$html.= isset($data['title']) ? '<span><span><span>'.$data['title'].'</span></span></span>' : '';
|
| 312 |
$html.= '</button>';
|
| 313 |
|
| 314 |
return $html;
|
lib/Varien/Data/Form/Element/Image.php
CHANGED
|
@@ -24,19 +24,17 @@
|
|
| 24 |
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
| 25 |
*/
|
| 26 |
|
| 27 |
-
|
| 28 |
/**
|
| 29 |
* Category form input image element
|
| 30 |
*
|
| 31 |
* @category Varien
|
| 32 |
* @package Varien_Data
|
| 33 |
-
* @author
|
| 34 |
*/
|
| 35 |
class Varien_Data_Form_Element_Image extends Varien_Data_Form_Element_Abstract
|
| 36 |
{
|
| 37 |
-
|
| 38 |
/**
|
| 39 |
-
*
|
| 40 |
*
|
| 41 |
* @param array $data
|
| 42 |
*/
|
|
@@ -47,7 +45,7 @@ class Varien_Data_Form_Element_Image extends Varien_Data_Form_Element_Abstract
|
|
| 47 |
}
|
| 48 |
|
| 49 |
/**
|
| 50 |
-
*
|
| 51 |
*
|
| 52 |
* @return string
|
| 53 |
*/
|
|
@@ -55,24 +53,28 @@ class Varien_Data_Form_Element_Image extends Varien_Data_Form_Element_Abstract
|
|
| 55 |
{
|
| 56 |
$html = '';
|
| 57 |
|
| 58 |
-
if ($this->getValue()) {
|
| 59 |
$url = $this->_getUrl();
|
| 60 |
|
| 61 |
if( !preg_match("/^http\:\/\/|https\:\/\//", $url) ) {
|
| 62 |
$url = Mage::getBaseUrl('media') . $url;
|
| 63 |
}
|
| 64 |
|
| 65 |
-
$html = '<a href="'
|
|
|
|
|
|
|
|
|
|
|
|
|
| 66 |
}
|
| 67 |
$this->setClass('input-file');
|
| 68 |
-
$html.= parent::getElementHtml();
|
| 69 |
-
$html.= $this->_getDeleteCheckbox();
|
| 70 |
|
| 71 |
return $html;
|
| 72 |
}
|
| 73 |
|
| 74 |
/**
|
| 75 |
-
*
|
| 76 |
*
|
| 77 |
* @return string
|
| 78 |
*/
|
|
@@ -82,8 +84,12 @@ class Varien_Data_Form_Element_Image extends Varien_Data_Form_Element_Abstract
|
|
| 82 |
if ($this->getValue()) {
|
| 83 |
$label = Mage::helper('core')->__('Delete Image');
|
| 84 |
$html .= '<span class="delete-image">';
|
| 85 |
-
$html .= '<input type="checkbox"
|
| 86 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
| 87 |
$html .= $this->_getHiddenInput();
|
| 88 |
$html .= '</span>';
|
| 89 |
}
|
|
@@ -92,13 +98,13 @@ class Varien_Data_Form_Element_Image extends Varien_Data_Form_Element_Abstract
|
|
| 92 |
}
|
| 93 |
|
| 94 |
/**
|
| 95 |
-
*
|
| 96 |
*
|
| 97 |
* @return string
|
| 98 |
*/
|
| 99 |
protected function _getHiddenInput()
|
| 100 |
{
|
| 101 |
-
return '<input type="hidden" name="'.parent::getName().'[value]" value="'
|
| 102 |
}
|
| 103 |
|
| 104 |
/**
|
|
@@ -112,7 +118,7 @@ class Varien_Data_Form_Element_Image extends Varien_Data_Form_Element_Abstract
|
|
| 112 |
}
|
| 113 |
|
| 114 |
/**
|
| 115 |
-
*
|
| 116 |
*
|
| 117 |
* @return string
|
| 118 |
*/
|
|
@@ -120,5 +126,4 @@ class Varien_Data_Form_Element_Image extends Varien_Data_Form_Element_Abstract
|
|
| 120 |
{
|
| 121 |
return $this->getData('name');
|
| 122 |
}
|
| 123 |
-
|
| 124 |
}
|
| 24 |
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
| 25 |
*/
|
| 26 |
|
|
|
|
| 27 |
/**
|
| 28 |
* Category form input image element
|
| 29 |
*
|
| 30 |
* @category Varien
|
| 31 |
* @package Varien_Data
|
| 32 |
+
* @author Magento Core Team <core@magentocommerce.com>
|
| 33 |
*/
|
| 34 |
class Varien_Data_Form_Element_Image extends Varien_Data_Form_Element_Abstract
|
| 35 |
{
|
|
|
|
| 36 |
/**
|
| 37 |
+
* Constructor
|
| 38 |
*
|
| 39 |
* @param array $data
|
| 40 |
*/
|
| 45 |
}
|
| 46 |
|
| 47 |
/**
|
| 48 |
+
* Return element html code
|
| 49 |
*
|
| 50 |
* @return string
|
| 51 |
*/
|
| 53 |
{
|
| 54 |
$html = '';
|
| 55 |
|
| 56 |
+
if ((string)$this->getValue()) {
|
| 57 |
$url = $this->_getUrl();
|
| 58 |
|
| 59 |
if( !preg_match("/^http\:\/\/|https\:\/\//", $url) ) {
|
| 60 |
$url = Mage::getBaseUrl('media') . $url;
|
| 61 |
}
|
| 62 |
|
| 63 |
+
$html = '<a href="' . $url . '"'
|
| 64 |
+
. ' onclick="imagePreview(\'' . $this->getHtmlId() . '_image\'); return false;">'
|
| 65 |
+
. '<img src="' . $url . '" id="' . $this->getHtmlId() . '_image" title="' . $this->getValue() . '"'
|
| 66 |
+
. ' alt="' . $this->getValue() . '" height="22" width="22" class="small-image-preview v-middle" />'
|
| 67 |
+
. '</a> ';
|
| 68 |
}
|
| 69 |
$this->setClass('input-file');
|
| 70 |
+
$html .= parent::getElementHtml();
|
| 71 |
+
$html .= $this->_getDeleteCheckbox();
|
| 72 |
|
| 73 |
return $html;
|
| 74 |
}
|
| 75 |
|
| 76 |
/**
|
| 77 |
+
* Return html code of delete checkbox element
|
| 78 |
*
|
| 79 |
* @return string
|
| 80 |
*/
|
| 84 |
if ($this->getValue()) {
|
| 85 |
$label = Mage::helper('core')->__('Delete Image');
|
| 86 |
$html .= '<span class="delete-image">';
|
| 87 |
+
$html .= '<input type="checkbox"'
|
| 88 |
+
. ' name="' . parent::getName() . '[delete]" value="1" class="checkbox"'
|
| 89 |
+
. ' id="' . $this->getHtmlId() . '_delete"' . ($this->getDisabled() ? ' disabled="disabled"': '')
|
| 90 |
+
. '/>';
|
| 91 |
+
$html .= '<label for="' . $this->getHtmlId() . '_delete"'
|
| 92 |
+
. ($this->getDisabled() ? ' class="disabled"' : '') . '> ' . $label . '</label>';
|
| 93 |
$html .= $this->_getHiddenInput();
|
| 94 |
$html .= '</span>';
|
| 95 |
}
|
| 98 |
}
|
| 99 |
|
| 100 |
/**
|
| 101 |
+
* Return html code of hidden element
|
| 102 |
*
|
| 103 |
* @return string
|
| 104 |
*/
|
| 105 |
protected function _getHiddenInput()
|
| 106 |
{
|
| 107 |
+
return '<input type="hidden" name="' . parent::getName() . '[value]" value="' . $this->getValue() . '" />';
|
| 108 |
}
|
| 109 |
|
| 110 |
/**
|
| 118 |
}
|
| 119 |
|
| 120 |
/**
|
| 121 |
+
* Return name
|
| 122 |
*
|
| 123 |
* @return string
|
| 124 |
*/
|
| 126 |
{
|
| 127 |
return $this->getData('name');
|
| 128 |
}
|
|
|
|
| 129 |
}
|
lib/Varien/Data/Form/Element/Label.php
CHANGED
|
@@ -33,19 +33,28 @@
|
|
| 33 |
*/
|
| 34 |
class Varien_Data_Form_Element_Label extends Varien_Data_Form_Element_Abstract
|
| 35 |
{
|
| 36 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 37 |
{
|
| 38 |
parent::__construct($attributes);
|
| 39 |
$this->setType('label');
|
| 40 |
}
|
| 41 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 42 |
public function getElementHtml()
|
| 43 |
{
|
| 44 |
-
|
| 45 |
-
|
| 46 |
-
|
| 47 |
-
|
| 48 |
-
|
| 49 |
}
|
| 50 |
-
|
| 51 |
-
}
|
| 33 |
*/
|
| 34 |
class Varien_Data_Form_Element_Label extends Varien_Data_Form_Element_Abstract
|
| 35 |
{
|
| 36 |
+
/**
|
| 37 |
+
* Assigns attributes for Element
|
| 38 |
+
*
|
| 39 |
+
* @param array $attributes
|
| 40 |
+
*/
|
| 41 |
+
public function __construct($attributes=array())
|
| 42 |
{
|
| 43 |
parent::__construct($attributes);
|
| 44 |
$this->setType('label');
|
| 45 |
}
|
| 46 |
|
| 47 |
+
/**
|
| 48 |
+
* Retrieve Element HTML
|
| 49 |
+
*
|
| 50 |
+
* @return string
|
| 51 |
+
*/
|
| 52 |
public function getElementHtml()
|
| 53 |
{
|
| 54 |
+
$html = $this->getBold() ? '<strong>' : '';
|
| 55 |
+
$html.= $this->getEscapedValue();
|
| 56 |
+
$html.= $this->getBold() ? '</strong>' : '';
|
| 57 |
+
$html.= $this->getAfterElementHtml();
|
| 58 |
+
return $html;
|
| 59 |
}
|
| 60 |
+
}
|
|
|
lib/Varien/Date.php
CHANGED
|
@@ -61,7 +61,7 @@ class Varien_Date
|
|
| 61 |
'dd' => '%d',
|
| 62 |
'd' => '%e',
|
| 63 |
'yyyy' => '%Y',
|
| 64 |
-
'yy' => '%
|
| 65 |
'y' => '%Y'
|
| 66 |
);
|
| 67 |
/**
|
| 61 |
'dd' => '%d',
|
| 62 |
'd' => '%e',
|
| 63 |
'yyyy' => '%Y',
|
| 64 |
+
'yy' => '%Y',
|
| 65 |
'y' => '%Y'
|
| 66 |
);
|
| 67 |
/**
|
lib/Varien/Db/Adapter/Interface.php
CHANGED
|
@@ -58,6 +58,11 @@ interface Varien_Db_Adapter_Interface
|
|
| 58 |
const INTERVAL_MONTH = 'MONTHS';
|
| 59 |
const INTERVAL_YEAR = 'YEARS';
|
| 60 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 61 |
/**
|
| 62 |
* Begin new DB transaction for connection
|
| 63 |
*
|
|
@@ -821,6 +826,24 @@ interface Varien_Db_Adapter_Interface
|
|
| 821 |
*/
|
| 822 |
public function getDatePartSql($date);
|
| 823 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 824 |
/**
|
| 825 |
* Extract part of a date
|
| 826 |
*
|
|
@@ -974,4 +997,11 @@ interface Varien_Db_Adapter_Interface
|
|
| 974 |
* @return string
|
| 975 |
*/
|
| 976 |
public function getSuggestedZeroDate();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 977 |
}
|
| 58 |
const INTERVAL_MONTH = 'MONTHS';
|
| 59 |
const INTERVAL_YEAR = 'YEARS';
|
| 60 |
|
| 61 |
+
/**
|
| 62 |
+
* Error message for DDL query in transactions
|
| 63 |
+
*/
|
| 64 |
+
const ERROR_DDL_MESSAGE = 'DDL statements are not allowed in transactions';
|
| 65 |
+
|
| 66 |
/**
|
| 67 |
* Begin new DB transaction for connection
|
| 68 |
*
|
| 826 |
*/
|
| 827 |
public function getDatePartSql($date);
|
| 828 |
|
| 829 |
+
/**
|
| 830 |
+
* Prepare substring sql function
|
| 831 |
+
*
|
| 832 |
+
* @param Zend_Db_Expr|string $stringExpression quoted field name or SQL statement
|
| 833 |
+
* @param int|string|Zend_Db_Expr $pos
|
| 834 |
+
* @param int|string|Zend_Db_Expr|null $len
|
| 835 |
+
* @return Zend_Db_Expr
|
| 836 |
+
*/
|
| 837 |
+
public function getSubstringSql($stringExpression, $pos, $len = null);
|
| 838 |
+
|
| 839 |
+
/**
|
| 840 |
+
* Prepare standard deviation sql function
|
| 841 |
+
*
|
| 842 |
+
* @param Zend_Db_Expr|string $expressionField quoted field name or SQL statement
|
| 843 |
+
* @return Zend_Db_Expr
|
| 844 |
+
*/
|
| 845 |
+
public function getStandardDeviationSql($expressionField);
|
| 846 |
+
|
| 847 |
/**
|
| 848 |
* Extract part of a date
|
| 849 |
*
|
| 997 |
* @return string
|
| 998 |
*/
|
| 999 |
public function getSuggestedZeroDate();
|
| 1000 |
+
|
| 1001 |
+
/**
|
| 1002 |
+
* Get adapter transaction level state. Return 0 if all transactions are complete
|
| 1003 |
+
*
|
| 1004 |
+
* @return int
|
| 1005 |
+
*/
|
| 1006 |
+
public function getTransactionLevel();
|
| 1007 |
}
|
lib/Varien/Db/Adapter/Pdo/Mysql.php
CHANGED
|
@@ -48,6 +48,11 @@ 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 |
* Default class name for a DB statement.
|
| 53 |
*
|
|
@@ -173,6 +178,14 @@ class Varien_Db_Adapter_Pdo_Mysql extends Zend_Db_Adapter_Pdo_Mysql implements V
|
|
| 173 |
Varien_Db_Ddl_Table::TYPE_VARBINARY => 'blob'
|
| 174 |
);
|
| 175 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 176 |
/**
|
| 177 |
* Allowed interval units array
|
| 178 |
*
|
|
@@ -372,6 +385,22 @@ class Varien_Db_Adapter_Pdo_Mysql extends Zend_Db_Adapter_Pdo_Mysql implements V
|
|
| 372 |
}
|
| 373 |
}
|
| 374 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 375 |
/**
|
| 376 |
* Special handling for PDO query().
|
| 377 |
* All bind parameter names must begin with ':'.
|
|
@@ -385,6 +414,7 @@ class Varien_Db_Adapter_Pdo_Mysql extends Zend_Db_Adapter_Pdo_Mysql implements V
|
|
| 385 |
{
|
| 386 |
$this->_debugTimer();
|
| 387 |
try {
|
|
|
|
| 388 |
$this->_prepareQuery($sql, $bind);
|
| 389 |
$result = parent::query($sql, $bind);
|
| 390 |
} catch (Exception $e) {
|
|
@@ -425,21 +455,6 @@ class Varien_Db_Adapter_Pdo_Mysql extends Zend_Db_Adapter_Pdo_Mysql implements V
|
|
| 425 |
}
|
| 426 |
}
|
| 427 |
|
| 428 |
-
if (strpos($sql, ':') !== false || strpos($sql, '?') !== false) {
|
| 429 |
-
$before = count($bind);
|
| 430 |
-
$this->_bindParams = $bind; // Used by callback
|
| 431 |
-
$sql = preg_replace_callback('#(([\'"])((\\2)|((.*?[^\\\\])\\2)))#',
|
| 432 |
-
array($this, 'proccessBindCallback'),
|
| 433 |
-
$sql);
|
| 434 |
-
Varien_Exception::processPcreError();
|
| 435 |
-
$bind = $this->_bindParams;
|
| 436 |
-
|
| 437 |
-
// If _processBindCallbacks() has added named entries to positional bind - normalize it to positional
|
| 438 |
-
if (!$isNamedBind && $before && (count($bind) != $before)) {
|
| 439 |
-
$this->_convertMixedBind($sql, $bind);
|
| 440 |
-
}
|
| 441 |
-
}
|
| 442 |
-
|
| 443 |
// Special query hook
|
| 444 |
if ($this->_queryHook) {
|
| 445 |
$object = $this->_queryHook['object'];
|
|
@@ -611,7 +626,9 @@ class Varien_Db_Adapter_Pdo_Mysql extends Zend_Db_Adapter_Pdo_Mysql implements V
|
|
| 611 |
*/
|
| 612 |
protected function _splitMultiQuery($sql)
|
| 613 |
{
|
| 614 |
-
$parts = preg_split('#(;|\'|"|\\\\|//|--|\n|/\*|\*/)#', $sql, null,
|
|
|
|
|
|
|
| 615 |
|
| 616 |
$q = false;
|
| 617 |
$c = false;
|
|
@@ -878,7 +895,11 @@ class Varien_Db_Adapter_Pdo_Mysql extends Zend_Db_Adapter_Pdo_Mysql implements V
|
|
| 878 |
$schemaName = null)
|
| 879 |
{
|
| 880 |
if (!$this->tableColumnExists($tableName, $oldColumnName, $schemaName)) {
|
| 881 |
-
throw new Zend_Db_Exception(sprintf(
|
|
|
|
|
|
|
|
|
|
|
|
|
| 882 |
}
|
| 883 |
|
| 884 |
if (is_array($definition)) {
|
|
@@ -2753,9 +2774,13 @@ class Varien_Db_Adapter_Pdo_Mysql extends Zend_Db_Adapter_Pdo_Mysql implements V
|
|
| 2753 |
switch ($column['DATA_TYPE']) {
|
| 2754 |
case 'smallint':
|
| 2755 |
case 'int':
|
| 2756 |
-
case 'bigint':
|
| 2757 |
$value = (int)$value;
|
| 2758 |
break;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 2759 |
|
| 2760 |
case 'decimal':
|
| 2761 |
$precision = 10;
|
|
@@ -2995,6 +3020,33 @@ class Varien_Db_Adapter_Pdo_Mysql extends Zend_Db_Adapter_Pdo_Mysql implements V
|
|
| 2995 |
return new Zend_Db_Expr(sprintf('DATE(%s)', $date));
|
| 2996 |
}
|
| 2997 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 2998 |
/**
|
| 2999 |
* Extract part of a date
|
| 3000 |
*
|
|
@@ -3583,4 +3635,14 @@ class Varien_Db_Adapter_Pdo_Mysql extends Zend_Db_Adapter_Pdo_Mysql implements V
|
|
| 3583 |
|
| 3584 |
return $fkName;
|
| 3585 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 3586 |
}
|
| 48 |
const LENGTH_INDEX_NAME = 64;
|
| 49 |
const LENGTH_FOREIGN_NAME = 64;
|
| 50 |
|
| 51 |
+
/**
|
| 52 |
+
* MEMORY engine type for MySQL tables
|
| 53 |
+
*/
|
| 54 |
+
const ENGINE_MEMORY = 'MEMORY';
|
| 55 |
+
|
| 56 |
/**
|
| 57 |
* Default class name for a DB statement.
|
| 58 |
*
|
| 178 |
Varien_Db_Ddl_Table::TYPE_VARBINARY => 'blob'
|
| 179 |
);
|
| 180 |
|
| 181 |
+
/**
|
| 182 |
+
* All possible DDL statements
|
| 183 |
+
* First 3 symbols for each statement
|
| 184 |
+
*
|
| 185 |
+
* @var array
|
| 186 |
+
*/
|
| 187 |
+
protected $_ddlRoutines = array('alt', 'cre', 'ren', 'dro', 'tru');
|
| 188 |
+
|
| 189 |
/**
|
| 190 |
* Allowed interval units array
|
| 191 |
*
|
| 385 |
}
|
| 386 |
}
|
| 387 |
|
| 388 |
+
/**
|
| 389 |
+
* Check transaction level in case of DDL query
|
| 390 |
+
*
|
| 391 |
+
* @param string|Zend_Db_Select $sql
|
| 392 |
+
* @throws Zend_Db_Adapter_Exception
|
| 393 |
+
*/
|
| 394 |
+
protected function _checkDdlTransaction($sql)
|
| 395 |
+
{
|
| 396 |
+
if (is_string($sql) && $this->getTransactionLevel() > 0) {
|
| 397 |
+
$startSql = strtolower(substr(ltrim($sql), 0, 3));
|
| 398 |
+
if (in_array($startSql, $this->_ddlRoutines)) {
|
| 399 |
+
trigger_error(Varien_Db_Adapter_Interface::ERROR_DDL_MESSAGE, E_USER_ERROR);
|
| 400 |
+
}
|
| 401 |
+
}
|
| 402 |
+
}
|
| 403 |
+
|
| 404 |
/**
|
| 405 |
* Special handling for PDO query().
|
| 406 |
* All bind parameter names must begin with ':'.
|
| 414 |
{
|
| 415 |
$this->_debugTimer();
|
| 416 |
try {
|
| 417 |
+
$this->_checkDdlTransaction($sql);
|
| 418 |
$this->_prepareQuery($sql, $bind);
|
| 419 |
$result = parent::query($sql, $bind);
|
| 420 |
} catch (Exception $e) {
|
| 455 |
}
|
| 456 |
}
|
| 457 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 458 |
// Special query hook
|
| 459 |
if ($this->_queryHook) {
|
| 460 |
$object = $this->_queryHook['object'];
|
| 626 |
*/
|
| 627 |
protected function _splitMultiQuery($sql)
|
| 628 |
{
|
| 629 |
+
$parts = preg_split('#(;|\'|"|\\\\|//|--|\n|/\*|\*/)#', $sql, null,
|
| 630 |
+
PREG_SPLIT_NO_EMPTY | PREG_SPLIT_DELIM_CAPTURE
|
| 631 |
+
);
|
| 632 |
|
| 633 |
$q = false;
|
| 634 |
$c = false;
|
| 895 |
$schemaName = null)
|
| 896 |
{
|
| 897 |
if (!$this->tableColumnExists($tableName, $oldColumnName, $schemaName)) {
|
| 898 |
+
throw new Zend_Db_Exception(sprintf(
|
| 899 |
+
'Column "%s" does not exists on table "%s"',
|
| 900 |
+
$oldColumnName,
|
| 901 |
+
$tableName
|
| 902 |
+
));
|
| 903 |
}
|
| 904 |
|
| 905 |
if (is_array($definition)) {
|
| 2774 |
switch ($column['DATA_TYPE']) {
|
| 2775 |
case 'smallint':
|
| 2776 |
case 'int':
|
|
|
|
| 2777 |
$value = (int)$value;
|
| 2778 |
break;
|
| 2779 |
+
case 'bigint':
|
| 2780 |
+
if (!is_integer($value)) {
|
| 2781 |
+
$value = sprintf('%.0f', (float)$value);
|
| 2782 |
+
}
|
| 2783 |
+
break;
|
| 2784 |
|
| 2785 |
case 'decimal':
|
| 2786 |
$precision = 10;
|
| 3020 |
return new Zend_Db_Expr(sprintf('DATE(%s)', $date));
|
| 3021 |
}
|
| 3022 |
|
| 3023 |
+
/**
|
| 3024 |
+
* Prepare substring sql function
|
| 3025 |
+
*
|
| 3026 |
+
* @param Zend_Db_Expr|string $stringExpression quoted field name or SQL statement
|
| 3027 |
+
* @param int|string|Zend_Db_Expr $pos
|
| 3028 |
+
* @param int|string|Zend_Db_Expr|null $len
|
| 3029 |
+
* @return Zend_Db_Expr
|
| 3030 |
+
*/
|
| 3031 |
+
public function getSubstringSql($stringExpression, $pos, $len = null)
|
| 3032 |
+
{
|
| 3033 |
+
if (is_null($len)) {
|
| 3034 |
+
return new Zend_Db_Expr(sprintf('SUBSTRING(%s, %s)', $stringExpression, $pos));
|
| 3035 |
+
}
|
| 3036 |
+
return new Zend_Db_Expr(sprintf('SUBSTRING(%s, %s, %s)', $stringExpression, $pos, $len));
|
| 3037 |
+
}
|
| 3038 |
+
|
| 3039 |
+
/**
|
| 3040 |
+
* Prepare standard deviation sql function
|
| 3041 |
+
*
|
| 3042 |
+
* @param Zend_Db_Expr|string $expressionField quoted field name or SQL statement
|
| 3043 |
+
* @return Zend_Db_Expr
|
| 3044 |
+
*/
|
| 3045 |
+
public function getStandardDeviationSql($expressionField)
|
| 3046 |
+
{
|
| 3047 |
+
return new Zend_Db_Expr(sprintf('STDDEV_SAMP(%s)', $expressionField));
|
| 3048 |
+
}
|
| 3049 |
+
|
| 3050 |
/**
|
| 3051 |
* Extract part of a date
|
| 3052 |
*
|
| 3635 |
|
| 3636 |
return $fkName;
|
| 3637 |
}
|
| 3638 |
+
|
| 3639 |
+
/**
|
| 3640 |
+
* Check if all transactions have been committed
|
| 3641 |
+
*/
|
| 3642 |
+
public function __destruct()
|
| 3643 |
+
{
|
| 3644 |
+
if ($this->_transactionLevel > 0) {
|
| 3645 |
+
trigger_error('Some transactions have not been committed or rolled back', E_USER_ERROR);
|
| 3646 |
+
}
|
| 3647 |
+
}
|
| 3648 |
}
|
lib/Varien/Db/Select.php
CHANGED
|
@@ -29,14 +29,14 @@
|
|
| 29 |
*
|
| 30 |
* @method Varien_Db_Adapter_Interface|Zend_Db_Adapter_Abstract getAdapter()
|
| 31 |
* @property Varien_Db_Adapter_Interface|Zend_Db_Adapter_Abstract $_adapter
|
| 32 |
-
* @method Varien_Db_Select from($name, $cols, $schema = null)
|
| 33 |
-
* @method Varien_Db_Select join($name, $cond, $cols, $schema = null)
|
| 34 |
-
* @method Varien_Db_Select joinInner($name, $cond, $cols, $schema = null)
|
| 35 |
* @method Varien_Db_Select joinLeft($name, $cond, $cols = '*', $schema = null)
|
| 36 |
-
* @method Varien_Db_Select joinNatural($name, $cond, $cols, $schema = null)
|
| 37 |
-
* @method Varien_Db_Select joinFull($name, $cond, $cols, $schema = null)
|
| 38 |
-
* @method Varien_Db_Select joinRight($name, $cond, $cols, $schema = null)
|
| 39 |
-
* @method Varien_Db_Select joinCross($name, $cols, $schema = null)
|
| 40 |
* @method Varien_Db_Select orWhere($cond, $value = null, $type = null)
|
| 41 |
* @method Varien_Db_Select group($spec)
|
| 42 |
* @method Varien_Db_Select order($spec)
|
|
@@ -44,7 +44,7 @@
|
|
| 44 |
* @method Varien_Db_Select forUpdate($flag = true)
|
| 45 |
* @method Varien_Db_Select distinct($flag = true)
|
| 46 |
* @method Varien_Db_Select reset($part = null)
|
| 47 |
-
* @method Varien_Db_Select columns($cols, $correlationName = null)
|
| 48 |
*
|
| 49 |
* @category Varien
|
| 50 |
* @package Varien_Db
|
| 29 |
*
|
| 30 |
* @method Varien_Db_Adapter_Interface|Zend_Db_Adapter_Abstract getAdapter()
|
| 31 |
* @property Varien_Db_Adapter_Interface|Zend_Db_Adapter_Abstract $_adapter
|
| 32 |
+
* @method Varien_Db_Select from($name, $cols = '*', $schema = null)
|
| 33 |
+
* @method Varien_Db_Select join($name, $cond, $cols = '*', $schema = null)
|
| 34 |
+
* @method Varien_Db_Select joinInner($name, $cond, $cols = '*', $schema = null)
|
| 35 |
* @method Varien_Db_Select joinLeft($name, $cond, $cols = '*', $schema = null)
|
| 36 |
+
* @method Varien_Db_Select joinNatural($name, $cond, $cols = '*', $schema = null)
|
| 37 |
+
* @method Varien_Db_Select joinFull($name, $cond, $cols = '*', $schema = null)
|
| 38 |
+
* @method Varien_Db_Select joinRight($name, $cond, $cols = '*', $schema = null)
|
| 39 |
+
* @method Varien_Db_Select joinCross($name, $cols = '*', $schema = null)
|
| 40 |
* @method Varien_Db_Select orWhere($cond, $value = null, $type = null)
|
| 41 |
* @method Varien_Db_Select group($spec)
|
| 42 |
* @method Varien_Db_Select order($spec)
|
| 44 |
* @method Varien_Db_Select forUpdate($flag = true)
|
| 45 |
* @method Varien_Db_Select distinct($flag = true)
|
| 46 |
* @method Varien_Db_Select reset($part = null)
|
| 47 |
+
* @method Varien_Db_Select columns($cols = '*', $correlationName = null)
|
| 48 |
*
|
| 49 |
* @category Varien
|
| 50 |
* @package Varien_Db
|
lib/Varien/Directory/Collection.php
CHANGED
|
@@ -20,7 +20,7 @@
|
|
| 20 |
*
|
| 21 |
* @category Varien
|
| 22 |
* @package Varien_Directory
|
| 23 |
-
* @copyright Copyright (c)
|
| 24 |
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
| 25 |
*/
|
| 26 |
|
|
@@ -458,4 +458,4 @@ class Varien_Directory_Collection extends Varien_Data_Collection implements IFac
|
|
| 458 |
|
| 459 |
|
| 460 |
|
| 461 |
-
?>
|
| 20 |
*
|
| 21 |
* @category Varien
|
| 22 |
* @package Varien_Directory
|
| 23 |
+
* @copyright Copyright (c) 2010 Magento Inc. (http://www.magentocommerce.com)
|
| 24 |
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
| 25 |
*/
|
| 26 |
|
| 458 |
|
| 459 |
|
| 460 |
|
| 461 |
+
?>
|
lib/Varien/Directory/Factory.php
CHANGED
|
@@ -20,7 +20,7 @@
|
|
| 20 |
*
|
| 21 |
* @category Varien
|
| 22 |
* @package Varien_Directory
|
| 23 |
-
* @copyright Copyright (c)
|
| 24 |
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
| 25 |
*/
|
| 26 |
|
|
@@ -55,4 +55,4 @@ class Varien_Directory_Factory{
|
|
| 55 |
}
|
| 56 |
|
| 57 |
}
|
| 58 |
-
?>
|
| 20 |
*
|
| 21 |
* @category Varien
|
| 22 |
* @package Varien_Directory
|
| 23 |
+
* @copyright Copyright (c) 2010 Magento Inc. (http://www.magentocommerce.com)
|
| 24 |
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
| 25 |
*/
|
| 26 |
|
| 55 |
}
|
| 56 |
|
| 57 |
}
|
| 58 |
+
?>
|
lib/Varien/Directory/IFactory.php
CHANGED
|
@@ -20,7 +20,7 @@
|
|
| 20 |
*
|
| 21 |
* @category Varien
|
| 22 |
* @package Varien_Directory
|
| 23 |
-
* @copyright Copyright (c)
|
| 24 |
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
| 25 |
*/
|
| 26 |
|
| 20 |
*
|
| 21 |
* @category Varien
|
| 22 |
* @package Varien_Directory
|
| 23 |
+
* @copyright Copyright (c) 2010 Magento Inc. (http://www.magentocommerce.com)
|
| 24 |
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
| 25 |
*/
|
| 26 |
|
lib/Varien/File/Object.php
CHANGED
|
@@ -20,7 +20,7 @@
|
|
| 20 |
*
|
| 21 |
* @category Varien
|
| 22 |
* @package Varien_File
|
| 23 |
-
* @copyright Copyright (c)
|
| 24 |
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
| 25 |
*/
|
| 26 |
|
|
@@ -62,7 +62,7 @@ class Varien_File_Object extends SplFileObject implements IFactory {
|
|
| 62 |
*/
|
| 63 |
public function getFilesName(&$files)
|
| 64 |
{
|
| 65 |
-
$this->getFileName(
|
| 66 |
}
|
| 67 |
/**
|
| 68 |
* add file name to array
|
|
@@ -189,15 +189,12 @@ class Varien_File_Object extends SplFileObject implements IFactory {
|
|
| 189 |
*/
|
| 190 |
static public function getExt($fileName)
|
| 191 |
{
|
| 192 |
-
|
| 193 |
-
|
|
|
|
| 194 |
} else {
|
| 195 |
-
|
| 196 |
}
|
| 197 |
-
if(isset($path_parts["extension"]))
|
| 198 |
-
return $path_parts["extension"];
|
| 199 |
-
else
|
| 200 |
-
return '';
|
| 201 |
}
|
| 202 |
/**
|
| 203 |
* get name of file
|
| 20 |
*
|
| 21 |
* @category Varien
|
| 22 |
* @package Varien_File
|
| 23 |
+
* @copyright Copyright (c) 2010 Magento Inc. (http://www.magentocommerce.com)
|
| 24 |
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
| 25 |
*/
|
| 26 |
|
| 62 |
*/
|
| 63 |
public function getFilesName(&$files)
|
| 64 |
{
|
| 65 |
+
$this->getFileName($files);
|
| 66 |
}
|
| 67 |
/**
|
| 68 |
* add file name to array
|
| 189 |
*/
|
| 190 |
static public function getExt($fileName)
|
| 191 |
{
|
| 192 |
+
$path_parts = pathinfo($fileName);
|
| 193 |
+
if(isset($path_parts["extension"])) {
|
| 194 |
+
return $path_parts["extension"];
|
| 195 |
} else {
|
| 196 |
+
return '';
|
| 197 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
| 198 |
}
|
| 199 |
/**
|
| 200 |
* get name of file
|
lib/Varien/File/Uploader.php
CHANGED
|
@@ -147,7 +147,7 @@ class Varien_File_Uploader
|
|
| 147 |
function __construct($fileId)
|
| 148 |
{
|
| 149 |
$this->_setUploadFileId($fileId);
|
| 150 |
-
if(
|
| 151 |
$code = empty($this->_file['tmp_name']) ? self::TMP_NAME_EMPTY : 0;
|
| 152 |
throw new Exception('File was not uploaded.', $code);
|
| 153 |
} else {
|
|
@@ -245,26 +245,32 @@ class Varien_File_Uploader
|
|
| 245 |
*/
|
| 246 |
protected function _validateFile()
|
| 247 |
{
|
| 248 |
-
if(
|
| 249 |
return;
|
| 250 |
}
|
| 251 |
|
| 252 |
-
$filePath = $this->_file['tmp_name'];
|
| 253 |
-
$fileName = $this->_file['name'];
|
| 254 |
-
|
| 255 |
//is file extension allowed
|
| 256 |
-
|
| 257 |
-
if (!$this->checkAllowedExtension($fileExtension)) {
|
| 258 |
throw new Exception('Disallowed file type.');
|
| 259 |
}
|
| 260 |
//run validate callbacks
|
| 261 |
foreach ($this->_validateCallbacks as $params) {
|
| 262 |
if (is_object($params['object']) && method_exists($params['object'], $params['method'])) {
|
| 263 |
-
$params['object']->$params['method']($
|
| 264 |
}
|
| 265 |
}
|
| 266 |
}
|
| 267 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 268 |
/**
|
| 269 |
* Add validation callback model for us in self::_validateFile()
|
| 270 |
*
|
| 147 |
function __construct($fileId)
|
| 148 |
{
|
| 149 |
$this->_setUploadFileId($fileId);
|
| 150 |
+
if(!file_exists($this->_file['tmp_name'])) {
|
| 151 |
$code = empty($this->_file['tmp_name']) ? self::TMP_NAME_EMPTY : 0;
|
| 152 |
throw new Exception('File was not uploaded.', $code);
|
| 153 |
} else {
|
| 245 |
*/
|
| 246 |
protected function _validateFile()
|
| 247 |
{
|
| 248 |
+
if ($this->_fileExists === false) {
|
| 249 |
return;
|
| 250 |
}
|
| 251 |
|
|
|
|
|
|
|
|
|
|
| 252 |
//is file extension allowed
|
| 253 |
+
if (!$this->checkAllowedExtension($this->getFileExtension())) {
|
|
|
|
| 254 |
throw new Exception('Disallowed file type.');
|
| 255 |
}
|
| 256 |
//run validate callbacks
|
| 257 |
foreach ($this->_validateCallbacks as $params) {
|
| 258 |
if (is_object($params['object']) && method_exists($params['object'], $params['method'])) {
|
| 259 |
+
$params['object']->$params['method']($this->_file['tmp_name']);
|
| 260 |
}
|
| 261 |
}
|
| 262 |
}
|
| 263 |
|
| 264 |
+
/**
|
| 265 |
+
* Returns extension of the uploaded file
|
| 266 |
+
*
|
| 267 |
+
* @return string
|
| 268 |
+
*/
|
| 269 |
+
public function getFileExtension()
|
| 270 |
+
{
|
| 271 |
+
return $this->_fileExists ? pathinfo($this->_file['name'], PATHINFO_EXTENSION) : '';
|
| 272 |
+
}
|
| 273 |
+
|
| 274 |
/**
|
| 275 |
* Add validation callback model for us in self::_validateFile()
|
| 276 |
*
|
lib/Varien/Http/Adapter/Curl.php
CHANGED
|
@@ -27,8 +27,8 @@
|
|
| 27 |
/**
|
| 28 |
* HTTP CURL Adapter
|
| 29 |
*
|
| 30 |
-
* @category
|
| 31 |
-
* @package
|
| 32 |
* @author Magento Core Team <core@magentocommerce.com>
|
| 33 |
*/
|
| 34 |
class Varien_Http_Adapter_Curl implements Zend_Http_Client_Adapter_Interface
|
|
@@ -40,27 +40,85 @@ class Varien_Http_Adapter_Curl implements Zend_Http_Client_Adapter_Interface
|
|
| 40 |
*/
|
| 41 |
protected $_config = array();
|
| 42 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 43 |
protected $_resource;
|
| 44 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 45 |
/**
|
| 46 |
* Apply current configuration array to transport resource
|
|
|
|
|
|
|
| 47 |
*/
|
| 48 |
protected function _applyConfig()
|
| 49 |
{
|
| 50 |
-
|
| 51 |
-
|
| 52 |
-
curl_setopt($this->_getResource(), CURLOPT_TIMEOUT, $this->_config['timeout']);
|
| 53 |
}
|
| 54 |
-
|
| 55 |
-
|
| 56 |
-
|
| 57 |
-
|
| 58 |
-
curl_setopt ($this->_getResource(), CURLOPT_PROXY, $this->_config['proxy']);
|
| 59 |
}
|
| 60 |
-
|
| 61 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 62 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 63 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 64 |
return $this;
|
| 65 |
}
|
| 66 |
|
|
@@ -68,6 +126,7 @@ class Varien_Http_Adapter_Curl implements Zend_Http_Client_Adapter_Interface
|
|
| 68 |
* Set the configuration array for the adapter
|
| 69 |
*
|
| 70 |
* @param array $config
|
|
|
|
| 71 |
*/
|
| 72 |
public function setConfig($config = array())
|
| 73 |
{
|
|
@@ -78,25 +137,15 @@ class Varien_Http_Adapter_Curl implements Zend_Http_Client_Adapter_Interface
|
|
| 78 |
/**
|
| 79 |
* Connect to the remote server
|
| 80 |
*
|
|
|
|
| 81 |
* @param string $host
|
| 82 |
* @param int $port
|
| 83 |
* @param boolean $secure
|
| 84 |
-
* @
|
| 85 |
*/
|
| 86 |
public function connect($host, $port = 80, $secure = false)
|
| 87 |
{
|
| 88 |
-
|
| 89 |
-
if (isset($this->_config['timeout'])) {
|
| 90 |
-
curl_setopt($this->_getResource(), CURLOPT_TIMEOUT, $this->_config['timeout']);
|
| 91 |
-
}
|
| 92 |
-
if (isset($this->_config['maxredirects'])) {
|
| 93 |
-
curl_setopt($this->_getResource(), CURLOPT_MAXREDIRS, $this->_config['maxredirects']);
|
| 94 |
-
}
|
| 95 |
-
if (isset($this->_config['proxy'])) {
|
| 96 |
-
curl_setopt ($this->_getResource(), CURLOPT_PROXY, $this->_config['proxy']);
|
| 97 |
-
}
|
| 98 |
-
|
| 99 |
-
return $this;
|
| 100 |
}
|
| 101 |
|
| 102 |
/**
|
|
@@ -127,14 +176,15 @@ class Varien_Http_Adapter_Curl implements Zend_Http_Client_Adapter_Interface
|
|
| 127 |
curl_setopt($this->_getResource(), CURLOPT_HTTPGET, true);
|
| 128 |
}
|
| 129 |
|
| 130 |
-
if(
|
| 131 |
curl_setopt($this->_getResource(), CURLOPT_HTTPHEADER, $headers);
|
| 132 |
}
|
| 133 |
|
| 134 |
-
|
| 135 |
-
|
| 136 |
-
|
| 137 |
-
|
|
|
|
| 138 |
|
| 139 |
return $body;
|
| 140 |
}
|
|
@@ -149,8 +199,7 @@ class Varien_Http_Adapter_Curl implements Zend_Http_Client_Adapter_Interface
|
|
| 149 |
$response = curl_exec($this->_getResource());
|
| 150 |
|
| 151 |
// Remove 100 and 101 responses headers
|
| 152 |
-
if (Zend_Http_Response::extractCode($response) == 100 ||
|
| 153 |
-
Zend_Http_Response::extractCode($response) == 101) {
|
| 154 |
$response = preg_split('/^\r?$/m', $response, 2);
|
| 155 |
$response = trim($response[1]);
|
| 156 |
}
|
|
@@ -161,6 +210,7 @@ class Varien_Http_Adapter_Curl implements Zend_Http_Client_Adapter_Interface
|
|
| 161 |
/**
|
| 162 |
* Close the connection to the server
|
| 163 |
*
|
|
|
|
| 164 |
*/
|
| 165 |
public function close()
|
| 166 |
{
|
|
@@ -169,6 +219,11 @@ class Varien_Http_Adapter_Curl implements Zend_Http_Client_Adapter_Interface
|
|
| 169 |
return $this;
|
| 170 |
}
|
| 171 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 172 |
protected function _getResource()
|
| 173 |
{
|
| 174 |
if (is_null($this->_resource)) {
|
|
@@ -177,11 +232,21 @@ class Varien_Http_Adapter_Curl implements Zend_Http_Client_Adapter_Interface
|
|
| 177 |
return $this->_resource;
|
| 178 |
}
|
| 179 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 180 |
public function getErrno()
|
| 181 |
{
|
| 182 |
return curl_errno($this->_getResource());
|
| 183 |
}
|
| 184 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 185 |
public function getError()
|
| 186 |
{
|
| 187 |
return curl_error($this->_getResource());
|
| 27 |
/**
|
| 28 |
* HTTP CURL Adapter
|
| 29 |
*
|
| 30 |
+
* @category Varien
|
| 31 |
+
* @package Varien_Http
|
| 32 |
* @author Magento Core Team <core@magentocommerce.com>
|
| 33 |
*/
|
| 34 |
class Varien_Http_Adapter_Curl implements Zend_Http_Client_Adapter_Interface
|
| 40 |
*/
|
| 41 |
protected $_config = array();
|
| 42 |
|
| 43 |
+
/**
|
| 44 |
+
* Curl handle
|
| 45 |
+
*
|
| 46 |
+
* @var resource
|
| 47 |
+
*/
|
| 48 |
protected $_resource;
|
| 49 |
|
| 50 |
+
/**
|
| 51 |
+
* Allow parameters
|
| 52 |
+
*
|
| 53 |
+
* @var array
|
| 54 |
+
*/
|
| 55 |
+
protected $_allowedParams = array(
|
| 56 |
+
'timeout' => CURLOPT_TIMEOUT,
|
| 57 |
+
'maxredirects' => CURLOPT_MAXREDIRS,
|
| 58 |
+
'proxy' => CURLOPT_PROXY,
|
| 59 |
+
'ssl_cert' => CURLOPT_SSLCERT,
|
| 60 |
+
'userpwd' => CURLOPT_USERPWD
|
| 61 |
+
);
|
| 62 |
+
|
| 63 |
+
/**
|
| 64 |
+
* Array of CURL options
|
| 65 |
+
*
|
| 66 |
+
* @var array
|
| 67 |
+
*/
|
| 68 |
+
protected $_options = array();
|
| 69 |
+
|
| 70 |
/**
|
| 71 |
* Apply current configuration array to transport resource
|
| 72 |
+
*
|
| 73 |
+
* @return Varien_Http_Adapter_Curl
|
| 74 |
*/
|
| 75 |
protected function _applyConfig()
|
| 76 |
{
|
| 77 |
+
if (empty($this->_config)) {
|
| 78 |
+
return $this;
|
|
|
|
| 79 |
}
|
| 80 |
+
|
| 81 |
+
// apply additional options to cURL
|
| 82 |
+
foreach ($this->_options as $option => $value) {
|
| 83 |
+
curl_setopt($this->_getResource(), $option, $value);
|
|
|
|
| 84 |
}
|
| 85 |
+
|
| 86 |
+
$verifyPeer = isset($this->_config['verifypeer']) ? $this->_config['verifypeer'] : 0;
|
| 87 |
+
curl_setopt($this->_getResource(), CURLOPT_SSL_VERIFYPEER, $verifyPeer);
|
| 88 |
+
|
| 89 |
+
$verifyHost = isset($this->_config['verifyhost']) ? $this->_config['verifyhost'] : 0;
|
| 90 |
+
curl_setopt($this->_getResource(), CURLOPT_SSL_VERIFYHOST, $verifyHost);
|
| 91 |
+
|
| 92 |
+
foreach ($this->_config as $param => $curlOption) {
|
| 93 |
+
if (array_key_exists($param, $this->_allowedParams)) {
|
| 94 |
+
curl_setopt($this->_getResource(), $this->_allowedParams[$param], $this->_config[$param]);
|
| 95 |
+
}
|
| 96 |
}
|
| 97 |
+
return $this;
|
| 98 |
+
}
|
| 99 |
+
|
| 100 |
+
/**
|
| 101 |
+
* Set array of additional cURL options
|
| 102 |
+
*
|
| 103 |
+
* @param array $options
|
| 104 |
+
* @return Varien_Http_Adapter_Curl
|
| 105 |
+
*/
|
| 106 |
+
public function setOptions(array $options = array())
|
| 107 |
+
{
|
| 108 |
+
$this->_options = $options;
|
| 109 |
+
return $this;
|
| 110 |
+
}
|
| 111 |
|
| 112 |
+
/**
|
| 113 |
+
* Add additional option to cURL
|
| 114 |
+
*
|
| 115 |
+
* @param int $option the CURLOPT_* constants
|
| 116 |
+
* @param mixed $value
|
| 117 |
+
* @return Varien_Http_Adapter_Curl
|
| 118 |
+
*/
|
| 119 |
+
public function addOption($option, $value)
|
| 120 |
+
{
|
| 121 |
+
$this->_options[$option] = $value;
|
| 122 |
return $this;
|
| 123 |
}
|
| 124 |
|
| 126 |
* Set the configuration array for the adapter
|
| 127 |
*
|
| 128 |
* @param array $config
|
| 129 |
+
* @return Varien_Http_Adapter_Curl
|
| 130 |
*/
|
| 131 |
public function setConfig($config = array())
|
| 132 |
{
|
| 137 |
/**
|
| 138 |
* Connect to the remote server
|
| 139 |
*
|
| 140 |
+
* @deprecated since 1.4.0.0-rc1
|
| 141 |
* @param string $host
|
| 142 |
* @param int $port
|
| 143 |
* @param boolean $secure
|
| 144 |
+
* @return Varien_Http_Adapter_Curl
|
| 145 |
*/
|
| 146 |
public function connect($host, $port = 80, $secure = false)
|
| 147 |
{
|
| 148 |
+
return $this->_applyConfig();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 149 |
}
|
| 150 |
|
| 151 |
/**
|
| 176 |
curl_setopt($this->_getResource(), CURLOPT_HTTPGET, true);
|
| 177 |
}
|
| 178 |
|
| 179 |
+
if (is_array($headers)) {
|
| 180 |
curl_setopt($this->_getResource(), CURLOPT_HTTPHEADER, $headers);
|
| 181 |
}
|
| 182 |
|
| 183 |
+
/**
|
| 184 |
+
* @internal Curl options setter have to be re-factored
|
| 185 |
+
*/
|
| 186 |
+
$header = isset($this->_config['header']) ? $this->_config['header'] : true;
|
| 187 |
+
curl_setopt($this->_getResource(), CURLOPT_HEADER, $header);
|
| 188 |
|
| 189 |
return $body;
|
| 190 |
}
|
| 199 |
$response = curl_exec($this->_getResource());
|
| 200 |
|
| 201 |
// Remove 100 and 101 responses headers
|
| 202 |
+
if (Zend_Http_Response::extractCode($response) == 100 || Zend_Http_Response::extractCode($response) == 101) {
|
|
|
|
| 203 |
$response = preg_split('/^\r?$/m', $response, 2);
|
| 204 |
$response = trim($response[1]);
|
| 205 |
}
|
| 210 |
/**
|
| 211 |
* Close the connection to the server
|
| 212 |
*
|
| 213 |
+
* @return Varien_Http_Adapter_Curl
|
| 214 |
*/
|
| 215 |
public function close()
|
| 216 |
{
|
| 219 |
return $this;
|
| 220 |
}
|
| 221 |
|
| 222 |
+
/**
|
| 223 |
+
* Returns a cURL handle on success
|
| 224 |
+
*
|
| 225 |
+
* @return resource
|
| 226 |
+
*/
|
| 227 |
protected function _getResource()
|
| 228 |
{
|
| 229 |
if (is_null($this->_resource)) {
|
| 232 |
return $this->_resource;
|
| 233 |
}
|
| 234 |
|
| 235 |
+
/**
|
| 236 |
+
* Get last error number
|
| 237 |
+
*
|
| 238 |
+
* @return int
|
| 239 |
+
*/
|
| 240 |
public function getErrno()
|
| 241 |
{
|
| 242 |
return curl_errno($this->_getResource());
|
| 243 |
}
|
| 244 |
|
| 245 |
+
/**
|
| 246 |
+
* Get string with last error for the current session
|
| 247 |
+
*
|
| 248 |
+
* @return string
|
| 249 |
+
*/
|
| 250 |
public function getError()
|
| 251 |
{
|
| 252 |
return curl_error($this->_getResource());
|
lib/Varien/Pear.php
CHANGED
|
@@ -20,7 +20,7 @@
|
|
| 20 |
*
|
| 21 |
* @category Varien
|
| 22 |
* @package Varien_Pear
|
| 23 |
-
* @copyright Copyright (c)
|
| 24 |
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
| 25 |
*/
|
| 26 |
|
| 20 |
*
|
| 21 |
* @category Varien
|
| 22 |
* @package Varien_Pear
|
| 23 |
+
* @copyright Copyright (c) 2010 Magento Inc. (http://www.magentocommerce.com)
|
| 24 |
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
| 25 |
*/
|
| 26 |
|
lib/Varien/Pear/Frontend.php
CHANGED
|
@@ -20,7 +20,7 @@
|
|
| 20 |
*
|
| 21 |
* @category Varien
|
| 22 |
* @package Varien_Pear
|
| 23 |
-
* @copyright Copyright (c)
|
| 24 |
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
| 25 |
*/
|
| 26 |
|
| 20 |
*
|
| 21 |
* @category Varien
|
| 22 |
* @package Varien_Pear
|
| 23 |
+
* @copyright Copyright (c) 2010 Magento Inc. (http://www.magentocommerce.com)
|
| 24 |
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
| 25 |
*/
|
| 26 |
|
lib/Varien/Pear/Package.php
CHANGED
|
@@ -20,7 +20,7 @@
|
|
| 20 |
*
|
| 21 |
* @category Varien
|
| 22 |
* @package Varien_Pear
|
| 23 |
-
* @copyright Copyright (c)
|
| 24 |
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
| 25 |
*/
|
| 26 |
|
|
@@ -218,4 +218,4 @@ class Varien_Pear_Package
|
|
| 218 |
{
|
| 219 |
return $this;
|
| 220 |
}
|
| 221 |
-
}
|
| 20 |
*
|
| 21 |
* @category Varien
|
| 22 |
* @package Varien_Pear
|
| 23 |
+
* @copyright Copyright (c) 2010 Magento Inc. (http://www.magentocommerce.com)
|
| 24 |
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
| 25 |
*/
|
| 26 |
|
| 218 |
{
|
| 219 |
return $this;
|
| 220 |
}
|
| 221 |
+
}
|
lib/Varien/Pear/Registry.php
CHANGED
|
@@ -20,7 +20,7 @@
|
|
| 20 |
*
|
| 21 |
* @category Varien
|
| 22 |
* @package Varien_Pear
|
| 23 |
-
* @copyright Copyright (c)
|
| 24 |
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
| 25 |
*/
|
| 26 |
|
|
@@ -70,4 +70,4 @@ class Varien_Pear_Registry extends PEAR_Registry
|
|
| 70 |
}
|
| 71 |
}
|
| 72 |
}
|
| 73 |
-
}
|
| 20 |
*
|
| 21 |
* @category Varien
|
| 22 |
* @package Varien_Pear
|
| 23 |
+
* @copyright Copyright (c) 2010 Magento Inc. (http://www.magentocommerce.com)
|
| 24 |
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
| 25 |
*/
|
| 26 |
|
| 70 |
}
|
| 71 |
}
|
| 72 |
}
|
| 73 |
+
}
|
package.xml
CHANGED
|
@@ -1,18 +1,18 @@
|
|
| 1 |
<?xml version="1.0"?>
|
| 2 |
<package>
|
| 3 |
<name>Lib_Varien</name>
|
| 4 |
-
<version>1.
|
| 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.
|
| 12 |
<authors><author><name>Magento Core Team</name><user>core</user><email>core@magentocommerce.com</email></author></authors>
|
| 13 |
-
<date>
|
| 14 |
-
<time>
|
| 15 |
-
<contents><target name="magelib"><dir name="Varien"><file name="Autoload.php" hash="78ab4b97bbcca3c08de3619dd94550e6"/><dir name="Cache"><dir name="Backend"><file name="Database.php" hash="09535993a910ade50a2cd763da0f6d9e"/><file name="Eaccelerator.php" hash="00bc01db2c4457fdad760835992ae2dc"/><file name="Memcached.php" hash="9de5a66839dbd79d7c365b58514777fe"/></dir><file name="Core.php" hash="018b7952a12633b8ec2a3d856d2b2c41"/></dir><dir name="Convert"><dir name="Action"><file name="Abstract.php" hash="3de0b3f423df89243793e3b474b9cbe8"/><file name="Interface.php" hash="fe9129227525ffc1f862c6f1f85e83f1"/></dir><file name="Action.php" hash="ee3a0baf50c1bb0f1c0b67721f1965e6"/><dir name="Adapter"><file name="Abstract.php" hash="0c53dc267b75e595518365ab8f1d8ab4"/><dir name="Db"><file name="Table.php" hash="d6b8a1bfe2de4ed908ca0367fb226d2c"/></dir><dir name="Http"><file name="Curl.php" hash="938f2e176d58f61e078329949d23a92e"/></dir><file name="Http.php" hash="afb44986f4d6ba1cf84819bbb31004b2"/><file name="Interface.php" hash="2c4834f37eede972be48c8b3a2857661"/><file name="Io.php" hash="a9ceb53b810de3e183b439ba1bb1ba57"/><file name="Soap.php" hash="4b67a9ea45b12dfffabd26d2cb8942f2"/><file name="Std.php" hash="225b4e11d9ffcd1db8f99d54dc749687"/><dir name="Zend"><file name="Cache.php" hash="845fcb65276b05714b8d231c6b30f651"/><file name="Db.php" hash="794cb6226590ff7d2a7d1fbce26fcc05"/></dir></dir><dir name="Container"><file name="Abstract.php" hash="8f836665d0dec3c7cc7d93714e9c99b4"/><file name="Collection.php" hash="b1ef8a70ea806deb351b5413d6cfacef"/><file name="Generic.php" hash="bef8559c7a10ecf3ebb3f147795a2597"/><file name="Interface.php" hash="870470de0ec947f1039aa415d37d0f82"/></dir><file name="Exception.php" hash="58c9437dd946d5251234f55de3648d3f"/><dir name="Mapper"><file name="Abstract.php" hash="e1d9d87a1270ad6a499549dd87f9ac62"/><file name="Column.php" hash="7f74158a73fd8fa83052625ef07b1749"/><file name="Interface.php" hash="d8a8b98cece9ae38302914bbc910c094"/></dir><dir name="Parser"><file name="Abstract.php" hash="3559203bdcdb019daddd9ed558f596a7"/><file name="Csv.php" hash="f68d8dc8c0695296cc32b1ca716a8276"/><file name="Interface.php" hash="016ab96988f7ae02d2e84ed4878513ca"/><file name="Serialize.php" hash="52a93cacd5f3d3e0267bbffc74d7d715"/><dir name="Xml"><file name="Excel.php" hash="a8b60288a1aa41de84394b5c040c4e4d"/></dir></dir><dir name="Profile"><file name="Abstract.php" hash="c038c0b7a209c7a189beb6aa21df617b"/><file name="Collection.php" hash="2ff1f76cafa7e36826063069efdba8ad"/></dir><file name="Profile.php" hash="9b63f8909ed29bf5a3c729bc5934cb9c"/><dir name="Validator"><file name="Abstract.php" hash="3fdf8a0fcd2366563e330c30456f19b9"/><file name="Column.php" hash="da9bb1ffa8d6026a6d26365da4cec289"/><file name="Dryrun.php" hash="70f63aa2f6146c67658dc7bfd04ddf02"/><file name="Interface.php" hash="59c7a5d323e0a3bb6928754f3f4393ad"/></dir></dir><file name="Convert.php" hash="441a61c66ee524a024c7ffe8b7c7c3c2"/><dir name="Crypt"><file name="Abstract.php" hash="73980e75bef5f58855ea924c3693522d"/><file name="Mcrypt.php" hash="3c62cbb2f8e763e0da985b7bc054c5c3"/></dir><file name="Crypt.php" hash="cb28cabbc8a02fd86705bc0b52d7204b"/><dir name="Data"><dir name="Collection"><file name="Db.php" hash="7783ac1ea190203c1aab7ac71711e289"/><file name="Filesystem.php" hash="4574312fc65b08180fdcdba4d0358940"/></dir><file name="Collection.php" hash="22e12b16701101cce3aff641987ba563"/><dir name="Form"><file name="Abstract.php" hash="59476179174aeba63350312b28b4322f"/><dir name="Element"><file name="Abstract.php" hash="42d3ce5e06903c234969112e04f1b011"/><file name="Button.php" hash="98c64b5da29dff22cfae938caa5833c8"/><file name="Checkbox.php" hash="7992114fdc4aefafceebac2a08c1a434"/><file name="Checkboxes.php" hash="fdc32833161b60139e9859f387bce6c7"/><file name="Collection.php" hash="91c768b801f9eeebdd9121194e6fad24"/><file name="Column.php" hash="b6d1d32aca981ae0fd1c6a83fc655c9a"/><file name="Date.php" hash="3f5c8628e329cbc87c33c7e622a3b946"/><file name="Editor.php" hash="342d54be12c89037d5c74b5c81b78843"/><file name="Fieldset.php" hash="f78031a222ad4263826adf2f35622c72"/><file name="File.php" hash="463e8c8e106fe2018fdbf117e330423e"/><file name="Gallery.php" hash="6cb83ebc8efae252978fbd22c001642b"/><file name="Hidden.php" hash="ae6275e5d3b7df411bfda4fb4f995a8c"/><file name="Image.php" hash="9cd7231a0e14dc569045cf5fbf0e5b7f"/><file name="Imagefile.php" hash="2d6ed40fef1c2927ab22dea7d29336db"/><file name="Label.php" hash="6759a3286fb2b126e998934af8d6ce17"/><file name="Link.php" hash="fb213bbbce4e46ea03a96923defbfbb3"/><file name="Multiline.php" hash="087bd60ff98b4b9c094b9adec040f166"/><file name="Multiselect.php" hash="9e0d04674a743602438fd4190040944c"/><file name="Note.php" hash="f5b71ebcf5a2b774393d9f4d1581dc35"/><file name="Obscure.php" hash="b61a077fbdea1b93be0aafc2f2c2f391"/><file name="Password.php" hash="a15263e7b0fabe8bd6abf8487f43efcb"/><file name="Radio.php" hash="4b32afab119091759d93ec99fb2fd53b"/><file name="Radios.php" hash="9004386a01f6c2b09435f39bf9b5bb36"/><dir name="Renderer"><file name="Interface.php" hash="61baa8c8755a9a7e8eaac5786ae38f42"/></dir><file name="Reset.php" hash="51bc11836e12bd64390476e3ff393c13"/><file name="Select.php" hash="4402f264e6e2cae5fbad26bc44aa21fe"/><file name="Submit.php" hash="5b9e9e3db9bc70757030312b7d002b7e"/><file name="Text.php" hash="2e798cfd096ac0a87f9d9055000af3c3"/><file name="Textarea.php" hash="b88d00399b8f6846d56055c9416dd0bb"/><file name="Time.php" hash="f35d8d1dc0a90dd6f044f17c22d8dc4a"/></dir><dir name="Filter"><file name="Date.php" hash="80eee9775448a21a5332f3e5cb7edcc9"/><file name="Escapehtml.php" hash="0c02fdfbae30158aa14f45b937332249"/><file name="Interface.php" hash="4542e15af14cc92d7bf5a863d4bf5ddd"/><file name="Striptags.php" hash="2c4cd0905e4e3b99ba373ffeb9ab7d38"/></dir></dir><file name="Form.php" hash="407eee6f100c7befa18ca586b3c3ae04"/><dir name="Tree"><file name="Db.php" hash="d06e9a49ddb1ea94892f4f10e1b3fea1"/><file name="Dbp.php" hash="4bd7f5b9047870f125459dbf523f73a2"/><dir name="Node"><file name="Collection.php" hash="941c88db98d69ec170674380fe3413d5"/></dir><file name="Node.php" hash="e985629bbea05cd0e52d7ac82fc2ee27"/></dir><file name="Tree.php" hash="e39d73757e0535493badc5bea8459834"/></dir><file name="Date.php" hash="27ce5543f5a6ffaba55ec023c88db4d8"/><dir name="Db"><dir name="Adapter"><file name="Interface.php" hash="ea5a7008777ce827eea19f70107e22ba"/><file name="Mysqli.php" hash="4e6e03a6ddf127f58ab0326c4cfe9956"/><dir name="Pdo"><file name="Mysql.php" hash="49cec4cf8aa903eb9c4cff6bb26d7934"/></dir></dir><dir name="Ddl"><file name="Table.php" hash="5a9390d89162ea56f73a0817de4d029f"/></dir><file name="Exception.php" hash="93966b32e96f793f031244716ff37eed"/><file name="Helper.php" hash="eee52d2574360dabe7a5e830bc0a67b8"/><file name="Select.php" hash="5a5d369789c672060f68bcdbd2fa6a15"/><dir name="Statement"><file name="Parameter.php" hash="8d688f64d6780d18e517921ea5eb9ccb"/><dir name="Pdo"><file name="Mysql.php" hash="e82abad90774a126efb8bd27bc0f43f7"/></dir></dir><dir name="Tree"><file name="Exception.php" hash="6a00d12bbed94d648a974d213a816a4b"/><dir name="Node"><file name="Exception.php" hash="f890d0fc36e89aefd7cf04ae6c10a88e"/></dir><file name="Node.php" hash="6b048bbe2b2c46e405ffae8bca23e579"/><dir name="NodeSet"><file name="Exception.php" hash="2caa6a4b09846fe3b941563aa55d3c5f"/></dir><file name="NodeSet.php" hash="5e589b0c1221caf2693fe6f7d07e1ad3"/></dir><file name="Tree.php" hash="c7cc99ac052aa5d1ac721619d47506e6"/></dir><file name="Debug.php" hash="ec721f169e5a16524a17abba094d651d"/><dir name="Directory"><file name="Collection.php" hash="30b6c2b8bb8066d1636ff0d477ffc7fc"/><file name="Factory.php" hash="1ef74a40cd121892c730722ed0e3353a"/><file name="IFactory.php" hash="5ba24f161727511bbce35e588c55fe4d"/><file name="a.txt" hash="026e450c46ac92ea375302955a4f42fb"/></dir><dir name="Event"><file name="Collection.php" hash="cb422c6c7abb160fa3d7d54669bf2b2e"/><dir name="Observer"><file name="Collection.php" hash="b9c7d52c9563a19d15723bbc4a85fac6"/><file name="Cron.php" hash="0e04e63cf24f5cce3031f5896c439b68"/><file name="Regex.php" hash="f97f5a4435d560e073d725681cb15264"/></dir><file name="Observer.php" hash="eff7b66ce01d3f8fc4c00d974a2d5440"/></dir><file name="Event.php" hash="1836bb96f191e616d59178f17e407277"/><file name="Exception.php" hash="6beb1561720cc6c7a894a955ff2251b7"/><dir name="File"><file name="Csv.php" hash="5736e17051a3e778c59b99ed669caee5"/><file name="CsvMulty.php" hash="af4518063d4d9f03cfbfca832c1b9d76"/><file name="Object.php" hash="9ffd59210edf58d402dd961d62f9819a"/><dir name="Transfer"><dir name="Adapter"><file name="Http.php" hash="c71dc1460cdcf062adb97b577e621923"/></dir></dir><dir name="Uploader"><file name="Image.php" hash="2655d6497c074c8c4998c58320d60c14"/></dir><file name="Uploader.php" hash="4b8de17ad226bac218447aafa40b5caf"/></dir><dir name="Filter"><dir name="Array"><file name="Grid.php" hash="14bd2f5ab60e7255557fc2dff7f24a37"/></dir><file name="Array.php" hash="a38e3d26f47d1bfaf4e023662d9a3dad"/><file name="Email.php" hash="067f3ea6f1597ea2501455865977d789"/><file name="Money.php" hash="8bec682670cb4cbf48e4b4264e2ab188"/><dir name="Object"><file name="Grid.php" hash="e3c3fa92761e5a1e1401192d8362301e"/></dir><file name="Object.php" hash="5b85aaff354eb0770e14efcfebda263b"/><file name="Sprintf.php" hash="0dd85ddc3d4b737d7cc6308afc12db18"/><dir name="Template"><file name="Simple.php" hash="b342cd136c10a6630d2d7dccd4137387"/><dir name="Tokenizer"><file name="Abstract.php" hash="d737a3d6599939b2a12b55975c9af780"/><file name="Parameter.php" hash="140ab2548a3da859473a46c7b0d44504"/><file name="Variable.php" hash="4ba64c31b234db22c2ff1799a49e7798"/></dir></dir><file name="Template.php" hash="59612d4851769548308449114b6c122a"/></dir><dir name="Http"><dir name="Adapter"><file name="Curl.php" hash="4b74b0a2c86732d32a653794a3afc52f"/></dir><file name="Client.php" hash="eac22d5beaca06c1678c327a13e7f45d"/></dir><dir name="Image"><dir name="Adapter"><file name="Abstract.php" hash="0ac17ab0c82dea6289caf0985be0c47d"/><file name="Gd2.php" hash="a35a55acdb36ed25a8398b10cea3afef"/></dir><file name="Adapter.php" hash="edbab0bcfa931ae1d8f813f467e6b311"/></dir><file name="Image.php" hash="dfec3144e465eb2558a76a84f4736254"/><dir name="Io"><file name="Abstract.php" hash="53e7055dfe0ca7d133b94cfbf3621693"/><file name="Exception.php" hash="493365429caf5d2170c00137b081b195"/><file name="File.php" hash="4d0613516c6d3824d1ec4442c99a6b8a"/><file name="Ftp.php" hash="f349b9b833133853c902abb493d4f3bd"/><file name="Interface.php" hash="0b26ea223a4bed00df9b7b808b2acf80"/><file name="Sftp.php" hash="461d458eb368ed01f3b9194bafc4030d"/></dir><dir name="Object"><file name="Cache.php" hash="a87d2ae2d015a4e2f2fc1b611feccfcd"/><file name="Mapper.php" hash="1180b9b29c366d886e8af05181aebbce"/></dir><file name="Object.php" hash="0d5d06e7eb4439372bf90e2e41e998d7"/><dir name="Pear"><file name="Frontend.php" hash="d3d737fc569c67b177ccd0b6dcb5f22f"/><file name="Package.php" hash="8468373495be75543f7c853f94177d0b"/><file name="Registry.php" hash="5c38bf2cdb4108267acdcb23bb3dd93d"/></dir><file name="Pear.php" hash="7d068de3a3989c8575521c143261fe40"/><file name="Profiler.php" hash="d434c08a6dd3ef8eb168e3a3d46f057f"/><dir name="Simplexml"><dir name="Config"><dir name="Cache"><file name="Abstract.php" hash="6dbbd6f1bc63c1b7ee086399da30f4e0"/><file name="File.php" hash="f99292ec6d04d5464a1313a2c52880d4"/></dir></dir><file name="Config.php" hash="a957b7feccdf430239af81610a6ac281"/><file name="Element.php" hash="f8321180f2b343080ffd89591943b239"/></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.11.1.0</min><max>1.12.0.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>
|
| 1 |
<?xml version="1.0"?>
|
| 2 |
<package>
|
| 3 |
<name>Lib_Varien</name>
|
| 4 |
+
<version>1.7.0.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.7.0.0</notes>
|
| 12 |
<authors><author><name>Magento Core Team</name><user>core</user><email>core@magentocommerce.com</email></author></authors>
|
| 13 |
+
<date>2012-04-23</date>
|
| 14 |
+
<time>13:47:59</time>
|
| 15 |
+
<contents><target name="magelib"><dir name="Varien"><file name="Autoload.php" hash="96a0c175e6a98562f058f9a02c167bbb"/><dir name="Cache"><dir name="Backend"><file name="Database.php" hash="09535993a910ade50a2cd763da0f6d9e"/><file name="Eaccelerator.php" hash="00bc01db2c4457fdad760835992ae2dc"/><file name="Memcached.php" hash="9de5a66839dbd79d7c365b58514777fe"/></dir><file name="Core.php" hash="018b7952a12633b8ec2a3d856d2b2c41"/></dir><dir name="Convert"><dir name="Action"><file name="Abstract.php" hash="3de0b3f423df89243793e3b474b9cbe8"/><file name="Interface.php" hash="fe9129227525ffc1f862c6f1f85e83f1"/></dir><file name="Action.php" hash="ee3a0baf50c1bb0f1c0b67721f1965e6"/><dir name="Adapter"><file name="Abstract.php" hash="0c53dc267b75e595518365ab8f1d8ab4"/><dir name="Db"><file name="Table.php" hash="d6b8a1bfe2de4ed908ca0367fb226d2c"/></dir><dir name="Http"><file name="Curl.php" hash="76e12f13e1eb48eb3e8c36cea9a6ece3"/></dir><file name="Http.php" hash="afb44986f4d6ba1cf84819bbb31004b2"/><file name="Interface.php" hash="2c4834f37eede972be48c8b3a2857661"/><file name="Io.php" hash="a9ceb53b810de3e183b439ba1bb1ba57"/><file name="Soap.php" hash="4b67a9ea45b12dfffabd26d2cb8942f2"/><file name="Std.php" hash="225b4e11d9ffcd1db8f99d54dc749687"/><dir name="Zend"><file name="Cache.php" hash="845fcb65276b05714b8d231c6b30f651"/><file name="Db.php" hash="794cb6226590ff7d2a7d1fbce26fcc05"/></dir></dir><dir name="Container"><file name="Abstract.php" hash="8f836665d0dec3c7cc7d93714e9c99b4"/><file name="Collection.php" hash="b1ef8a70ea806deb351b5413d6cfacef"/><file name="Generic.php" hash="bef8559c7a10ecf3ebb3f147795a2597"/><file name="Interface.php" hash="870470de0ec947f1039aa415d37d0f82"/></dir><file name="Exception.php" hash="58c9437dd946d5251234f55de3648d3f"/><dir name="Mapper"><file name="Abstract.php" hash="e1d9d87a1270ad6a499549dd87f9ac62"/><file name="Column.php" hash="7f74158a73fd8fa83052625ef07b1749"/><file name="Interface.php" hash="d8a8b98cece9ae38302914bbc910c094"/></dir><dir name="Parser"><file name="Abstract.php" hash="3559203bdcdb019daddd9ed558f596a7"/><file name="Csv.php" hash="f68d8dc8c0695296cc32b1ca716a8276"/><file name="Interface.php" hash="016ab96988f7ae02d2e84ed4878513ca"/><file name="Serialize.php" hash="52a93cacd5f3d3e0267bbffc74d7d715"/><dir name="Xml"><file name="Excel.php" hash="61386b14392bc29b7f734ed6ee6ee3c5"/></dir></dir><dir name="Profile"><file name="Abstract.php" hash="c038c0b7a209c7a189beb6aa21df617b"/><file name="Collection.php" hash="2ff1f76cafa7e36826063069efdba8ad"/></dir><file name="Profile.php" hash="9b63f8909ed29bf5a3c729bc5934cb9c"/><dir name="Validator"><file name="Abstract.php" hash="3fdf8a0fcd2366563e330c30456f19b9"/><file name="Column.php" hash="da9bb1ffa8d6026a6d26365da4cec289"/><file name="Dryrun.php" hash="70f63aa2f6146c67658dc7bfd04ddf02"/><file name="Interface.php" hash="59c7a5d323e0a3bb6928754f3f4393ad"/></dir></dir><file name="Convert.php" hash="441a61c66ee524a024c7ffe8b7c7c3c2"/><dir name="Crypt"><file name="Abstract.php" hash="73980e75bef5f58855ea924c3693522d"/><file name="Mcrypt.php" hash="3c62cbb2f8e763e0da985b7bc054c5c3"/></dir><file name="Crypt.php" hash="cb28cabbc8a02fd86705bc0b52d7204b"/><dir name="Data"><dir name="Collection"><file name="Db.php" hash="7a4be602c7a6acf3ac5dcfb26f83e50f"/><file name="Filesystem.php" hash="8c2e8522e1782dbea4d52f44566cd02a"/></dir><file name="Collection.php" hash="e55f81c3fdf4b39d05bbbce7573e0de8"/><dir name="Form"><file name="Abstract.php" hash="4978be2832783e6ab2f7c4e291bbf4d5"/><dir name="Element"><file name="Abstract.php" hash="a8982e3215fc63a5cb40a4e964f6d3ea"/><file name="Button.php" hash="98c64b5da29dff22cfae938caa5833c8"/><file name="Checkbox.php" hash="7992114fdc4aefafceebac2a08c1a434"/><file name="Checkboxes.php" hash="fdc32833161b60139e9859f387bce6c7"/><file name="Collection.php" hash="cade28ccfd09e8b55394bf3a7d595d70"/><file name="Column.php" hash="b6d1d32aca981ae0fd1c6a83fc655c9a"/><file name="Date.php" hash="3f5c8628e329cbc87c33c7e622a3b946"/><file name="Editor.php" hash="40e2585d72356d2b5e7d55fc2373c6ea"/><file name="Fieldset.php" hash="f78031a222ad4263826adf2f35622c72"/><file name="File.php" hash="463e8c8e106fe2018fdbf117e330423e"/><file name="Gallery.php" hash="6cb83ebc8efae252978fbd22c001642b"/><file name="Hidden.php" hash="ae6275e5d3b7df411bfda4fb4f995a8c"/><file name="Image.php" hash="c4d7be9bf6b1b19590d44bf9837eb748"/><file name="Imagefile.php" hash="2d6ed40fef1c2927ab22dea7d29336db"/><file name="Label.php" hash="ced6668e926c5cd10e5dfc93e1764070"/><file name="Link.php" hash="fb213bbbce4e46ea03a96923defbfbb3"/><file name="Multiline.php" hash="087bd60ff98b4b9c094b9adec040f166"/><file name="Multiselect.php" hash="9e0d04674a743602438fd4190040944c"/><file name="Note.php" hash="f5b71ebcf5a2b774393d9f4d1581dc35"/><file name="Obscure.php" hash="b61a077fbdea1b93be0aafc2f2c2f391"/><file name="Password.php" hash="a15263e7b0fabe8bd6abf8487f43efcb"/><file name="Radio.php" hash="4b32afab119091759d93ec99fb2fd53b"/><file name="Radios.php" hash="9004386a01f6c2b09435f39bf9b5bb36"/><dir name="Renderer"><file name="Interface.php" hash="61baa8c8755a9a7e8eaac5786ae38f42"/></dir><file name="Reset.php" hash="51bc11836e12bd64390476e3ff393c13"/><file name="Select.php" hash="4402f264e6e2cae5fbad26bc44aa21fe"/><file name="Submit.php" hash="5b9e9e3db9bc70757030312b7d002b7e"/><file name="Text.php" hash="2e798cfd096ac0a87f9d9055000af3c3"/><file name="Textarea.php" hash="b88d00399b8f6846d56055c9416dd0bb"/><file name="Time.php" hash="f35d8d1dc0a90dd6f044f17c22d8dc4a"/></dir><dir name="Filter"><file name="Date.php" hash="80eee9775448a21a5332f3e5cb7edcc9"/><file name="Escapehtml.php" hash="0c02fdfbae30158aa14f45b937332249"/><file name="Interface.php" hash="4542e15af14cc92d7bf5a863d4bf5ddd"/><file name="Striptags.php" hash="2c4cd0905e4e3b99ba373ffeb9ab7d38"/></dir></dir><file name="Form.php" hash="407eee6f100c7befa18ca586b3c3ae04"/><dir name="Tree"><file name="Db.php" hash="d06e9a49ddb1ea94892f4f10e1b3fea1"/><file name="Dbp.php" hash="4bd7f5b9047870f125459dbf523f73a2"/><dir name="Node"><file name="Collection.php" hash="941c88db98d69ec170674380fe3413d5"/></dir><file name="Node.php" hash="e985629bbea05cd0e52d7ac82fc2ee27"/></dir><file name="Tree.php" hash="e39d73757e0535493badc5bea8459834"/></dir><file name="Date.php" hash="7830b6da8a6a54b5ef8d17b7f0d248f0"/><dir name="Db"><dir name="Adapter"><file name="Interface.php" hash="aa9ce5d0b03233176e41d2f8a8706590"/><file name="Mysqli.php" hash="4e6e03a6ddf127f58ab0326c4cfe9956"/><dir name="Pdo"><file name="Mysql.php" hash="d250406ead15e659a6e3a75304d67369"/></dir></dir><dir name="Ddl"><file name="Table.php" hash="5a9390d89162ea56f73a0817de4d029f"/></dir><file name="Exception.php" hash="93966b32e96f793f031244716ff37eed"/><file name="Helper.php" hash="eee52d2574360dabe7a5e830bc0a67b8"/><file name="Select.php" hash="62250da9eb320e684a4c121c3a40d473"/><dir name="Statement"><file name="Parameter.php" hash="8d688f64d6780d18e517921ea5eb9ccb"/><dir name="Pdo"><file name="Mysql.php" hash="e82abad90774a126efb8bd27bc0f43f7"/></dir></dir><dir name="Tree"><file name="Exception.php" hash="6a00d12bbed94d648a974d213a816a4b"/><dir name="Node"><file name="Exception.php" hash="f890d0fc36e89aefd7cf04ae6c10a88e"/></dir><file name="Node.php" hash="6b048bbe2b2c46e405ffae8bca23e579"/><dir name="NodeSet"><file name="Exception.php" hash="2caa6a4b09846fe3b941563aa55d3c5f"/></dir><file name="NodeSet.php" hash="5e589b0c1221caf2693fe6f7d07e1ad3"/></dir><file name="Tree.php" hash="c7cc99ac052aa5d1ac721619d47506e6"/></dir><file name="Debug.php" hash="ec721f169e5a16524a17abba094d651d"/><dir name="Directory"><file name="Collection.php" hash="59faf0b57bc10bdf3daade69b51fd142"/><file name="Factory.php" hash="112fda936935de43f45bf0e1b1ebfd23"/><file name="IFactory.php" hash="bb7a2578774f58922f7d5b3a90c34e3e"/><file name="a.txt" hash="026e450c46ac92ea375302955a4f42fb"/></dir><dir name="Event"><file name="Collection.php" hash="cb422c6c7abb160fa3d7d54669bf2b2e"/><dir name="Observer"><file name="Collection.php" hash="b9c7d52c9563a19d15723bbc4a85fac6"/><file name="Cron.php" hash="0e04e63cf24f5cce3031f5896c439b68"/><file name="Regex.php" hash="f97f5a4435d560e073d725681cb15264"/></dir><file name="Observer.php" hash="eff7b66ce01d3f8fc4c00d974a2d5440"/></dir><file name="Event.php" hash="1836bb96f191e616d59178f17e407277"/><file name="Exception.php" hash="6beb1561720cc6c7a894a955ff2251b7"/><dir name="File"><file name="Csv.php" hash="5736e17051a3e778c59b99ed669caee5"/><file name="CsvMulty.php" hash="af4518063d4d9f03cfbfca832c1b9d76"/><file name="Object.php" hash="86116483e252e66c516208e43b3bb920"/><dir name="Transfer"><dir name="Adapter"><file name="Http.php" hash="c71dc1460cdcf062adb97b577e621923"/></dir></dir><dir name="Uploader"><file name="Image.php" hash="2655d6497c074c8c4998c58320d60c14"/></dir><file name="Uploader.php" hash="7e66b733d1e9be6575cbcfd9e9aaac48"/></dir><dir name="Filter"><dir name="Array"><file name="Grid.php" hash="14bd2f5ab60e7255557fc2dff7f24a37"/></dir><file name="Array.php" hash="a38e3d26f47d1bfaf4e023662d9a3dad"/><file name="Email.php" hash="067f3ea6f1597ea2501455865977d789"/><file name="Money.php" hash="8bec682670cb4cbf48e4b4264e2ab188"/><dir name="Object"><file name="Grid.php" hash="e3c3fa92761e5a1e1401192d8362301e"/></dir><file name="Object.php" hash="5b85aaff354eb0770e14efcfebda263b"/><file name="Sprintf.php" hash="0dd85ddc3d4b737d7cc6308afc12db18"/><dir name="Template"><file name="Simple.php" hash="b342cd136c10a6630d2d7dccd4137387"/><dir name="Tokenizer"><file name="Abstract.php" hash="d737a3d6599939b2a12b55975c9af780"/><file name="Parameter.php" hash="140ab2548a3da859473a46c7b0d44504"/><file name="Variable.php" hash="4ba64c31b234db22c2ff1799a49e7798"/></dir></dir><file name="Template.php" hash="59612d4851769548308449114b6c122a"/></dir><dir name="Http"><dir name="Adapter"><file name="Curl.php" hash="6d7dd607c55582ac08416f1940f3868c"/></dir><file name="Client.php" hash="eac22d5beaca06c1678c327a13e7f45d"/></dir><dir name="Image"><dir name="Adapter"><file name="Abstract.php" hash="0ac17ab0c82dea6289caf0985be0c47d"/><file name="Gd2.php" hash="a35a55acdb36ed25a8398b10cea3afef"/></dir><file name="Adapter.php" hash="edbab0bcfa931ae1d8f813f467e6b311"/></dir><file name="Image.php" hash="dfec3144e465eb2558a76a84f4736254"/><dir name="Io"><file name="Abstract.php" hash="53e7055dfe0ca7d133b94cfbf3621693"/><file name="Exception.php" hash="493365429caf5d2170c00137b081b195"/><file name="File.php" hash="4d0613516c6d3824d1ec4442c99a6b8a"/><file name="Ftp.php" hash="f349b9b833133853c902abb493d4f3bd"/><file name="Interface.php" hash="0b26ea223a4bed00df9b7b808b2acf80"/><file name="Sftp.php" hash="461d458eb368ed01f3b9194bafc4030d"/></dir><dir name="Object"><file name="Cache.php" hash="a87d2ae2d015a4e2f2fc1b611feccfcd"/><file name="Mapper.php" hash="1180b9b29c366d886e8af05181aebbce"/></dir><file name="Object.php" hash="0d5d06e7eb4439372bf90e2e41e998d7"/><dir name="Pear"><file name="Frontend.php" hash="61a9a308d54eca9e0a0bbc09296189f1"/><file name="Package.php" hash="a4261d73ebc059785fe418c6350bb4e5"/><file name="Registry.php" hash="5780af5995ea9af32032d3ebe496e251"/></dir><file name="Pear.php" hash="d60801531ef3ac16b26e302961310c53"/><file name="Profiler.php" hash="d434c08a6dd3ef8eb168e3a3d46f057f"/><dir name="Simplexml"><dir name="Config"><dir name="Cache"><file name="Abstract.php" hash="6dbbd6f1bc63c1b7ee086399da30f4e0"/><file name="File.php" hash="f99292ec6d04d5464a1313a2c52880d4"/></dir></dir><file name="Config.php" hash="a957b7feccdf430239af81610a6ac281"/><file name="Element.php" hash="f8321180f2b343080ffd89591943b239"/></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.11.1.0</min><max>1.12.0.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>
|
