source: lliurex-jocomunico/trunk/fuentes/lliurex-jocomunico.install/var/lib/application/models/AddWordInterface.php @ 5728

Last change on this file since 5728 was 5728, checked in by joamuran, 3 years ago

Added zero-installed and updated jocomunico

File size: 14.0 KB
Line 
1<?php
2
3class AddWordInterface extends CI_Model {
4
5    function __construct() {
6        // Call the Model constructor
7        parent::__construct();
8    }
9
10    function getTypePicto($idPicto) {
11        $output = array();
12        $this->db->where('Pictograms.pictoid', $idPicto);
13        $this->db->select('pictoType as type'); // rename the field like we want
14        $query = $this->db->get('Pictograms'); // execute de query
15
16        if ($query->num_rows() > 0) {
17            $output = $query->result_array();
18        }
19        return $output;
20    }
21
22    function copyVocabulary($idsuOrigen, $idsuDest) {
23        $voc = array();
24        $this->db->where('ID_PUser', $idsuOrigen);
25        $query = $this->db->get('Pictograms');
26        //MODIF: mirar si ya lo tiene
27        if ($query->num_rows() > 0) {
28
29            $voc = $query->result();
30            foreach ($voc as $word) {
31                $data = array(
32                    'pictoid' => $word->pictoid,
33                    'ID_PUser' => $idsuDest,
34                    'pictoType' => $word->pictoType,
35                    'supportsExpansion' => $word->supportsExpansion,
36                    'imgPicto' => $word->imgPicto);
37
38                $sql = $this->db->insert_string('Pictograms', $data);
39                $sql = str_replace('INSERT INTO', 'INSERT IGNORE INTO', $sql);
40                $this->db->query($sql);
41            }
42        } else
43            $voc = null;
44
45        return $voc;
46    }
47
48    function EditWordNoms($id) {
49        $output = array();
50        $userlanguage = $this->session->userdata('ulangabbr');
51        $this->db->where_in('Pictograms.ID_PUser', array('1', $this->session->userdata('idusu')));
52        $this->db->where('nameid', $id);
53        $this->db->join('Pictograms', 'Name' . $userlanguage . '.nameid = Pictograms.pictoid', 'left');
54        $query = $this->db->get('Name' . $userlanguage);
55
56        if ($query->num_rows() > 0) {
57            $output = $query->result();
58        } else
59            $output = null;
60
61        return $output;
62    }
63    function EditWordAdj($id) {
64        $output = array();
65        $userlanguage = $this->session->userdata('ulangabbr');
66        $this->db->where_in('Pictograms.ID_PUser', array('1', $this->session->userdata('idusu')));
67        $this->db->where('adjid', $id);
68        $this->db->join('Pictograms', 'adjective' . $userlanguage . '.adjid = Pictograms.pictoid', 'left');
69        $query = $this->db->get('adjective' . $userlanguage);
70
71        if ($query->num_rows() > 0) {
72            $output = $query->result();
73        } else
74            $output = null;
75
76        return $output;
77    }
78
79    function getDBClassNames($id) {
80        $output = array();
81        $userlanguage = $this->session->userdata('ulangabbr');
82        $this->db->where('nameid', $id);
83        $this->db->select('class');
84        $query = $this->db->get('NameClass' . $userlanguage);
85
86        if ($query->num_rows() > 0) {
87            $output = $query->result();
88        } else
89            $output = null;
90
91        return $output;
92    }
93    function getDBClassAdj($id) {
94        $output = array();
95        $userlanguage = $this->session->userdata('ulangabbr');
96        $this->db->where('adjid', $id);
97        $this->db->select('class');
98        $query = $this->db->get('adjclass' . $userlanguage);
99
100        if ($query->num_rows() > 0) {
101            $output = $query->result();
102        } else
103            $output = null;
104
105        return $output;
106    }
107
108   
109    function getDBVerbs(){
110        $user = $this->session->userdata('idusu');
111        // Expansion language
112        $languageExp = $this->session->userdata('ulangabbr');
113        //Interface language
114        $languageInt = $this->session->userdata('uinterfacelangauge');
115
116        $output = array();
117
118        $this->db->where_in('Pictograms.ID_PUser', array('1',$user));
119        $this->db->where('PictogramsLanguage.languageid', $languageInt); //Get all default and own user pictos
120        $this->db->select('verbid as id, PictogramsLanguage.pictotext as text');
121        $this->db->from('Verb' . $languageExp);
122        $this->db->join('Pictograms', 'Verb' . $languageExp . '.verbid = Pictograms.pictoid', 'left');
123        $this->db->join('PictogramsLanguage', 'PictogramsLanguage.pictoid = Pictograms.pictoid', 'left');
124        $this->db->where('actiu', '1');
125        $this->db->order_by('PictogramsLanguage.pictotext', 'asc');
126        $query = $this->db->get();
127
128        if ($query->num_rows() > 0) {
129            $output = $query->result_array();
130        }
131
132        return $output;
133    }
134
135   
136    /*
137     * Gets all names from ddbb that starts with ($startswith) in the language ($language)
138     */
139
140    function getDBNamesLike($startswith, $user) {
141        // Expansion language
142        $languageExp = $this->session->userdata('ulangabbr');
143        //Interface language
144        $languageInt = $this->session->userdata('uinterfacelangauge');
145
146        $output = array();
147        $this->db->limit(6); // limit up to 6
148
149        $this->db->where_in('Pictograms.ID_PUser', array('1', $this->session->userdata('idusu')));
150        $this->db->where('Pictograms.ID_PUser', $user);
151        $this->db->where('PictogramsLanguage.languageid', $languageInt);
152        //$this->db->or_where('Pictograms.ID_PUser', $user); //Get all default and own user pictos
153        $this->db->select('nameid as id, PictogramsLanguage.pictotext as text, imgPicto, Pictograms.ID_PUser'); // rename the field like we want
154        //$this->db->from('Name'. $language);// select the table name+language
155        $this->db->join('Pictograms', 'Name' . $languageExp . '.nameid = Pictograms.pictoid', 'left'); // Join the tables name with the picto associate
156        $this->db->join('PictogramsLanguage', 'PictogramsLanguage.pictoid = Pictograms.pictoid', 'left');
157        $this->db->like('PictogramsLanguage.pictotext', $startswith, 'after'); // select only the names that start with $startswith
158        $this->db->order_by('PictogramsLanguage.pictotext', 'asc'); // order the names
159        $query = $this->db->get('Name' . $languageExp); // execute de query
160
161        if ($query->num_rows() > 0) {
162            $output = $query->result_array();
163        }
164        return $output;
165    }
166
167    /*
168     * Gets all verbs from ddbb that starts with ($startswith) in the language ($language)
169     */
170
171    function getDBVerbsLike($startswith, $user) {
172        // Expansion language
173        $languageExp = $this->session->userdata('ulangabbr');
174        //Interface language
175        $languageInt = $this->session->userdata('uinterfacelangauge');
176
177        $output = array();
178
179        $this->db->limit(6);
180        $this->db->where_in('Pictograms.ID_PUser', array('1', $this->session->userdata('idusu')));
181        $this->db->where('Pictograms.ID_PUser', $user);
182        $this->db->where('PictogramsLanguage.languageid', $languageInt); //Get all default and own user pictos
183        $this->db->select('verbid as id, PictogramsLanguage.pictotext as text, imgPicto');
184        $this->db->from('Verb' . $languageExp);
185        $this->db->join('Pictograms', 'Verb' . $languageExp . '.verbid = Pictograms.pictoid', 'left');
186        $this->db->join('PictogramsLanguage', 'PictogramsLanguage.pictoid = Pictograms.pictoid', 'left');
187        $this->db->where('actiu', '1');
188        $this->db->like('PictogramsLanguage.pictotext', $startswith, 'after');
189        $this->db->order_by('PictogramsLanguage.pictotext', 'asc');
190        $query = $this->db->get();
191
192        if ($query->num_rows() > 0) {
193            $output = $query->result_array();
194        }
195
196        return $output;
197    }
198
199    /*
200     * Gets all adjectius from ddbb that starts with ($startswith) in the language ($language)
201     */
202
203    function getDBAdjLike($startswith, $user) {
204        // Expansion language
205        $languageExp = $this->session->userdata('ulangabbr');
206        //Interface language
207        $languageInt = $this->session->userdata('uinterfacelangauge');
208
209        $output = array();
210
211        $this->db->limit(6);
212        $this->db->where_in('Pictograms.ID_PUser', array('1', $this->session->userdata('idusu')));
213        $this->db->where('Pictograms.ID_PUser', $user);
214        $this->db->where('PictogramsLanguage.languageid', $languageInt); //Get all default and own user pictos
215        $this->db->select('adjid as id,PictogramsLanguage.pictotext as text, imgPicto');
216        $this->db->from('Adjective' . $languageExp);
217        $this->db->join('Pictograms', 'Adjective' . $languageExp . '.adjid = Pictograms.pictoid', 'left');
218        $this->db->join('PictogramsLanguage', 'PictogramsLanguage.pictoid = Pictograms.pictoid', 'left');
219        $this->db->like('PictogramsLanguage.pictotext', $startswith, 'after');
220        $this->db->order_by('PictogramsLanguage.pictotext', 'asc');
221        $query = $this->db->get();
222
223        if ($query->num_rows() > 0) {
224            $output = $query->result_array();
225        }
226        return $output;
227    }
228
229    /*
230     * Gets all expressions from ddbb that starts with ($startswith) in the language ($language)
231     */
232
233    function getDBExprsLike($startswith, $user) {
234        // Expansion language
235        $languageExp = $this->session->userdata('ulangabbr');
236        //Interface language
237        $languageInt = $this->session->userdata('uinterfacelangauge');
238
239        $output = array();
240
241        $this->db->limit(6);
242        $this->db->where_in('Pictograms.ID_PUser', array('1', $this->session->userdata('idusu')));
243        $this->db->where('Pictograms.ID_PUser', $user);
244        $this->db->where('PictogramsLanguage.languageid', $languageInt); //Get all default and own user pictos
245        $this->db->select('exprid as id, PictogramsLanguage.pictotext as text, imgPicto');
246        $this->db->from('Expressions' . $languageExp);
247        $this->db->join('Pictograms', 'Expressions' . $languageExp . '.exprid = Pictograms.pictoid', 'left');
248        $this->db->join('PictogramsLanguage', 'PictogramsLanguage.pictoid = Pictograms.pictoid', 'left');
249        $this->db->like('PictogramsLanguage.pictotext', $startswith, 'after');
250        $this->db->order_by('PictogramsLanguage.pictotext', 'asc');
251        $query = $this->db->get();
252
253        if ($query->num_rows() > 0) {
254            $output = $query->result_array();
255        }
256        return $output;
257    }
258
259    /*
260     * Gets all adverbs from ddbb that starts with ($startswith) in the language ($language)
261     */
262
263    function getDBAdvsLike($startswith, $user) {
264        // Expansion language
265        $languageExp = $this->session->userdata('ulangabbr');
266        //Interface language
267        $languageInt = $this->session->userdata('uinterfacelangauge');
268
269        $output = array();
270
271        $this->db->limit(6);
272        $this->db->where_in('Pictograms.ID_PUser', array('1', $this->session->userdata('idusu')));
273        $this->db->where('Pictograms.ID_PUser', $user);
274        $this->db->where('PictogramsLanguage.languageid', $languageInt); //Get all default and own user pictos
275        $this->db->select('advid as id, PictogramsLanguage.pictotext as text, imgPicto');
276        $this->db->from('Adverb' . $languageExp);
277        $this->db->join('Pictograms', 'Adverb' . $languageExp . '.advid = Pictograms.pictoid', 'left');
278        $this->db->join('PictogramsLanguage', 'PictogramsLanguage.pictoid = Pictograms.pictoid', 'left');
279        $this->db->like('PictogramsLanguage.pictotext', $startswith, 'after');
280        $this->db->order_by('PictogramsLanguage.pictotext', 'asc');
281        $query = $this->db->get();
282
283        if ($query->num_rows() > 0) {
284            $output = $query->result_array();
285        }
286
287        return $output;
288    }
289
290    /*
291     * Gets all modifier from ddbb that starts with ($startswith) in the language ($language)
292     */
293
294    function getDBModifsLike($startswith, $user) {
295        // Expansion language
296        $languageExp = $this->session->userdata('ulangabbr');
297        //Interface language
298        $languageInt = $this->session->userdata('uinterfacelangauge');
299
300        $output = array();
301
302        $this->db->limit(6);
303        $this->db->where_in('Pictograms.ID_PUser', array('1', $this->session->userdata('idusu')));
304        $this->db->where('Pictograms.ID_PUser', $user);
305        $this->db->where('PictogramsLanguage.languageid', $languageInt); //Get all default and own user pictos
306        $this->db->select('modid as id, PictogramsLanguage.pictotext as text, imgPicto');
307        $this->db->from('Modifier' . $languageExp);
308        $this->db->join('Pictograms', 'Modifier' . $languageExp . '.modid = Pictograms.pictoid', 'left');
309        $this->db->join('PictogramsLanguage', 'PictogramsLanguage.pictoid = Pictograms.pictoid', 'left');
310        $this->db->like('PictogramsLanguage.pictotext', $startswith, 'after');
311        $this->db->order_by('PictogramsLanguage.pictotext', 'asc');
312        $query = $this->db->get();
313
314        if ($query->num_rows() > 0) {
315            $output = $query->result_array();
316        }
317
318        return $output;
319    }
320
321    /*
322     * Gets all QuestionPart from ddbb that starts with ($startswith) in the language ($language)
323     */
324
325    function getDBQuestionPartLike($startswith, $user) {
326        // Expansion language
327        $languageExp = $this->session->userdata('ulangabbr');
328        //Interface language
329        $languageInt = $this->session->userdata('uinterfacelangauge');
330
331        $output = array();
332
333        $this->db->limit(6);
334        $this->db->where_in('Pictograms.ID_PUser', array('1', $this->session->userdata('idusu')));
335        $this->db->where('Pictograms.ID_PUser', $user);
336        $this->db->where('PictogramsLanguage.languageid', $languageInt);  //Get all default and own user pictos
337        $this->db->select('questid as id, PictogramsLanguage.pictotext as text, imgPicto');
338        $this->db->from('QuestionPart' . $languageExp);
339        $this->db->join('Pictograms', 'QuestionPart' . $languageExp . '.questid = Pictograms.pictoid', 'left');
340        $this->db->join('PictogramsLanguage', 'PictogramsLanguage.pictoid = Pictograms.pictoid', 'left');
341        $this->db->like('PictogramsLanguage.pictotext', $startswith, 'after');
342        $this->db->order_by('PictogramsLanguage.pictotext', 'asc');
343        $query = $this->db->get();
344
345        if ($query->num_rows() > 0) {
346            $output = $query->result_array();
347        }
348
349        return $output;
350    }
351
352}
Note: See TracBrowser for help on using the repository browser.