public JsArray<JsString> getCachedFileList() { JsArray<JsString> contentList = new JsArray<JsString>(); foreach (JsString key in ContentCache.htmlMergedFiles) { contentList.Add(key); } return contentList; }
public JsArray <JsString> getCachedFileList() { JsArray <JsString> contentList = new JsArray <JsString>(); foreach (JsString key in ContentCache.htmlMergedFiles) { contentList.Add(key); } return(contentList); }
public JsImplParameterInfo[] GetParameters() { if (_parameterInfo == null) { _parameterInfo = new JsArray <JsImplParameterInfo>(); foreach (string paramTypeName in parameters) { _parameterInfo.Add(new JsImplParameterInfo(Type.GetType(paramTypeName))); } } return(_parameterInfo); }
// 每一项是JsArray或JsObject(assoc=true) public JsArray queryAll(string sql, bool assoc = false) { DbDataReader rd = env.cnn.ExecQuery(sql); var ret = new JsArray(); if (rd.HasRows) { while (rd.Read()) { ret.Add(readerToCol(rd, assoc)); } } rd.Close(); return(ret); }
public override object filter(JsObject obj, JsObject arg) { JsArray<ngFoodItem> res = new JsArray<ngFoodItem>(); string category = arg["category"].As<JsString>(); int day = arg["day"].As<int>(); JsArray<JsArray<ngFoodItem>> allFoods = obj.As<JsArray<JsArray<ngFoodItem>>>(); JsArray<ngFoodItem> items = allFoods[day]; if (null != items) { foreach (ngFoodItem item in items) { if ((item.Category == category) && !item.isContainer) { res.Add(item); } } } return res; }
public override object filter(JsObject obj, JsObject arg) { JsArray<ngOrderEntry> res = new JsArray<ngOrderEntry>(); int day = arg["day"].As<int>(); JsArray<JsArray<ngOrderEntry>> allOrders = obj.As<JsArray<JsArray<ngOrderEntry>>>(); JsArray<ngOrderEntry> tmp = allOrders[day]; if (tmp != null && tmp.length > 0) { foreach (ngOrderEntry order in tmp) { ngFoodItem foodItem = ngFoodController.inst.findFoodById(order.FoodId); if (null != foodItem && !foodItem.isContainer) { res.Add(order); } } } return res; }
public JsObject objarr2table(JsArray rs, int fixedColCnt = -1) { var h = new JsArray(); var d = new JsArray(); var ret = new JsObject() { { "h", h }, { "d", d } }; if (rs.Count == 0) { return(ret); } JsObject row0 = rs[0] as JsObject; h.AddRange(row0.Keys); if (fixedColCnt >= 0) { /* * TODO * foreach (rs as row) { * h1 = array_keys(row); * for (i=fixedColCnt; i<count(h1); ++i) { * if (array_search(h1[i], h) === false) { * h[] = h1[i]; * } * } * } */ } foreach (JsObject row in rs) { var arr = new JsArray(); d.Add(arr); foreach (string k in h) { arr.Add(row[k]); } } return(ret); }
private static void Compile_Phase2() { _NewJsTypes = new JsArray <JsType>(); for (var i = 0; i < JsTypes.length; i++) { var jsType = JsTypes[i]; Compile_Phase2_TmpType(jsType); } foreach (var ce in JsTypes) { if (ce.cctor != null) { ce.cctor.As <JsAction>()(); } } JsTypes = new JsArray <JsType>(); NewTypes = new JsArray <Type>(); foreach (JsType jsType in _NewJsTypes) { NewTypes.Add(Type.GetType(jsType.fullname)); } }
// return: JsObject or JsArray public object readerToCol(DbDataReader rd, bool assoc) { object ret = null; if (assoc) { var jsobj = new JsObject(); for (int i = 0; i < rd.FieldCount; ++i) { jsobj[rd.GetName(i)] = rd.GetValue(i); } ret = jsobj; } else { var jsarr = new JsArray(); for (int i = 0; i < rd.FieldCount; ++i) { jsarr.Add(rd.GetValue(i)); } ret = jsarr; } return(ret); }
private void requestGetUsers(JsAction complete) { JsService.Inst.UsersApi.GetUsers(delegate(JsArray<ngUserModel> res) { JsArray<ngUserModel> tmp = new JsArray<ngUserModel>(); foreach (ngUserModel user in res) { if (-1 != user.Email.As<JsString>().indexOf("darwins")) { tmp.Add(user); } } ngUsers = tmp; if (null != complete) { complete(); } }); }
public string TranslateMicrosoft() { string url = "http://api.microsofttranslator.com/v2/ajax.svc/TranslateArray"; JsArray src = new JsArray(); src.Add(new JsAtom(sourceNew)); string query = "from=%22ja%22&to=%22en%22&appId=%22" + UrlEncode("F84955C82256C25518548EE0C161B0BF87681F2F") + "%22&texts=" + UrlEncode(src.Serialize()); HttpWebRequest req = CreateHTTPRequest(url + "?" + query); string ans = ReadAnswer(req); JsObject js = Json.Parse(ans); string result = js["0"]["TranslatedText"].ToString(); return result; }
public void SaveOptions(string filename) { JsObject data = new JsObject(); JsArray arr = new JsArray(); for (int i = 0; i < translators.Count; ++i) { arr.Add(Json.Parse("{\"id\":" + translators[i].id + ", \"inUse\":" + (translators[i].inUse ? "1" : "0") + "}")); } data["translators"] = arr; foreach (KeyValuePair<string, ColorRecord> kvp in colors) { data["colors"].num[kvp.Key] = kvp.Value.color.ToArgb(); } saveOpt(data, "wordParseMethod"); saveOpt(data, "JDicServer"); saveOpt(data, "alwaysOnTop"); saveOpt(data, "checkDouble"); saveOpt(data, "checkRepeatingPhrases"); saveOpt(data, "checkRepeatingPhrasesAdv"); saveOpt(data, "replaceSuffixes"); saveOpt(data, "excludeSpeakers"); saveOpt(data, "excludeSpeakersPattern"); saveOpt(data, "messageDelay"); saveOpt(data, "maxSourceLength"); data.str["font"] = new FontConverter().ConvertToString(font); data.str["tooltipFont"] = new FontConverter().ConvertToString(tooltipFont); saveOpt(data, "translateToOtherLanguage"); saveOpt(data, "translateLanguage"); saveOpt(data, "noUseSecondTranslate"); saveOpt(data, "useCache"); saveOpt(data, "displayOriginal"); saveOpt(data, "displayFixed"); saveOpt(data, "bottomLayerOpacity"); saveOpt(data, "displayReadings"); saveOpt(data, "appendBottom"); saveOpt(data, "dropShadow"); saveOpt(data, "usePromt"); saveOpt(data, "furiganaRomaji"); saveOpt(data, "maxBlocks"); saveOpt(data, "largeMargins"); saveOpt(data, "marginSize"); saveOpt(data, "hivemindServer"); saveOpt(data, "toolbarVisible"); saveOpt(data, "monitorNewThreads"); saveOpt(data, "includeOkurigana"); saveOpt(data, "clipboardMonitoring"); saveOpt(data, "clipboardMonitoringJapanese"); File.WriteAllText(filename, data.Serialize()); }
public JsArray param_varr(string str, string type, string name) { JsArray ret = new JsArray(); var elemTypes = new List <ElemType>(); foreach (var t in type.Split(':')) { int tlen = t.Length; if (tlen == 0) { throw new MyException(E_SERVER, string.Format("bad type spec: `{0}`", type)); } bool optional = false; string t1 = t; if (t[tlen - 1] == '?') { t1 = t.Substring(0, tlen - 1); optional = true; } elemTypes.Add(new ElemType() { type = t1, optional = optional }); } int colCnt = elemTypes.Count; foreach (var row0 in str.Split(',')) { var row = row0.Split(new char[] { ':' }, colCnt); Array.Resize(ref row, colCnt); /* * while (row.Length < colCnt) { * row[] = null; * } */ var row1 = new JsArray(); for (int i = 0; i < row.Length; ++i) { var e = row[i]; var t = elemTypes[i]; if (e == null || e.Length == 0) { if (t.optional) { row1.Add(null); continue; } throw new MyException(E_PARAM, string.Format("Bad Request - param `{0}`: list({1}). require col: `{2}`[{3}]", name, type, row0, i)); } string v = htmlEscape(e); if (t.type == "i") { int ival; if (!int.TryParse(v, out ival)) { throw new MyException(E_PARAM, string.Format("Bad Request - param `{0}`: list({1}). require integer col: `{2}`[{3}]=`{4}`.", name, type, row0, ival, v)); } row1.Add(ival); } else if (t.type == "n") { decimal n; if (!decimal.TryParse(v, out n)) { throw new MyException(E_PARAM, string.Format("Bad Request - param `{0}`: list({1}). require numberic col: `{2}`[{3}]=`{4}`.", name, type, row0, i, v)); } row1.Add(n); } else if (t.type == "b") { bool b; if (!tryParseBool(v, out b)) { throw new MyException(E_PARAM, string.Format("Bad Request - param `{0}`: list({1}). require boolean col: `{2}`[{3}]=`{4}`.", name, type, row0, i, v)); } row1.Add(b); } else if (t.type == "s") { row1.Add(v); } else if (t.type == "dt" || t.type == "tm") { DateTime dt; if (!DateTime.TryParse(v, out dt)) { throw new MyException(E_PARAM, string.Format("Bad Request - param `{0}`: list({1}). require datetime col: `{2}`[{3}]=`{4}`.", name, t.type, row0, i, v)); } row1.Add(dt); } else { throw new MyException(E_SERVER, string.Format("unknown elem type `{0}` for param `{1}`: list({2})", t.type, name, v)); } } ret.Add(row1); } if (ret.Count == 0) { throw new MyException(E_PARAM, "Bad Request - list param `{0}` is empty.", name); } return(ret); }