You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
309 lines
6.6 KiB
309 lines
6.6 KiB
<?php
|
|
|
|
/**
|
|
|
|
* [Laike System] Copyright (c) 2018 laiketui.com
|
|
|
|
* Laike is not a free software, it under the license terms, visited http://www.laiketui.com/ for more details.
|
|
|
|
*/
|
|
|
|
require_once(MO_LIB_DIR . '/DBAction.class.php');
|
|
|
|
|
|
|
|
class modifyAction extends Action {
|
|
|
|
|
|
|
|
public function getDefaultView() {
|
|
|
|
$db = DBAction::getInstance();
|
|
|
|
$request = $this->getContext()->getRequest();
|
|
|
|
// 接收信息
|
|
|
|
$id = intval($request->getParameter("id")); // 插件id
|
|
|
|
$uploadImg = addslashes(trim($request->getParameter('uploadImg'))); // 图片上传位置
|
|
|
|
// 根据插件id,查询插件信息
|
|
|
|
$sql = "select * from lkt_software where id = '$id'";
|
|
|
|
$r = $db->select($sql);
|
|
|
|
if($r){
|
|
|
|
$name = $r[0]->name; // 软件名称
|
|
|
|
$image = $r[0]->image; // 软件图标
|
|
|
|
$type = $r[0]->type; // 类型
|
|
|
|
$edition = $r[0]->edition ; // 版本号
|
|
|
|
$edition_url = $r[0]->edition_url ; // 版本名称
|
|
|
|
$edition_text= $r[0]->edition_text ; // 版本名称
|
|
|
|
$software_version = $r[0]->software_version;
|
|
|
|
}
|
|
|
|
|
|
|
|
$sql = "select * from lkt_software where type = '$type' and software_version='$software_version' order by id desc";
|
|
|
|
$r = $db->select($sql);
|
|
|
|
$ops = '';
|
|
|
|
if($r){
|
|
|
|
foreach ($r as $key => $value) {
|
|
|
|
$vedition = $value->edition;
|
|
|
|
if($vedition == $edition){
|
|
|
|
$ops .= " <option selected='selected' value='$vedition'>$vedition</option>";
|
|
|
|
}else{
|
|
|
|
$ops .= " <option value='$vedition'>$vedition</option>";
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
$request->setAttribute("ops",$ops);
|
|
|
|
$request->setAttribute('software_version', $software_version);
|
|
|
|
$request->setAttribute('id', $id);
|
|
|
|
$request->setAttribute('uploadImg', $uploadImg);
|
|
|
|
$request->setAttribute('name', $name);
|
|
|
|
$request->setAttribute("image",$image);
|
|
|
|
$request->setAttribute("type",$type);
|
|
|
|
$request->setAttribute('edition', $edition);
|
|
|
|
$request->setAttribute('edition_url', $edition_url);
|
|
|
|
$request->setAttribute('edition_text', $edition_text);
|
|
|
|
return View :: INPUT;
|
|
|
|
}
|
|
|
|
|
|
|
|
public function execute(){
|
|
|
|
$db = DBAction::getInstance();
|
|
|
|
$request = $this->getContext()->getRequest();
|
|
|
|
// 接收信息
|
|
|
|
$id = intval($request->getParameter('id'));
|
|
|
|
$uploadImg = addslashes(trim($request->getParameter('uploadImg'))); // 图片上传位置
|
|
|
|
$upload_file = addslashes(trim($request->getParameter('upload_file'))); // 文件上传位置
|
|
|
|
$name = addslashes(trim($request->getParameter('name'))); // 软件名称
|
|
|
|
$image = addslashes($request->getParameter('image')); // 软件图片
|
|
|
|
$oldpic = addslashes($request->getParameter('oldpic')); // 原软件图片
|
|
|
|
$type = addslashes($request->getParameter('type')); // 软件类型
|
|
|
|
$edition = addslashes($request->getParameter('edition')); // 版本号
|
|
|
|
$edition_text = addslashes($request->getParameter('edition_text')); // 版本号
|
|
|
|
if($name){
|
|
|
|
// 根据软件名称查询软件表
|
|
|
|
$sql = "select * from lkt_software where name = '$name' and type = '$type' and id != '$id' order by id desc";
|
|
|
|
$r = $db->select($sql);
|
|
|
|
if($r){
|
|
|
|
$id = $r[0]->id; // 软件id
|
|
|
|
if($edition == $r[0]->edition){
|
|
|
|
header("Content-type:text/html;charset=utf-8");
|
|
|
|
echo "<script type='text/javascript'>" .
|
|
|
|
"alert('版本".$edition."已存在!');" .
|
|
|
|
"</script>";
|
|
|
|
return $this->getDefaultView();
|
|
|
|
}else if($edition < $r[0]->edition){
|
|
|
|
header("Content-type:text/html;charset=utf-8");
|
|
|
|
echo "<script type='text/javascript'>" .
|
|
|
|
"alert('版本".$edition."低于最新版本!');" .
|
|
|
|
"</script>";
|
|
|
|
return $this->getDefaultView();
|
|
|
|
}else{
|
|
|
|
$edition = $edition;
|
|
|
|
}
|
|
|
|
}else{
|
|
|
|
$name = $name;
|
|
|
|
}
|
|
|
|
}else{
|
|
|
|
header("Content-type:text/html;charset=utf-8");
|
|
|
|
echo "<script type='text/javascript'>" .
|
|
|
|
"alert('软件名称不能为空!');" .
|
|
|
|
"</script>";
|
|
|
|
return $this->getDefaultView();
|
|
|
|
}
|
|
|
|
if($image){
|
|
|
|
$image = preg_replace('/.*\//','',$image);
|
|
|
|
if($image != $oldpic){
|
|
|
|
@unlink ($uploadImg.$oldpic);
|
|
|
|
}
|
|
|
|
}else{
|
|
|
|
$image = $oldpic;
|
|
|
|
}
|
|
|
|
if($_FILES['edition_url']['name']==""){
|
|
|
|
$sql = "select edition_url from lkt_software where id = '$id'";
|
|
|
|
$r = $db->select($sql);
|
|
|
|
$edition_url_name = $r[0]->edition_url;
|
|
|
|
}else{
|
|
|
|
$sql = "select * from lkt_config where id = 1";
|
|
|
|
$rr = $db->select($sql);
|
|
|
|
$upload_file = $rr[0]->upload_file; // 文件上传位置
|
|
|
|
//将临时文件复制到upload_image目录下
|
|
|
|
$edition_url=($_FILES['edition_url']['tmp_name']);
|
|
|
|
|
|
|
|
$edition_url_name = substr($_FILES['edition_url']['name'],0,strpos($_FILES['edition_url']['name'],'.')) . time() . '.' . $edition . (strrchr($_FILES['edition_url']['name'], '.'));
|
|
|
|
|
|
|
|
move_uploaded_file($edition_url,"$upload_file/$edition_url_name");
|
|
|
|
|
|
|
|
$sql = "select edition_url from lkt_software where id = '$id'";
|
|
|
|
$rrr = $db->select($sql);
|
|
|
|
@unlink ($upload_file. '/' .$rrr[0]->edition_url);
|
|
|
|
}
|
|
|
|
|
|
|
|
//更新数据表
|
|
|
|
$sql = "update lkt_software " .
|
|
|
|
"set name = '$name',edition_text='$edition_text',image = '$image',type = '$type',edition = '$edition', edition_url = '$edition_url_name',add_time = CURRENT_TIMESTAMP "
|
|
|
|
."where id = '$id'";
|
|
|
|
$r = $db->update($sql);
|
|
|
|
|
|
|
|
if($r == -1) {
|
|
|
|
echo "<script type='text/javascript'>" .
|
|
|
|
"alert('未知原因,修改失败!');" .
|
|
|
|
"location.href='index.php?module=software';</script>";
|
|
|
|
return $this->getDefaultView();
|
|
|
|
} else {
|
|
|
|
header("Content-type:text/html;charset=utf-8");
|
|
|
|
echo "<script type='text/javascript'>" .
|
|
|
|
"alert('修改成功!');" .
|
|
|
|
"location.href='index.php?module=software';</script>";
|
|
|
|
}
|
|
|
|
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
|
|
|
|
public function getRequestMethods(){
|
|
|
|
return Request :: POST;
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
?>
|