|
@@ -0,0 +1,59 @@
|
|
|
+<?php
|
|
|
+
|
|
|
+namespace Push\Lib;
|
|
|
+
|
|
|
+use Dever;
|
|
|
+
|
|
|
+class Data
|
|
|
+{
|
|
|
+ public function get($key)
|
|
|
+ {
|
|
|
+ $info = Dever::db('push/info')->one(array('key' => $key));
|
|
|
+
|
|
|
+ $data = array();
|
|
|
+ if ($info) {
|
|
|
+ $data = Dever::db('push/data')->getAll(array('info_id' => $info['id']));
|
|
|
+
|
|
|
+ if ($data) {
|
|
|
+ foreach ($data as $k => $v) {
|
|
|
+ $data[$k] = $this->getOne($v);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ return $data;
|
|
|
+ }
|
|
|
+
|
|
|
+ private function getOne($info)
|
|
|
+ {
|
|
|
+ if ($info['type'] < 10) {
|
|
|
+ $table = Dever::config('base')->type_table[$info['type']];
|
|
|
+ if ($info['type'] == 1) {
|
|
|
+ $id = $info['article_id'];
|
|
|
+ } elseif ($info['type'] == 2) {
|
|
|
+ $id = $info['vod_id'];
|
|
|
+ } elseif ($info['type'] == 3) {
|
|
|
+ $id = $info['live_id'];
|
|
|
+ } elseif ($info['type'] == 4) {
|
|
|
+ $id = $info['journal_id'];
|
|
|
+ }
|
|
|
+
|
|
|
+ if ($id > 0) {
|
|
|
+ $data = Dever::db($table)->one($id);
|
|
|
+ if (isset($data) && $data) {
|
|
|
+ if (isset($data['name']) && !$info['name']) {
|
|
|
+ $info['name'] = $data['name'];
|
|
|
+ }
|
|
|
+ if (isset($data['pic_cover']) && !$info['pic']) {
|
|
|
+ $info['pic'] = $data['pic_cover'];
|
|
|
+ }
|
|
|
+ if (isset($data['pic_view_cover']) && !$info['pic']) {
|
|
|
+ $info['pic'] = $data['pic_view_cover'];
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ return $info;
|
|
|
+ }
|
|
|
+}
|