source: branches/camp/camp-2_5-E/data/class/SC_Display.php @ 19043

Revision 19043, 2.1 KB checked in by miningbrownie, 12 years ago (diff)
Line 
1<?php
2class SC_Display{
3
4    var $response;
5
6    var $device;
7
8    var $autoSet;
9
10    /**
11     *
12     * @var SC_View
13     */
14    var $view;
15
16    // TODO php4を捨てたときに ここのコメントアウトを外してね。
17    /*
18    * const('MOBILE',1);
19    * const('SMARTPHONE',2);
20    * const('PC',4);
21    */
22
23    function SC_Display($setPrevURL=true,$autoGenerateHttpHeaders = true){
24        require_once(CLASS_EX_PATH."/SC_Response_Ex.php");
25        $this->response = new SC_Response_Ex();
26        $this->autoSet = $autoGenerateHttpHeaders;
27
28        if ($setPrevURL) {
29            $objCartSess = new SC_CartSession();
30            $objCartSess->setPrevURL($_SERVER['REQUEST_URI']);
31        }
32
33
34    }
35
36
37    // TODO このメソッドは、レスポンスを返すためのメソッドです。名前を絶対に変えましょう。
38    /**
39    *
40    * @param $page LC_Page
41    */
42    function hoge(LC_Page $page){
43        $this->assign($page);
44
45    }
46
47    /**
48     * デバイス毎の出力方法を自動で変更する、ファサード
49     * Enter description here ...
50     */
51    function setDevice(int $device = 4){
52        switch ($device){
53            case 1:
54                $this->response->setContentType("text/html");
55
56                break;
57            case 2:
58
59                break;
60            case 4:
61
62                break;
63        }
64    }
65
66    /**
67     * 機種を判別する。
68     * SC_Display::MOBILE = ガラケー = 1
69     * SC_Display::SMARTPHONE = スマホ = 2
70     * SC_Display::PC = PC = 4
71     * ※PHP4の為にconstは使っていません。 1がガラケーで、2がスマホで4がPCです。
72     * @return
73     */
74    function detectDevice(){
75        $nu = new Net_UserAgent_Mobile();
76        $retDevice = 0;
77        if($nu->isMobile()){
78            $retDevice = 1;
79        }elseif ($nu->isSmartphone()){
80            $retDevice = 2;
81        }else{
82            $retDevice = 4;
83        }
84
85        if($this->autoSet){
86            $this->setDevice($retDevice);
87        }
88        return $retDevice;
89    }
90
91    function assign(LC_Page $page){
92        $this->view->assign($val1, $val2)
93    }
94
95
96}
Note: See TracBrowser for help on using the repository browser.