]>
src.bluestatic.org Git - bugdar.git/blob - includes/api_language.php
2 /*=====================================================================*\
3 || ###################################################################
5 || # Copyright ©2002-2007 Blue Static
7 || # This program is free software; you can redistribute it and/or modify
8 || # it under the terms of the GNU General Public License as published by
9 || # the Free Software Foundation; version 2 of the License.
11 || # This program is distributed in the hope that it will be useful, but
12 || # WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
13 || # or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
16 || # You should have received a copy of the GNU General Public License along
17 || # with this program; if not, write to the Free Software Foundation, Inc.,
18 || # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
19 || ###################################################################
20 \*=====================================================================*/
22 $GLOBALS['isso:callback']->load('api', null);
24 require_once('./includes/functions_datastore.php');
30 * @copyright Copyright ©2002 - 2007, Blue Static
35 class LanguageAPI
extends API
43 'languageid' => array(TYPE_UINT
, REQ_AUTO
, 'verify_nozero'),
44 'title' => array(TYPE_STR
, REQ_YES
, 'verify_noempty'),
45 'charset' => array(TYPE_STR
, REQ_YES
),
46 'direction' => array(TYPE_STR
, REQ_NO
, ':self'),
47 'userselect' => array(TYPE_BOOL
, REQ_NO
),
48 'langcode' => array(TYPE_STR
, REQ_YES
)
56 var $table = 'language';
63 var $prefix = TABLE_PREFIX
;
65 // ###################################################################
71 function post_insert()
76 // ###################################################################
82 function post_update()
87 // ###################################################################
93 $count = $this->registry
->db
->query_first("SELECT COUNT(*) AS count FROM " . TABLE_PREFIX
. "language");
94 if ($count['count'] < 2)
96 $this->error(T('At least one language needs to be present. Deleting this language would violate that.'));
99 if (bugdar
::$options['defaultlanguage'] == $this->values
['languageid'])
101 $this->error(T('You cannot delete the default language. Please select another language to be the default language and then delete this one.'));
105 // ###################################################################
111 function post_delete()
116 // ###################################################################
122 function verify_direction()
124 if (!in_array($this->values
['direction'], array('ltr', 'rtl')))
126 return T('The direction must be ltr (left-to-right) or rtl (right-to-left)');
132 /*=====================================================================*\
133 || ###################################################################
136 || ###################################################################
137 \*=====================================================================*/