134 lines
4.2 KiB
PHP
134 lines
4.2 KiB
PHP
<?php namespace Phpcmf\Controllers\Admin;
|
|
|
|
|
|
class Api extends \Phpcmf\Common
|
|
{
|
|
|
|
|
|
|
|
// 后台复制模块内容
|
|
public function content_edit() {
|
|
|
|
$dir = dr_safe_filename($_GET['dir']);
|
|
$this->_module_init($dir);
|
|
|
|
$id = intval(\Phpcmf\Service::L('Input')->get('id'));
|
|
list($data, $tables, $cdata) = $this->content_model->get_data($id, 1);
|
|
if (!$data) {
|
|
$this->_json(0, dr_lang('数据#%s不存在', $id));
|
|
}
|
|
|
|
$save = [
|
|
1 => [],
|
|
0 => [],
|
|
];
|
|
foreach ($cdata as $table => $data) {
|
|
foreach ($data as $i => $t) {
|
|
if (strpos($table, '_data_') !== false) {
|
|
if (\Phpcmf\Service::M()->db->fieldExists($i, \Phpcmf\Service::M()->dbprefix(SITE_ID.'_'.$dir.'_data_0'))) {
|
|
$save[0][$i] = $t;
|
|
}
|
|
} else {
|
|
if (\Phpcmf\Service::M()->db->fieldExists($i, \Phpcmf\Service::M()->dbprefix(SITE_ID.'_'.$dir))) {
|
|
$save[1][$i] = $t;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
$save[1]['updatetime'] = $save[1]['inputtime'] = SYS_TIME;
|
|
$save[1]['title'].= '_'.dr_lang('复制');
|
|
|
|
$rt = $this->content_model->save_content(0, $save);
|
|
if (!$rt['code']) {
|
|
$this->_json(0, $rt['msg']);
|
|
}
|
|
|
|
// 联动操作
|
|
$this->content_model->_content_copy_after($rt['code'], $save);
|
|
|
|
$this->_json(1, dr_lang('内容复制成功'), ['url' => dr_url($dir.'/home/index')]);
|
|
}
|
|
|
|
|
|
|
|
// 后台复制表单内容
|
|
public function form_edit() {
|
|
|
|
$dir = dr_safe_filename($_GET['dir']);
|
|
$cache = \Phpcmf\Service::L('cache')->get('form-'.SITE_ID);
|
|
!$cache[$dir] && $this->_admin_msg(0, dr_lang('网站表单【%s】不存在', $dir));
|
|
|
|
$table = SITE_ID.'_form_'.$dir;
|
|
|
|
$id = intval(\Phpcmf\Service::L('Input')->get('id'));
|
|
$data = \Phpcmf\Service::M()->table($table)->get($id);
|
|
if (!$data) {
|
|
$this->_json(0, dr_lang('数据#%s不存在', $id));
|
|
}
|
|
|
|
$data['title'].= '_'.dr_lang('复制');
|
|
$data['inputtime'] = SYS_TIME;
|
|
unset($data['id']);
|
|
$rt = \Phpcmf\Service::M()->table($table)->insert($data);
|
|
if (!$rt['code']) {
|
|
$this->_json(0, $rt['msg']);
|
|
}
|
|
|
|
|
|
$data2 = \Phpcmf\Service::M()->table($table.'_data_'.intval($data['tableid']))->get($id);
|
|
if ($data2) {
|
|
$data2['id'] = $rt['code'];
|
|
$rt = \Phpcmf\Service::M()->table($table.'_data_'.intval($data['tableid']))->insert($data2);
|
|
if (!$rt['code']) {
|
|
$this->_json(0, $rt['msg']);
|
|
}
|
|
}
|
|
|
|
$this->_json(1, dr_lang('内容复制成功'), ['url' => dr_url('form/'.$dir.'/index')]);
|
|
}
|
|
|
|
|
|
|
|
// 后台复制模块表单内容
|
|
public function mform_edit() {
|
|
|
|
$dir = dr_safe_filename($_GET['dir']);
|
|
$cid = dr_safe_filename($_GET['cid']);
|
|
$mid = dr_safe_filename($_GET['mid']);
|
|
$this->_module_init($mid);
|
|
|
|
$this->form = $this->module['form'][$dir];
|
|
!$this->form && $this->_admin_msg(0, dr_lang('模块表单【%s】不存在', $dir));
|
|
|
|
$table = dr_module_table_prefix($mid).'_form_'.$this->form['table'];
|
|
|
|
$id = intval(\Phpcmf\Service::L('Input')->get('id'));
|
|
$data = \Phpcmf\Service::M()->table($table)->get($id);
|
|
if (!$data) {
|
|
$this->_json(0, dr_lang('数据#%s不存在', $id));
|
|
}
|
|
|
|
$data['title'].= '_'.dr_lang('复制');
|
|
$data['inputtime'] = SYS_TIME;
|
|
unset($data['id']);
|
|
$rt = \Phpcmf\Service::M()->table($table)->insert($data);
|
|
if (!$rt['code']) {
|
|
$this->_json(0, $rt['msg']);
|
|
}
|
|
|
|
|
|
$data2 = \Phpcmf\Service::M()->table($table.'_data_'.intval($data['tableid']))->get($id);
|
|
if ($data2) {
|
|
$data2['id'] = $rt['code'];
|
|
$rt = \Phpcmf\Service::M()->table($table.'_data_'.intval($data['tableid']))->insert($data2);
|
|
if (!$rt['code']) {
|
|
$this->_json(0, $rt['msg']);
|
|
}
|
|
}
|
|
|
|
$this->_json(1, dr_lang('内容复制成功'), ['url' => dr_url($mid.'/'.$dir.'/index', ['cid'=>$cid])]);
|
|
}
|
|
|
|
}
|