biz9-logic 10.0.48 → 10.0.58

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (4) hide show
  1. package/biz9_config +2 -2
  2. package/index.js +184 -181
  3. package/package.json +1 -1
  4. package/test.js +1 -1
package/biz9_config CHANGED
@@ -1,7 +1,7 @@
1
- VERSION='10.4.8'
1
+ VERSION='10.5.9'
2
2
  TITLE='BiZ9-Logic';
3
3
  REPO='git@github.com:biz9framework/biz9-logic.git';
4
- BRANCH='10.4.6'
4
+ BRANCH='main'
5
5
  APP_ID='test_app_id';
6
6
  URL="http://localhost";
7
7
 
package/index.js CHANGED
@@ -5,7 +5,7 @@ License GNU General Public License v3.0
5
5
  Description: BiZ9 Framework: Logic-JS
6
6
  */
7
7
  const moment = require('moment');
8
- const {Str,Num,Obj} = require('biz9-utility');
8
+ const {Str,Num,Obj,Log} = require('biz9-utility');
9
9
  class Message {
10
10
  static SUCCESS="Success";
11
11
  static CONFIRM="Are You Sure?";
@@ -93,7 +93,6 @@ class Type {
93
93
  static FIELD_PARAM = 'param';
94
94
  static FIELD_PARENT_DATA_TYPE='parent_data_type';
95
95
  static FIELD_PARENT_ID='parent_id';
96
- static FIELD_ROLE = 'role';
97
96
  static FIELD_SOURCE='source';
98
97
  static FIELD_SOURCE_DATA_TYPE='source_data_type';
99
98
  static FIELD_SOURCE_KEY='source_key';
@@ -118,6 +117,7 @@ class Type {
118
117
  static FIELD_USER_LAST_NAME = 'last_name';
119
118
  static FIELD_USER_USERNAME = 'username';
120
119
  static FIELD_USER_PASSWORD = 'password';
120
+ static FIELD_USER_ROLE = 'role';
121
121
  static FIELD_USER_STATE = 'state';
122
122
  static FIELD_VALUE = 'value';
123
123
  static FIELD_WEBSITE = 'website';
@@ -306,157 +306,7 @@ class Type {
306
306
  static CATEGORY='Category';
307
307
  static DESCRIPTION='Description';
308
308
  static TYPE='Type';
309
- static get_order_statuses(){
310
- return [
311
- {value:Type.ORDER_STATUS_NEW,label:Type.TITLE_ORDER_STATUS_NEW,title:Type.TITLE_ORDER_STATUS_NEW},
312
- {value:Type.ORDER_STATUS_OPEN,label:Type.TITLE_ORDER_STATUS_OPEN,title:Type.TITLE_ORDER_STATUS_OPEN},
313
- {value:Type.ORDER_STATUS_COMPLETE,label:Type.TITLE_ORDER_STATUS_COMPLETE,title:Type.TITLE_ORDER_STATUS_COMPLETE},
314
- {value:Type.ORDER_STATUS_RETURNED,label:Type.TITLE_ORDER_STATUS_RETURNED,title:Type.TITLE_ORDER_STATUS_RETURNED},
315
- {value:Type.ORDER_STATUS_ON_HOLD,label:Type.TITLE_ORDER_STATUS_ON_HOLD,title:Type.TITLE_ORDER_STATUS_ON_HOLD},
316
- {value:Type.ORDER_STATUS_CANCELLED,label:Type.TITLE_ORDER_STATUS_CANCELLED,title:Type.TITLE_ORDER_STATUS_CANCELLED},
317
- ];
318
- };
319
- static get_user_roles(){
320
- return [
321
- {value:Type.USER_ROLE_ADMIN,label:Type.TITLE_USER_ROLE_ADMIN,title:Type.TITLE_USER_ROLE_ADMIN},
322
- {value:Type.USER_ROLE_MANAGER,label:Type.TITLE_USER_ROLE_MANAGER,title:Type.TITLE_USER_ROLE_MANAGER},
323
- {value:Type.USER_ROLE_USER,label:Type.TITLE_USER_ROLE_USER,title:Type.TITLE_USER_ROLE_USER},
324
- {value:Type.USER_ROLE_GUEST,label:Type.TITLE_USER_ROLE_GUEST,title:Type.TITLE_USER_ROLE_GUEST},
325
- ];
326
- };
327
- static get_pages(){
328
- return [
329
- {value:Type.PAGE_ABOUT,title:Type.TITLE_PAGE_ABOUT,label:Type.TITLE_PAGE_ABOUT,url:Url.PAGE_ABOUT},
330
- {value:Type.PAGE_BLOG_POST,title:Type.TITLE_PAGE_BLOG_POST,label:Type.TITLE_PAGE_BLOG_POST,url:Url.PAGE_BLOG_POST},
331
- {value:Type.PAGE_BLOG_POST_HOME,title:Type.TITLE_PAGE_BLOG_POST_HOME,label:Type.TITLE_PAGE_BLOG_POST_HOME,url:Url.PAGE_BLOG_POST_HOME},
332
- {value:Type.PAGE_CONTACT,title:Type.TITLE_PAGE_CONTACT,label:Type.TITLE_PAGE_CONTACT,url:Url.PAGE_CONTACT},
333
- {value:Type.PAGE_EVENT,title:Type.TITLE_PAGE_EVENT,label:Type.TITLE_PAGE_EVENT,url:Url.PAGE_EVENT},
334
- {value:Type.PAGE_EVENT_HOME,title:Type.TITLE_PAGE_EVENT_HOME,label:Type.TITLE_PAGE_EVENT_HOME,url:Url.PAGE_EVENT_HOME},
335
- {value:Type.PAGE_FAQ,title:Type.TITLE_PAGE_FAQ,label:Type.TITLE_PAGE_FAQ,url:Url.PAGE_FAQ},
336
- {value:Type.PAGE_HOME,title:Type.TITLE_PAGE_HOME,label:Type.TITLE_PAGE_HOME,url:Url.PAGE_HOME},
337
- {value:Type.PAGE_GALLERY,title:Type.TITLE_PAGE_GALLERY,label:Type.TITLE_PAGE_GALLERY,url:Url.PAGE_GALLERY},
338
- {value:Type.PAGE_GALLERY_HOME,title:Type.TITLE_PAGE_GALLERY_HOME,label:Type.TITLE_PAGE_GALLERY_HOME,url:Url.PAGE_GALLERY_HOME},
339
- {value:Type.PAGE_LOGIN,title:Type.TITLE_PAGE_LOGIN,label:Type.TITLE_PAGE_LOGIN,url:Url.PAGE_LOGIN},
340
- {value:Type.PAGE_PRODUCT,title:Type.TITLE_PAGE_PRODUCT,label:Type.TITLE_PAGE_PRODUCT,url:Url.PAGE_PRODUCT},
341
- {value:Type.PAGE_PRODUCT_HOME,title:Type.TITLE_PAGE_PRODUCT_HOME,label:Type.TITLE_PAGE_PRODUCT_HOME,url:Url.PAGE_PRODUCT_HOME},
342
- {value:Type.PAGE_REGISTER,title:Type.TITLE_PAGE_REGISTER,label:Type.TITLE_PAGE_REGISTER,url:Url.REGISTER},
343
- {value:Type.PAGE_REVIEW_HOME,title:Type.TITLE_PAGE_REVIEW_HOME,label:Type.TITLE_PAGE_REVIEW_HOME,url:Url.PAGE_REVIEW_HOME},
344
- {value:Type.PAGE_SERVICE,title:Type.TITLE_PAGE_SERVICE,label:Type.TITLE_PAGE_SERVICE,url:Url.PAGE_SERVICE},
345
- {value:Type.PAGE_SERVICE_HOME,title:Type.TITLE_PAGE_SERVICE_HOME,label:Type.TITLE_PAGE_SERVICE_HOME,url:Url.PAGE_SERVICE_HOME},
346
- ];
347
- };
348
- static get_stat_types = () =>{
349
- return [
350
- {title:Type.get_data_type_by_type(Type.STAT_CART),type:Type.STAT_CART,label:Type.get_data_type_by_type(Type.STAT_CART),value:Type.STAT_CART},
351
- {title:Type.get_data_type_by_type(Type.STAT_CART_ITEM),type:Type.STAT_CART_ITEM,label:Type.get_data_type_by_type(Type.STAT_CART_ITEM),value:Type.STAT_CART_ITEM},
352
- {title:Type.get_data_type_by_type(Type.STAT_CART_SUB_ITEM),type:Type.STAT_CART_SUB_ITEM,label:Type.get_data_type_by_type(Type.STAT_CART_SUB_ITEM),value:Type.STAT_CART_SUB_ITEM},
353
- {title:Type.get_data_type_by_type(Type.STAT_FAVORITE),type:Type.STAT_FAVORITE,label:Type.get_data_type_by_type(Type.STAT_FAVORITE),value:Type.STAT_FAVORITE},
354
- {title:Type.get_data_type_by_type(Type.STAT_LIKE),type:Type.STAT_LIKE,label:Type.get_data_type_by_type(Type.STAT_LIKE),value:Type.STAT_LIKE},
355
- {title:Type.get_data_type_by_type(Type.STAT_LOGIN),type:Type.STAT_LOGIN,label:Type.get_data_type_by_type(Type.STAT_LOGIN),value:Type.STAT_LOGIN},
356
- {title:Type.get_data_type_by_type(Type.STAT_ORDER),type:Type.STAT_ORDER,label:Type.get_data_type_by_type(Type.STAT_ORDER),value:Type.STAT_ORDER},
357
- {title:Type.get_data_type_by_type(Type.STAT_ORDER_ITEM),type:Type.STAT_ORDER_ITEM,label:Type.get_data_type_by_type(Type.STAT_ORDER_ITEM),value:Type.STAT_ORDER_ITEM},
358
- {title:Type.get_data_type_by_type(Type.STAT_ORDER_SUB_ITEM),type:Type.STAT_ORDER_SUB_ITEM,label:Type.get_data_type_by_type(Type.STAT_ORDER_SUB_ITEM),value:Type.STAT_ORDER_ITEM},
359
- {title:Type.get_data_type_by_type(Type.STAT_ORDER_PAYMENT),type:Type.STAT_ORDER_PAYMENT,label:Type.get_data_type_by_type(Type.STAT_ORDER_PAYMENT),value:Type.STAT_ORDER_PAYMENT},
360
- {title:Type.get_data_type_by_type(Type.STAT_REGISTER),type:Type.STAT_REGISTER,label:Type.get_data_type_by_type(Type.STAT_REGISTER),value:Type.STAT_REGISTER},
361
- {title:Type.get_data_type_by_type(Type.STAT_REVIEW),type:Type.STAT_REVIEW,label:Type.get_data_type_by_type(Type.STAT_REVIEW),value:Type.STAT_REVIEW},
362
- {title:Type.get_data_type_by_type(Type.STAT_VIEW),type:Type.STAT_VIEW,label:Type.get_data_type_by_type(Type.STAT_VIEW),value:Type.STAT_VIEW},
363
- ]
364
- };
365
- static get_data_types = () =>{
366
- return [
367
- {title:Type.TITLE_DATA_BLOG_POST,label:Type.TITLE_DATA_BLOG_POST,type:Type.DATA_BLOG_POST,value:Type.DATA_BLOG_POST},
368
- {title:Type.TITLE_DATA_CATEGORY,label:Type.TITLE_DATA_CATEGORY,type:Type.DATA_CATEGORY,value:Type.DATA_CATEGORY},
369
- {title:Type.TITLE_DATA_CONTENT,label:Type.TITLE_DATA_CONTENT,type:Type.DATA_CONTENT,value:Type.DATA_CONTENT},
370
- {title:Type.TITLE_DATA_EVENT,type:Type.DATA_EVENT,value:Type.DATA_EVENT},
371
- {title:Type.TITLE_DATA_FAQ,label:Type.TITLE_DATA_EVENT,type:Type.DATA_FAQ,value:Type.DATA_FAQ},
372
- {title:Type.TITLE_DATA_GALLERY,label:Type.TITLE_DATA_GALLERY,type:Type.DATA_GALLERY,label:Type.get_data_type_by_type(Type.DATA_GALLERY),value:Type.DATA_GALLERY},
373
- {title:Type.TITLE_DATA_USER,label:Type.TITLE_DATA_USER,type:Type.DATA_USER,value:Type.DATA_USER},
374
- {title:Type.TITLE_DATA_PAGE,label:Type.TITLE_DATA_PAGE,type:Type.DATA_PAGE,value:Type.DATA_PAGE},
375
- {title:Type.TITLE_DATA_PRODUCT,label:Type.TITLE_DATA_PAGE,type:Type.DATA_PRODUCT,value:Type.DATA_PRODUCT},
376
- {title:Type.TITLE_DATA_SERVICE,label:Type.TITLE_DATA_PRODUCT,type:Type.DATA_SERVICE,value:Type.DATA_SERVICE}
377
- ]
378
- };
379
- static get_data_type_by_type = (data_type,option) =>{
380
- data_type = data_type?data_type:"";
381
- let r_type = "";
382
- option = option ? option : {lowercase:false,plural:false,url:false};
383
- switch(data_type){
384
- case Type.DATA_APP:
385
- case Type.DATA_BLANK:
386
- case Type.DATA_BLOG_POST:
387
- case Type.DATA_CART:
388
- case Type.DATA_CART_ITEM:
389
- case Type.DATA_CART_SUB_ITEM:
390
- case Type.DATA_CATEGORY:
391
- case Type.DATA_CUSTOM_FIELD:
392
- case Type.DATA_CONTENT:
393
- case Type.DATA_EVENT:
394
- case Type.DATA_FAQ:
395
- case Type.DATA_FAVORITE:
396
- case Type.DATA_FILE:
397
- case Type.DATA_GALLERY:
398
- case Type.DATA_GROUP:
399
- case Type.DATA_LINK:
400
- case Type.DATA_ORDER:
401
- case Type.DATA_ORDER_ITEM:
402
- case Type.DATA_ORDER_SUB_ITEM:
403
- case Type.DATA_ORDER_PAYMENT:
404
- case Type.DATA_PRODUCT:
405
- case Type.DATA_IMAGE:
406
- case Type.DATA_PAGE:
407
- case Type.DATA_REVIEW:
408
- case Type.DATA_SERVICE:
409
- case Type.DATA_SECURITY:
410
- case Type.DATA_STAT:
411
- case Type.DATA_TEMPLATE:
412
- case Type.DATA_TYPE:
413
- case Type.DATA_USER:
414
- case Type.DATA_VIDEO:
415
- r_type = String(Str.get_title(data_type.replaceAll('_',' ').replaceAll('dt','').replace('biz',''))).trim();
416
- break;
417
- };
418
- if(option.plural){
419
- r_type = r_type + 's';
420
- }
421
- if(option.lowercase){
422
- r_type = r_type.toLowerCase();
423
- }
424
- if(option.url){
425
- r_type = r_type.replace(" ","_").toLowerCase();
426
- }
427
- return r_type;
428
- };
429
-
430
- static get_data_types = () =>{
431
- return [
432
- {title:Type.get_data_type_by_type(Type.DATA_BLOG_POST),type:Type.DATA_BLOG_POST,label:Type.get_data_type_by_type(Type.DATA_BLOG_POST),value:Type.DATA_BLOG_POST},
433
- {title:Type.get_data_type_by_type(Type.DATA_CATEGORY),type:Type.DATA_CATEGORY,label:Type.get_data_type_by_type(Type.DATA_CATEGORY),value:Type.DATA_CATEGORY},
434
- {title:Type.get_data_type_by_type(Type.DATA_CONTENT),type:Type.DATA_CONTENT,label:Type.get_data_type_by_type(Type.DATA_CONTENT),value:Type.DATA_CONTENT},
435
- {title:Type.get_data_type_by_type(Type.DATA_EVENT),type:Type.DATA_EVENT,label:Type.get_data_type_by_type(Type.DATA_EVENT),value:Type.DATA_EVENT},
436
- {title:Type.get_data_type_by_type(Type.DATA_GALLERY),type:Type.DATA_GALLERY,label:Type.get_data_type_by_type(Type.DATA_GALLERY),value:Type.DATA_GALLERY},
437
- {title:Type.get_data_type_by_type(Type.DATA_USER),type:Type.DATA_USER,label:Type.get_data_type_by_type(Type.DATA_USER),value:Type.DATA_USER},
438
- {title:Type.get_data_type_by_type(Type.DATA_PAGE),type:Type.DATA_PAGE,label:Type.get_data_type_by_type(Type.DATA_PAGE),value:Type.DATA_PAGE},
439
- {title:Type.get_data_type_by_type(Type.DATA_PRODUCT),type:Type.DATA_PRODUCT,label:Type.get_data_type_by_type(Type.DATA_PRODUCT),value:Type.DATA_PRODUCT},
440
- {title:Type.get_data_type_by_type(Type.DATA_SERVICE),type:Type.DATA_SERVICE,label:Type.get_data_type_by_type(Type.DATA_SERVICE),value:Type.DATA_SERVICE},
441
- {title:Type.get_data_type_by_type(Type.DATA_TYPE),type:Type.DATA_TYPE,label:Type.get_data_type_by_type(Type.DATA_TYPE),value:Type.DATA_TYPE}
442
- ]
443
- };
444
- static get_app_environments = () =>{
445
- return [
446
- {label:Type.TITLE_APP_ENV_STAGE,title:Type.TITLE_APP_ENV_TEST,type:Type.APP_ENV_TEST,value:Type.APP_ENV_TEST},
447
- {label:Type.TITLE_APP_ENV_STAGE,title:Type.TITLE_APP_ENV_STAGE,type:Type.APP_ENV_STAGE,value:Type.APP_ENV_STAGE},
448
- {label:Type.TITLE_APP_ENV_PROD,title:Type.TITLE_APP_ENV_PROD,type:Type.APP_ENV_PROD,value:Type.APP_ENV_PROD},
449
- ]
450
- };
451
- static get_app_links = () =>{
452
- return [
453
- {title:Type.TITLE_APP_LINK_TYPE_WEBSITE,label:Type.TITLE_APP_LINK_TYPE_WEBSITE,type:Type.APP_LINK_TYPE_WEBSITE,value:Type.APP_LINK_TYPE_WEBSITE},
454
- {title:Type.TITLE_APP_LINK_TYPE_GOOGLE_PLAY,label:Type.TITLE_APP_LINK_TYPE_GOOGLE_PLAY,type:Type.APP_LINK_TYPE_GOOGLE_PLAY,value:Type.APP_LINK_TYPE_GOOGLE_PLAY},
455
- {title:Type.TITLE_APP_LINK_TYPE_APPLE_STORE,label:Type.TITLE_APP_LINK_TYPE_APPLE_STORE,type:Type.APP_LINK_TYPE_APPLE_STORE,value:Type.APP_LINK_TYPE_APPLE_STORE},
456
- {title:Type.TITLE_APP_LINK_TYPE_CMS,label:Type.TITLE_APP_LINK_TYPE_CMS,type:Type.APP_LINK_TYPE_CMS,value:Type.APP_LINK_TYPE_CMS},
457
- ]
458
- };
459
- }
309
+ }
460
310
  class Stat_Logic {
461
311
  static get = (parent_data_type,parent_id,type,user_id,post_data) => {
462
312
  let new_stat = Data_Logic.get_new(Type.DATA_STAT,0,{option:
@@ -471,6 +321,24 @@ class Stat_Logic {
471
321
  }
472
322
  return new_stat;
473
323
  };
324
+ static get_stat_types = () =>{
325
+ return [
326
+ {title:Data_Logic.get_data_type_by_type(Type.STAT_CART),type:Type.STAT_CART,label:Type.get_data_type_by_type(Type.STAT_CART),value:Type.STAT_CART},
327
+ {title:Data_Logic.get_data_type_by_type(Type.STAT_CART_ITEM),type:Type.STAT_CART_ITEM,label:Type.get_data_type_by_type(Type.STAT_CART_ITEM),value:Type.STAT_CART_ITEM},
328
+ {title:Data_Logic.get_data_type_by_type(Type.STAT_CART_SUB_ITEM),type:Type.STAT_CART_SUB_ITEM,label:Type.get_data_type_by_type(Type.STAT_CART_SUB_ITEM),value:Type.STAT_CART_SUB_ITEM},
329
+ {title:Data_Logic.get_data_type_by_type(Type.STAT_FAVORITE),type:Type.STAT_FAVORITE,label:Type.get_data_type_by_type(Type.STAT_FAVORITE),value:Type.STAT_FAVORITE},
330
+ {title:Data_Logic.get_data_type_by_type(Type.STAT_LIKE),type:Type.STAT_LIKE,label:Type.get_data_type_by_type(Type.STAT_LIKE),value:Type.STAT_LIKE},
331
+ {title:Data_Logic.get_data_type_by_type(Type.STAT_LOGIN),type:Type.STAT_LOGIN,label:Type.get_data_type_by_type(Type.STAT_LOGIN),value:Type.STAT_LOGIN},
332
+ {title:Data_Logic.get_data_type_by_type(Type.STAT_ORDER),type:Type.STAT_ORDER,label:Type.get_data_type_by_type(Type.STAT_ORDER),value:Type.STAT_ORDER},
333
+ {title:Data_Logic.get_data_type_by_type(Type.STAT_ORDER_ITEM),type:Type.STAT_ORDER_ITEM,label:Type.get_data_type_by_type(Type.STAT_ORDER_ITEM),value:Type.STAT_ORDER_ITEM},
334
+ {title:Data_Logic.get_data_type_by_type(Type.STAT_ORDER_SUB_ITEM),type:Type.STAT_ORDER_SUB_ITEM,label:Type.get_data_type_by_type(Type.STAT_ORDER_SUB_ITEM),value:Type.STAT_ORDER_ITEM},
335
+ {title:Data_Logic.get_data_type_by_type(Type.STAT_ORDER_PAYMENT),type:Type.STAT_ORDER_PAYMENT,label:Type.get_data_type_by_type(Type.STAT_ORDER_PAYMENT),value:Type.STAT_ORDER_PAYMENT},
336
+ {title:Data_Logic.get_data_type_by_type(Type.STAT_REGISTER),type:Type.STAT_REGISTER,label:Type.get_data_type_by_type(Type.STAT_REGISTER),value:Type.STAT_REGISTER},
337
+ {title:Data_Logic.get_data_type_by_type(Type.STAT_REVIEW),type:Type.STAT_REVIEW,label:Type.get_data_type_by_type(Type.STAT_REVIEW),value:Type.STAT_REVIEW},
338
+ {title:Data_Logic.get_data_type_by_type(Type.STAT_VIEW),type:Type.STAT_VIEW,label:Type.get_data_type_by_type(Type.STAT_VIEW),value:Type.STAT_VIEW},
339
+ ]
340
+ };
341
+
474
342
  static filter_stat = (post_data) =>{
475
343
  let filter_stat = {};
476
344
  for(const prop in post_data) {
@@ -563,6 +431,17 @@ class Order_Logic {
563
431
  return order;
564
432
  */
565
433
  };
434
+ static get_order_statuses(){
435
+ return [
436
+ {value:Type.ORDER_STATUS_NEW,label:Type.TITLE_ORDER_STATUS_NEW,title:Type.TITLE_ORDER_STATUS_NEW},
437
+ {value:Type.ORDER_STATUS_OPEN,label:Type.TITLE_ORDER_STATUS_OPEN,title:Type.TITLE_ORDER_STATUS_OPEN},
438
+ {value:Type.ORDER_STATUS_COMPLETE,label:Type.TITLE_ORDER_STATUS_COMPLETE,title:Type.TITLE_ORDER_STATUS_COMPLETE},
439
+ {value:Type.ORDER_STATUS_RETURNED,label:Type.TITLE_ORDER_STATUS_RETURNED,title:Type.TITLE_ORDER_STATUS_RETURNED},
440
+ {value:Type.ORDER_STATUS_ON_HOLD,label:Type.TITLE_ORDER_STATUS_ON_HOLD,title:Type.TITLE_ORDER_STATUS_ON_HOLD},
441
+ {value:Type.ORDER_STATUS_CANCELLED,label:Type.TITLE_ORDER_STATUS_CANCELLED,title:Type.TITLE_ORDER_STATUS_CANCELLED},
442
+ ];
443
+ };
444
+
566
445
  /*
567
446
  static get_order_payment = (order_number,payment_method_type,payment_amount) => {
568
447
  return Data_Logic.get_new(Type.DATA_ORDER_PAYMENT,0,{data:
@@ -781,11 +660,11 @@ class Field_Logic {
781
660
  data[Type.FIELD_TITLE_URL] = Str.get_title_url(option.title);
782
661
  }
783
662
  if(option.title){
784
- data[Type.FIELD_TITLE] = Type.get_data_type_by_type(data.data_type);
663
+ data[Type.FIELD_TITLE] = Data_Logic.get_data_type_by_type(data.data_type);
785
664
  data[Type.FIELD_TITLE_URL] = Str.get_title_url(data[Type.FIELD_TITLE]);
786
665
  }
787
666
  if(option.generate_title || option.test){
788
- data[Type.FIELD_TITLE] = Type.get_data_type_by_type(data.data_type) + " " +Num.get_id(999);
667
+ data[Type.FIELD_TITLE] = Data_Logic.get_data_type_by_type(data.data_type) + " " +Num.get_id(999);
789
668
  data[Type.FIELD_TITLE_URL] = Str.get_title_url(data[Type.FIELD_TITLE]);
790
669
  }
791
670
  if(option.parent){
@@ -1082,7 +961,40 @@ class Storage {
1082
961
  }
1083
962
  }
1084
963
  }
964
+ class Page_Logic {
965
+ static get_pages(){
966
+ return [
967
+ {value:Type.PAGE_ABOUT,title:Type.TITLE_PAGE_ABOUT,label:Type.TITLE_PAGE_ABOUT,url:Url.PAGE_ABOUT},
968
+ {value:Type.PAGE_BLOG_POST,title:Type.TITLE_PAGE_BLOG_POST,label:Type.TITLE_PAGE_BLOG_POST,url:Url.PAGE_BLOG_POST},
969
+ {value:Type.PAGE_BLOG_POST_HOME,title:Type.TITLE_PAGE_BLOG_POST_HOME,label:Type.TITLE_PAGE_BLOG_POST_HOME,url:Url.PAGE_BLOG_POST_HOME},
970
+ {value:Type.PAGE_CONTACT,title:Type.TITLE_PAGE_CONTACT,label:Type.TITLE_PAGE_CONTACT,url:Url.PAGE_CONTACT},
971
+ {value:Type.PAGE_EVENT,title:Type.TITLE_PAGE_EVENT,label:Type.TITLE_PAGE_EVENT,url:Url.PAGE_EVENT},
972
+ {value:Type.PAGE_EVENT_HOME,title:Type.TITLE_PAGE_EVENT_HOME,label:Type.TITLE_PAGE_EVENT_HOME,url:Url.PAGE_EVENT_HOME},
973
+ {value:Type.PAGE_FAQ,title:Type.TITLE_PAGE_FAQ,label:Type.TITLE_PAGE_FAQ,url:Url.PAGE_FAQ},
974
+ {value:Type.PAGE_HOME,title:Type.TITLE_PAGE_HOME,label:Type.TITLE_PAGE_HOME,url:Url.PAGE_HOME},
975
+ {value:Type.PAGE_GALLERY,title:Type.TITLE_PAGE_GALLERY,label:Type.TITLE_PAGE_GALLERY,url:Url.PAGE_GALLERY},
976
+ {value:Type.PAGE_GALLERY_HOME,title:Type.TITLE_PAGE_GALLERY_HOME,label:Type.TITLE_PAGE_GALLERY_HOME,url:Url.PAGE_GALLERY_HOME},
977
+ {value:Type.PAGE_LOGIN,title:Type.TITLE_PAGE_LOGIN,label:Type.TITLE_PAGE_LOGIN,url:Url.PAGE_LOGIN},
978
+ {value:Type.PAGE_PRODUCT,title:Type.TITLE_PAGE_PRODUCT,label:Type.TITLE_PAGE_PRODUCT,url:Url.PAGE_PRODUCT},
979
+ {value:Type.PAGE_PRODUCT_HOME,title:Type.TITLE_PAGE_PRODUCT_HOME,label:Type.TITLE_PAGE_PRODUCT_HOME,url:Url.PAGE_PRODUCT_HOME},
980
+ {value:Type.PAGE_REGISTER,title:Type.TITLE_PAGE_REGISTER,label:Type.TITLE_PAGE_REGISTER,url:Url.REGISTER},
981
+ {value:Type.PAGE_REVIEW_HOME,title:Type.TITLE_PAGE_REVIEW_HOME,label:Type.TITLE_PAGE_REVIEW_HOME,url:Url.PAGE_REVIEW_HOME},
982
+ {value:Type.PAGE_SERVICE,title:Type.TITLE_PAGE_SERVICE,label:Type.TITLE_PAGE_SERVICE,url:Url.PAGE_SERVICE},
983
+ {value:Type.PAGE_SERVICE_HOME,title:Type.TITLE_PAGE_SERVICE_HOME,label:Type.TITLE_PAGE_SERVICE_HOME,url:Url.PAGE_SERVICE_HOME},
984
+ ];
985
+ };
986
+
987
+ }
1085
988
  class User_Logic {
989
+
990
+ static get_user_roles(){
991
+ return [
992
+ {value:Type.USER_ROLE_ADMIN,label:Type.TITLE_USER_ROLE_ADMIN,title:Type.TITLE_USER_ROLE_ADMIN},
993
+ {value:Type.USER_ROLE_MANAGER,label:Type.TITLE_USER_ROLE_MANAGER,title:Type.TITLE_USER_ROLE_MANAGER},
994
+ {value:Type.USER_ROLE_USER,label:Type.TITLE_USER_ROLE_USER,title:Type.TITLE_USER_ROLE_USER},
995
+ {value:Type.USER_ROLE_GUEST,label:Type.TITLE_USER_ROLE_GUEST,title:Type.TITLE_USER_ROLE_GUEST},
996
+ ];
997
+ };
1086
998
  static get_country_state_city(item){
1087
999
  let country_state_city = "";
1088
1000
  if(item.country == "United States"){
@@ -1142,42 +1054,45 @@ class User_Logic {
1142
1054
  };
1143
1055
  }
1144
1056
  class Data_Logic {
1145
- static get = (data_type,id,option) => {
1146
- return Data_Logic.get_new(data_type,id,option);
1147
- };
1148
1057
  static get_new = (data_type,id,option) => {
1149
- let data = {data_type:data_type,id:id};
1150
- option = option ? option : {};
1151
- data = Field_Logic.get_base_option(data,option);
1152
- if(option.test){
1058
+ return Data_Logic.get(data_type,id,option);
1059
+ };
1060
+ // --> options / test / test_blank / title / generate_title / count
1061
+ static get = (data_type,id,option) => {
1062
+ function get_test_data(data_type){
1153
1063
  switch(data_type)
1154
1064
  {
1155
1065
  case Type.DATA_BLOG_POST:
1156
- data = Obj.merge(Blog_Post_Logic.get_test(),data);
1066
+ return Blog_Post_Logic.get_test();
1157
1067
  break;
1158
1068
  case Type.DATA_SERVICE:
1159
- data = Obj.merge(Service_Logic.get_test(),data);
1069
+ return Service_Logic.get_test();
1160
1070
  break;
1161
1071
  case Type.DATA_EVENT:
1162
- data = Obj.merge(Event_Logic.get_test(),data);
1163
- break;
1072
+ return Event_Logic.get_test();
1073
+ breaip
1164
1074
  case Type.DATA_PRODUCT:
1165
- data = Obj.merge(Product_Logic.get_test(),data);
1075
+ return Product_Logic.get_test();
1166
1076
  break;
1167
1077
  case Type.DATA_CONTENT:
1168
1078
  case Type.DATA_CATEGORY:
1169
1079
  case Type.DATA_BLANK:
1170
- data = Obj.merge(Blank_Logic.get_test(),data);
1080
+ return Blank_Logic.get_test();
1171
1081
  break;
1172
1082
  case Type.DATA_USER:
1173
- data = Obj.merge(User_Logic.get_test(),data);
1083
+ return User_Logic.get_test();
1174
1084
  break;
1175
1085
  default:
1176
- data = Obj.merge(Blank_Logic.get_test(),data);
1177
- data.data_type = data_type;
1086
+ return Blank_Logic.get_test();
1178
1087
  break;
1179
1088
  }
1180
1089
  }
1090
+ let data = {data_type:data_type,id:id};
1091
+ option = option ? option : {count:0};
1092
+ data = Field_Logic.get_base_option(data,option);
1093
+ if(option.test){
1094
+ data = Obj.merge(get_test_data(data_type),data);
1095
+ }
1181
1096
  if(option.test_blank){
1182
1097
  for(const field in data){
1183
1098
  if(field != Type.FIELD_ID && field != Type.FIELD_DATA_TYPE){
@@ -1185,8 +1100,83 @@ class Data_Logic {
1185
1100
  }
1186
1101
  }
1187
1102
  }
1103
+ if(option.count>1){
1104
+ let items = [];
1105
+ for(let a = 0;a<option.count;a++){
1106
+ let my_title = Data_Logic.get_data_type_by_type(data_type) + " " +Num.get_id(999);
1107
+ let test_data = Obj.merge(data,get_test_data(data.data_type));
1108
+ test_data[Type.FIELD_TITLE] = my_title;
1109
+ test_data[Type.FIELD_TITLE_URL] = Str.get_title_url(my_title);
1110
+ items.push(test_data);
1111
+ }
1112
+ data = items;
1113
+ }
1188
1114
  return data;
1189
1115
  };
1116
+ static get_data_type_by_type = (data_type,option) =>{
1117
+ data_type = data_type?data_type:"";
1118
+ let r_type = "";
1119
+ option = option ? option : {lowercase:false,plural:false,url:false};
1120
+ switch(data_type){
1121
+ case Type.DATA_APP:
1122
+ case Type.DATA_BLANK:
1123
+ case Type.DATA_BLOG_POST:
1124
+ case Type.DATA_CART:
1125
+ case Type.DATA_CART_ITEM:
1126
+ case Type.DATA_CART_SUB_ITEM:
1127
+ case Type.DATA_CATEGORY:
1128
+ case Type.DATA_CUSTOM_FIELD:
1129
+ case Type.DATA_CONTENT:
1130
+ case Type.DATA_EVENT:
1131
+ case Type.DATA_FAQ:
1132
+ case Type.DATA_FAVORITE:
1133
+ case Type.DATA_FILE:
1134
+ case Type.DATA_GALLERY:
1135
+ case Type.DATA_GROUP:
1136
+ case Type.DATA_LINK:
1137
+ case Type.DATA_ORDER:
1138
+ case Type.DATA_ORDER_ITEM:
1139
+ case Type.DATA_ORDER_SUB_ITEM:
1140
+ case Type.DATA_ORDER_PAYMENT:
1141
+ case Type.DATA_PRODUCT:
1142
+ case Type.DATA_IMAGE:
1143
+ case Type.DATA_PAGE:
1144
+ case Type.DATA_REVIEW:
1145
+ case Type.DATA_SERVICE:
1146
+ case Type.DATA_SECURITY:
1147
+ case Type.DATA_STAT:
1148
+ case Type.DATA_TEMPLATE:
1149
+ case Type.DATA_TYPE:
1150
+ case Type.DATA_USER:
1151
+ case Type.DATA_VIDEO:
1152
+ r_type = String(Str.get_title(data_type.replaceAll('_',' ').replaceAll('dt','').replace('biz',''))).trim();
1153
+ break;
1154
+ };
1155
+ if(option.plural){
1156
+ r_type = r_type + 's';
1157
+ }
1158
+ if(option.lowercase){
1159
+ r_type = r_type.toLowerCase();
1160
+ }
1161
+ if(option.url){
1162
+ r_type = r_type.replace(" ","_").toLowerCase();
1163
+ }
1164
+ return r_type;
1165
+ };
1166
+ static get_data_types = () =>{
1167
+ return [
1168
+ {title:Data_Logic.get_data_type_by_type(Type.DATA_BLOG_POST),type:Type.DATA_BLOG_POST,label:Type.get_data_type_by_type(Type.DATA_BLOG_POST),value:Type.DATA_BLOG_POST},
1169
+ {title:Data_Logic.get_data_type_by_type(Type.DATA_CATEGORY),type:Type.DATA_CATEGORY,label:Type.get_data_type_by_type(Type.DATA_CATEGORY),value:Type.DATA_CATEGORY},
1170
+ {title:Data_Logic.get_data_type_by_type(Type.DATA_CONTENT),type:Type.DATA_CONTENT,label:Type.get_data_type_by_type(Type.DATA_CONTENT),value:Type.DATA_CONTENT},
1171
+ {title:Data_Logic.get_data_type_by_type(Type.DATA_EVENT),type:Type.DATA_EVENT,label:Type.get_data_type_by_type(Type.DATA_EVENT),value:Type.DATA_EVENT},
1172
+ {title:Data_Logic.get_data_type_by_type(Type.DATA_GALLERY),type:Type.DATA_GALLERY,label:Type.get_data_type_by_type(Type.DATA_GALLERY),value:Type.DATA_GALLERY},
1173
+ {title:Data_Logic.get_data_type_by_type(Type.DATA_USER),type:Type.DATA_USER,label:Type.get_data_type_by_type(Type.DATA_USER),value:Type.DATA_USER},
1174
+ {title:Data_Logic.get_data_type_by_type(Type.DATA_PAGE),type:Type.DATA_PAGE,label:Type.get_data_type_by_type(Type.DATA_PAGE),value:Type.DATA_PAGE},
1175
+ {title:Data_Logic.get_data_type_by_type(Type.DATA_PRODUCT),type:Type.DATA_PRODUCT,label:Type.get_data_type_by_type(Type.DATA_PRODUCT),value:Type.DATA_PRODUCT},
1176
+ {title:Data_Logic.get_data_type_by_type(Type.DATA_SERVICE),type:Type.DATA_SERVICE,label:Type.get_data_type_by_type(Type.DATA_SERVICE),value:Type.DATA_SERVICE},
1177
+ {title:Data_Logic.get_data_type_by_type(Type.DATA_TYPE),type:Type.DATA_TYPE,label:Type.get_data_type_by_type(Type.DATA_TYPE),value:Type.DATA_TYPE}
1178
+ ]
1179
+ };
1190
1180
  static get_search = (data_type,filter,sort_by,page_current,page_size) => {
1191
1181
  return {data_type:data_type,filter:filter,sort_by:sort_by,page_current:page_current,page_size:page_size};
1192
1182
  }
@@ -1195,20 +1185,21 @@ class Data_Logic {
1195
1185
  let type = option.type ? option.type : Type.TITLE_ITEMS;
1196
1186
  let field = option.field ? option.field : {};
1197
1187
  let title = option.title ? option.title : {};
1198
- let image = option.image ? option.image : {count:0,sort_by:Type.TITLE_SORT_BY_ASC};
1199
- let page_current = option.page_current ? option.page_current : 0;
1188
+ let image_show = option.image_show ? option.image_show : {};
1189
+ let image = option.image ? option.image : {show:false};
1190
+ let page_current = option.page_current ? option.page_current : 1;
1200
1191
  let page_size = option.page_size ? option.page_size : 0;
1201
1192
  return {type:type,field:field,title:title,image:image,page_current:page_current,page_size:page_size};
1202
1193
  }
1203
1194
  static get_search_foreign = (type,foreign_data_type,foreign_field,parent_field,option) => {
1204
1195
  option = option ? option : {};
1205
1196
  type = type ? type : Type.TITLE_ITEMS;
1206
- foreign_data_type = foreign_data_type ? foreign_data_type : Str.get_title_url(Type.get_data_type_by_type(foreign_data_type,{plural:true}));
1197
+ foreign_data_type = foreign_data_type ? foreign_data_type : Str.get_title_url(Data_Logic.get_data_type_by_type(foreign_data_type,{plural:true}));
1207
1198
  foreign_field = foreign_field ? foreign_field : Type.FIELD_PARENT_ID;
1208
1199
  parent_field = parent_field ? parent_field : parent_field;
1209
1200
  let field = option.field ? option.field : {};
1210
- let title = option.title ? option.title : Str.get_title_url(Type.get_data_type_by_type(foreign_data_type,{plural:true}));
1211
- let page_current = option.page_current ? option.page_current : 0;
1201
+ let title = option.title ? option.title : Str.get_title_url(Data_Logic.get_data_type_by_type(foreign_data_type,{plural:true}));
1202
+ let page_current = option.page_current ? option.page_current : 1;
1212
1203
  let page_size = option.page_size ? option.page_size : 0;
1213
1204
  return {type:type,foreign_data_type:foreign_data_type,foreign_field:foreign_field,parent_field:parent_field,type:type,field:field,title:title,page_current:page_current,page_size:page_size};
1214
1205
  }
@@ -1217,7 +1208,7 @@ class Data_Logic {
1217
1208
  type = type ? type : Type.TITLE_ITEMS;
1218
1209
  search = search ? search : Data_Logic.get_search(Type.DATA_BLANK,{},{},1,0);
1219
1210
  let field = option.field ? option.field : {};
1220
- let title = option.title ? option.title : Str.get_title_url(Type.get_data_type_by_type(search.data_type,{plural:true}));
1211
+ let title = option.title ? option.title : Str.get_title_url(Data_Logic.get_data_type_by_type(search.data_type,{plural:true}));
1221
1212
  let page_current = option.page_current ? option.page_current : 1;
1222
1213
  let page_size = option.page_size ? option.page_size : 0;
1223
1214
  return {type:type,search:search,field:field,title:title,page_current:page_current,page_size:page_size};
@@ -1291,6 +1282,21 @@ static get = (title,user_id,type) =>{
1291
1282
  var app_id_url='?app_id='+app_id;
1292
1283
  return host+"/"+url+app_id_url + param;
1293
1284
  };
1285
+ static get_app_environments = () =>{
1286
+ return [
1287
+ {label:Type.TITLE_APP_ENV_STAGE,title:Type.TITLE_APP_ENV_TEST,type:Type.APP_ENV_TEST,value:Type.APP_ENV_TEST},
1288
+ {label:Type.TITLE_APP_ENV_STAGE,title:Type.TITLE_APP_ENV_STAGE,type:Type.APP_ENV_STAGE,value:Type.APP_ENV_STAGE},
1289
+ {label:Type.TITLE_APP_ENV_PROD,title:Type.TITLE_APP_ENV_PROD,type:Type.APP_ENV_PROD,value:Type.APP_ENV_PROD},
1290
+ ]
1291
+ };
1292
+ static get_app_links = () =>{
1293
+ return [
1294
+ {title:Type.TITLE_APP_LINK_TYPE_WEBSITE,label:Type.TITLE_APP_LINK_TYPE_WEBSITE,type:Type.APP_LINK_TYPE_WEBSITE,value:Type.APP_LINK_TYPE_WEBSITE},
1295
+ {title:Type.TITLE_APP_LINK_TYPE_GOOGLE_PLAY,label:Type.TITLE_APP_LINK_TYPE_GOOGLE_PLAY,type:Type.APP_LINK_TYPE_GOOGLE_PLAY,value:Type.APP_LINK_TYPE_GOOGLE_PLAY},
1296
+ {title:Type.TITLE_APP_LINK_TYPE_APPLE_STORE,label:Type.TITLE_APP_LINK_TYPE_APPLE_STORE,type:Type.APP_LINK_TYPE_APPLE_STORE,value:Type.APP_LINK_TYPE_APPLE_STORE},
1297
+ {title:Type.TITLE_APP_LINK_TYPE_CMS,label:Type.TITLE_APP_LINK_TYPE_CMS,type:Type.APP_LINK_TYPE_CMS,value:Type.APP_LINK_TYPE_CMS},
1298
+ ]
1299
+ };
1294
1300
  static get_search_query(search){
1295
1301
  let url = "";
1296
1302
  if(search.data_type){
@@ -1428,11 +1434,7 @@ class Url {
1428
1434
  //cms
1429
1435
  static CMS_DEMO_POST="cms/demo_post";
1430
1436
  static CMS_GET="cms/get";
1431
- static CMS_POST="cms/post";
1432
- static CMS_ITEM_PARENT_TOP_TYPE_CATEGORY="cms/item_parent_top_type_category";
1433
1437
  static CMS_SEARCH_ITEM_TYPE_CATEGORY="cms/search_item_type_category";
1434
- //content
1435
- static CONTENT="item/content";
1436
1438
  //crud
1437
1439
  static COPY="main/crud/copy";
1438
1440
  static DELETE="main/crud/delete";
@@ -1517,6 +1519,7 @@ module.exports = {
1517
1519
  Image_Logic,
1518
1520
  Message,
1519
1521
  Order_Logic,
1522
+ Page_Logic,
1520
1523
  Product_Logic,
1521
1524
  Review_Logic,
1522
1525
  Service_Logic,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "biz9-logic",
3
- "version": "10.0.48",
3
+ "version": "10.0.58",
4
4
  "main": "index.js",
5
5
  "scripts": {
6
6
  "test": "echo \"Error: no test specified\" && exit 1"
package/test.js CHANGED
@@ -37,7 +37,7 @@ describe("connect", () => {
37
37
  //let join = App_Logic.get_join({},'','',{});
38
38
  // -->
39
39
  //let data = Data_Logic.get(Type.DATA_BLANK,0,{test:true});
40
- let data = Data_Logic.get(Type.DATA_PRODUCT,0,{test:true,parent:parent,data:{title:'cool',title_url:'cool'}});
40
+ let data = Data_Logic.get(Type.DATA_PRODUCT,0,{test:true,count:1,parent:parent,data:{title:'cool',title_url:'cool'}});
41
41
  //let data = Data_Logic.get(Type.DATA_BLANK,0,{title:'cool bean',data:{field_1:'field_1',field_2:'field_2'}});
42
42
  //let data = Data_Logic.get(Type.DATA_BLANK,0,{title:'cool bean'});
43
43
  //let data = Data_Logic.get(Type.DATA_BLANK,0,{data:{field_1:'field_1',field_2:'field_2'}});