Exemple #1
0
 public function action_set()
 {
     if ($_POST) {
         /*
         			'eid':eid,
         			'num':num,
         			'did':CACTI.did,
         			'sour':$('#cacti_source').val(),
         			'graph':$('#cacti_graph').val()
         */
         $this->user = \Sentry::user()->get('id');
         $val = \Validation::forge();
         $val->add_field('eid', 'Action', 'required|min_length[1]|max_length[20]');
         $val->add_field('did', 'Action', 'required|min_length[1]|max_length[20]');
         $val->add_field('sour', 'Value', 'required|min_length[1]');
         $val->add_field('graph', 'Value', 'required|min_length[1]|max_length[200]');
         $val->add_field('num', 'Value', 'required|max_length[200]');
         $val->add_field('type', 'Value', 'required|max_length[200]');
         $val->add_field('name', 'Value', 'required|max_length[200]');
         if ($val->run()) {
             if ($val->validated('type') == 'custom') {
                 $cacti = Model_Cacti::find($val->validated('eid'));
                 if (!$cacti) {
                     $query = array('sourceID' => $val->validated('sour'), 'name' => $val->validated('name'), 'num' => '0', 'macID' => '0', 'graphID' => $val->validated('graph'), 'meta_update_time' => time(), 'meta_update_user' => $this->user, 'deviceID' => $val->validated('did'));
                     $cacti = new Model_Cacti($query);
                 } else {
                     $cacti->sourceID = $val->validated('sour');
                     $cacti->graphID = $val->validated('graph');
                     $cacti->meta_update_time = time();
                     $cacti->name = $val->validated('name');
                 }
                 $cacti->save();
             } elseif ($val->validated('type') == 'port') {
                 $mac = \Basic\Model_Network_Mac::find($val->validated('eid'));
                 $cacti = Model_Cacti::find()->where('macID', $mac->id)->get_one();
                 if (!$cacti) {
                     $query = array('sourceID' => $val->validated('sour'), 'name' => $val->validated('name'), 'num' => $val->validated('num'), 'macID' => $val->validated('eid'), 'graphID' => $val->validated('graph'), 'meta_update_time' => time(), 'meta_update_user' => $this->user, 'deviceID' => $val->validated('did'));
                     $cacti = new Model_Cacti($query);
                 } else {
                     $cacti->sourceID = $val->validated('sour');
                     $cacti->graphID = $val->validated('graph');
                     $cacti->meta_update_time = time();
                 }
                 $cacti->save();
             }
             echo json_encode(array('id' => $cacti->id, 'name' => $cacti->name, 's' => $cacti->sourceID, 'g' => $cacti->graphID));
         }
     }
 }