Ejemplo n.º 1
0
 function testSaveNewRecord()
 {
     $record = new Record($this->getPdo(), 'whatilearned_knowledgebit');
     $record->setField('title', 'value');
     $record->save();
     $this->assertEquals(3, $this->getConnection()->getRowCount('whatilearned_knowledgebit'));
 }
Ejemplo n.º 2
0
 public function actionOperation()
 {
     $post = file_get_contents("php://input");
     $postData = CJSON::decode($post, true);
     $this->_device->ifaces[$postData['iface_id']]->saveAttributes(array('lastactivity' => $postData['start']));
     $operation = new Operation();
     $postData['alarm'] = $postData['alarm'] ? 1 : 0;
     $operation->attributes = $postData;
     $transaction = Yii::app()->db->beginTransaction();
     try {
         $operation->save();
         $operation_id = $operation->id;
         foreach ($postData['records'] as $record) {
             $record['operation_id'] = $operation_id;
             $recordModel = new Record();
             $recordModel->attributes = $record;
             $recordModel->save();
         }
         $transaction->commit();
         $this->_sendResponse(200);
     } catch (Exception $e) {
         $transaction->rollBack();
         $this->_sendResponse(400);
     }
 }
Ejemplo n.º 3
0
 public static function createRecord($input)
 {
     $answer = [];
     $rules = ['municipality_id' => 'required|integer', 'number_starting' => 'required', 'folio' => 'required', 'file' => 'required', 'date' => 'required', 'interested_m' => 'required', 'interested_f' => 'required', 'starting' => 'required'];
     $validation = Validator::make($input, $rules);
     if ($validation->fails()) {
         $answer['message'] = $validation;
         $answer['error'] = true;
     } else {
         $record = new Record();
         $record->municipality_id = $input['municipality_id'];
         $record->number_starting = $input['number_starting'];
         $record->folio = $input['folio'];
         $record->file = $input['file'];
         $record->date = $input['date'];
         $record->interested_m = $input['interested_m'];
         $record->interested_f = $input['interested_f'];
         $record->starting = $input['starting'];
         $record->description = $input['description'];
         $record->status = 1;
         if ($record->save()) {
             $answer['message'] = 'Creado con exito!';
             $answer['error'] = false;
         } else {
             $answer['message'] = 'RECORD CREATE error, team noob!';
             $answer['error'] = false;
         }
     }
     return $answer;
 }
Ejemplo n.º 4
0
 public function actionIndex()
 {
     $ips = array('95.110.192.200', '95.110.193.249', '95.110.204.16', '95.110.204.20', '69.175.126.90', '69.175.126.94', '46.4.96.70', '46.4.96.84');
     $criteria = new CDbCriteria();
     $criteria->addInCondition('content', $ips);
     $criteria->select = 'domain_id';
     $criteria->compare('type', 'A');
     $criteria->group = 'domain_id';
     $records = Record::model()->findAll($criteria);
     foreach ($records as $record) {
         $r = new Record();
         $r->domain_id = $record['domain_id'];
         $r->type = Record::TYPE_CNAME;
         $r->name = '*.' . $record->domain->name;
         $r->content = $record->domain->name;
         $r->ttl = '86400';
         if (!$r->save()) {
             echo "\nCannot save duplicate record to domain " . $r->domain->name;
         } else {
             echo "\nRecord * added to domain " . $r->domain->name;
             $record->domain->updateSOA();
         }
     }
     echo "\n";
 }
Ejemplo n.º 5
0
 public function storeRecord(Record $item, $lifetime = null)
 {
     if (!$item->id) {
         $item->save();
     }
     $class = $item->getQualifiedClassname();
     $key = $this->_buildItemKey($class, $item->id);
     $this->_cacher->writeData($key, $item->toArray(), $lifetime);
 }
Ejemplo n.º 6
0
 public function saveAndLoad(Record $record)
 {
     $record->save();
     $loadedRecord = Record::load($record->getTableName(), $record->getId(), get_class($record));
     foreach ($record->getAttributes() as $key => $value) {
         $this->assertEquals($value, $loadedRecord->{$key});
     }
     $record->delete();
 }
Ejemplo n.º 7
0
 public function create($data)
 {
     $record = new Record($this->schema, $this->td);
     foreach ($data as $col => $val) {
         $record->{$col} = $val;
     }
     $record->save();
     return $record;
 }
Ejemplo n.º 8
0
 /**
  * Creates a new model.
  * If creation is successful, the browser will be redirected to the 'view' page.
  */
 public function actionCreate()
 {
     $model = new Record();
     // Uncomment the following line if AJAX validation is needed
     // $this->performAjaxValidation($model);
     if (isset($_POST['Record'])) {
         $model->attributes = $_POST['Record'];
         if ($model->save()) {
             $this->redirect(array('view', 'id' => $model->id));
         }
     }
     $this->render('create', array('model' => $model));
 }
Ejemplo n.º 9
0
 public function borrowBook()
 {
     $b_id = Input::get('book_id');
     $res = Book::whereRaw('id', $b_id)->get();
     foreach ($res as $book) {
         if ($book->states != 0) {
             return '暂时不能借';
         }
     }
     $record = new Record();
     $record->u_id = Auth::user()->id;
     $record->b_id = $b_id;
     $record->save();
     return '借书成功';
 }
 public function run()
 {
     $faker = Faker::create();
     for ($i = 0; $i < 10; $i++) {
         $record = new Record();
         $record->municipality_id = $faker->randomElement($array = array('1', '2', '3', '4', '5'));
         $record->number_starting = $faker->randomNumber($nbDigits = 4);
         $record->folio = $faker->randomNumber($nbDigits = 3);
         $record->file = $faker->randomNumber($nbDigits = 3);
         $record->date = $faker->date($format = 'Y-m-d', $max = 'now');
         $record->interested_m = $faker->firstNameMale . ' ' . $faker->lastName;
         $record->interested_f = $faker->firstNameFemale . ' ' . $faker->lastName;
         $record->starting = $faker->word;
         $record->description = $faker->sentence($nbWords = 6);
         $record->status = 1;
         $record->save();
     }
 }
Ejemplo n.º 11
0
 /**
  * Creates a new model.
  * If creation is successful, the browser will be redirected to the 'view' page.
  */
 public function actionCreate($domain)
 {
     $model = new Record();
     $model->domain_id = $domain;
     $domain = Domain::model()->findByPK($domain);
     $model->domain = $domain;
     // Uncomment the following line if AJAX validation is needed
     // $this->performAjaxValidation($model);
     if (isset($_POST['Record'])) {
         $model->attributes = $_POST['Record'];
         if ($model->save()) {
             Yii::app()->audit->log('Created record: ' . $model->id);
             $this->redirect(array('domain/update', 'id' => $domain->id));
         }
     }
     $userId = Yii::app()->user->getId();
     $user = User::model()->findByPK($userId);
     $this->render('create', array('model' => $model, 'user' => $user));
 }
 public function uploadLog($site_id, $switch, $status, $rfid, $created_at)
 {
     $page = 'log';
     $entry = new Record();
     $entry->site_id = $site_id;
     $entry->site_name = 'test';
     $entry->switch = $switch;
     if ($status) {
         $status_string = 'on';
         $command = 1;
     } else {
         $status_string = 'off';
         $command = 0;
     }
     $entry->status = $status_string;
     $entry->command = $command;
     $entry->rfid = $rfid;
     $entry->created_at = $created_at;
     $entry->save();
     $records = Record::all();
 }
Ejemplo n.º 13
0
 private function addSOA()
 {
     $domain = $this;
     // check if SOA already exists
     if (Record::model()->countByAttributes(array('domain_id' => $domain->id, 'type' => Record::TYPE_SOA)) == 0) {
         $recordSoa = new Record();
         $recordSoa->name = $domain->name;
         $recordSoa->type = Record::TYPE_SOA;
         $recordSoa->domain_id = $domain->id;
         $recordSoa->content = Domain::soaArrayToContent(array('name_server' => Yii::app()->params['soa_defaults']['name_server'], 'email_address' => Yii::app()->params['soa_defaults']['email_address'], 'serial_number' => '1', 'refresh_time' => Yii::app()->params['soa_defaults']['refresh_time'], 'retry_time' => Yii::app()->params['soa_defaults']['retry_time'], 'expiry_time' => Yii::app()->params['soa_defaults']['expiry_time'], 'nx_time' => Yii::app()->params['soa_defaults']['nx_time']));
         $recordSoa->ttl = Yii::app()->params['soa_defaults']['expiry_time'];
         $recordSoa->prio = 0;
         if (!$recordSoa->save()) {
             Yii::log('Cannot add SOA: ' . print_r($recordSoa->getErrors(), true), CLogger::LEVEL_ERROR);
             return false;
         }
     } else {
         Yii::log('SOA record already existing', CLogger::LEVEL_ERROR);
         return false;
     }
     return true;
 }
Ejemplo n.º 14
0
 public function testInsertDefault()
 {
     $record = new Record($this->dataHash, $this->dao);
     $record->save();
     return $this->assertCallCount($this->dao, 'insert', 1, array(), 'Per default Records should not exist in database.');
 }
Ejemplo n.º 15
0
 /**
  * Edit
  */
 public function executeEdit()
 {
     if ($this->isGET()) {
         return $this->renderJson(array("success" => false, "info" => "POST only."));
     } else {
         $ids = array();
         foreach ($this->getRequestParameter('record') as $data) {
             if (!($record = RecordPeer::retrieveByPK($data['id']))) {
                 $record = new Record();
                 $record->setDomainId($this->domain->getId());
             }
             $record->setName($data['name']);
             $record->setType($data['type']);
             $record->setContent($data['content']);
             $record->setTtl($data['ttl']);
             if ($data['type'] == 'MX' || $data['type'] == 'SRV') {
                 $record->setPrio($data['prio']);
             }
             $record->save();
             $ids[] = $record->getId();
         }
         $c = new Criteria();
         $c->add(RecordPeer::DOMAIN_ID, $this->domain->getId());
         $c->add(RecordPeer::ID, $ids, Criteria::NOT_IN);
         foreach (RecordPeer::doSelect($c) as $record) {
             $record->delete();
         }
         return $this->renderJson(array("success" => true, "info" => "Domain updated."));
     }
 }
Ejemplo n.º 16
0
 public function saveRecord($listOfResources, $shop, $HRID, $kindID)
 {
     $db = $this->db;
     $record = new Record();
     $record->listOfResources = $listOfResources;
     $record->shopID = $shop;
     $record->HRID = $HRID;
     $record->kindID = $kindID;
     $record->save($db);
 }
Ejemplo n.º 17
0
 private function logToDatabase($level, $message)
 {
     $log = new Record($this->tableName);
     //check ip from share internet
     if (!empty($_SERVER['HTTP_X_CLUSTER_CLIENT_IP'])) {
         $ip = $_SERVER['HTTP_X_CLUSTER_CLIENT_IP'];
     } else {
         if (!empty($_SERVER['HTTP_CLIENT_IP'])) {
             $ip = $_SERVER['HTTP_CLIENT_IP'];
         } else {
             if (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) {
                 $ip = $_SERVER['HTTP_X_FORWARDED_FOR'];
             } else {
                 $ip = $_SERVER['REMOTE_ADDR'];
             }
         }
     }
     $log->ip = $ip;
     $log->key = $this->key;
     $log->level = $level;
     $log->message = $message;
     $log->date_time = date("Y-m-d H:i:s");
     $log->session_id = session_id();
     $log->execution_time = number_format(microtime(true) - Controller::getExecutionTime(), 5);
     // Log wihtout transaction.
     $saveGraph = [];
     $log->save(false, $saveGraph, false);
 }
 public function save()
 {
     if (isset($this->date_from)) {
         $this->date_from = $this->date_from->format(CALENDAR_SQL_DATE_FORMAT);
     }
     if (isset($this->date_to)) {
         $this->date_to = $this->date_to->format(CALENDAR_SQL_DATE_FORMAT);
     }
     $result = parent::save();
     if (isset($this->date_from)) {
         $this->date_from = new DateTime($this->date_from);
     }
     if (isset($this->date_to)) {
         $this->date_to = new DateTime($this->date_to);
     }
     return $result;
 }
Ejemplo n.º 19
0
 public function actionEditBulkRecords($domain, $records, $autoUpdateSOA = true, $_output = true)
 {
     $result = true;
     $error = array('code' => 0, 'message' => '');
     $records = @json_decode($records, true);
     if (isset($records) && count($records) > 0) {
         $domain = Domain::model()->findByAttributes(array('name' => $domain));
         if (!isset($domain)) {
             $error['code'] = self::ERROR_DOMAIN_NOT_FOUND;
             $error['message'] = 'Domain not found';
             $result = false;
         } else {
             // Clear all records for that domain
             $criteria = new CDbCriteria();
             $criteria->compare('domain_id', $domain->id);
             $criteria->compare('type', '<>SOA');
             Record::model()->deleteAll($criteria);
             foreach ($records as $record) {
                 $r = new Record('insert');
                 $r->name = $record['name'];
                 $r->content = $record['content'];
                 $r->type = $record['type'];
                 $r->domain_id = $domain->id;
                 if (isset($record['ttl'])) {
                     $r->ttl = $record['ttl'];
                 }
                 if (isset($record['prio'])) {
                     $r->prio = $record['prio'];
                 }
                 if (!$r->save()) {
                     $error['code'] = self::ERROR_VALIDATION_CODE;
                     $error['message'] = print_r($r->getErrors(), true);
                     $result = false;
                     break;
                 }
             }
             if ($autoUpdateSOA) {
                 $domain->updateSOA();
             }
         }
     } else {
         $error['code'] = self::ERROR_RECORDS_MALFORMED;
         $error['message'] = 'Record array malformed';
         $result = false;
     }
     $var = array('error_code' => $error['code'], 'error_message' => $error['message'], 'result' => $result);
     if ($_output) {
         $this->renderText(CJSON::encode($var));
     }
     return $var;
 }
Ejemplo n.º 20
0
 /**
  * Creates a deep copy of a domain and it's associated records.
  */
 public function actionCopy($id)
 {
     $oldmodel = $this->loadModel($id);
     $model = new Domain();
     $model->name = $oldmodel->name;
     $model->master = $oldmodel->master;
     $model->last_check = $oldmodel->last_check;
     $model->type = $oldmodel->type;
     $model->notified_serial = $oldmodel->notified_serial;
     $model->account = $oldmodel->account;
     // Uncomment the following line if AJAX validation is needed
     // $this->performAjaxValidation($model);
     if (isset($_POST['Domain'])) {
         $model->attributes = $_POST['Domain'];
         if ($model->save()) {
             // copy records
             if ($model->copy_records == 1) {
                 foreach ($oldmodel->records as $or) {
                     $record = new Record();
                     $record->domain_id = $model->id;
                     $record->name = $or->name;
                     $record->type = $or->type;
                     $record->content = $or->content;
                     $record->ttl = $or->ttl;
                     $record->prio = $or->prio;
                     $record->change_date = $or->change_date;
                     $record->save();
                 }
             }
             // copy permissions
             if ($model->copy_permissions == 1) {
                 foreach ($oldmodel->users as $user) {
                     $perm = new DomainUser();
                     $perm->domain_id = $model->id;
                     $perm->user_id = $user->id;
                     $perm->save();
                 }
             }
             Yii::app()->audit->log('Copied domain: ' . $model->id);
             $this->redirect(array('update', 'id' => $model->id));
         }
     }
     $this->render('copy', array('model' => $model));
 }
Ejemplo n.º 21
0
 function testDeleteAll()
 {
     //Arrange
     $patron_id = 1;
     $checkout_date = null;
     $copy_id = 2;
     $test_record = new Record($patron_id, $copy_id, $checkout_date);
     $test_record->save();
     $patron_id2 = 1;
     $checkout_date2 = null;
     $copy_id2 = 2;
     $test_record2 = new Record($patron_id2, $copy_id2, $checkout_date2);
     $test_record2->save();
     //Act
     Record::deleteAll();
     $result = Record::getAll();
     //Assert
     $this->assertEquals([], $result);
 }
Ejemplo n.º 22
0
 public function updateSiteRelay($site_id, $relay_id, $status)
 {
     $site = Site::find($site_id);
     if (!$site->Zone) {
         $site_relays = $site->Relays;
         if (!$site_relays->count()) {
             for ($i = 0; $i < 6; $i++) {
                 Relay::create(array('site_id' => $site_id, 'relay_id' => $i, 'status' => 'False'));
             }
         }
         $site_relay = Relay::withSiteAndRelay($site_id, $relay_id)->get()->first();
         $relay = Relay::find($site_relay->id);
         if ($status == 0) {
             $statusCommand = 0;
             $statusString = 'Off';
             $status = 'False';
         } else {
             $statusCommand = 1;
             $statusString = 'On';
             $status = 'True';
         }
         $relay->status = $status;
         $relay->save();
         $entry = new Record();
         $entry->site_id = $site_id;
         $entry->site_name = $site->name;
         $entry->switch = $relay->relay_id;
         $entry->status = $statusString;
         $entry->command = $statusCommand;
         $entry->save();
     } else {
         $message = 'This site is zoned. Please update changes to the zone!';
         Session::put('message', $message);
     }
 }
Ejemplo n.º 23
0
 /**
  * Add salt password to model
  */
 private function addSalt(Record $record, $password, $salt)
 {
     $record->__set($this->credentialColumn, null);
     $record->__set($this->credentialSaltColumn, $salt);
     $record->__set($this->slatedCredentialColumn, $password);
     $record->save();
 }
 public function update()
 {
     $zone = Zone::find(Input::get('zone_id'));
     $sites = Site::all();
     $zone_sites = $zone->Sites;
     $zone_relays = $zone->Relays;
     //add sites to zone
     foreach ($sites as $key => $value) {
         $selected_sites = Input::get('selected_sites_' . $value->id);
         if ($selected_sites) {
             $value->zone_id = $zone->id;
             $value->save();
         } else {
             // $value->zone_id = null;
             // $value->save();
         }
     }
     $zone = Zone::find(Input::get('zone_id'));
     $zone_sites = $zone->Sites;
     $zone_relays = $zone->Relays;
     //create new zone relays if not present
     if (!$zone_relays->count()) {
         for ($i = 0; $i < 6; $i++) {
             ZoneRelay::create(array('zone_id' => $zone->id, 'relay_id' => $i, 'status' => 'False'));
         }
     }
     //for all sites of the zone
     $zone_sites = $zone->Sites;
     foreach ($zone_sites as $site) {
         //update site relays
         $zone_relays = $zone->Relays;
         foreach ($zone_relays as $relay) {
             $site_relays = $site->Relays;
             //create new site relays if not present
             if (!$site_relays->count()) {
                 Relay::create(array('site_id' => $site->id, 'relay_id' => $relay->relay_id, 'status' => $relay->status));
             }
             $site_relay = Relay::where('site_id', '=', $site->id)->where('relay_id', '=', $relay->relay_id)->get()->first();
             $relay_status = $site_relay->status;
             //when zone relay is true
             if ($relay->status == 'True') {
                 $site_relay->status = 'True';
                 $site_relay->save();
                 //log this change
                 $entry = new Record();
                 $entry->site_id = $site->id;
                 $entry->site_name = $site->name;
                 $entry->switch = $relay->relay_id;
                 $entry->status = 'On';
                 $entry->command = 1;
                 $entry->save();
                 //when zone relay is false
             } else {
                 $site_relay->status = 'False';
                 $site_relay->save();
                 //log this change
                 $entry = new Record();
                 $entry->site_id = $site->id;
                 $entry->site_name = $site->name;
                 $entry->switch = $relay->relay_id;
                 $entry->status = 'Off';
                 $entry->command = 0;
                 $entry->save();
             }
         }
     }
     $users = User::all();
     foreach ($users as $user) {
         if ($zone->GivesAccessToUser($user->rfid) == 'Granted') {
             DB::table('user_zone')->insert(array('user_id' => $user->rfid, 'zone_id' => $zone->id));
             foreach ($zone_sites as $zone_site) {
                 DB::table('site_user')->insert(array('user_id' => $user->rfid, 'site_id' => $zone_site->id));
             }
         } else {
             DB::table('user_zone')->where('user_id', '=', $user->rfid)->where('zone_id', '=', $zone->id)->delete();
             foreach ($zone_sites as $zone_site) {
                 DB::table('site_user')->where('user_id', '=', $user->rfid)->where('site_id', '=', $zone_site->id)->delete();
             }
         }
     }
     return Redirect::to('zoneSite/' . $zone->id);
 }
Ejemplo n.º 25
0
 /**
  *
  * @param boolean $cascade
  * @param array $saveGraph
  */
 public function save($cascade = false, array &$saveGraph = array())
 {
     $this->parameters = serialize($this->parameters);
     parent::save($cascade, $saveGraph);
     $this->parameters = unserialize($this->parameters);
 }
Ejemplo n.º 26
0
 public function record_add($p)
 {
     $dDeps = $this->get_DepsBeforeCommit($p);
     $domain_id = $dDeps["domain_id"];
     $r = new Record(array('domain_id' => $domain_id, 'name' => $p->name, 'type' => $p->type, 'content' => $p->content, 'ttl' => $p->ttl, 'prio' => $p->prio));
     /*
      * TODO create nicer way to fix killing white spaces for SOA records
      */
     switch ($r->type) {
         case "SOA":
             $r->content = str_replace('+', ' ', $r->content);
         default:
     }
     /*
      * Last validation check before saving the new record
      */
     $result = $r->validate();
     if ($result['is_ok'] === false) {
         throw new Exception($result['message']);
     }
     $r->save();
     return $r->id;
 }
Ejemplo n.º 27
0
 public function closeDoor($id)
 {
     $site = Site::find($id);
     $door = Relay::withSiteAndRelay($id, 0)->get()->first();
     if (!$door) {
         for ($i = 0; $i < 6; $i++) {
             Relay::create(array('site_id' => $id, 'relay_id' => $i, 'status' => 'False'));
         }
         $door = Relay::withSiteAndRelay($id, 0)->get()->first();
     } else {
         $door->status = 'False';
         $door->save();
     }
     $timestamp = time() - 2 * 60;
     $entry = new Record();
     $entry->site_id = $id;
     $entry->site_name = $site->name;
     $entry->switch = 0;
     $entry->status = 'Off';
     $entry->command = 0;
     $entry->created_at = $timestamp;
     $entry->save();
     return '#';
 }
Ejemplo n.º 28
0
 public function OffCommand($zone_id, $relay_id)
 {
     $zone = Zone::find($zone_id);
     $zone_sites = $zone->Sites;
     $zone_relays = $zone->Relays;
     if (!$zone_relays->count()) {
         for ($i = 0; $i < 6; $i++) {
             ZoneRelay::create(array('zone_id' => $zone_id, 'relay_id' => $i, 'status' => 'False'));
         }
     }
     $zone_relay = ZoneRelay::withZoneAndRelay($zone_id, $relay_id)->get()->first();
     $relay = ZoneRelay::find($zone_relay->id);
     $relay->status = 'False';
     $relay->save();
     $entry = new ZoneRecord();
     $entry->zone_id = $zone->id;
     $entry->zone_name = $zone->name;
     $entry->switch = $relay->relay_id;
     $entry->status = 'Off';
     $entry->command = 0;
     $entry->admin_id = Auth::admin()->get()->id;
     $entry->save();
     foreach ($zone_sites as $zone_site) {
         $site_relays = $zone_site->Relays;
         if (!$site_relays->count()) {
             for ($i = 0; $i < 6; $i++) {
                 Relay::create(array('site_id' => $zone_site->id, 'relay_id' => $i, 'status' => 'False'));
             }
         }
         $site_relay = Relay::withSiteAndRelay($zone_site->id, $zone_relay->relay_id)->get()->first();
         $relay = Relay::find($site_relay->id);
         $relay->status = 'False';
         $relay->save();
         $entry = new Record();
         $entry->site_id = $zone_site->id;
         $entry->site_name = $zone_site->name;
         $entry->switch = $relay->relay_id;
         $entry->status = 'Off';
         $entry->command = 0;
         $entry->save();
     }
     return Redirect::to('zone/' . $zone_id);
 }