utils.tin 2.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394
  1. #nop vim: set filetype=tt:;
  2. /*
  3. 模块名称:框架依赖的工具函数
  4. 模块说明:本文件属于框架代码的一部分,不建议修改。如有需求请在 GitHub 发 issue 或者 PR
  5. 版权声明:本文件属于 PaoTin++ 的一部分
  6. ===========
  7. PaoTin++ © 2020~2023 的所有版权均由担子炮(dzp <danzipao@gmail.com>) 享有并保留一切法律权利
  8. 你可以在遵照 GPLv3 协议的基础之上使用、修改及重新分发本程序。
  9. ===========
  10. */
  11. #func {existsSession} {
  12. #local session {%1};
  13. #if { !@existsFunction{$session} && {@{$session}{true}} == {true} } {
  14. #return 1;
  15. };
  16. #else {
  17. #return 0;
  18. };
  19. };
  20. #func {existsAlias} {
  21. #local pName {%1};
  22. #local pClass {%2};
  23. #info alias save;
  24. #local idx {};
  25. #foreach {*{info[ALIASES][]}} {idx} {
  26. #local name {$info[ALIASES][$idx][arg1]};
  27. #local class {$info[ALIASES][$idx][class]};
  28. #if { "$name" == "$pName" && ( "$pClass" == "" || "$class" == "$pClass" ) } {
  29. #return 1;
  30. };
  31. };
  32. #return 0;
  33. };
  34. #func {existsFunction} {
  35. #local pName {%1};
  36. #local pClass {%2};
  37. #info function save;
  38. #local idx {};
  39. #foreach {*{info[FUNCTIONS][]}} {idx} {
  40. #local name {$info[FUNCTIONS][$idx][arg1]};
  41. #local class {$info[FUNCTIONS][$idx][class]};
  42. #if { "$name" == "$pName" && ( "$pClass" == "" || "$class" == "$pClass" ) } {
  43. #return 1;
  44. };
  45. };
  46. #return 0;
  47. };
  48. #func {existsFile} {
  49. #local file {%1};
  50. #local output {};
  51. #script output {test -f $file && echo 1 || test -f var/$file && echo 1 || echo 0};
  52. #return $output[1];
  53. };
  54. #func {existsJobPlugin} {
  55. #local job {%1};
  56. #return {@existsPlugin{job/$job}};
  57. };
  58. #func {existsPlugin} {
  59. #local plugin {%1};
  60. #return {@existsFile{plugins/$plugin.tin}};
  61. };
  62. #func {mkdir} {
  63. #local dir {%1};
  64. #local output {};
  65. #script output {mkdir -p $dir 2>/dev/null && test -d $dir && echo 1 || echo 0};
  66. #return $output[1];
  67. };
  68. #func {uuid} {
  69. #local now {};
  70. #local random {};
  71. #math random {1d1000};
  72. #format random {%%03d} {$random};
  73. #format now {%U};
  74. #return {${now}.$random};
  75. };