Compare commits

...

6 Commits

Author SHA1 Message Date
Alexey Chubar c47306b609 fixed PROP macro losing quotation marks from string props
Publish PHP Package / docker (push) Successful in 8s Details
2024-07-09 11:50:00 +03:00
Pavel Shevaev 6d6e9e6e7b Добавить .gitea/workflows/build_composer.yaml
Publish PHP Package / docker (push) Successful in 4s Details
2024-02-13 14:55:39 +03:00
wrenge acebcca92b VCLASSID implemented 2023-11-14 17:40:46 +03:00
Pavel Shevaev 861c5d4608 Making PHPStan happy 2023-08-16 14:12:22 +03:00
wrenge 2d0129267b Merge branch 'master' of https://git.bit5.ru/bit/jsm_macros 2023-07-06 10:03:58 +03:00
wrenge 4c4d1af1a5 New WEEK_DATE macro 2023-07-06 10:02:58 +03:00
2 changed files with 94 additions and 9 deletions

View File

@ -0,0 +1,29 @@
name: Publish PHP Package
on:
push:
tags:
- 'v*'
jobs:
docker:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Get tag name
run: echo "TAG=${GITHUB_REF#refs/*/}" >> $GITHUB_ENV
- name: zip and send
run: |
ls -la
apt-get update -y
apt-get install -y zip
cd ../
zip -r ${{ gitea.event.repository.name }}.zip ${{ gitea.event.repository.name }} -x '*.git*'
curl -v \
--user composer-pbl:${{ secrets.COMPOSER_PSWD }} \
--upload-file ${{ gitea.event.repository.name }}.zip \
https://git.bit5.ru/api/packages/bit/composer?version=${{ env.TAG }}

View File

@ -1,5 +1,21 @@
<?php
/**
* @global
*/
function macro_VCLASSID($proc, $class)
{
return '"$id" : ' . constant("$class::CLASS_ID");
}
/**
* @global
*/
function macro_VCLASS($proc, $class)
{
return '"__vclass" : ' . constant("$class::CLASS_ID");
}
/**
* @global
*/
@ -31,6 +47,51 @@ function macro_INTERVAL($proc, $spec)
return $sec;
}
/**
* @global
*/
function macro_WEEK_DATE($proc, $spec)
{
$parts = explode(" ", $spec);
$dow_str = $parts[0];
$time_str = $parts[1];
$day = 0;
switch ($dow_str) {
case 'MONDAY':
$day = 0;
break;
case 'TUESDAY':
$day = 1;
break;
case 'WEDNESDAY':
$day = 2;
break;
case 'THURSDAY':
$day = 3;
break;
case 'FRIDAY':
$day = 4;
break;
case 'SATURDAY':
$day = 5;
break;
case 'SUNDAY':
$day = 6;
break;
default:
throw new Exception("Bad day of week: $spec");
}
$stamp = strtotime($time_str);
if($stamp === false)
throw new Exception("Bad time: $spec");
$stamp += $day * 24 * 60 * 60;
return $stamp;
}
/**
* @global
*/
@ -150,15 +211,10 @@ function macro_IS_DEV($jsm)
*/
function macro_PROP($jsm, $expr)
{
return \taskman\get($expr);
}
/**
* @global
*/
function macro_VCLASS($proc, $class)
{
return '"vclass__" : ' . constant("$class::CLASS_ID");
$res = \taskman\get($expr);
if(is_string($res))
return '"'.$res.'"';
return $res;
}
/**