I am trying to get categories in helper file I am using Mage::() to get categories in my helper file but it is throwing error. Here is the code to my helper file.
<?php
namespace Pulsestorm\HelloWorldMVVM\Helper;
use Magento\Framework\App\Helper\AbstractHelper;
class Data extends AbstractHelper
{
public function getCategoriesDropdown(){
$categories=Mage::getModel('catalog/category')->getCollection()->addAttributeToSelect('name')->addAttributeToSort('path', 'asc')->addFieldToFilter('is_active', array('eq'=>'1'));
$first = array();
$children = array();
foreach ($categories->getItems() as $cat) {
if ($cat->getLevel() == 2) {
$first[$cat->getId()] = $cat;
} else if ($cat->getParentId()) {
$children[$cat->getParentId()][] = $cat->getData();
}
}
return array('first' => $first, 'children' => $children);
}
}
Now i am getting this error upon executing my code.
Fatal error: Uncaught Error: Class 'Pulsestorm\HelloWorldMVVM\Helper\Mage' not found in D:\wamp\www\alo_digi_quickstart\app\code\Pulsestorm\HelloWorldMVVM\Helper\Data.php:9 Stack trace: #0
I have to use this result in my phtml file which is here.
<?php $tree=$this->helper('Pulsestorm\HelloWorldMVVM\Helper\Data')->getCategoriesDropdown();?>
<script type="text/javascript">
var children = $H(<?php echo json_encode($tree['children']) ?>);
function showCat(obj, level) {
var catId = obj.value;
level += 1;
if ($('cat_container_' + level)) {
$('cat_container_' + level).remove();
}
if (children.get(catId)) {
var options = children.get(catId);
var html = '<select id="cat_' + catId + '" onchange="showCat(this, ' + level + ')">';
for (var i = 0; i < options.length; i++) {
html += '<option value="' + options[i].entity_id + '">' + options[i].name + '</option>';
}
html += '</select>';
html = '<div id="cat_container_' + level + '">' + html + '</div>';
$('sub_cat').insert(html);
}
}
</script>
<select id="first_cat" onchange="showCat(this, 2)">
<?php foreach ($tree['first'] as $cat): ?>
<option value="<?php echo $cat->getId() ?>"><?php echo $cat->getName() ?></option>
<?php endforeach ?>
</select>
<div id="sub_cat"></div>
Mage
class in magento2