Example #1
0
    /**
     * Get the images for an album
     *
     * @param int $id
     *
     * @return bool
     */
    public static function getImagesForAlbum($id, $limit = 0, $random = false)
    {
        if ($random == true) {
            $orderBy = "RAND()";
        } else {
            $orderBy = "sequence";
        }
        if ($limit > 0) {
            $records = (array) FrontendModel::getContainer()->get('database')->getRecords('SELECT i.*
			 FROM gallery_images AS i
			 WHERE i.language = ? AND i.album_id = ?
			 ORDER BY ' . $orderBy . '
			 LIMIT ?', array(FRONTEND_LANGUAGE, (int) $id, $limit));
        } else {
            $records = (array) FrontendModel::getContainer()->get('database')->getRecords('SELECT i.*
			 FROM gallery_images AS i
			 WHERE i.language = ? AND i.album_id = ?
			 ORDER BY ' . $orderBy, array(FRONTEND_LANGUAGE, (int) $id));
        }
        //--Loop records
        if (!empty($records)) {
            //--Get the thumbnail-folders
            $folders = FrontendModel::getThumbnailFolders(FRONTEND_FILES_PATH . '/Gallery/Images', true);
            //--Create the image-links to the thumbnail folders
            foreach ($records as &$row) {
                foreach ($folders as $folder) {
                    $row['image_' . $folder['dirname']] = $folder['url'] . '/' . $folder['dirname'] . '/' . $row['filename'];
                }
            }
            //--Destroy the last $image (because of the reference) -- sugested by http://php.net/manual/en/control-structures.foreach.php
            unset($row);
        }
        return $records;
    }
Example #2
0
 /**
  * Get a revision for an item
  *
  * @param string $URL      The URL for the item to get.
  * @param int    $revision The revisionID.
  * @return array
  */
 public static function getRevision($URL, $revision)
 {
     $return = (array) FrontendModel::getContainer()->get('database')->getRecord('SELECT i.id, i.revision_id, i.language, i.title, i.introduction, i.text, i.image,
          c.title AS category_title, m2.url AS category_url,
          UNIX_TIMESTAMP(i.publish_on) AS publish_on, i.user_id,
          i.allow_comments,
          m.keywords AS meta_keywords, m.keywords_overwrite AS meta_keywords_overwrite,
          m.description AS meta_description, m.description_overwrite AS meta_description_overwrite,
          m.title AS meta_title, m.title_overwrite AS meta_title_overwrite,
          m.url,
          m.data AS meta_data
          FROM blog_posts AS i
          INNER JOIN blog_categories AS c ON i.category_id = c.id
          INNER JOIN meta AS m ON i.meta_id = m.id
          INNER JOIN meta AS m2 ON c.meta_id = m2.id
          WHERE i.language = ? AND i.revision_id = ? AND m.url = ?
          LIMIT 1', array(FRONTEND_LANGUAGE, (int) $revision, (string) $URL));
     // unserialize
     if (isset($return['meta_data'])) {
         $return['meta_data'] = @unserialize($return['meta_data']);
     }
     // image?
     if (isset($return['image'])) {
         $folders = FrontendModel::getThumbnailFolders(FRONTEND_FILES_PATH . '/Blog/Images', true);
         foreach ($folders as $folder) {
             $return['image_' . $folder['dirname']] = $folder['url'] . '/' . $folder['dirname'] . '/' . $return['image'];
         }
     }
     // return
     return $return;
 }
Example #3
0
    /**
     * Get an item
     *
     * @param string $URL The URL for the item.
     *
     * @return array
     */
    public static function get($URL)
    {
        $return = (array) FrontendModel::getContainer()->get('database')->getRecord('SELECT i.*, l.*,
			 m.keywords AS meta_keywords, m.keywords_overwrite AS meta_keywords_overwrite,
			 m.description AS meta_description, m.description_overwrite AS meta_description_overwrite,
			 m.title AS meta_title, m.title_overwrite AS meta_title_overwrite,
			 m.url,
			 m.data AS meta_data
			 FROM addresses AS i
			 INNER JOIN addresses_lang AS l ON i.id = l.id AND l.language = ?
			 INNER JOIN meta AS m ON i.meta_id = m.id
			 WHERE i.hidden = ? AND m.url = ?
			 LIMIT 1', array(FRONTEND_LANGUAGE, 'N', (string) $URL));
        if (empty($return)) {
            return array();
        }
        // unserialize
        if (isset($return['meta_data'])) {
            $return['meta_data'] = @unserialize($return['meta_data']);
        }
        // image?
        if (isset($return['image'])) {
            $folders = FrontendModel::getThumbnailFolders(FRONTEND_FILES_PATH . '/Addresses/Images', true);
            foreach ($folders as $folder) {
                $return['image_' . $folder['dirname']] = $folder['url'] . '/' . $folder['dirname'] . '/' . $return['image'];
            }
        }
        if (isset($return["country"])) {
            //--Get country
            $return["country"] = Intl::getRegionBundle()->getCountryName($return['country'], FRONTEND_LANGUAGE);
        }
        $return['company'] = self::replaceCharacters($return['company']);
        // return
        return $return;
    }
Example #4
0
    /**
     * Fetch the list of tags for a list of items
     *
     * @param array $ids The ids of the items to grab.
     * @return array
     */
    public static function getForTags(array $ids)
    {
        // fetch items
        $items = (array) FrontendModel::getContainer()->get('database')->getRecords('SELECT i.title, m.url
		 FROM blog_posts AS i
		 INNER JOIN meta AS m ON m.id = i.meta_id
		 WHERE i.status = ? AND i.hidden = ? AND i.id IN (' . implode(',', $ids) . ')
		 ORDER BY i.publish_on DESC', array('active', 'N'));
        // has items
        if (!empty($items)) {
            // init var
            $link = FrontendNavigation::getURLForBlock('Catalog', 'Detail');
            $folders = FrontendModel::getThumbnailFolders(FRONTEND_FILES_PATH . '/Catalog/Images', true);
            // reset url
            foreach ($items as &$row) {
                $row['full_url'] = $link . '/' . $row['url'];
                // image?
                if (isset($row['image'])) {
                    foreach ($folders as $folder) {
                        $row['image_' . $folder['dirname']] = $folder['url'] . '/' . $folder['dirname'] . '/' . $row['image'];
                    }
                }
            }
        }
        // return
        return $items;
    }