Mercurial > epgrec.yaz
annotate Settings.class.php @ 70:1363ac056197
fix: getepg get program information duaring CS/BS recording.
author | yoneda <yoneda@recorder.localnet.mda.or.jp> |
---|---|
date | Tue, 03 Nov 2009 16:01:24 +0900 |
parents | 1033324d7ecc |
children | 11f63ae04a96 cce6f88590fd |
rev | line source |
---|---|
30 | 1 <?php |
2 include_once('config.php'); | |
3 | |
4 class Settings extends SimpleXMLElement { | |
5 | |
6 const CONFIG_XML = "/settings/config.xml"; | |
7 | |
8 public static function factory() { | |
9 | |
10 if( file_exists( INSTALL_PATH . self::CONFIG_XML ) ) { | |
11 $xmlfile = file_get_contents(INSTALL_PATH . self::CONFIG_XML); | |
66
3d6e7c606896
testing: auto record with mode
yoneda <yoneda@recorder.localnet.mda.or.jp>
parents:
55
diff
changeset
|
12 $obj = new self($xmlfile); |
3d6e7c606896
testing: auto record with mode
yoneda <yoneda@recorder.localnet.mda.or.jp>
parents:
55
diff
changeset
|
13 |
3d6e7c606896
testing: auto record with mode
yoneda <yoneda@recorder.localnet.mda.or.jp>
parents:
55
diff
changeset
|
14 // 8月14日以降に追加した設定項目の自動生成 |
3d6e7c606896
testing: auto record with mode
yoneda <yoneda@recorder.localnet.mda.or.jp>
parents:
55
diff
changeset
|
15 |
3d6e7c606896
testing: auto record with mode
yoneda <yoneda@recorder.localnet.mda.or.jp>
parents:
55
diff
changeset
|
16 // キーワード自動録画の録画モード |
3d6e7c606896
testing: auto record with mode
yoneda <yoneda@recorder.localnet.mda.or.jp>
parents:
55
diff
changeset
|
17 if( $obj->exists("autorec_mode") == 0 ) { |
3d6e7c606896
testing: auto record with mode
yoneda <yoneda@recorder.localnet.mda.or.jp>
parents:
55
diff
changeset
|
18 $obj->autorec_mode = 0; |
3d6e7c606896
testing: auto record with mode
yoneda <yoneda@recorder.localnet.mda.or.jp>
parents:
55
diff
changeset
|
19 $obj->save(); |
3d6e7c606896
testing: auto record with mode
yoneda <yoneda@recorder.localnet.mda.or.jp>
parents:
55
diff
changeset
|
20 } |
3d6e7c606896
testing: auto record with mode
yoneda <yoneda@recorder.localnet.mda.or.jp>
parents:
55
diff
changeset
|
21 |
3d6e7c606896
testing: auto record with mode
yoneda <yoneda@recorder.localnet.mda.or.jp>
parents:
55
diff
changeset
|
22 return $obj; |
30 | 23 } |
24 else { | |
25 // 初回起動 | |
26 $xmlfile = '<?xml version="1.0" encoding="UTF-8" ?><epgrec></epgrec>'; | |
27 $xml = new self($xmlfile); | |
28 | |
29 // 旧config.phpを読み取って設定 | |
30 if(defined("SPOOL") ) $xml->spool = SPOOL; | |
31 else $xml->spool = "/video"; | |
32 | |
33 if(defined("THUMBS") ) $xml->thumbs = THUMBS; | |
34 else $xml->thumbs = "/thumbs"; | |
35 | |
36 if(defined("INSTALL_URL")) $xml->install_url = INSTALL_URL; | |
37 else $xml->install_url = "http://localhost/epgrec"; | |
38 | |
39 if(defined("BS_TUNERS")) $xml->bs_tuners = BS_TUNERS; | |
32
01a8fdc0cebb
testing: Web base setting page.
Sushi-k <epgrec@park.mda.or.jp>
parents:
31
diff
changeset
|
40 else $xml->bs_tuners = 0; |
30 | 41 |
55 | 42 if(defined("GR_TUNERS")) $xml->gr_tuners = GR_TUNERS; |
30 | 43 else $xml->gr_tuners = 1; |
67
a2c4665b310c
add: CS support (thanks to dakku)
Sushi-k <epgrec@park.mda.or.jp>
parents:
55
diff
changeset
|
44 |
a2c4665b310c
add: CS support (thanks to dakku)
Sushi-k <epgrec@park.mda.or.jp>
parents:
55
diff
changeset
|
45 if(defined("CS_REC_FLG")) $xml->cs_rec_flg = CS_REC_FLG; |
a2c4665b310c
add: CS support (thanks to dakku)
Sushi-k <epgrec@park.mda.or.jp>
parents:
55
diff
changeset
|
46 else $xml->cs_rec_flg = 0; |
30 | 47 |
54
6f961c8ab304
modified: Settings.class.php
Sushi-k <epgrec@park.mda.or.jp>
parents:
32
diff
changeset
|
48 if(defined("USE_KUROBON")) $xml->use_kurobon = USE_KUROBON ? 1 : 0; |
30 | 49 else $xml->use_kurobon = 0; |
50 | |
51 if(defined("FORMER_TIME")) $xml->former_time = FORMER_TIME; | |
52 else $xml->former_time = 20; | |
53 | |
54 if(defined("EXTRA_TIME")) $xml->extra_time = EXTRA_TIME; | |
55 else $xml->extra_time = 0; | |
56 | |
54
6f961c8ab304
modified: Settings.class.php
Sushi-k <epgrec@park.mda.or.jp>
parents:
32
diff
changeset
|
57 if(defined("FORCE_CONT_REC")) $xml->force_cont_rec = FORCE_CONT_REC ? 1 : 0; |
30 | 58 else $xml->force_cont_rec = 0; |
59 | |
60 if(defined("REC_SWITCH_TIME")) $xml->rec_switch_time = REC_SWITCH_TIME; | |
61 else $xml->rec_switch_time = 5; | |
62 | |
54
6f961c8ab304
modified: Settings.class.php
Sushi-k <epgrec@park.mda.or.jp>
parents:
32
diff
changeset
|
63 if(defined("USE_THUMBS")) $xml->use_thumbs = USE_THUMBS ? 1 : 0; |
30 | 64 else $xml->use_thumbs = 0; |
65 | |
54
6f961c8ab304
modified: Settings.class.php
Sushi-k <epgrec@park.mda.or.jp>
parents:
32
diff
changeset
|
66 if(defined("MEDIATOMB_UPDATE")) $xml->mediatomb_update = MEDIATOMB_UPDATE ? 1 : 0; |
30 | 67 else $xml->mediatomb_update = 0; |
68 | |
69 if(defined("FILENAME_FORMAT")) $xml->filename_format = FILENAME_FORMAT; | |
70 else $xml->filename_format = "%TYPE%%CH%_%ST%_%ET%"; | |
71 | |
72 if(defined("DB_HOST")) $xml->db_host = DB_HOST; | |
73 else $xml->db_host = "localhost"; | |
74 | |
75 if(defined("DB_NAME")) $xml->db_name = DB_NAME; | |
76 else $xml->db_name = "yourdbname"; | |
77 | |
78 if(defined("DB_USER")) $xml->db_user = DB_USER; | |
79 else $xml->db_user = "yourname"; | |
80 | |
81 if(defined("DB_PASS")) $xml->db_pass = DB_PASS; | |
82 else $xml->db_pass = "yourpass"; | |
83 | |
84 if(defined("TBL_PREFIX")) $xml->tbl_prefix = TBL_PREFIX; | |
85 else $xml->tbl_prefix = "Recorder_"; | |
86 | |
87 if(defined("EPGDUMP")) $xml->epgdump = EPGDUMP; | |
88 else $xml->epgdump = "/usr/local/bin/epgdump"; | |
89 | |
90 if(defined("AT")) $xml->at = AT; | |
91 else $xml->at = "/usr/bin/at"; | |
92 | |
93 if(defined( "ATRM" )) $xml->atrm = ATRM; | |
94 else $xml->atrm = "/usr/bin/atrm"; | |
95 | |
96 if(defined( "SLEEP" )) $xml->sleep = SLEEP; | |
97 else $xml->sleep = "/bin/sleep"; | |
98 | |
99 if(defined( "FFMPEG" )) $xml->ffmpeg = FFMPEG; | |
100 else $xml->ffmpeg = "/usr/bin/ffmpeg"; | |
101 | |
102 if(defined("TEMP_DATA" )) $xml->temp_data = TEMP_DATA; | |
103 else $xml->temp_data = "/tmp/__temp.ts"; | |
104 | |
105 if(defined("TEMP_XML")) $xml->temp_xml = TEMP_XML; | |
106 else $xml->temp_xml = "/tmp/__temp.xml"; | |
107 | |
108 // index.phpで使う設定値 | |
109 // 表示する番組表の長さ(時間) | |
32
01a8fdc0cebb
testing: Web base setting page.
Sushi-k <epgrec@park.mda.or.jp>
parents:
31
diff
changeset
|
110 $xml->program_length = 8; |
30 | 111 // 1局の幅 |
32
01a8fdc0cebb
testing: Web base setting page.
Sushi-k <epgrec@park.mda.or.jp>
parents:
31
diff
changeset
|
112 $xml->ch_set_width = 150; |
30 | 113 // 1分あたりの高さ |
32
01a8fdc0cebb
testing: Web base setting page.
Sushi-k <epgrec@park.mda.or.jp>
parents:
31
diff
changeset
|
114 $xml->height_per_hour = 120; |
30 | 115 |
66
3d6e7c606896
testing: auto record with mode
yoneda <yoneda@recorder.localnet.mda.or.jp>
parents:
55
diff
changeset
|
116 // 8月14日版以降に追加した設定項目 |
3d6e7c606896
testing: auto record with mode
yoneda <yoneda@recorder.localnet.mda.or.jp>
parents:
55
diff
changeset
|
117 |
3d6e7c606896
testing: auto record with mode
yoneda <yoneda@recorder.localnet.mda.or.jp>
parents:
55
diff
changeset
|
118 // キーワード自動録画の録画モード |
3d6e7c606896
testing: auto record with mode
yoneda <yoneda@recorder.localnet.mda.or.jp>
parents:
55
diff
changeset
|
119 $xml->autorec_mode = 0; |
3d6e7c606896
testing: auto record with mode
yoneda <yoneda@recorder.localnet.mda.or.jp>
parents:
55
diff
changeset
|
120 |
30 | 121 $xml->save(); |
122 | |
123 return $xml; | |
124 } | |
125 } | |
126 | |
127 public function exists( $property ) { | |
128 return (int)count( $this->{$property} ); | |
129 } | |
130 | |
131 public function post() { | |
132 global $_POST; | |
133 | |
32
01a8fdc0cebb
testing: Web base setting page.
Sushi-k <epgrec@park.mda.or.jp>
parents:
31
diff
changeset
|
134 foreach( $_POST as $key => $value ) { |
30 | 135 |
136 if( $this->exists($key) ) { | |
137 $this->{$key} = trim($value); | |
138 } | |
139 } | |
140 } | |
141 | |
142 public function save() { | |
143 $this->asXML(INSTALL_PATH . self::CONFIG_XML); | |
144 } | |
145 } | |
66
3d6e7c606896
testing: auto record with mode
yoneda <yoneda@recorder.localnet.mda.or.jp>
parents:
55
diff
changeset
|
146 ?> |