本文整理汇总了PHP中Mage_Core_Model_Mysql4_Collection_Abstract类的典型用法代码示例。如果您正苦于以下问题:PHP Mage_Core_Model_Mysql4_Collection_Abstract类的具体用法?PHP Mage_Core_Model_Mysql4_Collection_Abstract怎么用?PHP Mage_Core_Model_Mysql4_Collection_Abstract使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了Mage_Core_Model_Mysql4_Collection_Abstract类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: toOptions
public function toOptions(Mage_Core_Model_Mysql4_Collection_Abstract $collection, array $fields)
{
$key = key($fields);
$value = $fields[$key];
$data = $collection->toArray(array($key, $value));
$result = '';
foreach ($data['items'] as $item) {
$result[$item[$key]] = $item[$value];
}
return $result;
}
示例2: _removeHiddenCollectionItems
/**
* Remove hidden items from a product or category collection
*
* @param Mage_Eav_Model_Entity_Collection_Abstract|Mage_Core_Model_Mysql4_Collection_Abstract $collection
*/
public function _removeHiddenCollectionItems($collection)
{
// Loop through each category or product
foreach ($collection as $key => $item) {
$catData = Mage::getModel("catalog/category")->load($item->getEntityId());
// If it is a category
if ($item->getEntityTypeId() == 3 && $item->getLevel() != 2) {
if (strtolower($catData->getUrlKey()) != 'get-the-look' && strtolower($catData->getUrlKey()) != 'new-arrivals') {
if ($this->getProductCountCustom($catData) <= 0) {
$collection->removeItemByKey($key);
}
}
}
}
}
示例3: _init
/**
* Standard resource collection initalization
*
* @param string $model
* @return Mage_Core_Model_Mysql4_Collection_Abstract
*/
protected function _init($model, $resourceModel = null)
{
parent::_init($model, $resourceModel);
$this->_relationTable = $this->getMainTable() . '_relation';
$this->_localeTable = $this->getMainTable() . '_locale';
return $this;
}
示例4: _getMatchedIds
protected function _getMatchedIds($query)
{
if (!is_array($this->_attributes) || !count($this->_attributes)) {
Mage::throwException('Searchable attributes not defined');
}
$query = Mage::helper('core/string')->splitWords($query, true, 100);
$select = $this->_collection->getSelect();
$having = array();
foreach ($query as $word) {
$subhaving = array();
foreach ($this->_attributes as $attr => $weight) {
$subhaving[] = $this->_getCILike($attr, $word, array('position' => 'any'));
}
$having[] = '(' . implode(' OR ', $subhaving) . ')';
}
$havingCondition = implode(' AND ', $having);
if ($havingCondition != '') {
$select->having($havingCondition);
}
$read = Mage::getSingleton('core/resource')->getConnection('core_read');
$stmt = $read->query($select);
$result = array();
while ($row = $stmt->fetch(Zend_Db::FETCH_ASSOC)) {
$result[$row[$this->_primaryKey]] = 0;
}
return $result;
}
示例5: _initSelect
protected function _initSelect()
{
parent::_initSelect();
$modelCat = Mage::getResourceSingleton('downloads/categories');
$this->getSelect()->joinLeft(array('relation' => $this->getTable('downloads/relation')), 'main_table.file_id = relation.file_id', array('products_count' => 'COUNT(relation.product_id)'))->joinLeft(array('cat' => $modelCat->getMainTable()), 'main_table.category_id = cat.category_id', array('title'))->group('main_table.file_id');
return $this;
}
示例6: _afterLoad
protected function _afterLoad()
{
/*$items = $this->getColumnValues('post_id');
if (count($items)) {
$select = $this->getConnection()->select()
->from($this->getTable('store'))
->where($this->getTable('store').'.post_id IN (?)', $items);
if ($result = $this->getConnection()->fetchPairs($select)) {
foreach ($this as $item) {
if (!isset($result[$item->getData('post_id')])) {
continue;
}
if ($result[$item->getData('post_id')] == 0) {
$storeCode = key(Mage::app()->getStores(false, true));
} else {
$storeCode = Mage::app()->getStore($result[$item->getData('post_id')])->getCode();
}
$item->setData('store_code', $storeCode);
}
}
}*/
if (count($this) > 0) {
Mage::dispatchEvent("fontis_blog_post_collection_load_after", array("collection" => $this));
}
return parent::_afterLoad();
}
示例7: addFieldToFilter
public function addFieldToFilter($attribute, $condition = null)
{
if ($attribute == 'status') {
$attribute = 'main_table.' . $attribute;
}
return parent::addFieldToFilter($attribute, $condition);
}
示例8: _initSelect
/**
*
*
* (overrides parent method)
*/
public function _initSelect()
{
parent::_initSelect();
// Add a simplified version of the transfer references (1 reference per 1 transfer)
$this->_addTransferReferences($this->_getSingleReferenceSelect());
return $this;
}
示例9: load
public function load($printQuery = false, $logQuery = false)
{
Varien_Profiler::start("aw::advancedreports::aggregator::load_collection");
parent::load($printQuery, $logQuery);
Varien_Profiler::stop("aw::advancedreports::aggregator::load_collection");
return $this;
}
示例10: _initSelect
protected function _initSelect()
{
parent::_initSelect();
$select = $this->getSelect();
$select->join(array('cust' => $this->getTable('rewardpoints/customer_entity')), 'rewardpoints_referral_parent_id = cust.entity_id');
return $this;
}
示例11: _afterLoad
/**
* After load processing - adds store information to the datasets
*
*/
protected function _afterLoad()
{
$connection = $this->getConnection();
foreach ($this as $item) {
$page_stores = array();
if ($alias = $item->getData("alias")) {
$cms_page = Mage::getModel("cms/page")->load($alias, "identifier");
if ($cms_page->getPageId()) {
$page_stores = $cms_page->getStoreId();
$select = $connection->select()->from(array('cps' => $this->getTable('cms/page_store')))->where('cps.page_id = (?)', $cms_page->getPageId());
if ($result = $connection->fetchPairs($select)) {
if ($result[$cms_page->getPageId()] == 0) {
$stores = Mage::app()->getStores(false, true);
$storeId = current($stores)->getId();
$storeCode = key($stores);
} else {
$storeId = $result[$cms_page->getPageId()];
$storeCode = Mage::app()->getStore($storeId)->getCode();
}
$item->setData('_first_store_id', $storeId);
$item->setData('store_code', $storeCode);
}
$stores = isset($stores) && $stores ? $stores : array(0);
$item->setData("store_id", $page_stores);
}
}
}
parent::_afterLoad();
}
示例12: _afterLoad
/**
* @return Varien_Data_Collection_Db
*/
public function _afterLoad()
{
foreach ($this->getItems() as $item) {
$this->getResource()->unserializeFields($item);
}
return parent::_afterLoadData();
}
示例13: _initSelect
protected function _initSelect()
{
parent::_initSelect();
// $this->getSelect()->where('main_table.post_type=?', 'post')
// ->where('main_table.post_status=?', 'publish');
return $this;
}
示例14: _afterLoad
protected function _afterLoad()
{
parent::_afterLoad();
$this->_loadLabels();
$this->_loadPrices();
return $this;
}
示例15: _afterLoad
protected function _afterLoad()
{
parent::_afterLoad();
if (VPROF) {
Varien_Profiler::start('TTT1:' . __METHOD__);
}
$this->_addProductAttributes();
if (VPROF) {
Varien_Profiler::stop('TTT1:' . __METHOD__);
}
if (VPROF) {
Varien_Profiler::start('TTT2:' . __METHOD__);
}
$this->_addAssociatedProductFilters();
if (VPROF) {
Varien_Profiler::stop('TTT2:' . __METHOD__);
}
if (VPROF) {
Varien_Profiler::start('TTT3:' . __METHOD__);
}
$this->_loadLabels();
if (VPROF) {
Varien_Profiler::stop('TTT3:' . __METHOD__);
}
if (VPROF) {
Varien_Profiler::start('TTT4:' . __METHOD__);
}
$this->_loadPrices();
if (VPROF) {
Varien_Profiler::stop('TTT4:' . __METHOD__);
}
return $this;
}
开发者ID:ronseigel,项目名称:agent-ohm,代码行数:33,代码来源:Resource_Eav_Mysql4_Product_Type_Configurable_Attribute_Collection.php