示例#1
0
 /**
  * log oluşturma ve db kayıt alanıdır
  * @param string  $tur hatanın türü
  * @param string  $url hataya ait url adresi
  * @param string  $log hata ya ait bir açıklama
  * @param sting  $data mesela aramadan geliyorsa onu alana basar
  */
 public static function LogOlustur($tur, $url, $log, $data)
 {
     $turler = array('ajax_sayfa_istegi' => 4, 'hata' => 1, 'hatali_giris' => 2, 'arama' => 3);
     $tur = $turler[$tur];
     $postdata = array('log_turu' => $tur, 'log_url' => $url, 'log' => $log, 'data' => $data, 'ipadres' => \Lib\Tools::get_client_ip_server(), 'tarih' => date('Y.m.d H:i:s'));
     $_model = new \Models\Log_Model();
     $_model->insert($postdata);
 }
示例#2
0
 /**
  * varsayılan hata mesajı
  */
 public static function customErrorMsg()
 {
     $url = \Lib\Tools::currentPageURL();
     $path_config = parse_url($url, PHP_URL_HOST);
     if ($path_config == RuntimePath) {
         echo "<p>Hata olustu ve rapor olusturuldu---- buraya css koyulacak </p>";
         include "errorlog.html";
     } else {
         echo 'Beklenmeyen bir hata oluştu';
     }
     exit;
 }
示例#3
0
 public function __construct()
 {
     ob_start();
     $url = \Lib\Tools::currentPageURL();
     $path_config = parse_url($url, PHP_URL_HOST);
     require_once "app/Config." . $path_config . ".php";
     // hata yakalama ayarları
     set_exception_handler('Core\\Logger::exceptionHandler');
     set_error_handler('Core\\Logger::errorHandler');
     // sessions başlat
     \Lib\Session::init();
     // TODO :: iptal edilebilir
     // set vasyılan template ayarı
     \Lib\Session::set('template', 'default');
 }
示例#4
0
 /**
  * slug a bağlı ilgili sayfayı açar
  *
  * @param string $slug
  * @todo slug db de var mı yok yoksa 404 bas
  * @return mixed
  */
 public function sayfa($slug = "kurumsal")
 {
     $this->model = new \Models\Posts_Model();
     $this->model->type = 'pages';
     $lng = new \Core\Language();
     $lang = $this->request->get('lang');
     if ($lang == "") {
         $lng->defaultLanguage = "tr";
         // dili belirtiyoruz
     } else {
         $lng->defaultLanguage = $lang;
     }
     $lng->load('header');
     $pages = $this->model->fetchPost_Slug($slug, $this->defaultLanguage);
     if ($pages) {
         // print_r($pages);
         $data['title'] = $pages['title'];
         $data['content'] = stripslashes($pages['content']);
         $data_head['title'] = $pages['title'];
         $data_head['meta_title'] = substr(stripslashes($pages['description']), 0, 150);
         $data_head['meta_image'] = DIR . PUBLIC_PATH . "/img/idealcomtrlogo.png";
         $data_head['meta_link'] = \Lib\Tools::currentPageURL();
         //menuler
         $data_header['kurumsal'] = $lng->get('kurumsal');
         $data_header['hizmetler'] = $lng->get('hizmetler');
         $data_header['urunler'] = $lng->get('urunler');
         $data_header['markalar'] = $lng->get('markalar');
         $data_header['satis'] = $lng->get('satis');
         $data_header['kariyer'] = $lng->get('kariyer');
         $data_header['iletisim'] = $lng->get('iletisim');
         View::RenderTemplate('head_view', $data_head);
         View::RenderTemplate('header_view', $data_header);
         View::Render('sayfa/index_view', $data);
         View::RenderTemplate('footer_view', $this->footerDatasi);
     } else {
         View::render('error/404', '');
     }
 }
示例#5
0
 /**
  * pagination kısmını linkler
  *
  * @return string
  */
 public static function PaginationLink()
 {
     $url = \Lib\Tools::currentPageURL();
     $path = parse_url($url, PHP_URL_PATH);
     // query var mı ona bakılır
     $queryKontrolQueryName = parse_url($url, PHP_URL_QUERY);
     $dir = substr(DIR, 0, -1);
     // bu / işareti sil
     if (!empty($queryKontrolQueryName)) {
         // https://secure.php.net/parse_str Dizge içindeki değişkenleri çözümledik yani diziye donuşturdum
         parse_str($queryKontrolQueryName, $output);
         // query içinde page varsa sil
         if (array_key_exists('page', $output)) {
             unset($output['page']);
             // varsa sil
             $linkleme = '';
             // sort haricindekileri yeniden linkle
             foreach ($output as $anakey => $value) {
                 if (!empty($value)) {
                     $linkleme .= '&' . $anakey . '=' . $value;
                 }
             }
             $linkleme = substr($linkleme, 1);
             // bu / işareti sil
             if (!empty($linkleme)) {
                 $links = $linkleme . '&';
             } else {
                 $links = $linkleme;
             }
             return self::LinkTemizle($dir . $path . '?' . $links);
         } else {
             return $url . '&';
         }
     } else {
         return self::LinkTemizle($url . '?');
     }
 }
示例#6
0
 /**
  * düzenleme alanı
  *
  * @param int $id
  * @return mixed
  */
 public function edit($post_id)
 {
     $languages = $this->_model->All_languages();
     // tüm diller
     foreach ($languages as $value) {
         $lng = $value['slug'];
         $data['lang'][$lng] = $this->_model->fetch_cats($post_id, $lng);
     }
     $data['languages'] = $languages;
     $data['_setting'] = $this->default_params();
     $data_head['page_title'] = 'Sayfa Düzenleme';
     $data['post_id'] = $post_id;
     // && \Lib\Tools::is_ajax()
     if ($this->request->getMethod() == 'POST') {
         $this->post->editCat();
         $ok = \Lib\Tools::message_ver('ok', 'Bilgileriniz başarı ile değiştirilmiştir');
         \Lib\Session::set('message', $ok);
         \Lib\Url::redirect('admin/' . $this->post_name . '_edit/' . $post_id);
     }
     View::RenderAdminTemplate('head_view', $data_head);
     View::RenderAdminTemplate('header_view');
     View::RenderAdminTemplate('sidebar_view');
     View::RenderAdmin('posts_cat/edit_view', $data, $error);
     View::RenderAdminTemplate('footer_view');
 }
示例#7
0
 /**
  * düzenleme alanı
  *
  * @param int $id
  * @return mixed
  */
 public function edit($post_id)
 {
     $data['post'] = $this->_model->fetch_post($post_id);
     $data['languages'] = $languages;
     $data['categories'] = $this->_model->AllPostsCategories();
     $data['pictures'] = $this->_model->AllPostsPictures(1);
     $data['_setting'] = $this->default_params();
     $data_head['page_title'] = 'Sayfa Düzenleme';
     $data['post_id'] = $post_id;
     // && \Lib\Tools::is_ajax()
     if ($this->request->getMethod() == 'POST') {
         $this->edit_post();
         $this->upload($post_id);
         $ok = \Lib\Tools::message_ver('ok', 'Bilgileriniz başarı ile değiştirilmiştir');
         \Lib\Session::set('message', $ok);
         \Lib\Url::redirect('admin/' . $this->post_name . '_edit/' . $post_id);
     }
     View::RenderAdminTemplate('head_view', $data_head);
     View::RenderAdminTemplate('header_view');
     View::RenderAdminTemplate('sidebar_view');
     View::RenderAdmin('posts/edit_view', $data, $error);
     View::RenderAdminTemplate('footer_view');
 }
示例#8
0
 /**
  * şifremi unuttum
  *
  * @return mixed
  */
 public function SifremiUnuttum()
 {
     if (\Lib\Session::get('loggedin')) {
         \Lib\Url::redirect('hesapim');
     }
     // if (isset ( $_POST ['submit'] )) {
     if (Request::isPost()) {
         $email = $this->request->get('email');
         if ($email == '') {
             $error[] = 'email alanı boş bırakılamaz';
         }
         if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
             $error[] = 'lütfen geçerli bir email adresi yazınız ';
         }
         if (!$error) {
             $total = $this->_model->getEmail_Varmi($email);
             if ($total > 0) {
                 $user = $this->_model->getKullaniciBilgileri($email);
                 // print_r($user);die;
                 $email_adresi = $user['email'];
                 $ad_soyad = \Lib\Strings::adSoyadParcala($bilgiler['unvan']);
                 $adi_soyadi = $ad_soyad['adi'] . ' ' . $ad_soyad['soyadi'];
                 $user_id = $user['id'];
                 $subject = 'İdeal.com.tr Şifre Yenileme';
                 $tokenkey = \Lib\Tools::token_key_olustur();
                 $toplam_token_adet = $this->_model->getBoyle_bir_token_varmi($tokenkey);
                 // aynı isimde token key olabilir onu engellemek gerek
                 if ($toplam_token_adet > 0) {
                     $tokenkey = $tokenkey . 'st_n_ck_ey';
                 }
                 $postdata = array('token_key' => $tokenkey);
                 $where = array('id' => $user_id);
                 $this->_model->update_tokenKey_user($postdata, $where);
                 $message = '<a href="' . DIR . 'uyelik?action=uye_sifremiunuttum_degisiklik&token=' . $tokenkey . '">Şifre değiştirmek için tıklyayınız</a>';
                 $mail = new \Helpers\Mailler_Helper();
                 $sonuc = $mail->sendmail("*****@*****.**", $email_adresi, $adi_soyadi, $subject, $message);
                 if (!$sonuc) {
                     $hata = \Lib\Tools::message_ver('hata', $sonuc);
                     \Lib\Session::set('message', $hata);
                     // \Lib\Url::redirect('uyelik?action=sifremi_unuttum');
                 } else {
                     $basarili = \Lib\Tools::message_ver('ok', 'Şifre değiştirme linki mail adresinize gönderilmiştir');
                     \Lib\Session::set('message', $basarili);
                     // \Lib\Url::redirect('uyelik?action=uye_sifremiunuttum_degisiklik');
                 }
             } else {
                 $err = 'Böyle bir e-mail adresi bulunamadi';
                 $hata = \Lib\Tools::message_ver('hata', $err);
                 \Lib\Session::set('message', $hata);
                 // \Lib\Url::redirect('uyelik?action=sifremi_unuttum');
             }
         }
     }
     return $error;
 }
示例#9
0
 /**
  * marka linkleri ile ilgili işlemlerin yapılacağı kısım
  *
  * @access view/urunler_view erişir
  * @param string $eklenecek_kelime
  * @return string
  */
 public static function FilterLink($ozellik, $deger)
 {
     $eklenecek_kelime = \Lib\Strings::cevir_artiya($deger);
     $url = \Lib\Tools::currentPageURL();
     $urlPathAdresi = parse_url($url, PHP_URL_PATH);
     $QueryName = parse_url($url, PHP_URL_QUERY);
     parse_str($QueryName, $query2arrayCiktisi);
     $dir = substr(DIR, 0, -1);
     // bu / işareti sil
     // query parametresi hiç yoksa
     if (!empty($QueryName)) {
         // eğer $_GET['marka'] değer i zaten varsa onu yedekle sonra sil
         if (array_key_exists($ozellik, $query2arrayCiktisi)) {
             // echo 'girer';
             // eğer get[ozellik] boş değilse
             if (!empty($query2arrayCiktisi[$ozellik])) {
                 // echo $ozellik . 'yazdı';
                 unset($query2arrayCiktisi['page']);
                 // paigination değerini sil eğer silinmeseydi mesela
                 // http://smvc.dev/kategoriler/gida_ve_icecek/sicak_icecekler?sort=artanFiyat&page=7&m=JACOPS-MEHMET+EFEND%C4%B0 bu linkde hata verir di çünkü page=7 yoktur 3 ürün var
                 $mdegeri = $query2arrayCiktisi[$ozellik] . '-' . \Lib\Strings::cevir_artiya($eklenecek_kelime);
                 $yeni = \Lib\Arrays::string2unique($query2arrayCiktisi[$ozellik], $eklenecek_kelime);
                 $marka_stack = '&' . $ozellik . '=' . $yeni;
                 unset($query2arrayCiktisi[$ozellik]);
                 // diziden kaldır tekrar oluşan linkleme dongusüne girmesin
                 $linkleme = '';
                 // m harici kalan query değerlerini de ekler diziye
                 foreach ($query2arrayCiktisi as $key => $value) {
                     $linkleme .= '&' . $key . '=' . $value;
                 }
                 $linkleme = substr($linkleme, 1);
                 return self::LinkTemizle($dir . $urlPathAdresi . '?' . $linkleme . $marka_stack . '');
             } else {
                 $mdegeri = $query2arrayCiktisi[$ozellik] . '-' . $eklenecek_kelime;
                 $mdegeri = substr($mdegeri, 1);
                 // bastaki - temizle
                 $yeni = \Lib\Strings::cevir_artiya($mdegeri);
                 // eğer zaten kendisi var ise link içinde olmasın
                 $marka_stack = '&' . $ozellik . '=' . $yeni;
                 unset($query2arrayCiktisi[$ozellik]);
                 // diziden kaldır tekrar donguye tekrar girmesin
                 $linkleme = '';
                 // m harici kalan query değerlerini de ekler diziye
                 foreach ($query2arrayCiktisi as $key => $value) {
                     $linkleme .= '&' . $key . '=' . $value;
                 }
                 return self::LinkTemizle($dir . $urlPathAdresi . '?' . $linkleme . $marka_stack . '');
             }
         } else {
             // m harici bir link var mı onları da al
             if (!empty($QueryName)) {
                 $linkleme = '';
                 foreach ($query2arrayCiktisi as $key => $value) {
                     $linkleme .= '&' . $key . '=' . $value;
                 }
             }
             return self::LinkTemizle($dir . $urlPathAdresi . '?' . ($linkleme .= '&' . $ozellik . '=' . $eklenecek_kelime));
         }
     } else {
         return self::LinkTemizle($dir . $urlPathAdresi . '?' . $ozellik . '=' . $eklenecek_kelime);
     }
 }
示例#10
0
    public function viewCartTableFull($liste = "b")
    {
        if (sizeof($this->session) > 0) {
            if ($liste != "liste") {
                $class = '';
            } else {
                $class = 'class="body-wrap" border="1" cellspacing="0" cellpadding="0"';
            }
            $products = '
        <div class="cart-info">
       	<table ' . $class . '>
            <thead>
              <tr>
                <td class="image">Ürün Görseli</td>
                <td class="name">Ürün Açıklaması</td>
          
                <td class="quantity">Adet</td>
                 <td class="unit">Birim</td>
                <td class="price">Birim Fiyat</td>
                <td class="total">Toplam</td>
              </tr>
            </thead>
            <tbody class="sepetsatirlari">';
            foreach ($this->session as $id => $item) {
                // $this->session [$id] ['ToplamFiyat'] = ($this->session [$id] ['Fiyat'] * $this->session [$id] ['ToplamAdet']);
                // sil diğer kodları <a onclick="sepeti_sil_sepetim(' . $id . ',true );" href="javascript: void(0)" class="sil">
                if ($item['ResimURL'] == '') {
                    $resim = BISLEM_RESIM_BULUNAMADİ;
                } else {
                    $resim = $item['ResimURL'];
                }
                if ($liste != "liste") {
                    if ($item['StokBirimi'] == 'ADET') {
                        $input = '<input readonly="readonly" data-max="' . $item['StokMiktari'] . '" class="urun_adeti" id="urun_adeti_' . $item['UrunID'] . '" type="text" value="' . $item['ToplamAdet'] . '"  name="quantity">';
                    }
                    if ($item['StokBirimi'] == 'KİLOGRAM') {
                        $input = '<input readonly="readonly" data-max="' . $item['StokMiktari'] . '"  class="urun_adeti" style="width: 59px !important;" id="urun_adeti_' . $item['UrunID'] . '" type="text" value="' . $item['ToplamAdet'] . '"  name="currency">';
                    }
                    $deger = '
                      
                    <div class="input-group">
                         ' . $input . '
					</div>
                            
                            <a href="/sepet/sepet_sil/' . $id . '"  class="sil">
			   						 <img title="Kaldır" alt="Kaldır" src="' . $this->public_path . '/public/img/remove.png">';
                } else {
                    $deger = $item['ToplamAdet'];
                }
                $products .= '<tr id="full-cart' . $id . '" class="sepetsatiri">
                <td class="image">
				<a href="' . $item['URL'] . '">
				    
                <img src="' . $resim . '" style="height:35px;" alt="' . $item['UrunAdi'] . '" title="' . $item['UrunAdi'] . '"></a>
                    
                </td>
                <td class="name">
                <a href="' . $item['URL'] . '">' . $item['UrunAdi'] . '</a>
                </td>
         
                <td class="quantity">
            			' . $deger . '
			    </td>
            			             <td class="unit">
            			' . \Lib\Tools::stok_birimleri($item['StokBirimi']) . '
			    </td>
			    <td class="price">' . $this->tr_number($item['Fiyat']) . ' TL</td>
                <td id="total_' . $item['UrunID'] . '" class="total">' . $this->tr_number($item['ToplamFiyat']) . ' TL</td>
              </tr>';
            }
            $products .= ' </tbody>
          </table>
        </div>
   ';
            return $products;
        } else {
            return '<h1>Alışveriş Sepetiniz Boş</h1><br>
					<a href="/">Alışverişe devam etmek için buraya tıklayınız.</a>
					';
        }
    }