コード例 #1
0
ファイル: edit.js プロジェクト: plodH/ims3.0
 /**
  * 更新layout信息
  * @param json
  * @param cb
  */
 function httpUpdateLayout(json, cb) {
     var data = JSON.stringify({
         project_name: projectName,
         action: 'update',
         data: {
             layout_id: String(json.id),
             Name: json.name,
             Name_eng: json.nameEng,
             Width: String(json.width),
             Height: String(json.height),
             BackgroundPic: String(json.backgroundImage.id === -1 ? 0: json.backgroundImage.id),
             BackgroundColor: json.backgroundColor,
             TopMargin: String(json.topMargin),
             RightMargin: String(json.rightMargin),
             LeftMargin: String(json.leftMargin),
             BottomMargin: String(json.bottomMargin)
         }
     });
     util.ajax('post', requestUrl + '/backend_mgt/v1/layout', data, function (res) {
         if (Number(res.rescode) !== 200) {
             cb(res);
             return;
         }
         cb();
     });
 }
コード例 #2
0
ファイル: program.js プロジェクト: plodH/ims3.0
    function loadLayoutData(layoutId) {
        var layout = db.collection('layout').select({id: layoutId})[0];
        // layout is cached
        if (layout) {
            initProgramView();
        }
        // layout is not cached
        else {
            var loadLayoutDeferred = $.Deferred(),
                data = JSON.stringify({
                    Action: 'GetControlBoxs',
                    Project: projectName,
                    ProgramID: programId
                });
            loadLayoutDeferred.then(loadWidgetsData).done(initProgramView);

            util.ajax('post', requestUrl + '/backend_mgt/v1/programs', data, function (res) {
                var layoutRow = parseLayoutData(res.Layout);
                layoutRow.id = layoutId;
                db.collection('layout').load(layoutRow);
                loadLayoutDeferred.resolve(res.ControlBoxs);
            });

        }
    }
コード例 #3
0
ファイル: edit.js プロジェクト: plodH/ims3.0
 widgetsNeedAdd.forEach(function (el, idx) {
     var data = JSON.stringify({
         project_name: projectName,
         action: 'addLCB',
         data: {
             Left: String(el.left),
             Width: String(el.width),
             Top: String(el.top),
             Height: String(el.height),
             layout_id: String(json.id),
             layout_controlbox_id: String(el.id),
             Type: String(el.type),
             Zorder: String(zIndexes[idx])
         }
     });
     util.ajax('post', requestUrl + '/backend_mgt/v1/layout', data, function (res) {
         if (!failed && Number(res.rescode) !== 200) {
             cb(res);
             failed = true;
             return;
         }
         successCount++;
         el.id = el.widget.mId = res.ID;
         if (successCount === widgetsNeedAdd.length) {
             cb();
         }
     });
 });
コード例 #4
0
ファイル: edit.js プロジェクト: plodH/ims3.0
	exports.init = function() {
		layoutId = Number(util.getHashParameters().id);
        if (!isNaN(layoutId)) {
            var data = JSON.stringify({
                project_name: projectName,
                action: 'getCBLList',
                data: {
                    layout_id: layoutId
                }
            });
            util.ajax('post', requestUrl + '/backend_mgt/v1/layout', data, onLayoutDataAvaiable);
        } else {
            var defaultLayout = {
                layout_id: -1,
                Name: '新建布局',
                Name_eng: 'new layout',
                Width: '1920',
                Height: '1080',
                BackgroundPic: '',
                BackgroundColor: '#000000',
                TopMargin: '0',
                RightMargin: '0',
                BottomMargin: '0',
                LeftMargin: '0',
                Layout_ControlBoxs: []
            };
            onLayoutDataAvaiable(defaultLayout);
        }
	};
コード例 #5
0
ファイル: list_check.js プロジェクト: emmaga/ims3.0
 function deleteChannel() {
     var data = JSON.stringify({
         Action: 'Delete',
         Project: projectName
     });
     util.ajax('post', requestUrl + '/backend_mgt/v1/channels/' + getCurrentChannelId(), data, function (res) {
         console.log(res);
         alert(Number(res.rescode) === 200 ? '删除成功' : '删除失败');
     });
 }
コード例 #6
0
ファイル: list_check.js プロジェクト: emmaga/ims3.0
 function copyChannel() {
     var data = JSON.stringify({
         Action: 'Copy',
         Project: projectName,
         ChannelID: getCurrentChannelId()
     });
     util.ajax('post', requestUrl + '/backend_mgt/v1/channels', data, function (res) {
         console.log(res);
         alert(Number(res.rescode) === 200 ? '复制成功' : '复制失败');
     });
 }
コード例 #7
0
ファイル: list.js プロジェクト: emmaga/ims3.0
	function loadPage(pageNum) {
		var pager = {
			page: String(pageNum),
			total: '0',
			per_page: nDisplayItems,
			orderby: 'CreateTime',
			sortby: 'DESC',
			keyword: $('#channel-list-search').val()
		};
		var data = JSON.stringify({
			action: 'listPage',
			project_name: projectName,
			Pager: pager
		});
		util.ajax('post', requestUrl + '/backend_mgt/v1/layout', data, render);
	}
コード例 #8
0
ファイル: list_check.js プロジェクト: emmaga/ims3.0
 // 加载页面数据
 function loadPage(pageNum) {
     var pager = {
         page: String(pageNum),
         total: '0',
         per_page: String(nDisplayItems),
         orderby: 'ID',
         sortby: '',
         keyword: keyword
     };
     var data = JSON.stringify({
         Action: 'GetPage',
         Project: projectName,
         Pager: pager
     });
     util.ajax('post', requestUrl + '/backend_mgt/v1/channels', data, render);
 }
コード例 #9
0
ファイル: edit.js プロジェクト: plodH/ims3.0
 /**
  * 批量更新
  * @param json
  * @param cb
  */
 function httpUpdateWidgets(json, cb) {
     var widgetsNeedUpdate = [];
     var zIndex = 0;
     json.widgets.forEach(function (el) {
         if (el.id !== -1) {
             widgetsNeedUpdate.push({
                 Left: el.left,
                 Width: el.width,
                 Top: el.top,
                 Height: el.height,
                 layout_id: String(json.id),
                 layout_controlbox_id: String(el.id),
                 Type: String(el.type),
                 Zorder: String(zIndex)
             });
         }
         zIndex++;
     });
     var data = JSON.stringify({
         project_name: config.projectName,
         action: 'updateCBLList',
         data: {
             layout_id: String(json.id),
             Name: json.name,
             Name_eng: json.nameEng,
             Width: String(json.width),
             Height: String(json.height),
             BackgroundPic: String(json.backgroundImage.id),
             BackgroundColor: json.backgroundColor,
             TopMargin: json.topMargin,
             LeftMargin: json.leftMargin,
             RightMargin: json.rightMargin,
             BottomMargin: json.bottomMargin,
             Layout_ControlBoxs: widgetsNeedUpdate
         }
     });
     util.ajax('post', requestUrl + '/backend_mgt/v1/layout', data, function (res) {
         if (Number(res.rescode) !== 200) {
             cb(res);
             return;
         }
         cb();
     });
 }
コード例 #10
0
ファイル: program.js プロジェクト: plodH/ims3.0
        widgetRows.forEach(function (row) {
            row.layout_id = layoutId;
            db.collection('widget').load(row);
            var defer = $.Deferred(),
                data = JSON.stringify({
                    Action: 'GetMaterials',
                    Project: projectName,
                    ControlBoxID: row.id
                });
            promises.push(defer);
            util.ajax('post', requestUrl + '/backend_mgt/v1/controlboxes', data, function (res) {
                var materialRows = res.Materials.map(parseMaterialData);
                materialRows.forEach(function (row) {

                    db.collection('material').load(row);
                });
                defer.resolve();
            });
        });
コード例 #11
0
ファイル: list.js プロジェクト: emmaga/ims3.0
	function onDeleteLayout(ev) {
        if (confirm("确定删除该模板?")) {
            var data = JSON.stringify({
                project_name: projectName,
                action: 'delete',
                data: {
                    layout_id: getCurrentLayoutId()
                }
            });
            util.ajax('post', requestUrl + '/backend_mgt/v1/layout', data, function (res) {
                if (Number(res.rescode) === 200) {
                    alert('删除成功!');
                } else {
                    alert('删除失败,有频道正在使用它!');
                }
                loadPage(1);
            });
        }
	}
コード例 #12
0
ファイル: edit.js プロジェクト: plodH/ims3.0
 widgetsNeedDelete.forEach(function (el) {
     var data = JSON.stringify({
         project_name: projectName,
         action: 'deleteLCB',
         data: {
             layout_controlbox_id: String(el)
         }
     });
     util.ajax('post', requestUrl + '/backend_mgt/v1/layout', data, function (res) {
         if (!failed && Number(res.rescode) !== 200) {
             cb(res);
             failed = true;
             return;
         }
         successCount++;
         if (successCount === widgetsNeedDelete.length) {
             cb();
         }
     });
 });