<?php

    
/*     

        Wersja demonstracyjna przykładowego 
            wykorzystania SMS API MicroSMS.pl 
        
        Ostatnia aktualizaja: 2/20/2015
        
        Dowiesz się tutaj jak wykorzystać API w celu 
            
            - Sprawdzenia kodu SMS z określonym numerem SMS (wartością wiadomości)
            - Jak zbudować formularz obierania danych od klienta
        
        Możliwe błedy to 
        - E,0 -> brak danych w API
        - E,1 -> jeśli nie ma kodu, bądź nie ma 8 znaków
        - E,2 -> jeśli użytokwnik bądź usługa nie istnieje bądź nie są w 1 profilu
        - E,3 -> Jeśli nie ma numeru SMS
        
    */

    /* 
        Jeśli Twój skrypt posiada błędy stworzone 
        przez programiste, poniższe polecenia mogą wywołać
        dużą ilość wpisów na stronie dlatego, zaleca się 
        posiadać wyłączone te opcje, przy niesprawdzonych skryptach
        do czasu wyeliminowania problemu.
    */
    
    
error_reporting(E_ALL);

    
ini_set('error_reporting'E_ALL);
    
ini_set("display_errors"1);

    
/*
        Zmienna userid pozwala zidentyfikować partnera MicroSMS
        Można ją znaleźć w panelu administracyjnym od razu po zalogowaniu, pod 
        imieniem i nazwiskiem. Np. (ID 1)
    */
    
    
$microsms['userid']     = 0;
    
    
/*
        Zmienna serviceid pozwala na sprawdzenie, który prefiks SMS ma zostać 
        zweryfikowany. W przypadku kiedy userid oraz serviceid nie są ze sobą powiązane
        partner otrzyma informację zwrotną z systemu w postaci E,2
        
        serviceid jest to inaczej ID usługi konta premium dostępne jest po aktywaji przez
        klienta i administratora, zakładka SMS Premium -> Konta 
    */
    
    
$microsms['serviceid']     = 0;
    
    
/* 
        number pozwala na zweryfikowanie kwoty za jaką ma zostać wydany produkt
        Pełna ich lista znajduje się w edycji usłui
    */
    
    
    
$microsms['number']        = 7055;
    
    
/* 
        Treść wiadomości SMS, na jaką klienci mają wysyłać wiadomości.
    */

    
$microsms['txt'] = 'MSMS.SUFIKS';
    
    if( isset(
$_POST['send']) && isset($_POST['code']) ) {
    
        
$code addslashes($_POST['code']);
        
        
/* 
            Weryfikujemy poprawność kodu SMS, 
            pamiętajmy, że MicroSMS wydaje jedynie
            kody posiadające 8 znaków
        */
        
        
if (preg_match("/^[A-Za-z0-9]{8}$/"$code)) {
        
            
/* 
                Łączymy się z serwerem MicroSMS w celu
                pobrania informacji nt. kodu 
            */
            
$handle fopen("http://microsms.pl/api/check.php?userid=" $microsms['userid'] . "&number=" $microsms['number'] . "&code=" $code '&serviceid=' $microsms['serviceid'], 'r');
            
$check  fgetcsv($handle1024);
            
fclose($handle);
            
            
/* 
                Musimy zweryfikować, czy system przypadkiem 
                nie ma błedu i pełen poprawnie formularz dociera
                do MicroSMS, jeśli na pierwszym tj. 0 miejscu znajduje 
                się odpowiedź E oznacza, to ERROR i któraś zmienna jest
                błędnie uzupełniona
            */
            
            
if($check[0] != 'E') { 
                
                
/* 
                    W przypadku kiedy wszystkie warunki zostały
                    spełnione możemy wydać produkt 
                */
                
if($check[0] == 1) { 
                    
$info 'Gratulacje, zakupiłeś nowy produkt! ';
                    
// Dalsza część swojego kodu...
                
} else { 
                    
$info 'Podany kod jest nieprawidłowy.';
                }
            } else { 
                
$info 'Nieprawidłowo skonfigurowana usługa, skontaktuj się z administratorem sklepu.';
            }    
            
        } else { 
            
$info 'Nieprawidłowy format kodu.';
        }
    }
    
?>


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="pl">
   <head>
      <meta http-equiv="content-type" content="text/html; charset=utf-8" />
      <title>Przykładowy skrypt płatności SMS</title>
   </head>
   <body>
      <style>
         body { font-size: 11px; font-family: Tahoma, Arial, Verdana, Helvetica, sans-serif; font-weight: normal;  } 
         #page { width: 600px; padding: 20px; margin-left: auto; margin-right: auto; border:1px solid #c6c6c6; }
         .center { text-align: center; }
         .alert-box { color:#555; border-radius:10px; font-family:Tahoma,Geneva,Arial,sans-serif;font-size:11px; padding:10px 10px 10px 36px; margin:10px; }
         .alert-box span { font-weight:bold;text-transform:uppercase; }
         .notice { background:#e3f7fc;border:1px solid #8ed9f6; }
         .title { font-size: 20px;  font-weight:bold; }
         input[type=text], textarea {
         -webkit-transition: all 0.30s ease-in-out;
         -moz-transition: all 0.30s ease-in-out;
         -ms-transition: all 0.30s ease-in-out;
         -o-transition: all 0.30s ease-in-out;
         outline: none;
         padding: 3px 0px 3px 3px;
         margin: 5px 1px 3px 0px;
         border: 1px solid #DDDDDD;
         }
         .button {
         background:-webkit-gradient(linear, left top, left bottom, color-stop(0.05, #d0451b), color-stop(1, #bc3315));
         background:-moz-linear-gradient(top, #d0451b 5%, #bc3315 100%);
         background:-webkit-linear-gradient(top, #d0451b 5%, #bc3315 100%);
         background:-o-linear-gradient(top, #d0451b 5%, #bc3315 100%);
         background:-ms-linear-gradient(top, #d0451b 5%, #bc3315 100%);
         background:linear-gradient(to bottom, #d0451b 5%, #bc3315 100%);
         filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#d0451b', endColorstr='#bc3315',GradientType=0);
         background-color:#d0451b;
         display:inline-block;
         cursor:pointer;
         color:#ffffff;
         font-family:arial;
         font-size:13px;
         padding:6px 12px;
         text-decoration:none;
         border:0px;
         }
         .button:hover {
         background:-webkit-gradient(linear, left top, left bottom, color-stop(0.05, #bc3315), color-stop(1, #d0451b));
         background:-moz-linear-gradient(top, #bc3315 5%, #d0451b 100%);
         background:-webkit-linear-gradient(top, #bc3315 5%, #d0451b 100%);
         background:-o-linear-gradient(top, #bc3315 5%, #d0451b 100%);
         background:-ms-linear-gradient(top, #bc3315 5%, #d0451b 100%);
         background:linear-gradient(to bottom, #bc3315 5%, #d0451b 100%);
         filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#bc3315', endColorstr='#d0451b',GradientType=0);
         background-color:#bc3315;
         }
         .button:active {
         position:relative;
         top:1px;
         }
      </style>
      <div id="page">
         <div class="center title">Zakup produktu - demo</div>
         <br/>
         <div class="center">
            W celu zakupu produktu proszę wysłać SMS na numer <strong><?php echo $microsms['number']; ?></strong> o treści <strong><?php echo $microsms['txt']; ?></strong><br/>
            Koszt wysłania wiadomości 9zł netto (11.07 zł z vat).<br/><br/>
            <?php if(isset($info)) { ?>
            <div class="alert-box notice"><?php echo $info?></div>
            <?php ?>
            <form method="post" >
               <input type="hidden" name="send" value="" />   
               <input name="code" placeholder="Kod sms" type="text" />
               <button class="button" type="submit">Sprawdź kod</button>
            </form>
            <br/><br/>
            Płatności zapewnia firma <a href="http://microsms.pl/">MicroSMS</a>. <br/>
            Korzystanie z serwisu jest jednozanczne z akceptacją <a href="">regulaminu serwisu</a>.<br/>
            Jeśli nie dostałeś kodu zwrotnego w ciągu 30 minut skorzystaj z <a href="http://microsms.pl/customer/complaint/">formularza reklamacyjnego</a><br/> W przypadku problemów z produktem skontaktuj się z administratorem sklepu [email protected]<br/>
            <img src="http://microsms.pl/public/cms/img/banner.png">
         </div>
      </div>
   </body>
</html>