Mysidia Adoptables Support Forum  

Home Community Mys-Script Creative Off-Topic
Go Back   Mysidia Adoptables Support Forum > Mysidia Adoptables > Questions and Supports

Notices

 
 
Thread Tools Display Modes
Prev Previous Post   Next Post Next
  #1  
Old 12-14-2014, 05:35 AM
parayna's Avatar
parayna parayna is offline
Member
 
Join Date: May 2013
Location: Devon, UK
Posts: 342
Gender: Female
Credits: 27,811
parayna is on a distinguished road
Default How to write a proper shop page?

Can someone please help me write a proper shop page? I want to create a custom page that I make myself as that is the only way to get the placement I want for the shopkeepers (I don't know how to do it in the default shop files). So I guess I would like to ask if someone can help me write 'get' and 'getview' pages for items.. and where it deducts the price of the item from their inventory and they can also choose the quantity at some point.

The reason I want this is so that I can have a shopkeeper and then images of items underneath, and when they click the image it takes them to another page where they can maybe select the quantity? They then click buy and it deducts the money set by me in the adminCP and adds it to their inventory..

Kyttias was kind enough to help me with doing this for adoptables so I have included them in spoilers in case anyone wants help with the structure.. sorry for asking but I have already tried what I can think of and it hasn't worked >.< Thank you... I really want to get my shops up and running for my beta testers XD

  Spoiler: 'get' page 
PHP Code:
 <?php

use Resource\Native\Integer;
use 
Resource\Native\String;

class 
GetController extends AppController{

    private 
$id;
      
    public function 
__construct(){
    
        
parent::__construct("member");
        
$mysidia Registry::get("mysidia");
    
        if(
$mysidia->usergroup->getpermission("canadopt") != "yes"){
            throw new 
NoPermissionException("permission");
        }    
    }
    
    public function 
index(){
           
//don't let people access yoursite.com/get
        
throw new InvalidActionException("global_action");

    }
    
      
//yoursite.com/get/id
    
public function id(){
        
$mysidia Registry::get("mysidia");

        
//get ID_NUMBER
        
$pageURL 'http';
        if (
$_SERVER["HTTPS"] == "on") {$pageURL .= "s";}
        
$pageURL .= "://";
        if (
$_SERVER["SERVER_PORT"] != "80") {
        
$pageURL .= $_SERVER["SERVER_NAME"].":".$_SERVER["SERVER_PORT"].$_SERVER["REQUEST_URI"];
        } else {
        
$pageURL .= $_SERVER["SERVER_NAME"].$_SERVER["REQUEST_URI"];
        }
        
        
$parts Explode('/'$pageURL);
        
$id $parts[count($parts) - 1];
        
        if(!
$id) throw new InvalidIDException("global_id");
        
        
//---------- Edit here
        /* In this part, we check if the ID is actually part of the IDs available to adopt! 
        * If you want adoptable 1 and 7 to be available through get/id/number, you gotta add
        * 1 and 7 to the array
        */ 
        
        
$id_array = [1,2];//add your OK numbers here
        
$count count($id_array);
        
$found false;
        
        for(
$i 0$i $count$i++)
        {
            
//if ID is inside the array, then it's OK
            
if($id == $id_array[$i]){
                
$found true;
                break;
            }
        }
        
        
//the ID wasnt found inside the array, throw error
        
if(!$found)
            throw new 
NoPermissionException("This adoptable is not available through this method.");
        
        
//---------- 

        //after checking:
        
$this->access "member";
            
$this->handleAccess();    
            
        
//get adoptable information
        
$adopt = new Adoptable($id);                    
                        
        
$conditions $adopt->getConditions();
        if(!
$conditions->checkConditions()) throw new NoPermissionException("condition");
        
        
$name $adopt->getType();
            
$alts $adopt->getAltStatus();
           
$code $adopt->getCode();
        
$gender $adopt->getGender();
        
        
//insert into database
            
$mysidia->db->insert("owned_adoptables", array("aid" => NULL"type" => $name"name" => $name"owner" => $mysidia->user->username"currentlevel" => 0"totalclicks" => 0"code" => $code"imageurl" => NULL"usealternates" => $alts"tradestatus" => 'fortrade'"isfrozen" => 'no'"gender" => $gender"offsprings" => 0"lastbred" => 0));
        
        
//get its info
        
$aid $mysidia->db->select("owned_adoptables", array("aid"), "code='{$code}' and owner='{$mysidia->user->username}'")->fetchColumn();
        
$this->setField("aid", new Integer($aid));
            
$this->setField("name", new String($name));            
        
$this->setField("eggImage", new String($adopt->getEggImage()));
        
        
        
    }
    
}
?>


  Spoiler: 'getview' page 
PHP Code:
 <?php

class GetView extends View{
    
    public function 
index(){
    
        
$mysidia Registry::get("mysidia");
        
$document $this->document;        
            
$document->setTitle("Adopt a pet");
            
       }
       
           public function 
id(){
        
$document $this->document;    
        
$document->setTitle("Adopt a pet");        
        
        
$aid $this->getField("aid")->getValue();
        
$name $this->getField("name")->getValue();
        
$eggImage $this->getField("eggImage")->getValue();
        
        
//display information
        
$image = new Image($eggImage);
        
$image->setLineBreak(TRUE);    
            
$document->setTitle("Catching {$id} ");
        
        
$document->add($image);
        
$document->addLangvar("Congratulations!  You just adopted {$name}. <br>You can now manage {$name} on the ");
        
$document->add(new Link("myadopts""Myadopts Page."));
        
$document->add(new Comment(""));
        
$document->add(new Link("myadopts/manage/{$aid}""Click Here to Manage {$name}"));
        
$document->add(new Comment(""));
        
$document->add(new Link("myadopts/bbcode/{$aid}""Click Here to get BBCodes/HTML Codes for {$name}"));
        
$document->add(new Comment(""));
        
$document->addLangvar("Be sure and");
        
$document->add(new Link("levelup/{$aid}""feed "));
        
$document->addLangvar("{$name} with clicks so that they grow!");
        
    }

    
}
?>


They are both seperate files so I guess items would need to be called getitem and getitemview? Or something like that XD Thanks if someone helps me... this has stumped me for days >.<

(It would also be nice if someone could help me with the 'adopt' shops. Or would it still be the same file? And you just put in their adoptable id? It's just I may not want all of my pets up for free, like they are from the adoptable page at the moment)
Reply With Quote
 


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
visitors do not write messages in the shoutbox? kratosvr Questions and Supports 1 10-29-2011 07:45 PM
Not show shop adopts on adopt page SilverDragonTears Questions and Supports 0 08-16-2011 06:57 PM
Ad code "unable to write" LilPixie Questions and Supports 4 03-26-2009 01:07 PM
Re-Write suggestions rosepose Suggestions and Feature Requests 4 03-22-2009 07:13 PM
Suggestions For The Possible Re Write gjac1 Suggestions and Feature Requests 2 03-19-2009 05:15 AM


All times are GMT -5. The time now is 05:46 PM.

Currently Active Users: 1849 (0 members and 1849 guests)
Threads: 4,081, Posts: 32,032, Members: 2,016
Welcome to our newest members, jolob.
BETA





What's New?

What's Hot?

What's Popular?


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2025, vBulletin Solutions Inc.
vBCommerce I v2.0.0 Gold ©2010, PixelFX Studios
vBCredits I v2.0.0 Gold ©2010, PixelFX Studios
Emoticons by darkmoon3636