Changeset 1191

Show
Ignore:
Timestamp:
02/17/10 14:02:58 (2 years ago)
Author:
Hugo
Message:

ispClient: save commit

Location:
trunk/unxsISP/interfaces/customer
Files:
2 modified

Legend:

Unmodified
Added
Removed
  • trunk/unxsISP/interfaces/customer/purchase.c

    r1189 r1191  
    1010#include "interface.h" 
    1111 
     12static unsigned uInvoice=0; 
     13 
    1214static char *cuExpMonthStyle="type_fields"; 
    1315static char *cuExpYearStyle="type_fields"; 
     
    3133static char *cZipStyle="type_fields"; 
    3234 
     35static char cCardNumber[101]={""}; 
     36static char *cCardNumberStyle="type_fields"; 
     37 
     38static char cCardName[101]={""}; 
     39static char *cCardNameStyle="type_fields"; 
     40 
     41void GeneratePurchaseInvoice(void); 
    3342void ShowConfirmPurchasePage(void); 
    3443void htmlPurchasePage(char *cTitle,char *cTemplateName); 
     44unsigned ValidPurchaseInput(void); 
     45unsigned SubmitRequest(unsigned uInvoice); //payment.c 
    3546 
    3647 
     
    4152        for(i=0;i<x;i++) 
    4253        { 
    43  
    44 //              if(!strcmp(entries[i].name,"cFirstName")) 
    45 //                      sprintf(cFirstName,"%.32s",entries[i].val); 
     54                if(!strcmp(entries[i].name,"cAddr1")) 
     55                        sprintf(cAddr1,"%.100s",entries[i].val); 
     56                else if(!strcmp(entries[i].name,"cAddr2")) 
     57                        sprintf(cAddr2,"%.100s",entries[i].val); 
     58                else if(!strcmp(entries[i].name,"cCity")) 
     59                        sprintf(cCity,"%.100s",entries[i].val); 
     60                else if(!strcmp(entries[i].name,"cState")) 
     61                        sprintf(cState,"%.100s",entries[i].val); 
     62                else if(!strcmp(entries[i].name,"cZip")) 
     63                        sprintf(cZip,"%.32s",entries[i].val); 
     64                else if(!strcmp(entries[i].name,"cCardNumber")) 
     65                        sprintf(cCardNumber,"%.32s",entries[i].val); 
     66                else if(!strcmp(entries[i].name,"uExpMonth")) 
     67                        sscanf(entries[i].val,"%u",&uExpMonth); 
     68                else if(!strcmp(entries[i].name,"uExpYear")) 
     69                        sscanf(entries[i].val,"%u",&uExpYear); 
     70                else if(!strcmp(entries[i].name,"cCardName")) 
     71                        sprintf(cCardName,"%.100s",entries[i].val); 
     72 
    4673        } 
    4774}//void ProcessPurchaseVars(pentry entries[], int x) 
     
    7097                        ShowConfirmPurchasePage(); 
    7198                } 
    72  
     99                else if(!strcmp(gcFunction,"Complete Payment")) 
     100                { 
     101                        //Validate input 
     102                        if(!ValidPurchaseInput()) 
     103                                ShowConfirmPurchasePage(); 
     104 
     105                        //Generate invoice 
     106                        GeneratePurchaseInvoice(); 
     107                        //Proccess invoice 
     108                        if(SubmitRequest(uInvoice)) 
     109                        { 
     110                                //If goes OK, create unxsISP data for radius account deployment 
     111                                //and submit job 
     112                        } 
     113                } 
    73114 
    74115        } 
     
    176217                        template.cpValue[22]=cZipStyle; 
    177218 
    178                         template.cpName[23]=""; 
     219                        template.cpName[23]="cCardNumberStyle"; 
     220                        template.cpValue[23]=cCardNumberStyle; 
     221 
     222                        template.cpName[24]="cCardNameStyle"; 
     223                        template.cpValue[24]=cCardNameStyle; 
     224                         
     225                        template.cpName[25]="cCardNumber"; 
     226                        template.cpValue[25]=cCardNumber; 
     227 
     228                        template.cpName[26]="cCardName"; 
     229                        template.cpValue[26]=cCardName; 
     230 
     231                        template.cpName[27]=""; 
    179232                         
    180233                        printf("\n<!-- Start htmlPurchasePage(%s) -->\n",cTemplateName);  
     
    226279 
    227280 
    228  
     281void GeneratePurchaseInvoice(void) 
     282{ 
     283        //Pretty much hard-coded function to generate an invoice for the new customer 
     284        sprintf(gcQuery,"INSERT INTO tInvoice (cFirstName,cLastName,cEmail,cAddr1,cAddr2," 
     285                        "cCity,cState,cZip,cCountry,cCardType,cCardNumber,uExpMonth,uExpYear," 
     286                        "cCardName,uOwner,uCreatedBy,uCreatedDate) " 
     287                        "VALUES (SELECT cFirstName,cLastName,cEmail,cAddr1,cAddr2," 
     288                        "cCity,cState,cZip,cCountry,cCardType,cCardNumber,uExpMonth,uExpYear," 
     289                        "cCardName,uOwner,1,UNIX_TIMESTAMP(NOW())"); 
     290        mysql_query(&gMysql,gcQuery); 
     291        if(mysql_errno(&gMysql)) 
     292                htmlPlainTextError(mysql_error(&gMysql)); 
     293         
     294        uInvoice=mysql_insert_id(&gMysql); 
     295         
     296        sprintf(gcQuery,"INSERT INTO tInvoiceItems SET uInvoice=%u,uClient=%u,uProduct=1," 
     297                        "uQuantity=1,mPrice='15.95',mTotal='15.95',uOwner=%u,uCreatedBy=1," 
     298                        "uCreatedDate=UNIX_TIMESTAMP(NOW())" 
     299                        ,uInvoice 
     300                        ,guLoginClient 
     301                        ,guOrg); 
     302        mysql_query(&gMysql,gcQuery); 
     303        if(mysql_errno(&gMysql)) 
     304                htmlPlainTextError(mysql_error(&gMysql)); 
     305 
     306}//void GeneratePurchaseInvoice(void) 
     307 
     308 
     309unsigned ValidPurchaseInput(void) 
     310{ 
     311        //All form fields required 
     312 
     313        return(1); 
     314 
     315}//unsigned ValidPurchaseInput(void) 
     316 
     317 
  • trunk/unxsISP/interfaces/customer/templates-english/Purchase.Body

    r1189 r1191  
    167167        </td> 
    168168        </tr> 
    169  
     169        <tr> 
     170        <td align=center> 
     171        <input type=submit class=largeButton name=gcFunction value='Complete Payment'> 
     172        </td> 
     173        </tr> 
    170174</table> 
    171175