This commit is contained in:
Jay 2017-03-31 15:35:30 +08:00
parent f8f3cbe0d8
commit b419194b6b
5 changed files with 794 additions and 648 deletions

File diff suppressed because it is too large Load Diff

View File

@ -63,7 +63,7 @@
/******/ __webpack_require__.p = "";
/******/ // Load entry module and return exports
/******/ return __webpack_require__(__webpack_require__.s = 1134);
/******/ return __webpack_require__(__webpack_require__.s = 1138);
/******/ })
/************************************************************************/
/******/ ([
@ -499,7 +499,7 @@ Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "HeaderContent", function() { return __WEBPACK_IMPORTED_MODULE_45__elements_Header_HeaderContent__["a"]; });
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_46__elements_Header_HeaderSubheader__ = __webpack_require__(394);
/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "HeaderSubheader", function() { return __WEBPACK_IMPORTED_MODULE_46__elements_Header_HeaderSubheader__["a"]; });
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_47__elements_Icon__ = __webpack_require__(22);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_47__elements_Icon__ = __webpack_require__(23);
/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "Icon", function() { return __WEBPACK_IMPORTED_MODULE_47__elements_Icon__["a"]; });
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_48__elements_Icon_IconGroup__ = __webpack_require__(395);
/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "IconGroup", function() { return __WEBPACK_IMPORTED_MODULE_48__elements_Icon_IconGroup__["a"]; });
@ -1526,16 +1526,6 @@ module.exports = map;
/***/ }),
/* 22 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__Icon__ = __webpack_require__(140);
/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return __WEBPACK_IMPORTED_MODULE_0__Icon__["a"]; });
/***/ }),
/* 23 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
@ -2404,6 +2394,16 @@ var clear_dashboard = exports.clear_dashboard = function clear_dashboard() {
};
};
/***/ }),
/* 23 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__Icon__ = __webpack_require__(140);
/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return __WEBPACK_IMPORTED_MODULE_0__Icon__["a"]; });
/***/ }),
/* 24 */
/***/ (function(module, exports, __webpack_require__) {
@ -9327,7 +9327,7 @@ module.exports = setInnerHTML;
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__lib__ = __webpack_require__(2);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__elements_Icon__ = __webpack_require__(22);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__elements_Icon__ = __webpack_require__(23);
@ -9827,7 +9827,8 @@ if ("development" !== 'production' && typeof isCrushed.name === 'string' && isCr
/* 147 */,
/* 148 */,
/* 149 */,
/* 150 */
/* 150 */,
/* 151 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
@ -9837,7 +9838,6 @@ module.exports = __webpack_require__(746);
/***/ }),
/* 151 */,
/* 152 */
/***/ (function(module, exports, __webpack_require__) {
@ -14471,7 +14471,7 @@ FeedExtra._meta = {
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react__ = __webpack_require__(0);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_react__);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__lib__ = __webpack_require__(2);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__elements_Icon__ = __webpack_require__(22);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__elements_Icon__ = __webpack_require__(23);
@ -14556,7 +14556,7 @@ FeedLabel._meta = {
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react__ = __webpack_require__(0);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_react__);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__lib__ = __webpack_require__(2);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__elements_Icon__ = __webpack_require__(22);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__elements_Icon__ = __webpack_require__(23);
@ -21367,7 +21367,7 @@ function warning(message) {
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react__ = __webpack_require__(0);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_react__);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__lib__ = __webpack_require__(2);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__elements_Icon__ = __webpack_require__(22);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__elements_Icon__ = __webpack_require__(23);
@ -22328,7 +22328,7 @@ MenuHeader._meta = {
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react__ = __webpack_require__(0);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_react__);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__lib__ = __webpack_require__(2);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__elements_Icon__ = __webpack_require__(22);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__elements_Icon__ = __webpack_require__(23);
@ -24526,7 +24526,7 @@ SegmentGroup._meta = {
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react__ = __webpack_require__(0);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_react__);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__lib__ = __webpack_require__(2);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__elements_Icon__ = __webpack_require__(22);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__elements_Icon__ = __webpack_require__(23);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__StepContent__ = __webpack_require__(405);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__StepDescription__ = __webpack_require__(225);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__StepGroup__ = __webpack_require__(406);
@ -25239,7 +25239,7 @@ DropdownDivider._meta = {
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react__ = __webpack_require__(0);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_react__);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__lib__ = __webpack_require__(2);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__elements_Icon__ = __webpack_require__(22);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__elements_Icon__ = __webpack_require__(23);
@ -25324,7 +25324,7 @@ DropdownHeader._meta = {
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_react__);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__lib__ = __webpack_require__(2);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__elements_Flag__ = __webpack_require__(392);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__elements_Icon__ = __webpack_require__(22);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__elements_Icon__ = __webpack_require__(23);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__elements_Image__ = __webpack_require__(78);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__elements_Label__ = __webpack_require__(141);
@ -28465,7 +28465,7 @@ var _Dialog = __webpack_require__(458);
var _Dialog2 = _interopRequireDefault(_Dialog);
var _actions = __webpack_require__(23);
var _actions = __webpack_require__(22);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
@ -52392,7 +52392,7 @@ Confirm.handledProps = ['cancelButton', 'confirmButton', 'content', 'header', 'o
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_lodash_invoke___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_lodash_invoke__);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react__ = __webpack_require__(0);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_react__);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_dom__ = __webpack_require__(150);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_dom__ = __webpack_require__(151);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react_dom___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_react_dom__);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__lib__ = __webpack_require__(2);
@ -53975,7 +53975,7 @@ Menu.handledProps = ['activeIndex', 'as', 'attached', 'borderless', 'children',
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react__ = __webpack_require__(0);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_react__);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__lib__ = __webpack_require__(2);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__elements_Icon__ = __webpack_require__(22);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__elements_Icon__ = __webpack_require__(23);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__MessageContent__ = __webpack_require__(381);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__MessageHeader__ = __webpack_require__(382);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__MessageList__ = __webpack_require__(383);
@ -54646,7 +54646,7 @@ Flag.create = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_3__lib__["i" /* cr
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__lib__ = __webpack_require__(2);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__elements_Icon__ = __webpack_require__(22);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__elements_Icon__ = __webpack_require__(23);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__elements_Image__ = __webpack_require__(78);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__HeaderSubheader__ = __webpack_require__(394);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__HeaderContent__ = __webpack_require__(393);
@ -54831,7 +54831,7 @@ Header.Subheader = __WEBPACK_IMPORTED_MODULE_8__HeaderSubheader__["a" /* default
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12_classnames___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_12_classnames__);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__lib__ = __webpack_require__(2);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14__elements_Button__ = __webpack_require__(220);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_15__elements_Icon__ = __webpack_require__(22);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_15__elements_Icon__ = __webpack_require__(23);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_16__elements_Label__ = __webpack_require__(141);
/* unused harmony export htmlInputPropNames */
@ -57379,7 +57379,7 @@ var objectDiff = function objectDiff(source, target) {
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14_react__ = __webpack_require__(0);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_14_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_14_react__);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_15__lib__ = __webpack_require__(2);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_16__elements_Icon__ = __webpack_require__(22);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_16__elements_Icon__ = __webpack_require__(23);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_17__AccordionContent__ = __webpack_require__(409);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_18__AccordionTitle__ = __webpack_require__(410);
@ -58087,7 +58087,7 @@ Dimmer.create = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_8__lib__["i" /*
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_27_react__ = __webpack_require__(0);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_27_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_27_react__);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_28__lib__ = __webpack_require__(2);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_29__elements_Icon__ = __webpack_require__(22);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_29__elements_Icon__ = __webpack_require__(23);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_30__elements_Label__ = __webpack_require__(141);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_31__DropdownDivider__ = __webpack_require__(413);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_32__DropdownItem__ = __webpack_require__(415);
@ -59353,7 +59353,7 @@ Dropdown.handledProps = ['additionLabel', 'additionPosition', 'allowAdditions',
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react__ = __webpack_require__(0);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_react__);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__lib__ = __webpack_require__(2);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__elements_Icon__ = __webpack_require__(22);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__elements_Icon__ = __webpack_require__(23);
@ -59576,7 +59576,7 @@ Embed.handledProps = ['active', 'as', 'aspectRatio', 'autoplay', 'brandedUI', 'c
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react__ = __webpack_require__(0);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_react__);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__lib__ = __webpack_require__(2);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__elements_Icon__ = __webpack_require__(22);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__elements_Icon__ = __webpack_require__(23);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__addons_Portal__ = __webpack_require__(138);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__ModalHeader__ = __webpack_require__(420);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__ModalContent__ = __webpack_require__(418);
@ -62129,7 +62129,7 @@ var _i18next2 = _interopRequireDefault(_i18next);
var _semanticUiReact = __webpack_require__(8);
var _Form = __webpack_require__(1082);
var _Form = __webpack_require__(1085);
var _Form2 = _interopRequireDefault(_Form);
@ -62137,7 +62137,7 @@ var _DialogControl = __webpack_require__(460);
var _DialogControl2 = _interopRequireDefault(_DialogControl);
var _actions = __webpack_require__(23);
var _actions = __webpack_require__(22);
var _reactRedux = __webpack_require__(25);
@ -62318,7 +62318,10 @@ exports.default = (0, _reactRedux.connect)()(Root);
/* 1079 */,
/* 1080 */,
/* 1081 */,
/* 1082 */
/* 1082 */,
/* 1083 */,
/* 1084 */,
/* 1085 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
@ -62374,9 +62377,6 @@ var loginForm = function loginForm(_ref) {
exports.default = loginForm;
/***/ }),
/* 1083 */,
/* 1084 */,
/* 1085 */,
/* 1086 */,
/* 1087 */,
/* 1088 */,
@ -62425,7 +62425,11 @@ exports.default = loginForm;
/* 1131 */,
/* 1132 */,
/* 1133 */,
/* 1134 */
/* 1134 */,
/* 1135 */,
/* 1136 */,
/* 1137 */,
/* 1138 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
@ -62435,7 +62439,7 @@ var _react = __webpack_require__(0);
var _react2 = _interopRequireDefault(_react);
var _reactDom = __webpack_require__(150);
var _reactDom = __webpack_require__(151);
var _reactDom2 = _interopRequireDefault(_reactDom);

View File

@ -423,7 +423,7 @@ router
if (row[0].count > 0) return n('ERR0054');
let q = "insert into ??.?? (`iouid`, `name`, `portnum`, `type`, `range_min`, `range_max`, `scale_min`, `scale_max`, `ctime`, `mtime`) values \
(?, ?, ?, ?, ?, ?, ?, unix_timestamp(), unix_timestamp())";
(?, ?, ?, ?, ?, ?, ?, ?, unix_timestamp(), unix_timestamp())";
let p = [config.db.db5, 'aioset', arr.data.iouid, arr.data.name, arr.data.portnum, arr.data.type, arr.data.range_min, arr.data.range_max, arr.data.scale_min, arr.data.scale_max];
res.db.query(q, p, (err, row) => {
if (err) return n('ERR8001');

View File

@ -418,6 +418,39 @@ router
record: []
}
n();
})
.post('/gettimezonelist', (req,res,n) => {
exec('timedatectl list-timezones', (err, stdout, stderr) => {
if(err) return n("ERR8000");
let zones = stdout.split(/\n/);
let json = {
zone: []
};
for(let i in zones){
let str = zones[i].trim();
if(!str) continue;
let tz = str.split('/');
if(tz.length != 2) continue;
let flag = false;
for(let j in json.zone){
if(json.zone[j].name == tz[0]) {
flag = true;
json.zone[j].location.push(tz[1]);
}
}
if(!flag) json.zone.push({name: tz[0], location: [tz[1]]})
}
res.api_res = {
record: tool.checkArray(json.zone)
}
n();
})
})
.post('/gettimezoneset', (req,res,n) => {
})
.all('*', rt.send);

View File

@ -4,6 +4,7 @@ import Datetime from 'react-datetime';
import {Container, Segment, Form, Header, Menu, Grid, Table, Input} from 'semantic-ui-react';
import NetForm from './NetForm';
import TimeForm from './TimeForm';
import TimezoneForm from './TimezoneForm';
import {convertTime,padding} from '../../../tools';
class SysInfo extends React.Component {
@ -37,6 +38,11 @@ class SysInfo extends React.Component {
dispatch(set_system_time(dstr));
}
showDialog = (msg) => {
let {dispatch} = this.props;
dispatch(add_dialog_msg(msg));
}
render() {
let {i18n, network, time} = this.props;
return (
@ -45,6 +51,10 @@ class SysInfo extends React.Component {
<Header as="h2" content={i18n && 't' in i18n ? i18n.t('page.system_info.title.sysinfo') : ''} />
<NetForm i18n={i18n} network={network} onSubmit={this.netSubmit}/>
</Segment>
<Segment>
<Header as="h2" content="Time Zone" />
<TimezoneForm i18n={i18n} showDialog={this.showDialog} />
</Segment>
<Segment style={{marginBottom: '100px'}}>
<Header as="h2" content={i18n && 't' in i18n ? i18n.t('page.system_info.title.timeinfo') : ''} />
<TimeForm i18n={i18n} time={time} onSubmit={this.timeSubmit}/>