예제 #1
0
파일: Reviews.php 프로젝트: kokkez/shineisp
 /**
  * saveData
  * Save the record
  * @param posted var from the form
  * @return Boolean
  */
 public static function saveData($record, $sendemail = false)
 {
     // Set the new values
     if (!empty($record['review_id']) && is_numeric($record['review_id'])) {
         $review = self::getbyId($record['review_id']);
     } else {
         $review = new Reviews();
         $review->ip = $_SERVER['REMOTE_ADDR'];
     }
     // Get the latitude and longitude coordinates
     $coords = Shineisp_Commons_Utilities::getCoordinates($record['city']);
     $review->product_id = $record['product_id'];
     $review->publishedat = date('Y-m-d H:i:s');
     $review->nick = $record['nick'];
     $review->city = !empty($coords['results'][0]['formatted_address']) ? $coords['results'][0]['formatted_address'] : $record['city'];
     $review->referer = $record['referer'];
     $review->subject = $record['subject'];
     $review->latitude = !empty($coords['results'][0]['geometry']['location']['lat']) ? $coords['results'][0]['geometry']['location']['lat'] : $record['latitude'];
     $review->longitude = !empty($coords['results'][0]['geometry']['location']['lng']) ? $coords['results'][0]['geometry']['location']['lng'] : $record['longitude'];
     $review->email = $record['email'];
     $review->stars = $record['stars'];
     $review->active = isset($record['active']) ? $record['active'] : 0;
     $review->review = $record['review'];
     if ($review->trySave()) {
         if ($sendemail) {
             // Send the email to confirm the subscription
             $isp = Isp::getActiveISP();
             $placeholders['review'] = $record['review'];
             $placeholders['nick'] = $record['nick'];
             $placeholders['referer'] = $record['referer'];
             $placeholders['subject'] = $record['subject'];
             $placeholders['email'] = $record['email'];
             $placeholders['stars'] = $record['stars'];
             $placeholders['product'] = products::getAllInfo($record['product_id']);
             // Send a message to the administrator
             Shineisp_Commons_Utilities::sendEmailTemplate($isp['email'], 'review_new', $placeholders);
         }
         return $review->review_id;
     }
     return false;
 }
예제 #2
0
 /**
  * Add a new address
  * @param $id
  * @param array $data
  * @return integer address_id
  */
 public static function AddNew(array $data, $id = "")
 {
     if (is_numeric($id)) {
         $address = self::find($id);
     } else {
         $address = new Addresses();
     }
     $address['address'] = $data['address'];
     $address['city'] = $data['city'];
     $address['code'] = $data['code'];
     $address['area'] = $data['area'];
     $region_id = intval($data['region_id']);
     if ($region_id != 0) {
         $address['region_id'] = $region_id;
     }
     // Get the latitude and longitude coordinates
     $coords = Shineisp_Commons_Utilities::getCoordinates($data['city']);
     $address['latitude'] = $coords['results'][0]['geometry']['location']['lat'];
     $address['longitude'] = $coords['results'][0]['geometry']['location']['lng'];
     $address['country_id'] = $data['country_id'];
     $address['customer_id'] = $data['customer_id'];
     $address->save();
     return $address['address_id'];
 }