source: lliurex-jocomunico/trunk/fuentes/lliurex-jocomunico.install/var/lib/application/models/InsertVocabulari.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: 9.8 KB
Line 
1<?php
2
3class InsertVocabulari extends CI_Model {
4 
5    function __construct()
6    {
7        // Call the Model constructor
8        parent::__construct();
9    }       
10
11    private function insertAdjClass($new, $adjid, $class) {
12        if ($new) $this->insertIntoAdjClass($adjid, $class);
13        else {
14            $this->db->where('adjid', $adjid);
15            $this->db->delete('AdjClass'.$this->session->userdata('ulangabbr'));
16            $this->insertIntoAdjClass($adjid, $class);
17        }
18    }
19   
20    private function insertIntoAdjClass($adjid, $class) {
21        for ($i = 0; $i < sizeof($class); $i++) {
22            $data = array(
23                'adjid' => $adjid,
24                'class' => $class[$i]->classType
25            );
26            $this->db->insert('AdjClass'.$this->session->userdata('ulangabbr'), $data);
27        }
28    }       
29   
30    private function insertAdjective($new, $adjid, $fem, $masc, $mascpl, $fempl, $defaultverb, $subjdef) {
31        $data = array(
32            'adjid' => $adjid,
33            'fem' => $fem,
34            'masc' => $masc,
35            'mascpl' => $mascpl,
36            'fempl' => $fempl,
37            'defaultverb' => $defaultverb,
38            'subjdef' => $subjdef
39        );
40        if ($new) $this->db->insert('Adjective'.$this->session->userdata('ulangabbr'), $data);
41        else {
42            $this->db->where('adjid', $adjid);
43            $this->db->update('Adjective'.$this->session->userdata('ulangabbr'), $data); 
44        }
45    }
46   
47    private function insertAdverb($new, $advid, $advtext) {
48        $data = array(
49            'advid' => $advid,
50            'class' => $advtext
51        );
52        if ($new) $this->db->insert('Adverb'.$this->session->userdata('ulangabbr'), $data);
53        else {
54            $this->db->where('advid', $advid);
55            $this->db->update('Adverb'.$this->session->userdata('ulangabbr'), $data);
56        }
57    }
58   
59    private function insertAdvType($new, $advid, $type) {
60        $data = array(
61            'advid' => $advid,
62            'type' => $type
63        );
64        if ($new) $this->db->insert('AdvType'.$this->session->userdata('ulangabbr'), $data);
65        else {
66            $this->db->where('advid', $advid);
67            $this->db->update('AdvType'.$this->session->userdata('ulangabbr'), $data);
68        }
69    }
70   
71    private function insertModifier($new, $modid, $masc, $fem, $mascpl, $fempl, $negatiu, $type, $scope) {
72        $data = array(
73            'modid' => $modid,
74            'masc' => $masc,
75            'fem' => $fem,
76            'mascpl' => $mascpl,
77            'fempl' => $fempl,
78            'negatiu' => $negatiu,
79            'type' => $type,
80            'scope' => $scope
81        );
82        if ($new) $this->db->insert('Modifier'.$this->session->userdata('ulangabbr'), $data);
83        else {
84            $this->db->where('modid', $modid);
85            $this->db->update('Modifier'.$this->session->userdata('ulangabbr'), $data);
86        }
87    }
88   
89    private function insertName($new, $nameid, $nomtext, $mf, $singpl, $contabincontab, $determinat, $ispropernoun, $defaultverb, $plural, $femeni, $fempl) {
90        $data = array(
91            'nameid' => $nameid,
92            'nomtext' => $nomtext,
93            'mf' => $mf,
94            'singpl' => $singpl,
95            'contabincontab' => $contabincontab,
96            'determinat' => $determinat,
97            'ispropernoun' => $ispropernoun,
98            'defaultverb' => $defaultverb,
99            'plural' => $plural,
100            'femeni' => $femeni,
101            'fempl' => $fempl
102        );
103        if ($new) $this->db->insert('Name'.$this->session->userdata('ulangabbr'), $data);
104        else {
105            $this->db->where('nameid', $nameid);
106            $this->db->update('Name'.$this->session->userdata('ulangabbr'), $data);
107        }
108    }
109   
110    private function insertNameClass($new, $nameid, $class) {
111        if ($new) $this->insertIntoNameClass($nameid, $class);
112        else {
113            $this->db->where('nameid', $nameid);
114            $this->db->delete('NameClass'.$this->session->userdata('ulangabbr'));
115            $this->insertIntoNameClass($nameid, $class);
116        }
117    }
118   
119    private function insertIntoNameClass($nameid, $class) {
120        for ($i = 0; $i < sizeof($class); $i++) {
121            $data = array(
122                'nameid' => $nameid,
123                'class' => $class[$i]->classType
124            );
125            $this->db->insert('NameClass'.$this->session->userdata('ulangabbr'), $data);
126        }
127    }
128   
129    private function insertPattern($new, $patternid, $verbid) { // falta param pattern
130        $data = array(
131            'patternid' => $patternid,
132            'verbid' => $verbid
133        );
134        if ($new) $this->db->insert('Pattern'.$this->session->userdata('ulangabbr'), $data);
135        else {
136            $this->db->where('patternid', $patternid);
137            $this->db->update('Pattern'.$this->session->userdata('ulangabbr'), $data);
138        }
139    }
140   
141    private function insertVerb($new, $verbid, $verbtext, $actiu) {
142        $data = array(
143            'verbid' => $verbid,
144            'verbtext' => $verbtext,
145            'actiu' => $actiu
146        );
147        if ($new) $this->db->insert('Verb'.$this->session->userdata('ulangabbr'), $data);
148        else {
149            $this->db->where('verbid', $verbid);
150            $this->db->update('Verb'.$this->session->userdata('ulangabbr'), $data);
151        }
152    }
153   
154    private function insertVerbConjugation($new, $verbid, $tense, $pers, $singpl, $verbconj) {
155        $data = array(
156            'verbid' => $verbid,
157            'tense' => $tense,
158            'pers' => $pers,
159            'singpl' => $singpl,
160            'verbconj' => $verbconj
161        );
162        if ($new) $this->db->insert('VerbConjugation'.$this->session->userdata('ulangabbr'), $data);
163        else {
164            $this->db->where('verbid', $verbid);
165            $this->db->update('VerbConjugation'.$this->session->userdata('ulangabbr'), $data);
166        }
167    }
168   
169    private function insertVerbPattern($new, $verbid, $patternid) {
170        $data = array(
171            'verbid' => $verbid,
172            'patternid' => $patternid
173        );
174        if ($new) $this->db->insert('VerbPattern'.$this->session->userdata('ulangabbr'), $data);
175        else {
176            $this->db->where('verbid', $verbid);
177            $this->db->update('VerbPattern'.$this->session->userdata('ulangabbr'), $data);
178        }
179    }
180
181    private function insertP_StatsUserPicto($ID_PSUPUser, $pictoid) {
182        $data = array(
183            'ID_PSUPUser' => $ID_PSUPUser,
184            'pictoid' => $pictoid,
185            'countx1' => 1,
186            'lastdate' => mdate("%Y/%m/%d", time())
187        );
188        $this->db->insert('P_StatsUserPicto', $data);
189    }
190   
191    private function insertPictograms($new, $pictoid, $ID_PUSer, $pictoType, $supportsExpansion, $imgPicto ) {
192        if($new) {
193            $data = array(
194                'ID_PUser' => $ID_PUSer,
195                'pictoType' => $pictoType,
196                'supportsExpansion' => $supportsExpansion,
197                'imgPicto' => $imgPicto
198            );
199            $this->db->insert('Pictograms', $data);
200            $pictoid = $this->db->insert_id();
201        }
202        else {
203            $data = array(
204                'ID_PUser' => $ID_PUSer,
205                'pictoType' => $pictoType,
206                'supportsExpansion' => $supportsExpansion,
207                'imgPicto' => $imgPicto
208            );
209            $this->db->where('pictoid', $pictoid);
210            $this->db->update('Pictograms', $data);
211        }
212        return $pictoid;
213    }
214   
215    private function insertPictogramsLanguage($new, $pictoid, $languageid, $pictotext, $pictofreq ) {
216        if ($new){
217            $data = array(
218            'pictoid' => $pictoid,
219            'languageid' => $languageid,
220            'insertdate' => mdate("%Y/%m/%d", time()),
221            'pictotext' => $pictotext,
222            'pictofreq' => $pictofreq
223            );
224            $this->db->insert('PictogramsLanguage', $data);
225        }
226        else {
227            $data = array(
228            'insertdate' => mdate("%Y/%m/%d", time()),
229            'pictotext' => $pictotext,
230            'pictofreq' => $pictofreq
231            );
232            $this->db->where('pictoid', $pictoid);
233            $this->db->update('PictogramsLanguage', $data);
234        }
235    }
236
237    public function insertPicto($objAdd) {
238        $ID_PUSer = $this->session->userdata('idusu');
239        $ID_PSUPUser = $this->session->userdata('idusu');
240        $languageid = ($this->session->userdata('ulangabbr') == 'CA' ? 1:  2);
241        $pictoid = $this->insertPictograms($objAdd->new, $objAdd->pictoid, $ID_PUSer, $objAdd->type, $objAdd->supExp, $objAdd->imgPicto);
242        var_dump($pictoid);       
243         //pictofreq a modificar
244       
245        if ($objAdd->type == 'name') {
246            $this->insertPictogramsLanguage($objAdd->new, $pictoid, $languageid, $objAdd->nomtext, $pictofreq = 10.000);
247            $this->insertName($objAdd->new, $pictoid, $objAdd->nomtext, $objAdd->mf, $objAdd->singpl, $objAdd->contabincontab, $objAdd->determinat, $objAdd->ispropernoun, $objAdd->defaultverb, $objAdd->plural, $objAdd->femeni, $objAdd->fempl);
248            $this->insertNameClass($objAdd->new, $pictoid, $objAdd->class);           
249        }
250        else if ($objAdd->type == 'adj') {
251            $this->insertPictogramsLanguage($objAdd->new, $pictoid, $languageid, $objAdd->masc, $pictofreq = 10.000);
252            $this->insertAdjective($objAdd->new, $pictoid, $objAdd->fem, $objAdd->masc, $objAdd->mascpl, $objAdd->fempl, $objAdd->defaultverb, $objAdd->subjdef);
253            $this->insertAdjClass($objAdd->new, $pictoid, $objAdd->class);
254        }
255    }
256
257    public function deletePictogram($pictoid) {
258        $this->db->where('ID_PUser', $this->session->userdata('idusu'));                             
259        $this->db->where('pictoid', $pictoid);                             
260        $this->db->delete('Pictograms');
261    }
262}
263?>
Note: See TracBrowser for help on using the repository browser.