完成标签添加窗口

hotfix/远程访问多媒体中心
lmr@hainatravel.com 8 years ago
parent 1c33404c45
commit 0a2d2c1555

@ -23,18 +23,11 @@ class Info_tags extends CI_Controller
$this->InfoTags_model->it_title = $this->input->get_post('title');
$this->InfoTags_model->it_memo = $this->input->get_post('memo');
$return = $this->InfoTags_model->add_tag();
if ($return == 'success')
if ($return)
{
echo(json_encode(array(
'status' => 1,
'message' => '添加标签成功'
)));
}
else if ($return == 'exist')
{
echo(json_encode(array(
'status' => 2,
'message' => '标签已存在'
'message' => $return
)));
}
else
@ -69,6 +62,29 @@ class Info_tags extends CI_Controller
}
}
/**
* 展示标签
*/
public function list_tag($ic_id = '')
{
$ic_id ? $this->InfoTags_model->ic_id = $ic_id : $this->InfoTags_model->ic_id = $this->input->post('ic_id');
$return = $this->InfoTags_model->list_tag();
if ($return != 'fail')
{
echo(json_encode(array(
'status' => 1,
'data' => $return
)));
}
else
{
echo(json_encode(array(
'status' => -1,
'message' => '读出标签失败'
)));
}
}
/**
* 添加关联信息+标签
*/

@ -20,6 +20,7 @@ class Information extends CI_Controller {
$this->load->model('Infoauthors_model');
$this->load->model('InfoKeywordsanalytics_model', 'analytics_model');
$this->load->model('InfoSMS_model');
$this->load->model('InfoTags_model');
$this->load->library('Accesscheck');
$this->accesscheck->check_access();
@ -254,6 +255,25 @@ class Information extends CI_Controller {
//所属导航栏目
$data['setting_website_nav'] = $this->InfoMetas_model->get_list(0, 'setting_website_nav_' . strtolower($this->config->item('site_code')));
//信息标签
$this->InfoTags_model->ic_id = null;
$data['all_tags'] = $this->InfoTags_model->list_tag();
$this->InfoTags_model->ic_id = $data['information']->ic_id;
$data['my_tags'] = $this->InfoTags_model->list_tag();
//差集
foreach ($data['all_tags'] as &$it)
{
foreach ($data['my_tags'] as $it2)
{
if ($it->it_id == $it2->icit_it_id)
{
$it = null;
break;
}
}
}
$data['all_tags'] = array_filter($data['all_tags']);
$this->load->view('bootstrap3/header', $data);
$this->load->view('bootstrap3/information_edit');
$this->load->view('bootstrap3/footer');

@ -31,14 +31,16 @@ class InfoTags_model extends CI_Model
{
$sql = "INSERT INTO infoTags (it_title, it_memo) VALUES (N?, N?)";
$query = $this->HT->query($sql, array($this->it_title, $this->it_memo));
return $this->HT->insert_id();
}
else
{
return 'exist';
$row = $check->row();
return $row->it_id;
}
return 'success';
}
return 'fail';
return FALSE;
}
/**
@ -55,6 +57,28 @@ class InfoTags_model extends CI_Model
return 'fail';
}
/**
* 标签列表
*/
function list_tag()
{
if ($this->ic_id)
{
//展示信息的标签
$sql = "SELECT * FROM infoContentToTag INNER JOIN infoTags ON icit_it_id = it_id WHERE icit_ic_id = ?";
$query = $this->HT->query($sql, array($this->ic_id));
return $query->result();
}
else
{
//全部展示
$sql = "SELECT * FROM infoTags ORDER BY it_title ASC, it_date DESC";
$query = $this->HT->query($sql);
return $query->result();
}
return 'fail';
}
/**
* 添加信息与标签的关联
*/
@ -63,13 +87,13 @@ class InfoTags_model extends CI_Model
if ($this->ic_id && $this->it_id)
{
//查看是否已存在关联
$sql = "SELECT TOP 1 * from infoContentToTag WHERE ic_id = ? AND it_id = ?";
$sql = "SELECT TOP 1 * from infoContentToTag WHERE icit_ic_id = ? AND icit_it_id = ?";
$check = $this->HT->query($sql, array($this->ic_id, $this->it_id));
//添加关联
if ($query->num_rows() === 0)
if ($check->num_rows() === 0)
{
$sql = "INSERT INTO infoContentToTag (ic_id, it_id) VALUES (?, ?)";
$sql = "INSERT INTO infoContentToTag (icit_ic_id, icit_it_id) VALUES (?, ?)";
$query = $this->HT->query($sql, array($this->ic_id, $this->it_id));
}
else
@ -88,7 +112,7 @@ class InfoTags_model extends CI_Model
{
if ($this->ic_id && $this->it_id)
{
$sql = "DELETE FROM infoContentToTag WHERE ic_id = ? and it_id = ?";
$sql = "DELETE FROM infoContentToTag WHERE icit_ic_id = ? and icit_it_id = ?";
$query = $this->HT->query($sql, array($this->ic_id, $this->it_id));
return 'success';
}

@ -532,7 +532,12 @@
<div class="row">
<div class="col-xs-24 btn-sm"></div>
<div class="col-xs-7">
<label>信息标题</label>
<label>
信息标题 &nbsp;
<button type="button" class="btn btn-xs" data-toggle="modal" data-target="#tagM">
+ 标签(国际站)
</button>
</label>
</div>
<div class="col-xs-24">
<input class="form-control" type="text" id="ic_title" style="<?php if ($embody == 1) echo 'border-color:green;'; ?>" name="ic_title" value="<?php echo $information->ic_title; ?>" >
@ -1253,3 +1258,90 @@
</div>
</div>
<?php //标签模态框 ?>
<div class="modal fade" id="tagM" tabindex="-1" role="dialog" aria-labelledby="myModalLabel">
<style type="text/css">
.tagLabel {background: #eee;padding: 5px 15px 5px 35px!important;border-radius: 5px;border: 1px solid #aaa; margin-right:2px;}
.myTag {background: darkcyan; color:#fff; border-color: #000;}
.tagLabel.newLabel {padding: 5px 10px!important;border: 1px dashed #000;}
</style>
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
<h4 class="modal-title" id="myModalLabel">添加标签</h4>
</div>
<div class="modal-body">
<div class="checkbox">
<?php foreach ($my_tags as $tag) { ?>
<label class="tagLabel myTag">
<input type="checkbox" value="<?php echo($tag->it_title)?>" data-it-id="<?php echo($tag->it_id)?>" checked>
<span><?php echo($tag->it_title)?></span>
</label>
<?php } ?>
</div>
<div class="checkbox">
<?php foreach ($all_tags as $tag) { ?>
<label class="tagLabel">
<input type="checkbox" value="<?php echo($tag->it_title)?>" data-it-id="<?php echo($tag->it_id)?>">
<span><?php echo($tag->it_title)?></span>
</label>
<?php } ?>
<label class="tagLabel newLabel">
<a class="btn btn-xs newTagA"> + 新标签 </a>
<input class="form-control input-sm newTag newTagI" type="text" placeholder=" + 新标签 " style="display:none">
</label>
</div>
</div>
<div class="modal-footer">
<a class="btn btn-default" target="_blank" href="http://localhost:3000/">打开模板标签管理</a>
</div>
</div>
</div>
<script type="text/javascript">
//标签更新
$('[data-it-id]').on('change', function() {
if ($(this).is(':checked')) {
$.post('/info.php/info_tags/add_tag_to_content/', {
'it_id' : $(this).attr('data-it-id'),
'ic_id' : <?php echo $information->ic_id; ?>,
});
$(this).parent().addClass('myTag');
} else {
$.post('/info.php/info_tags/remove_tag_to_content/', {
'it_id' : $(this).attr('data-it-id'),
'ic_id' : <?php echo $information->ic_id; ?>,
});
$(this).parent().removeClass('myTag');
}
});
//新标签
$('.newTagA').on('click', function() {
$(this).hide();
$('.newTagI').show();
});
$('.newTagI').on('blur', function() {
$(this).hide();
if ($(this).val()) {
//添加标签
$.post('/info.php/info_tags/add_tag/', {'title':$(this).val(),'memo':'test'}, function(json) {
if (json.statu != '-1') {
$clone = $('.tagLabel').eq(0).clone(true);
$clone.removeClass('myTag');
$clone.find('input').attr('data-it-id', json.message).removeAttr('checked');
$clone.find('span').html($('.newTagI').val());
$('.newLabel').before($clone);
//归零
$('.newTagI').val('').hide();
$('.newTagA').html(' + 新标签 ').show();
} else {
alert('增加标签失败!');
}
}, 'json');
$('.newTagA').html($(this).val()).show();
} else {
$('.newTagA').html(' + 新标签 ').show();
}
});
</script>
</div>
Loading…
Cancel
Save