| [ Index ] |
PHP Cross Reference of Joomla 2.5.4 DE |
[Summary view] [Print] [Text view]
1 <?php 2 /** 3 * @copyright Copyright (C) 2005 - 2012 Open Source Matters, Inc. All rights reserved. 4 * @license GNU General Public License version 2 or later; see LICENSE.txt 5 */ 6 7 // No direct access 8 defined('_JEXEC') or die; 9 10 /** 11 * Multilang status helper. 12 * 13 * @package Joomla.Administrator 14 * @subpackage com_languages 15 * @since 1.7.1 16 */ 17 abstract class multilangstatusHelper 18 { 19 public static function getHomes() 20 { 21 // Check for multiple Home pages 22 $db = JFactory::getDBO(); 23 $query = $db->getQuery(true); 24 $query->select('COUNT(*)'); 25 $query->from($db->quoteName('#__menu')); 26 $query->where('home = 1'); 27 $query->where('published = 1'); 28 $query->where('client_id = 0'); 29 $db->setQuery($query); 30 return $db->loadResult(); 31 } 32 33 /** 34 * @since 1.7.1 35 * @deprecated 3.0 36 */ 37 public static function getLangfilter() 38 { 39 JLog::add('multilangstatusHelper::getLangfilter() is deprecated. Use JLanguageMultilang::isEnabled() instead. ', JLog::WARNING, 'deprecated'); 40 return JLanguageMultilang::isEnabled(); 41 } 42 43 public static function getLangswitchers() 44 { 45 // Check if switcher is published 46 $db = JFactory::getDBO(); 47 $query = $db->getQuery(true); 48 $query->select('COUNT(*)'); 49 $query->from($db->quoteName('#__modules')); 50 $query->where('module = ' . $db->quote('mod_languages')); 51 $query->where('published = 1'); 52 $query->where('client_id = 0'); 53 $db->setQuery($query); 54 return $db->loadResult(); 55 } 56 57 public static function getContentlangs() 58 { 59 // Check for published Content Languages 60 $db = JFactory::getDBO(); 61 $query = $db->getQuery(true); 62 $query->select('a.lang_code AS lang_code'); 63 $query->select('a.published AS published'); 64 $query->from('#__languages AS a'); 65 $db->setQuery($query); 66 return $db->loadObjectList(); 67 } 68 69 public static function getSitelangs() 70 { 71 // check for published Site Languages 72 $db = JFactory::getDBO(); 73 $query = $db->getQuery(true); 74 $query->select('a.element AS element'); 75 $query->from('#__extensions AS a'); 76 $query->where('a.type = '.$db->Quote('language')); 77 $query->where('a.client_id = 0'); 78 $db->setQuery($query); 79 return $db->loadObjectList('element'); 80 } 81 82 public static function getHomepages() 83 { 84 // Check for Home pages languages 85 $db = JFactory::getDBO(); 86 $query = $db->getQuery(true); 87 $query->select('language'); 88 $query->from($db->quoteName('#__menu')); 89 $query->where('home = 1'); 90 $query->where('published = 1'); 91 $query->where('client_id = 0'); 92 $db->setQuery($query); 93 return $db->loadObjectList('language'); 94 } 95 96 public static function getStatus() 97 { 98 //check for combined status 99 $db = JFactory::getDBO(); 100 $query = $db->getQuery(true); 101 102 // Select all fields from the languages table. 103 $query->select('a.*', 'l.home'); 104 $query->select('a.published AS published'); 105 $query->select('a.lang_code AS lang_code'); 106 $query->from('#__languages AS a'); 107 108 // Select the language home pages 109 $query->select('l.home AS home'); 110 $query->select('l.language AS home_language'); 111 $query->join('LEFT', '#__menu AS l ON l.language = a.lang_code AND l.home=1 AND l.language <> \'*\'' ); 112 $query->select('e.enabled AS enabled'); 113 $query->select('e.element AS element'); 114 $query->join('LEFT', '#__extensions AS e ON e.element = a.lang_code'); 115 $query->where('e.client_id = 0'); 116 $query->where('e.enabled = 1'); 117 $query->where('e.state = 0'); 118 119 $db->setQuery($query); 120 return $db->loadObjectList(); 121 } 122 123 public static function getContacts() 124 { 125 $db = JFactory::getDBO(); 126 $query = $db->getQuery(true); 127 $query->select('u.name, count(cd.language) as counted, MAX(cd.language='.$db->quote('*').') as all_languages'); 128 $query->from('#__users AS u'); 129 $query->leftJOIN('#__contact_details AS cd ON cd.user_id=u.id'); 130 $query->leftJOIN('#__languages as l on cd.language=l.lang_code'); 131 $query->where('EXISTS (SELECT * from #__content as c where c.created_by=u.id)'); 132 $query->where('(l.published=1 or cd.language='.$db->quote('*').')'); 133 $query->where('cd.published=1'); 134 $query->group('u.id'); 135 $query->having('(counted !=' . count(JLanguageHelper::getLanguages()).' OR all_languages=1)'); 136 $query->having('(counted !=1 OR all_languages=0)'); 137 $db->setQuery($query); 138 return $db->loadObjectList(); 139 } 140 }
title
Description
Body
title
Description
Body
title
Description
Body
title
Body
| Generated: Tue Apr 3 11:40:28 2012 | Cross-referenced by PHPXref 0.7.1 |