123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465 |
- // 'use strict';
- // goog.provide('Blockly.Blocks.clouddata');
- // goog.require('Blockly.Blocks');
- // goog.require('Blockly.Types');
- // Blockly.Blocks.clouddata.HUE = 130;
- // /****************************************
- // * * * * * * * * *
- // * Simple version for CocoCloud *
- // * Generate JSON *
- // * * * * * * * * *
- // ****************************************/
- // /*JSON tool
- // *create a main JSON object
- // *name a JSON
- // *
- // */
- // Blockly.Blocks['clouddata_json_generator'] = {
- // /**
- // * Block for creating a JSON object with any number of
- // * elements of [key:value] .
- // * @this Blockly.Block
- // */
- // init: function() {
- // this.appendDummyInput()
- // .appendField(Blockly.Msg.CLOUDDATA_GENERATOR_DATA)
- // .appendField(new Blockly.FieldTextInput("data"), "VAR");
- // this.itemCount_ = 1;
- // this.updateShape_();
- // this.setMutator(new Blockly.Mutator(['clouddata_create_with_item']));
- // this.setPreviousStatement(true);
- // this.setNextStatement(true);
- // this.setTooltip('');
- // this.setHelpUrl('');
- // this.setColour(Blockly.Blocks.clouddata.HUE);
- // },
- // /**
- // * Create XML to represent number of inputs.
- // * @return {!Element} XML storage element.
- // * @this Blockly.Block
- // */
- // mutationToDom: function() {
- // var container = document.createElement('mutation');
- // container.setAttribute('items', this.itemCount_);
- // return container;
- // },
- // /**
- // * Parse XML to restore the inputs.
- // * @param {!Element} xmlElement XML storage element.
- // * @this Blockly.Block
- // */
- // domToMutation: function(xmlElement) {
- // this.itemCount_ = parseInt(xmlElement.getAttribute('items'), 10);
- // this.updateShape_();
- // },
- // /**
- // * Populate the mutator's dialog with this block's components.
- // * @param {!Blockly.Workspace} workspace Mutator's workspace.
- // * @return {!Blockly.Block} Root block in mutator.
- // * @this Blockly.Block
- // */
- // decompose: function(workspace) {
- // var containerBlock = workspace.newBlock('clouddata_create_with_container');
- // containerBlock.initSvg();
- // var connection = containerBlock.getInput('STACK').connection;
- // for (var i = 0; i < this.itemCount_; i++) {
- // var itemBlock = workspace.newBlock('clouddata_create_with_item');
- // itemBlock.initSvg();
- // connection.connect(itemBlock.previousConnection);
- // connection = itemBlock.nextConnection;
- // }
- // return containerBlock;
- // },
- // /**
- // * Reconfigure this block based on the mutator dialog's components.
- // * @param {!Blockly.Block} containerBlock Root block in mutator.
- // * @this Blockly.Block
- // */
- // compose: function(containerBlock) {
- // var itemBlock = containerBlock.getInputTargetBlock('STACK');
- // // Count number of inputs.
- // var connections = [];
- // while (itemBlock) {
- // connections.push(itemBlock.valueConnection_);
- // itemBlock = itemBlock.nextConnection &&
- // itemBlock.nextConnection.targetBlock();
- // }
- // // Disconnect any children that don't belong.
- // for (var i = 0; i < this.itemCount_; i++) {
- // var connection = this.getInput('ADD' + i).connection.targetConnection;
- // if (connection && connections.indexOf(connection) == -1) {
- // connection.disconnect();
- // }
- // }
- // this.itemCount_ = connections.length;
- // this.updateShape_();
- // // Reconnect any child blocks.
- // for (var i = 0; i < this.itemCount_; i++) {
- // Blockly.Mutator.reconnect(connections[i], this, 'ADD' + i);
- // }
- // },
- // /**
- // * Store pointers to any connected child blocks.
- // * @param {!Blockly.Block} containerBlock Root block in mutator.
- // * @this Blockly.Block
- // */
- // saveConnections: function(containerBlock) {
- // var itemBlock = containerBlock.getInputTargetBlock('STACK');
- // var i = 0;
- // while (itemBlock) {
- // var input = this.getInput('ADD' + i);
- // itemBlock.valueConnection_ = input && input.connection.targetConnection;
- // i++;
- // itemBlock = itemBlock.nextConnection &&
- // itemBlock.nextConnection.targetBlock();
- // }
- // },
- // /**
- // * Modify this block to have the correct number of inputs.
- // * @private
- // * @this Blockly.Block
- // */
- // updateShape_: function() {
- // if (this.itemCount_ && this.getInput('EMPTY')) {
- // this.removeInput('EMPTY');
- // } else if (!this.itemCount_ && !this.getInput('EMPTY')) {
- // this.appendDummyInput('EMPTY')
- // .appendField(this.newQuote_(true))
- // .appendField(this.newQuote_(false));
- // }
- // // Add new inputs.
- // for (var i = 0; i < this.itemCount_; i++) {
- // if (!this.getInput('ADD' + i)) {
- // var input = this.appendValueInput('ADD' + i);
- // input.appendField(Blockly.Msg.CLOUDDATA_CREATE_WITH_INPUT_WITH)
- // .appendField(new Blockly.FieldTextInput("key"), 'KEY' + i);
- // }
- // }
- // // Remove deleted inputs.
- // while (this.getInput('ADD' + i)) {
- // this.removeInput('ADD' + i);
- // i++;
- // }
- // },
- // };
- // Blockly.Blocks['clouddata_create_with_container'] = {
- // /**
- // * Mutator block for list container.
- // * @this Blockly.Block
- // */
- // init: function() {
- // this.setColour(Blockly.Blocks.clouddata.HUE);
- // this.appendDummyInput()
- // .appendField(Blockly.Msg.CLOUDDATA_CREATE_WITH_CONTAINER_TITLE_ADD);
- // this.appendStatementInput('STACK');
- // this.setTooltip('');
- // this.contextMenu = false;
- // }
- // };
- // Blockly.Blocks['clouddata_create_with_item'] = {
- // /**
- // * Mutator bolck for adding items.
- // * @this Blockly.Block
- // */
- // init: function() {
- // this.setColour(Blockly.Blocks.clouddata.HUE);
- // this.appendDummyInput()
- // .appendField(Blockly.Msg.CLOUDDATA_CREATE_WITH_ITEM_TITLE);
- // this.setPreviousStatement(true);
- // this.setNextStatement(true);
- // this.setTooltip('');
- // this.contextMenu = false;
- // }
- // };
- // /*cloud data output
- // *expose JSONmessageBuffer to user
- // *
- // */
- // Blockly.Blocks['clouddata_parse_prettyPrint_display'] = {
- // init: function() {
- // this.appendDummyInput()
- // .appendField(Blockly.Msg.CLOUDDATA_PARSE_PRETTYPRINT_DISPLAY);
- // this.setColour(Blockly.Blocks.clouddata.HUE);
- // this.setOutput(true, Blockly.Types.TEXT.output);
- // // this.setPreviousStatement(true, null);
- // // this.setNextStatement(true, null);
- // // this.setInputsInline(true);
- // this.setTooltip("");
- // this.setHelpUrl("");
- // },
- // };
- // /****************************************
- // * * * * * * * * *
- // * Simple version for CocoCloud *
- // * Parse JSON *
- // * * * * * * * * *
- // ****************************************/
- // Blockly.Blocks['clouddata_json_parser_setup'] = {
- // init: function() {
- // this.appendDummyInput()
- // .appendField(Blockly.Msg.CLOUDDATA_PARSE_SETUP_INIT)
- // .appendField(new Blockly.FieldTextInput("Data"), "DATA");
- // this.appendValueInput("PAYLOAD")
- // .appendField(Blockly.Msg.CLOUDDATA_PARSE_SETUP_PAYLOAD);
- // this.setPreviousStatement(true, null);
- // this.setNextStatement(true, null);
- // this.setColour(Blockly.Blocks.clouddata.HUE);
- // this.setTooltip("");
- // this.setHelpUrl("");
- // }
- // }
- // Blockly.Blocks['clouddata_json_parser'] = {
- // init: function() {
- // this.appendDummyInput()
- // .appendField(Blockly.Msg.CLOUDDATA_PARSE_KEY)
- // .appendField(new Blockly.FieldTextInput("key"), "KEY")
- // .appendField(Blockly.Msg.CLOUDDATA_PARSE_TYPE)
- // .appendField(new Blockly.FieldDropdown(
- // [
- // ["Text", "Text"],
- // ["Number", "Number"],
- // ["Boolean", "Boolean"],
- // ["Large Number", "Large Number"],
- // ["Decimal", "Decimal"]
- // ]), 'VAR_TYPE')
- // .appendField(Blockly.Msg.CLOUDDATA_PARSE_JSON)
- // .appendField(new Blockly.FieldTextInput("Data"), "DATA");
- // this.setColour(Blockly.Blocks.clouddata.HUE);
- // this.setOutput(true, this.getBlockType());
- // // this.setPreviousStatement(true, null);
- // // this.setNextStatement(true, null);
- // this.setInputsInline(true);
- // this.setTooltip("");
- // this.setHelpUrl("");
- // },
- // getBlockType: function() {
- // var blocklyTypeKey = this.getFieldValue('VAR_TYPE');
- // return Blockly.Types[blocklyTypeKey];
- // },
- // };
- // /****************************************
- // * * * * * * * * *
- // * Simple version for CocoCloud *
- // * cloud service *
- // * * * * * * * * *
- // ****************************************/
- // /**
- // *CocoCloud Service
- // *method POST a http request with a JSON data
- // *@param url :http://staging.cocorobo.cn/cloud/iot/{events} or http://cocorobo.cn/cloud/iot/{events}
- // *@param event get from URL://cocorobo.cn/cloud/iot/data/apikey/{@param APIKEY}/event
- // *@param data JSON form - generate from clouddata blocks
- // */
- // Blockly.Blocks['cococloud_simple_post'] = {
- // init: function() {
- // this.appendDummyInput()
- // .appendField(Blockly.Msg.COCOCLOUD_TITLE);
- // this.appendValueInput('ADD0')
- // .appendField(Blockly.Msg.COCOCLOUD_POST)
- // .appendField(new Blockly.FieldDropdown([
- // ["event", "event"]
- // ]), "event0");
- // this.itemCount = 1;
- // this.updateShape_();
- // this.eventTag = null;
- // this.setColour(150);
- // this.setPreviousStatement(true, null);
- // this.setNextStatement(true, null);
- // this.setTooltip("");
- // this.setHelpUrl("");
- // },
- // /**
- // * Modify this block to have the correct number of inputs.
- // * @private
- // * @this Blockly.Block
- // */
- // updateShape_: function() {
- // // Add new inputs.
- // var self = this;
- // var input = this.getInput('ADD0');
- // var api_key = document.getElementById('api-key').innerHTML || "";
- // $.ajax({
- // // url: '//api.cocorobo.cn/iot/data/apikey/' + api_key + '/event/',
- // url: '//staging.cocorobo.cn/api/iot/data/apikey/' + api_key + '/event/',
- // xhrFields: {
- // withCredentials: true
- // },
- // type: 'GET',
- // success: function(data) {
- // var eventsName = [];
- // if (data != null) {
- // $.each(data, function(i, obj) {
- // var temparray = []
- // temparray.push(obj.name);
- // temparray.push(obj.url);
- // eventsName.push(temparray);
- // });
- // self.eventsName = eventsName;
- // input.removeField("event0");
- // input.appendField(new Blockly.FieldDropdown(eventsName), "event0");
- // }
- // },
- // error: function(error) {
- // console.log("error");
- // }
- // });
- // }
- // };
- // /**
- // *CocoCloud Service
- // *method GET a http request to get a JSON data
- // *@param url :http://staging.cocorobo.cn/cloud/iot/{events} or http://cocorobo.cn/cloud/iot/{events}
- // *@param event get from URL://cocorobo.cn/cloud/iot/data/apikey/{@param APIKEY}/event
- // * data JSON form
- // */
- // Blockly.Blocks['cococloud_simple_get'] = {
- // init: function() {
- // this.appendDummyInput()
- // .appendField(Blockly.Msg.COCOCLOUD_TITLE);
- // this.appendDummyInput("iuput_id0")
- // .appendField(Blockly.Msg.COCOCLOUD_GET, "text_field0")
- // .appendField(new Blockly.FieldDropdown([
- // ["event", "event"]
- // ]), "event0")
- // .appendField(Blockly.Msg.COCOCLOUD_GET1, "text_field1");
- // this.itemCount = 1;
- // this.updateShape_();
- // this.setColour(150);
- // this.setPreviousStatement(true, null);
- // this.setNextStatement(true, null);
- // this.setTooltip("");
- // this.setHelpUrl("");
- // },
- // /**
- // * Modify this block to have the correct number of inputs.
- // * @private
- // * @this Blockly.Block
- // */
- // updateShape_: function() {
- // // Add new inputs.
- // var self = this;
- // var input = this.getInput('iuput_id0');
- // var api_key = document.getElementById('api-key').innerHTML || "";
- // $.ajax({
- // // url: '//api.cocorobo.cn/iot/data/apikey/' + api_key + '/event/',
- // url: '//staging.cocorobo.cn/api/iot/data/apikey/' + api_key + '/event/',
- // xhrFields: {
- // withCredentials: true
- // },
- // type: 'GET',
- // success: function(data) {
- // var eventsName = [];
- // if (data != null) {
- // $.each(data, function(i, obj) {
- // var temparray = [];
- // temparray.push(obj.name);
- // temparray.push(obj.url);
- // eventsName.push(temparray);
- // });
- // self.eventsName = eventsName;
- // input.removeField("text_field0");
- // input.removeField("event0");
- // input.removeField("text_field1");
- // input.appendField(Blockly.Msg.COCOCLOUD_GET, "text_field0")
- // .appendField(new Blockly.FieldDropdown(eventsName), "event0")
- // .appendField(Blockly.Msg.COCOCLOUD_GET1, "text_field1");
- // }
- // },
- // error: function(error) {
- // console.log("error");
- // }
- // });
- // }
- // };
- // /**
- // *CocoCloud Service
- // * get JSON data from cococloud-get-block
- // */
- // Blockly.Blocks['cococloud_simple_getPayLoad'] = {
- // init: function() {
- // this.appendDummyInput()
- // .appendField(Blockly.Msg.COCOCLOUD_TITLE);
- // this.appendDummyInput()
- // .appendField(Blockly.Msg.COCOCLOUD_GETPAYLOAD);
- // this.setColour(150);
- // this.setOutput(true);
- // this.setTooltip("");
- // this.setHelpUrl("");
- // },
- // };
- // /**
- // * Time Service
- // * get standard time
- // * Setup
- // */
- // Blockly.Blocks['cloud_time_setup'] = {
- // init: function() {
- // this.appendDummyInput()
- // .appendField(new Blockly.FieldImage("http://cocorobo.cn/cocoblockly/blockly/media/main-sensor101-counter.png", 50, 40, "15"));
- // this.appendDummyInput()
- // .appendField(Blockly.Msg.COCOCLOUD_TIME_SETUP);
- // this.setColour(215);
- // this.setTooltip("");
- // this.setHelpUrl("");
- // },
- // }
- // /**
- // * Time Service
- // * get standard time
- // * get Date
- // */
- // Blockly.Blocks['cloud_time_getDate'] = {
- // init: function() {
- // this.appendDummyInput()
- // .appendField(Blockly.Msg.COCOCLOUD_TIME_GETDATE)
- // .appendField(new Blockly.FieldDropdown([
- // [Blockly.Msg.COCOCLOUD_TIME_YEAR, "year"],
- // [Blockly.Msg.COCOCLOUD_TIME_MONTH, "month"],
- // [Blockly.Msg.COCOCLOUD_TIME_DAY, "day"],
- // ]), "date_detail")
- // this.setColour(215);
- // this.setOutput(true);
- // this.setTooltip("");
- // this.setHelpUrl("");
- // },
- // };
- // /**
- // * Time Service
- // * get standard time
- // * get Time
- // */
- // Blockly.Blocks['cloud_time_getTime'] = {
- // init: function() {
- // this.appendDummyInput()
- // .appendField(Blockly.Msg.COCOCLOUD_TIME_GETTIME)
- // .appendField(new Blockly.FieldDropdown([
- // [Blockly.Msg.COCOCLOUD_TIME_HOUR, "hour"],
- // [Blockly.Msg.COCOCLOUD_TIME_MINUTE, "minute"],
- // [Blockly.Msg.COCOCLOUD_TIME_SECOND, "second"],
- // ]), "time_detail")
- // this.setColour(215);
- // this.setOutput(true);
- // this.setTooltip("");
- // this.setHelpUrl("");
- // },
- // };
|