Non puoi selezionare più di 25 argomenti Gli argomenti devono iniziare con una lettera o un numero, possono includere trattini ('-') e possono essere lunghi fino a 35 caratteri.
 
 
 

235 righe
6.9 KiB

  1. {
  2. "exec": {
  3. "steps": [
  4. {
  5. "name": "query",
  6. "module": "dbconnector",
  7. "action": "single",
  8. "options": {
  9. "connection": "authdb",
  10. "sql": {
  11. "type": "select",
  12. "columns": [
  13. {
  14. "table": "users",
  15. "column": "id"
  16. }
  17. ],
  18. "params": [],
  19. "table": {
  20. "name": "users"
  21. },
  22. "primary": "id",
  23. "joins": [],
  24. "wheres": {
  25. "condition": "AND",
  26. "rules": [
  27. {
  28. "id": "users.email",
  29. "field": "users.email",
  30. "type": "string",
  31. "operator": "equal",
  32. "value": "admin@prelub.com",
  33. "data": {
  34. "table": "users",
  35. "column": "email",
  36. "type": "text",
  37. "columnObj": {
  38. "type": "string",
  39. "maxLength": 255,
  40. "primary": false,
  41. "unique": false,
  42. "nullable": true,
  43. "name": "email"
  44. }
  45. },
  46. "operation": "="
  47. }
  48. ],
  49. "conditional": null,
  50. "valid": true
  51. },
  52. "query": "select `id` from `users` where `users`.`email` = ?"
  53. }
  54. },
  55. "output": true,
  56. "meta": [
  57. {
  58. "type": "number",
  59. "name": "id"
  60. }
  61. ],
  62. "outputType": "object"
  63. },
  64. {
  65. "name": "",
  66. "module": "core",
  67. "action": "condition",
  68. "options": {
  69. "if": "{{!query}}",
  70. "then": {
  71. "steps": [
  72. {
  73. "name": "pwd",
  74. "module": "core",
  75. "action": "setvalue",
  76. "options": {
  77. "key": "g_pwd",
  78. "value": "P@$$w0rd"
  79. },
  80. "meta": [],
  81. "outputType": "text"
  82. },
  83. {
  84. "name": "hash",
  85. "module": "crypto",
  86. "action": "passwordHash",
  87. "options": {
  88. "password": "{{pwd}}"
  89. },
  90. "outputType": "text",
  91. "metaData": {
  92. "hashPassword": {
  93. "name": "pwd",
  94. "type": "text"
  95. }
  96. },
  97. "output": true
  98. },
  99. {
  100. "name": "insert",
  101. "module": "dbupdater",
  102. "action": "insert",
  103. "options": {
  104. "connection": "authdb",
  105. "sql": {
  106. "type": "insert",
  107. "values": [
  108. {
  109. "table": "users",
  110. "column": "pwd",
  111. "type": "text",
  112. "value": "{{hash}}"
  113. },
  114. {
  115. "table": "users",
  116. "column": "validated",
  117. "type": "boolean",
  118. "value": "{{true}}"
  119. },
  120. {
  121. "table": "users",
  122. "column": "firstname",
  123. "type": "text",
  124. "value": "System"
  125. },
  126. {
  127. "table": "users",
  128. "column": "lastname",
  129. "type": "text",
  130. "value": "Admin"
  131. },
  132. {
  133. "table": "users",
  134. "column": "email",
  135. "type": "text",
  136. "value": "admin@prelub.com"
  137. }
  138. ],
  139. "table": "users",
  140. "returning": "id",
  141. "query": "insert into `users` (`email`, `firstname`, `lastname`, `pwd`, `validated`) values (?, ?, ?, ?, ?)",
  142. "params": [
  143. {
  144. "name": ":P1",
  145. "type": "expression",
  146. "value": "{{hash}}",
  147. "test": ""
  148. },
  149. {
  150. "name": ":P2",
  151. "type": "expression",
  152. "value": "{{true}}",
  153. "test": ""
  154. }
  155. ]
  156. }
  157. },
  158. "meta": [
  159. {
  160. "name": "identity",
  161. "type": "number"
  162. },
  163. {
  164. "name": "affected",
  165. "type": "number"
  166. }
  167. ],
  168. "output": true
  169. },
  170. {
  171. "name": "insert1",
  172. "module": "dbupdater",
  173. "action": "insert",
  174. "options": {
  175. "connection": "authdb",
  176. "sql": {
  177. "type": "insert",
  178. "values": [
  179. {
  180. "table": "xuserrole",
  181. "column": "userid",
  182. "type": "number",
  183. "value": "{{insert.identity}}",
  184. "recid": 1
  185. },
  186. {
  187. "table": "xuserrole",
  188. "column": "roleid",
  189. "type": "number",
  190. "value": "1",
  191. "recid": 2
  192. }
  193. ],
  194. "table": "xuserrole",
  195. "returning": "id",
  196. "query": "insert into `xuserrole` (`roleid`, `userid`) values (?, ?)",
  197. "params": [
  198. {
  199. "name": ":P1",
  200. "type": "expression",
  201. "value": "{{insert.identity}}",
  202. "test": ""
  203. }
  204. ]
  205. }
  206. },
  207. "meta": [
  208. {
  209. "name": "identity",
  210. "type": "number"
  211. },
  212. {
  213. "name": "affected",
  214. "type": "number"
  215. }
  216. ],
  217. "output": true
  218. }
  219. ]
  220. }
  221. },
  222. "outputType": "boolean",
  223. "metaData": {
  224. "condition": {
  225. "name": "query",
  226. "type": "object"
  227. }
  228. }
  229. }
  230. ]
  231. },
  232. "usedModules": {
  233. "argon2": "^0.30.2"
  234. }
  235. }