iaCore::setPackagesData PHP Method

setPackagesData() public method

public setPackagesData ( $regenerate = false )
    public function setPackagesData($regenerate = false)
    {
        if ($this->packagesData && !$regenerate) {
            return $this->packagesData;
        }
        $rows = $this->iaDb->all(array('name', 'url', 'title'), "`type` = 'package' AND `status` = 'active'", null, null, 'extras');
        $packages = array();
        foreach ($rows as $entry) {
            $entry['url'] = $entry['url'] == IA_URL_DELIMITER ? '' : $entry['url'];
            $entry['url'] = strpos($entry['url'], 'http://') === false ? IA_URL . $entry['url'] : $entry['url'];
            $entry['tpl_url'] = IA_CLEAR_URL . 'packages' . IA_URL_DELIMITER . $entry['name'] . IA_URL_DELIMITER . 'templates' . IA_URL_DELIMITER;
            $entry['tpl_common'] = IA_HOME . 'packages' . IA_URL_DELIMITER . $entry['name'] . IA_URL_DELIMITER . 'templates' . IA_URL_DELIMITER . 'common' . IA_URL_DELIMITER;
            $packages[$entry['name']] = $entry;
        }
        return $this->packagesData = $packages;
    }