|
@@ -137,6 +137,8 @@ def write_android_menu(xml_menu_path: str, features: dict, security: dict):
|
|
|
n = n + 1
|
|
|
write_android_menu_item(f, "action_create_channel", n, "Create Channel", features["create_channel"]["status"])
|
|
|
n = n + 1
|
|
|
+ write_android_menu_item(f, "action_secure_browser", n, "Secure Browser", features["secure_browser"]["status"])
|
|
|
+ n = n + 1
|
|
|
write_android_menu_item(f, "action_ppob", n, "PPOB Agent", features["ppob"]["status"])
|
|
|
n = n + 1
|
|
|
write_android_menu_item(f, "action_wallet", n, "Wallet", features["wallet"]["status"])
|
|
@@ -210,6 +212,7 @@ def write_flutter_main(main_act_path, features: dict, security: dict):
|
|
|
features_str.append("%s'Status Updates'" % ("" if features["status_update"]["status"] else "// "))
|
|
|
features_str.append("%s'Call Log'" % ("" if features["call_log"]["status"] else "// "))
|
|
|
features_str.append("%s'Create Channel'" % ("" if features["create_channel"]["status"] else "// "))
|
|
|
+ features_str.append("%s'Secure Browser'" % ("" if features["secure_browser"]["status"] else "// "))
|
|
|
features_str.append("%s'PPOB Agent'" % ("" if features["ppob"]["status"] else "// "))
|
|
|
features_str.append("%s'Wallet'" % ("" if features["wallet"]["status"] else "// "))
|
|
|
features_str.append("%s'Social Commerce'" % ("" if features["social_commerce"]["status"] else "// "))
|
|
@@ -242,6 +245,7 @@ def write_flutter_main(main_act_path, features: dict, security: dict):
|
|
|
write_flutter_menu_item_invoke(f, "Status Updates", "openStatusUpdates", features["status_update"]["status"])
|
|
|
write_flutter_menu_item_invoke(f, "Call Log", "openCallLog", features["call_log"]["status"])
|
|
|
write_flutter_menu_item_invoke(f, "Create Channel", "createChannel", features["create_channel"]["status"])
|
|
|
+ write_flutter_menu_item_invoke(f, "Secure Browser", "secureBrowser", features["secure_browser"]["status"])
|
|
|
else:
|
|
|
f.write(line)
|
|
|
|
|
@@ -283,6 +287,7 @@ def write_ionic_main(main_act_path, features: dict, security: dict):
|
|
|
write_ionic_menu_handler(f, "Status Updates", "openStatusUpdates", features["status_update"]["status"])
|
|
|
write_ionic_menu_handler(f, "Call Log", "openCallLog", features["call_log"]["status"])
|
|
|
write_ionic_menu_handler(f, "Create Channel", "createChannel", features["create_channel"]["status"])
|
|
|
+ write_ionic_menu_handler(f, "Secure Browser", "secureBrowser", features["secure_browser"]["status"])
|
|
|
else:
|
|
|
f.write(line)
|
|
|
|
|
@@ -292,6 +297,12 @@ def write_react_call_native_1(f, n: int, function_call: str, is_active: bool):
|
|
|
f.write(indented_str(6, "%sCallNative.%s();" % (line_start, function_call), spaces=2))
|
|
|
f.write(indented_str(5, "%s}" % (line_start), spaces=2))
|
|
|
|
|
|
+def write_react_call_native_1_arg(f, n: int, function_call: str, function_arg: str, is_active: bool):
|
|
|
+ line_start = "" if is_active else "// "
|
|
|
+ f.write(indented_str(5, "%sif (buttonIndex === %s) {" % (line_start, str(n)), spaces=2))
|
|
|
+ f.write(indented_str(6, "%sCallNative.%s(%s);" % (line_start, function_call, function_arg), spaces=2))
|
|
|
+ f.write(indented_str(5, "%s}" % (line_start), spaces=2))
|
|
|
+
|
|
|
def write_react_call_native(f, n: int, function_call: str, is_active: bool):
|
|
|
line_start = "" if is_active else "// "
|
|
|
f.write(indented_str(2, "%sif (buttonIndex === %s) {" % (line_start, str(n)), spaces=2))
|
|
@@ -302,6 +313,16 @@ def write_react_call_native(f, n: int, function_call: str, is_active: bool):
|
|
|
f.write(indented_str(3, "%s}" % (line_start), spaces=2))
|
|
|
f.write(indented_str(2, "%s}" % (line_start), spaces=2))
|
|
|
|
|
|
+def write_react_call_native_arg(f, n: int, function_call: str, function_arg: str, is_active: bool):
|
|
|
+ line_start = "" if is_active else "// "
|
|
|
+ f.write(indented_str(2, "%sif (buttonIndex === %s) {" % (line_start, str(n)), spaces=2))
|
|
|
+ f.write(indented_str(3, "%stry {" % (line_start), spaces=2))
|
|
|
+ f.write(indented_str(4, "%sCallNative.%s(%s);" % (line_start, function_call, function_arg), spaces=2))
|
|
|
+ f.write(indented_str(3, "%s} catch (e) {" % (line_start), spaces=2))
|
|
|
+ f.write(indented_str(4, "%sconsole.log(e);" % (line_start), spaces=2))
|
|
|
+ f.write(indented_str(3, "%s}" % (line_start), spaces=2))
|
|
|
+ f.write(indented_str(2, "%s}" % (line_start), spaces=2))
|
|
|
+
|
|
|
def write_react_button_press(f, n: int, title: str, is_active: bool):
|
|
|
line_start = "" if is_active else "{/* "
|
|
|
line_end = "" if is_active else " */}"
|
|
@@ -333,6 +354,8 @@ def write_react_main(main_act_path, features: dict, security: dict):
|
|
|
f.write(indented_str(4, "%s'Status Updates'," % ("" if features["status_update"]["status"] else "// "), spaces=2))
|
|
|
f.write(indented_str(4, "%s'Call Log'," % ("" if features["call_log"]["status"] else "// "), spaces=2))
|
|
|
f.write(indented_str(4, "%s'Create Channel'," % ("" if features["create_channel"]["status"] else "// "), spaces=2))
|
|
|
+ f.write(indented_str(4, "%s'Secure Browser'," % ("" if features["secure_browser"]["status"] else "// "), spaces=2))
|
|
|
+
|
|
|
f.write(indented_str(4, "%s'PPOB Agent'," % ("" if features["ppob"]["status"] else "// "), spaces=2))
|
|
|
f.write(indented_str(4, "%s'Wallet'," % ("" if features["wallet"]["status"] else "// "), spaces=2))
|
|
|
f.write(indented_str(4, "%s'Social Commerce'," % ("" if features["social_commerce"]["status"] else "// "), spaces=2))
|
|
@@ -376,6 +399,8 @@ def write_react_main(main_act_path, features: dict, security: dict):
|
|
|
n = (n + 1) if features["call_log"]["status"] else n
|
|
|
write_react_call_native_1(f, n, "createChannel", features["create_channel"]["status"])
|
|
|
n = (n + 1) if features["create_channel"]["status"] else n
|
|
|
+ write_react_call_native_1_arg(f, n, "openURLSecure", "\"https://google.com\"", features["secure_browser"]["status"])
|
|
|
+ n = (n + 1) if features["secure_browser"]["status"] else n
|
|
|
write_react_call_native_1(f, n, "openPPOB", features["ppob"]["status"])
|
|
|
n = (n + 1) if features["ppob"]["status"] else n
|
|
|
write_react_call_native_1(f, n, "openWallet", features["wallet"]["status"])
|
|
@@ -425,6 +450,8 @@ def write_react_main(main_act_path, features: dict, security: dict):
|
|
|
n = (n + 1) if features["call_log"]["status"] else n
|
|
|
write_react_call_native(f, n, "createChannel", features["create_channel"]["status"])
|
|
|
n = (n + 1) if features["create_channel"]["status"] else n
|
|
|
+ write_react_call_native_arg(f, n, "openURLSecure", "\"https://google.com\"", features["secure_browser"]["status"])
|
|
|
+ n = (n + 1) if features["secure_browser"]["status"] else n
|
|
|
write_react_call_native(f, n, "openPPOB", features["ppob"]["status"])
|
|
|
n = (n + 1) if features["ppob"]["status"] else n
|
|
|
write_react_call_native(f, n, "openWallet", features["wallet"]["status"])
|
|
@@ -473,6 +500,8 @@ def write_react_main(main_act_path, features: dict, security: dict):
|
|
|
n = (n + 1) if features["call_log"]["status"] else n
|
|
|
write_react_button_press(f, n, "Create Channel", features["create_channel"]["status"])
|
|
|
n = (n + 1) if features["create_channel"]["status"] else n
|
|
|
+ write_react_button_press(f, n, "Secure Browser", features["secure_browser"]["status"])
|
|
|
+ n = (n + 1) if features["secure_browser"]["status"] else n
|
|
|
write_react_button_press(f, n, "PPOB Agent", features["ppob"]["status"])
|
|
|
n = (n + 1) if features["ppob"]["status"] else n
|
|
|
write_react_button_press(f, n, "Wallet", features["wallet"]["status"])
|
|
@@ -519,6 +548,7 @@ def change(app_id: str, platform: str, mode: str, path_dest: str, features: dict
|
|
|
write_android_menu_item_onselect(f, "action_status_update", "API.openStatusUpdates()", features["status_update"]["status"])
|
|
|
write_android_menu_item_onselect(f, "action_call_log", "API.openCallLog()", features["call_log"]["status"])
|
|
|
write_android_menu_item_onselect(f, "action_create_channel", "API.createChannel()", features["create_channel"]["status"])
|
|
|
+ write_android_menu_item_onselect(f, "action_secure_browser", "API.openURLSecure(\"https://google.com\")", features["secure_browser"]["status"])
|
|
|
|
|
|
write_android_menu_item_onselect(f, "action_ppob", "API.openPPOB()", features["ppob"]["status"])
|
|
|
write_android_menu_item_onselect(f, "action_wallet", "API.openWallet()", features["wallet"]["status"])
|
|
@@ -651,6 +681,7 @@ def change(app_id: str, platform: str, mode: str, path_dest: str, features: dict
|
|
|
write_android_grid_item_onclick(f, "imageViewStatusUpdates", "btn_status_updates", "API.openStatusUpdates()", features["status_update"]["status"])
|
|
|
write_android_grid_item_onclick(f, "imageViewCallLog", "btn_call_log", "API.openCallLog()", features["call_log"]["status"])
|
|
|
write_android_grid_item_onclick(f, "imageViewCreateChannel", "btn_create_channel", "API.createChannel()", features["create_channel"]["status"])
|
|
|
+ write_android_grid_item_onclick(f, "imageViewSecureBrowser", "btn_secure_browser", "API.openURLSecure(\"https://google.com\")", features["secure_browser"]["status"])
|
|
|
|
|
|
write_android_grid_item_onclick(f, "imageViewPPOB", "btn_ppob", "API.openPPOB()", features["ppob"]["status"])
|
|
|
write_android_grid_item_onclick(f, "imageViewWallet", "btn_wallet", "API.openWallet()", features["wallet"]["status"])
|
|
@@ -719,6 +750,8 @@ def change(app_id: str, platform: str, mode: str, path_dest: str, features: dict
|
|
|
write_android_grid_item_layout(f, "btn_status_update", "pb_button_status_update", (mode == "grid" and "status_update" in l_features))
|
|
|
write_android_grid_item_layout(f, "btn_call_log", "pb_button_call_log", (mode == "grid" and "call_log" in l_features))
|
|
|
write_android_grid_item_layout(f, "btn_create_channel", "pb_button_create_channel", (mode == "grid" and "create_channel" in l_features))
|
|
|
+ write_android_grid_item_layout(f, "btn_secure_browser", "pb_button_secure_browser", (mode == "grid" and "secure_browser" in l_features))
|
|
|
+
|
|
|
write_android_grid_item_layout(f, "btn_ppob", "pb_button_ppob", (mode == "grid" and "ppob" in l_features))
|
|
|
write_android_grid_item_layout(f, "btn_wallet", "pb_button_wallet", (mode == "grid" and "wallet" in l_features))
|
|
|
write_android_grid_item_layout(f, "btn_social_commerce", "btn_social_commerce", (mode == "grid" and "social_commerce" in l_features))
|
|
@@ -1268,6 +1301,9 @@ def save_icons(app_id: str, platform: str, mode: str, path_dest: str, features:
|
|
|
if features["create_channel"]["icon"]:
|
|
|
file = features["create_channel"]["icon"]
|
|
|
file.save(os.path.join(drawable_path, "pb_button_create_channel.png"))
|
|
|
+ if features["secure_browser"]["icon"]:
|
|
|
+ file = features["secure_browser"]["icon"]
|
|
|
+ file.save(os.path.join(drawable_path, "pb_button_secure_browser.png"))
|
|
|
pass
|
|
|
|
|
|
def deliver_zip(path_dest, uid):
|
|
@@ -1413,6 +1449,10 @@ def build_project():
|
|
|
"status": False,
|
|
|
"icon": None
|
|
|
},
|
|
|
+ "secure_browser": {
|
|
|
+ "status": False,
|
|
|
+ "icon": None
|
|
|
+ },
|
|
|
|
|
|
"cc_chat": {
|
|
|
"status": False,
|
|
@@ -1511,6 +1551,8 @@ def build_project():
|
|
|
feature_dict["status_update"]["status"] = request.form["feature_status_update"] == "1"
|
|
|
if "feature_create_channel" in request.form:
|
|
|
feature_dict["create_channel"]["status"] = request.form["feature_create_channel"] == "1"
|
|
|
+ if "feature_secure_browser" in request.form:
|
|
|
+ feature_dict["secure_browser"]["status"] = request.form["feature_secure_browser"] == "1"
|
|
|
if "feature_secure_folder" in request.form and not security_dict["secure_folder"]:
|
|
|
security_dict["secure_folder"] = request.form["feature_secure_folder"] == "1"
|
|
|
feature_dict["secure_folder"]["status"] = request.form["feature_secure_folder"] == "1"
|
|
@@ -1648,6 +1690,10 @@ def build_project():
|
|
|
file = request.files['gridicon_create_channel']
|
|
|
if file and file.filename and allowed_file(file.filename):
|
|
|
feature_dict["create_channel"]["icon"] = file
|
|
|
+ if "gridicon_secure_browser" in request.files:
|
|
|
+ file = request.files['gridicon_secure_browser']
|
|
|
+ if file and file.filename and allowed_file(file.filename):
|
|
|
+ feature_dict["secure_browser"]["icon"] = file
|
|
|
if "gridicon_secure_folder" in request.files:
|
|
|
file = request.files['gridicon_secure_folder']
|
|
|
if file and file.filename and allowed_file(file.filename):
|