Compare commits
62 Commits
upgrade_to
...
v27.0.0.OS
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
6d2244ef29 | ||
|
|
3cf5e4ef91 | ||
|
|
b8299b5c57 | ||
|
|
7baec8faf2 | ||
|
|
d897b1ae3e | ||
|
|
d0740e66b4 | ||
|
|
c1f93ae663 | ||
|
|
52358d27b0 | ||
|
|
87941971bd | ||
|
|
2ff6a1ba8d | ||
|
|
e700c4f6ac | ||
|
|
7bc44d3dd5 | ||
|
|
7a76f52f5a | ||
|
|
648901b104 | ||
|
|
dd9e904378 | ||
|
|
f87139ef41 | ||
|
|
df7ca7e924 | ||
|
|
5bc3fb2588 | ||
|
|
016fbe0f3b | ||
|
|
d0be9c988b | ||
|
|
7f20318092 | ||
|
|
89e5a54550 | ||
|
|
86a3ae485f | ||
|
|
a2ca93db83 | ||
|
|
0f7530024e | ||
|
|
854e1038c6 | ||
|
|
b68401efeb | ||
|
|
c366248434 | ||
|
|
1e50da36e6 | ||
|
|
12799bef9c | ||
|
|
d91283912e | ||
|
|
a7ef560f79 | ||
|
|
ae78c85806 | ||
|
|
7453a58aad | ||
|
|
1ca9cc0ed6 | ||
|
|
60c92d7935 | ||
|
|
bb274de175 | ||
|
|
91bb1d2d8a | ||
|
|
526ee66e2d | ||
|
|
0d92c820f7 | ||
|
|
15a45150cb | ||
|
|
984b0fac5c | ||
|
|
08a52d216c | ||
|
|
61abe71314 | ||
|
|
cae28f03a5 | ||
|
|
4a4d895592 | ||
|
|
c05e815c17 | ||
|
|
6e77aa99c4 | ||
|
|
fd99ea299e | ||
|
|
c3344b99fa | ||
|
|
ca58e75556 | ||
|
|
bf43ed8730 | ||
|
|
b922a48141 | ||
|
|
26e55e8644 | ||
|
|
af9b9119ef | ||
|
|
afa345f374 | ||
|
|
a3d6430102 | ||
|
|
e625f6013a | ||
|
|
577ed9938f | ||
|
|
2ade4d9a4a | ||
|
|
a55c56215a | ||
|
|
16014bb38e |
37
.gitignore
vendored
37
.gitignore
vendored
@@ -1,12 +1,25 @@
|
||||
/.settings
|
||||
/.buildpath
|
||||
/.project
|
||||
/.idea/
|
||||
/build
|
||||
/deployment/clients/dev/data/
|
||||
/deployment/clients/test/data/
|
||||
/deployment/clients/local/data/
|
||||
/.vagrant
|
||||
/app/config.php
|
||||
/app/data/*
|
||||
.gitkeep
|
||||
.settings
|
||||
.buildpath
|
||||
.project
|
||||
.idea/
|
||||
app/config.php
|
||||
build
|
||||
deployment/clients/dev/data/
|
||||
deployment/clients/test/data/
|
||||
deployment/clients/local/data/
|
||||
.vagrant
|
||||
app/config.php
|
||||
app/data/*
|
||||
cache.properties
|
||||
node_modules/*
|
||||
web/dist/*.map
|
||||
web/admin/dist/*.map
|
||||
web/modules/dist/*.map
|
||||
docker/development/db_data
|
||||
docker/prod/db_data
|
||||
docker/prod/app_data
|
||||
docker/testing/db_data
|
||||
test/frontend/cypress/videos/*
|
||||
test/frontend/cypress/screenshots/*
|
||||
test/frontend/node_modules/*
|
||||
|
||||
|
||||
@@ -1,7 +1,11 @@
|
||||
services:
|
||||
- mysql
|
||||
addons:
|
||||
apt:
|
||||
packages:
|
||||
- ant
|
||||
before_script:
|
||||
- echo "USE mysql;\nUPDATE user SET password=PASSWORD('dev') WHERE user='root';\nFLUSH PRIVILEGES;\n" | mysql -u root
|
||||
- echo "USE mysql;\nUPDATE user SET authentication_string=PASSWORD('dev') WHERE user='root';\nFLUSH PRIVILEGES;\n" | mysql -u root
|
||||
install:
|
||||
#- rm $TRAVIS_BUILD_DIR/tools/phpunit
|
||||
#- composer require --dev phpunit/phpunit ~6.5.5
|
||||
@@ -10,6 +14,8 @@ install:
|
||||
script: ant build-ci
|
||||
language: php
|
||||
php:
|
||||
- '5.6'
|
||||
- '7.0'
|
||||
- '7.1'
|
||||
- '7.2'
|
||||
after_failure: "cat /tmp/icehrm.test.log"
|
||||
|
||||
64
Dockerfile
Normal file
64
Dockerfile
Normal file
@@ -0,0 +1,64 @@
|
||||
FROM alpine:3.11
|
||||
LABEL Maintainer="Thilina, Pituwala <thilina@icehrm.com>" \
|
||||
Description="IceHrm Docker Container with Nginx 1.16 & PHP-FPM 7.3 based on Alpine Linux."
|
||||
|
||||
ENV PHPIZE_DEPS \
|
||||
autoconf \
|
||||
dpkg-dev dpkg \
|
||||
file \
|
||||
g++ \
|
||||
gcc \
|
||||
libc-dev \
|
||||
make \
|
||||
pkgconf \
|
||||
musl-dev \
|
||||
re2c \
|
||||
php7-dev \
|
||||
php7-pear
|
||||
|
||||
RUN apk --no-cache add bind-tools
|
||||
|
||||
# Install packages
|
||||
RUN apk --no-cache add php php-fpm php-opcache php-mysqli php-json php-openssl php-curl \
|
||||
php-zlib php-xml php-phar php-intl php-dom php-xmlreader php-ctype php-session \
|
||||
php-mbstring php-gd php7-ldap nginx supervisor curl
|
||||
|
||||
# Install xdebug
|
||||
RUN apk add --no-cache $PHPIZE_DEPS \
|
||||
&& pecl install xdebug-2.9.5
|
||||
|
||||
# Configure nginx
|
||||
COPY docker/development/config/nginx.conf /etc/nginx/nginx.conf
|
||||
# Remove default server definition
|
||||
RUN rm /etc/nginx/conf.d/default.conf
|
||||
|
||||
# Configure PHP-FPM
|
||||
COPY docker/development/config/fpm-pool.conf /etc/php7/php-fpm.d/www.conf
|
||||
COPY docker/development/config/php.ini /etc/php7/conf.d/custom.ini
|
||||
|
||||
# Configure supervisord
|
||||
COPY docker/development/config/supervisord.conf /etc/supervisor/conf.d/supervisord.conf
|
||||
|
||||
# Setup document root
|
||||
RUN mkdir -p /var/www/html
|
||||
|
||||
# Make sure files/folders needed by the processes are accessable when they run under the nobody user
|
||||
RUN chown -R nobody.nobody /var/www/html && \
|
||||
chown -R nobody.nobody /run && \
|
||||
chown -R nobody.nobody /var/lib/nginx && \
|
||||
chown -R nobody.nobody /var/log/nginx
|
||||
|
||||
# Switch to use a non-root user from here on
|
||||
USER nobody
|
||||
|
||||
# Add application
|
||||
WORKDIR /var/www/html
|
||||
|
||||
# Expose the port nginx is reachable on
|
||||
EXPOSE 8080
|
||||
|
||||
# Let supervisord start nginx & php-fpm
|
||||
CMD ["/usr/bin/supervisord", "-c", "/etc/supervisor/conf.d/supervisord.conf"]
|
||||
|
||||
# Configure a healthcheck to validate that everything is up&running
|
||||
HEALTHCHECK --timeout=10s CMD curl --silent --fail http://127.0.0.1:8080/fpm-ping
|
||||
49
Dockerfile-prod
Normal file
49
Dockerfile-prod
Normal file
@@ -0,0 +1,49 @@
|
||||
FROM alpine:3.11
|
||||
LABEL Maintainer="Thilina, Pituwala <thilina@icehrm.com>" \
|
||||
Description="IceHrm Docker Container with Nginx 1.16 & PHP-FPM 7.3 based on Alpine Linux."
|
||||
|
||||
# Install packages
|
||||
RUN apk --no-cache add php7 php7-fpm php7-opcache php7-mysqli php7-json php7-openssl php7-curl \
|
||||
php7-zlib php7-xml php7-phar php7-intl php7-dom php7-xmlreader php7-ctype php7-session \
|
||||
php7-mbstring php7-gd php7-ldap nginx supervisor curl
|
||||
|
||||
# Configure nginx
|
||||
COPY docker/prod/config/nginx.conf /etc/nginx/nginx.conf
|
||||
# Remove default server definition
|
||||
RUN rm /etc/nginx/conf.d/default.conf
|
||||
|
||||
# Configure PHP-FPM
|
||||
COPY docker/prod/config/fpm-pool.conf /etc/php7/php-fpm.d/www.conf
|
||||
COPY docker/prod/config/php.ini /etc/php7/conf.d/custom.ini
|
||||
|
||||
# Configure supervisord
|
||||
COPY docker/prod/config/supervisord.conf /etc/supervisor/conf.d/supervisord.conf
|
||||
|
||||
# Setup document root
|
||||
RUN mkdir -p /var/www/html
|
||||
|
||||
# Make sure files/folders needed by the processes are accessable when they run under the nobody user
|
||||
RUN chown -R nobody.nobody /var/www/html && \
|
||||
chown -R nobody.nobody /run && \
|
||||
chown -R nobody.nobody /var/lib/nginx && \
|
||||
chown -R nobody.nobody /var/log/nginx
|
||||
|
||||
# Switch to use a non-root user from here on
|
||||
USER nobody
|
||||
|
||||
# Add application
|
||||
WORKDIR /var/www/html
|
||||
COPY --chown=nobody ./app /var/www/html/app/
|
||||
COPY --chown=nobody ./core /var/www/html/core/
|
||||
COPY --chown=nobody ./web /var/www/html/web/
|
||||
COPY --chown=nobody ./index.php /var/www/html/index.php
|
||||
COPY --chown=nobody ./docker/prod/config/config.php /var/www/html/app/config.php
|
||||
|
||||
# Expose the port nginx is reachable on
|
||||
EXPOSE 8070
|
||||
|
||||
# Let supervisord start nginx & php-fpm
|
||||
CMD ["/usr/bin/supervisord", "-c", "/etc/supervisor/conf.d/supervisord.conf"]
|
||||
|
||||
# Configure a healthcheck to validate that everything is up&running
|
||||
HEALTHCHECK --timeout=10s CMD curl --silent --fail http://127.0.0.1:8071/fpm-ping
|
||||
50
Dockerfile-testing
Normal file
50
Dockerfile-testing
Normal file
@@ -0,0 +1,50 @@
|
||||
FROM alpine:3.11
|
||||
LABEL Maintainer="Thilina, Pituwala <thilina@icehrm.com>" \
|
||||
Description="IceHrm Docker Container with Nginx 1.16 & PHP-FPM 7.3 based on Alpine Linux."
|
||||
|
||||
# Install packages
|
||||
RUN apk --no-cache add php7 php7-fpm php7-opcache php7-mysqli php7-json php7-openssl php7-curl \
|
||||
php7-zlib php7-xml php7-phar php7-intl php7-dom php7-xmlreader php7-ctype php7-session \
|
||||
php7-mbstring php7-gd php7-ldap nginx supervisor curl
|
||||
|
||||
# Configure nginx
|
||||
COPY docker/testing/config/nginx.conf /etc/nginx/nginx.conf
|
||||
# Remove default server definition
|
||||
RUN rm /etc/nginx/conf.d/default.conf
|
||||
|
||||
# Configure PHP-FPM
|
||||
COPY docker/testing/config/fpm-pool.conf /etc/php7/php-fpm.d/www.conf
|
||||
COPY docker/testing/config/php.ini /etc/php7/conf.d/custom.ini
|
||||
|
||||
# Configure supervisord
|
||||
COPY docker/testing/config/supervisord.conf /etc/supervisor/conf.d/supervisord.conf
|
||||
|
||||
# Setup document root
|
||||
RUN mkdir -p /var/www/html
|
||||
|
||||
# Make sure files/folders needed by the processes are accessable when they run under the nobody user
|
||||
RUN chown -R nobody.nobody /var/www/html && \
|
||||
chown -R nobody.nobody /run && \
|
||||
chown -R nobody.nobody /var/lib/nginx && \
|
||||
chown -R nobody.nobody /var/log/nginx
|
||||
|
||||
# Switch to use a non-root user from here on
|
||||
USER nobody
|
||||
|
||||
# Add application
|
||||
WORKDIR /var/www/html
|
||||
COPY --chown=nobody ./app /var/www/html/app/
|
||||
COPY --chown=nobody ./core /var/www/html/core/
|
||||
COPY --chown=nobody ./web /var/www/html/web/
|
||||
COPY --chown=nobody ./index.php /var/www/html/index.php
|
||||
COPY --chown=nobody ./docker/testing/config/config.php /var/www/html/app/config.php
|
||||
COPY --chown=nobody ./docker/testing/config/reset-db.php /var/www/html/app/reset-db.php
|
||||
|
||||
# Expose the port nginx is reachable on
|
||||
EXPOSE 8090
|
||||
|
||||
# Let supervisord start nginx & php-fpm
|
||||
CMD ["/usr/bin/supervisord", "-c", "/etc/supervisor/conf.d/supervisord.conf"]
|
||||
|
||||
# Configure a healthcheck to validate that everything is up&running
|
||||
HEALTHCHECK --timeout=10s CMD curl --silent --fail http://127.0.0.1:8091/fpm-ping
|
||||
32
Dockerfile-worker
Normal file
32
Dockerfile-worker
Normal file
@@ -0,0 +1,32 @@
|
||||
FROM alpine:3.11
|
||||
LABEL Maintainer="Thilina, Pituwala <thilina@icehrm.com>" \
|
||||
Description="IceHrm Docker Container with Nginx 1.16 & PHP-FPM 7.3 based on Alpine Linux."
|
||||
|
||||
ARG EXE_ENV
|
||||
|
||||
RUN apk upgrade --available
|
||||
|
||||
RUN apk add --no-cache tini openrc busybox-initscripts
|
||||
|
||||
|
||||
# Install packages
|
||||
RUN apk --no-cache add php7 php7-opcache php7-mysqli php7-json php7-openssl php7-curl \
|
||||
php7-zlib php7-xml php7-phar php7-intl php7-dom php7-xmlreader php7-ctype php7-session \
|
||||
php7-mbstring php7-gd curl
|
||||
|
||||
# Setup document root
|
||||
RUN mkdir -p /var/www/html
|
||||
|
||||
# Add application
|
||||
WORKDIR /var/www/html
|
||||
COPY ./app /var/www/html/app/
|
||||
COPY ./core /var/www/html/core/
|
||||
COPY ./web /var/www/html/web/
|
||||
COPY ./index.php /var/www/html/index.php
|
||||
COPY ./docker/$EXE_ENV/config/config.php /var/www/html/app/config.php
|
||||
|
||||
|
||||
COPY ./docker/worker/config/ice-cron /etc/crontabs/root
|
||||
RUN rm /var/www/html/app/data/icehrm.log
|
||||
|
||||
CMD /usr/sbin/crond -f -l 8
|
||||
29
Vagrantfile
vendored
29
Vagrantfile
vendored
@@ -1,29 +0,0 @@
|
||||
# -*- mode: ruby -*-
|
||||
# vi: set ft=ruby :
|
||||
|
||||
Vagrant.configure(2) do |config|
|
||||
config.vm.box = "thilinah/jessie64_isotope"
|
||||
config.vm.box_version = "0.0.1"
|
||||
config.vm.network "private_network", ip: "192.168.40.40"
|
||||
config.vm.synced_folder ".", "/vagrant", type: "nfs"
|
||||
|
||||
config.vm.provider "virtualbox" do |vb|
|
||||
vb.memory = "1024"
|
||||
vb.cpus = "2"
|
||||
vb.name = "icehrm.open"
|
||||
end
|
||||
|
||||
|
||||
config.vm.provision "shell", inline: <<-SHELL
|
||||
sudo apt-get update
|
||||
SHELL
|
||||
|
||||
config.vm.hostname = "icehrm.open"
|
||||
|
||||
config.hostsupdater.aliases = [
|
||||
"app.dev",
|
||||
"app.app.dev",
|
||||
"clients.app.dev"
|
||||
]
|
||||
|
||||
end
|
||||
54
build.xml
54
build.xml
@@ -1,5 +1,5 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project name="icehrm-pro" default="build">
|
||||
<project name="icehrm" default="build">
|
||||
<!-- By default, we assume all tools to be on the $PATH -->
|
||||
<property name="toolsdir" value="${basedir}/tools/"/>
|
||||
<property name="destination" value="${basedir}/build/app"/>
|
||||
@@ -11,7 +11,7 @@
|
||||
<property name="installpath" value="/var/www/apps.gamonoid.com/icehrm-open-core"/>
|
||||
|
||||
<target name="build-ci"
|
||||
depends="prepare,lint,phpcs,copyapp,phpunit"
|
||||
depends="prepare,lint,phpcs-ci"
|
||||
description=""/>
|
||||
|
||||
<target name="build"
|
||||
@@ -19,11 +19,11 @@
|
||||
description=""/>
|
||||
|
||||
<target name="buildlocal"
|
||||
depends="prepare,lint,phpcs,copyapp,phpunit"
|
||||
depends="prepare,lint,phpcs,copyapp"
|
||||
description=""/>
|
||||
|
||||
<target name="releaseapp"
|
||||
depends="prepare,lint,copyapp,phpunit,release"
|
||||
depends="prepare,lint,copyapp,release"
|
||||
description=""/>
|
||||
|
||||
<target name="clean"
|
||||
@@ -80,7 +80,6 @@
|
||||
<exec executable="${toolsdir}phploc">
|
||||
<arg value="--count-tests" />
|
||||
<arg path="${basedir}/core/src" />
|
||||
<arg path="${basedir}/test" />
|
||||
</exec>
|
||||
</target>
|
||||
|
||||
@@ -94,7 +93,6 @@
|
||||
<arg value="--log-xml" />
|
||||
<arg path="${basedir}/build/logs/phploc.xml" />
|
||||
<arg path="${basedir}/core/src" />
|
||||
<arg path="${basedir}/test" />
|
||||
</exec>
|
||||
</target>
|
||||
|
||||
@@ -137,15 +135,13 @@
|
||||
<arg value="--extensions=php" />
|
||||
<arg value="--ignore=autoload.php" />
|
||||
<arg path="${basedir}/core/src" />
|
||||
<arg path="${basedir}/test/unit" />
|
||||
<arg path="${basedir}/test/integration" />
|
||||
</exec>
|
||||
</target>
|
||||
|
||||
<target name="phpcs-ci"
|
||||
depends="prepare"
|
||||
description="Find coding standard violations using PHP_CodeSniffer and log result in XML format. Intended for usage within a continuous integration environment.">
|
||||
<exec executable="${toolsdir}phpcs" output="/dev/null">
|
||||
<exec executable="${toolsdir}phpcs" failonerror="true">
|
||||
<arg value="--report=checkstyle" />
|
||||
<arg value="--report-file=${basedir}/build/logs/checkstyle.xml" />
|
||||
<arg value="--standard=PSR2" />
|
||||
@@ -181,12 +177,41 @@
|
||||
</exec>
|
||||
</target>
|
||||
|
||||
<target name="phpunit-sa"
|
||||
description="Run unit tests with PHPUnit">
|
||||
<exec executable="${toolsdir}phpunit" failonerror="true">
|
||||
<arg value="--configuration"/>
|
||||
<arg path="${basedir}/phpunit.xml"/>
|
||||
</exec>
|
||||
</target>
|
||||
|
||||
<target name="phpdox"
|
||||
depends=""
|
||||
description="Generate project documentation using phpDox">
|
||||
<exec executable="${toolsdir}phpdox"/>
|
||||
</target>
|
||||
|
||||
<target name="copyjs"
|
||||
description="Copy generated assets">
|
||||
|
||||
<delete includeemptydirs="true">
|
||||
<fileset dir="${destination}">
|
||||
<include name="web/admin/dist/**"/>
|
||||
<include name="web/modules/dist/**"/>
|
||||
<include name="web/dist/**"/>
|
||||
</fileset>
|
||||
</delete>
|
||||
|
||||
<copy todir="${destination}" overwrite="true">
|
||||
<fileset dir="${origin}">
|
||||
<include name="web/admin/dist/**"/>
|
||||
<include name="web/modules/dist/**"/>
|
||||
<include name="web/dist/**"/>
|
||||
</fileset>
|
||||
</copy>
|
||||
|
||||
</target>
|
||||
|
||||
<target name="copyapp"
|
||||
description="Copy generated files to QA app">
|
||||
|
||||
@@ -199,6 +224,11 @@
|
||||
<copy todir="${destination}" overwrite="true">
|
||||
<fileset dir="${origin}">
|
||||
<include name="**/*"/>
|
||||
<exclude name="node_modules/**"/>
|
||||
<exclude name="web/admin/src/**"/>
|
||||
<exclude name="web/modules/src/**"/>
|
||||
<exclude name="web/api/**"/>
|
||||
<exclude name="web/api-common/**"/>
|
||||
</fileset>
|
||||
</copy>
|
||||
|
||||
@@ -219,6 +249,9 @@
|
||||
<include name="cache.properties"/>
|
||||
<include name="phpdox.xml"/>
|
||||
<include name="phpunit.xml"/>
|
||||
<include name="web/admin/dist/*.map"/>
|
||||
<include name="web/modules/dist/*.map"/>
|
||||
<include name="web/dist/*.map"/>
|
||||
</fileset>
|
||||
</delete>
|
||||
|
||||
@@ -277,8 +310,5 @@
|
||||
<gzip destfile="${basedir}/build/release/${env.appname}_${env.Version}.tar.gz" src="${basedir}/build/release/${env.appname}_${env.Version}.tar"/>
|
||||
|
||||
</target>
|
||||
|
||||
|
||||
|
||||
</project>
|
||||
|
||||
|
||||
244
cache.properties
244
cache.properties
@@ -1,244 +0,0 @@
|
||||
#Sun Apr 29 05:47:35 CEST 2018
|
||||
/Users/Thilina/Projects/icehrm/src/Expenses/Common/Model/EmployeeExpenseApproval.php=db8eedd8fb151769acded489e9d616c1
|
||||
/Users/Thilina/Projects/icehrm/src/Attendance/Common/Calculations/BasicOvertimeCalculator.php=9c96ae3f71796029d3f93e5c63783f53
|
||||
/Users/Thilina/Projects/icehrm/src/Classes/Email/SNSEmailSender.php=fa905e3ab63ea745c591e744d6741b6b
|
||||
/Users/Thilina/Projects/icehrm/src/Salary/Common/Model/SalaryComponent.php=31e89f1115de7986cd790c8e113ab6d5
|
||||
/Users/Thilina/Projects/icehrm/src/Classes/Email/EmailSender.php=03a98d7d1bcc56a77cc5b3bfa46b79fd
|
||||
/Users/Thilina/Projects/icehrm/test/bootstrap.php=391db040530140c40c84cbbc65645d58
|
||||
/Users/Thilina/Projects/icehrm/src/Utils/InputCleaner.php=e86fcb9daf1d32a4328edf40a31152f8
|
||||
/Users/Thilina/Projects/icehrm/src/Projects/Common/Model/Project.php=05b1cd967d67cb977558f2567d7f6cb6
|
||||
/Users/Thilina/Projects/icehrm/src/Model/DataEntryBackup.php=9ab3a7d48dbdd377a90c505cf692c17e
|
||||
/Users/Thilina/Projects/icehrm/src/Qualifications/Common/Model/Skill.php=e1441a2526e24a7ada7d20b36ff9e355
|
||||
/Users/Thilina/Projects/icehrm/src/Permissions/Admin/Api/PermissionsAdminManager.php=c66e06b926b4006e8a2d7f2e77e0f1fa
|
||||
/Users/Thilina/Projects/icehrm/src/Metadata/Common/Model/Province.php=4a718577000772ab7591a2586f7c75c8
|
||||
/Users/Thilina/Projects/icehrm/src/Loans/Common/Model/EmployeeCompanyLoan.php=abc8959df2ec0f3e19ff6da12c3163f9
|
||||
/Users/Thilina/Projects/icehrm/src/Classes/Approval/ApprovalStatus.php=7a3bc0a73f237eb677254b245887f48f
|
||||
/Users/Thilina/Projects/icehrm/src/Classes/FileService.php=806ff6c25c7654c30e99b0418e1c1475
|
||||
/Users/Thilina/Projects/icehrm/src/Dashboard/User/Api/DashboardActionManager.php=3f797cf4807ad5cd4f881607142df049
|
||||
/Users/Thilina/Projects/icehrm/src/Classes/Cron/Task/EmailSenderTask.php=f0c93e7c807706922cb812723e51bd09
|
||||
/Users/Thilina/Projects/icehrm/src/Attendance/Admin/Api/AttendanceUtil.php=34fe63a4c0f954451afae6c359ea5b38
|
||||
/Users/Thilina/Projects/icehrm/src/Payroll/Common/Model/Deduction.php=1e49d0fd8d4673e3fd094cfb0e467df4
|
||||
/Users/Thilina/Projects/icehrm/src/Reports/Admin/Reports/PayrollDataExport.php=83bd6faa73c75667ecf25091c3729abc
|
||||
/Users/Thilina/Projects/icehrm/src/Employees/Common/Model/Employee.php=f8814257c241892fcf45e1d409d6ab1b
|
||||
/Users/Thilina/Projects/icehrm/src/Metadata/Admin/Api/MetadataAdminManager.php=9f383f9c34ec98a8e2e701825c548a8a
|
||||
/Users/Thilina/Projects/icehrm/src/Reports/Admin/Reports/NewHiresEmployeeReport.php=64eab525953538d481dab6052dd76d81
|
||||
/Users/Thilina/Projects/icehrm/src/Payroll/Common/Model/DeductionGroup.php=c35db5b88aa4b0c7d78b8444688931b5
|
||||
/Users/Thilina/Projects/icehrm/src/Utils/Math/EvalMathFuncs.php=d6f7c26eab307d205ee8483d87a380cb
|
||||
/Users/Thilina/Projects/icehrm/src/Classes/ModuleBuilder/ModuleTabGroup.php=d81cfc2b3dcad2f57317b1274c884d95
|
||||
/Users/Thilina/Projects/icehrm/src/Model/RestAccessToken.php=77c292675944ff887fc8b4c3f7b6da94
|
||||
/Users/Thilina/Projects/icehrm/src/Classes/LDAPManager.php=e88dd0634a6ca372564faa5a1d540796
|
||||
/Users/Thilina/Projects/icehrm/src/Expenses/Admin/Api/ExpensesAdminManager.php=ef6961e298a55379ec4dfff8b9db77fc
|
||||
/Users/Thilina/Projects/icehrm/src/Dashboard/User/Api/DashboardModulesManager.php=2e8968121b445353ee864c76c44483d3
|
||||
/Users/Thilina/Projects/icehrm/src/Model/UserReport.php=0a8a8476e3088011cc54fda139567b56
|
||||
/Users/Thilina/Projects/icehrm/src/Travel/Common/Model/EmployeeTravelRecordApproval.php=d84b2a1323f3663806cc30545e748cd4
|
||||
/Users/Thilina/Projects/icehrm/src/Metadata/Common/Model/SupportedLanguage.php=3ec1220796f6e33641998a33f036d709
|
||||
/Users/Thilina/Projects/icehrm/src/TimeSheets/Common/Model/QTDays.php=32a00e65a966331b776dc37cc0609edf
|
||||
/Users/Thilina/Projects/icehrm/src/Salary/Common/Model/EmployeeSalary.php=ec80c4e8280d23568df79f59d1b32de8
|
||||
/Users/Thilina/Projects/icehrm/src/Classes/SimpleImage.php=fdfb7b2e71e14975ebce16de44ea9dee
|
||||
/Users/Thilina/Projects/icehrm/src/Expenses/User/Api/ExpensesModulesManager.php=4860a1fbb24f4074a6918b2c0b973e80
|
||||
/Users/Thilina/Projects/icehrm/src/Employees/User/Api/EmployeesActionManager.php=7f495266d28737c779e1e9ab3c61e0db
|
||||
/Users/Thilina/Projects/icehrm/src/Classes/Approval/ApproveAdminActionManager.php=3c26b53f0e5141b8f4a033cbbd4c622e
|
||||
/Users/Thilina/Projects/icehrm/src/Settings/Admin/Api/SettingsAdminManager.php=5e5df0056db6f9593128720581feca18
|
||||
/Users/Thilina/Projects/icehrm/src/Travel/User/Api/TravelModulesManager.php=94c9204a67e99af9133cd2aa371cb6da
|
||||
/Users/Thilina/Projects/icehrm/test/unit/UserAttendanceActionManagerUnit.php=1d71d366a13f253ef6931aa87202ac42
|
||||
/Users/Thilina/Projects/icehrm/src/Reports/Admin/Reports/OvertimeRequestReport.php=3cd3bc887da768a32bfc61c152489528
|
||||
/Users/Thilina/Projects/icehrm/src/Employees/User/Api/EmployeesModulesManager.php=ad9ab05afd9cf551870352dba82e6d69
|
||||
/Users/Thilina/Projects/icehrm/test/helper/EmployeeTestDataHelper.php=65ec2048653c9e4e4359d9b6967a860d
|
||||
/Users/Thilina/Projects/icehrm/test/integration/ApprovalStatusIntegration.php=8b9243e5cbb302513d906ff9de246acd
|
||||
/Users/Thilina/Projects/icehrm/src/Reports/Admin/Reports/EmployeeTimeSheetData.php=9d612ee603fdf4e6b710eec725da2656
|
||||
/Users/Thilina/Projects/icehrm/src/Payroll/Common/Model/PayrollData.php=f1a49da4e6e5a91695dd96c9585e1686
|
||||
/Users/Thilina/Projects/icehrm/src/TimeSheets/User/Api/TimeSheetsInitialize.php=d47372f12494019c1004a04cbe57013d
|
||||
/Users/Thilina/Projects/icehrm/src/Modules/Admin/Api/ModulesAdminManager.php=ef70889c3b3b9eae52800ce3a326d540
|
||||
/Users/Thilina/Projects/icehrm/src/Modules/Common/Model/Module.php=8f0d1680087f555f5628c53236c7625f
|
||||
/Users/Thilina/Projects/icehrm/src/Expenses/Common/Model/ExpensesPaymentMethod.php=338ce9cabb90a291e88b940756b06701
|
||||
/Users/Thilina/Projects/icehrm/src/Company/Common/Model/Timezone.php=50aff3bc39221658c35041abdc55ad98
|
||||
/Users/Thilina/Projects/icehrm/src/Reports/Admin/Reports/OvertimeSummaryReport.php=16d9e2f10de82f25d0965e2d327086b9
|
||||
/Users/Thilina/Projects/icehrm/src/Data/Common/Model/DataImport.php=a6af4d8acd5585932823889509cca581
|
||||
/Users/Thilina/Projects/icehrm/src/FieldNames/Common/Model/FieldNameMapping.php=73bd1da0f6e51329dbe12930bb566ccd
|
||||
/Users/Thilina/Projects/icehrm/src/Reports/Admin/Reports/ActiveEmployeeReport.php=261180dfbe69ab83d9d63646111695ba
|
||||
/Users/Thilina/Projects/icehrm/test/unit/LanguageManagerUnit.php=ebb20febce875350bfddd7f0358e6ad0
|
||||
/Users/Thilina/Projects/icehrm/src/Utils/LogManager.php=144ebae4d0ff60f0fd21e79a45aa6e6a
|
||||
/Users/Thilina/Projects/icehrm/src/Dependents/Common/Model/EmployeeDependent.php=1f4b6cd6dfbc14269b53dbbac3730f9e
|
||||
/Users/Thilina/Projects/icehrm/src/Data/Admin/Import/PayrollDataImporter.php=7350ec94ef8a70ba6c263e53c70c7073
|
||||
/Users/Thilina/Projects/icehrm/src/Reports/Admin/Reports/ExpenseReport.php=397c8deb446994b64e2b9fef2845bb89
|
||||
/Users/Thilina/Projects/icehrm/src/Reports/Admin/Reports/OvertimeReport.php=f630ae5402ec7957f42b64fa46cd1923
|
||||
/Users/Thilina/Projects/icehrm/src/Reports/Admin/Reports/EmployeeLeaveEntitlementReport.php=9be41bfeb88fd0171028203f6513c799
|
||||
/Users/Thilina/Projects/icehrm/src/Projects/User/Api/ProjectsModulesManager.php=4fc0463507ca7768a1e493d703ac2581
|
||||
/Users/Thilina/Projects/icehrm/src/Permissions/Common/Model/Permission.php=0745dd3786e95cfc5265c32f47f4ee4a
|
||||
/Users/Thilina/Projects/icehrm/src/Overtime/Admin/Api/OvertimeActionManager.php=0b039c008daf52e64f9ce827eabdd25a
|
||||
/Users/Thilina/Projects/icehrm/src/Salary/User/Api/SalaryModulesManager.php=050d077e79532353a7d12a7221829b7c
|
||||
/Users/Thilina/Projects/icehrm/src/Classes/Cron/IceTask.php=cc9b1481e824fd967eb503248eb92e29
|
||||
/Users/Thilina/Projects/icehrm/src/Reports/Admin/Reports/EmployeeTimesheetReport.php=8661944cf39b10c441841a8af72cb988
|
||||
/Users/Thilina/Projects/icehrm/src/EmergencyContacts/User/Api/EmergencyContactModulesManager.php=527888466137dad3da5c6bf5b7bf9b28
|
||||
/Users/Thilina/Projects/icehrm/src/Classes/SettingsManager.php=ebed24cde74d7fb33cca4ba156389760
|
||||
/Users/Thilina/Projects/icehrm/src/Qualifications/Common/Model/EmployeeLanguage.php=66127455502fb29181324c1cc25f93c4
|
||||
/Users/Thilina/Projects/icehrm/src/Classes/Approval/ApproveCommonActionManager.php=c1b7efb8c4f3fe8199c7e0d6fdd1ccce
|
||||
/Users/Thilina/Projects/icehrm/src/Overtime/Common/Model/EmployeeOvertime.php=50c166318a354b05dc2ae0e442d43a33
|
||||
/Users/Thilina/Projects/icehrm/src/Reports/User/Api/ReportsModulesManager.php=1645b61be16b96d0085510f6a2d30b68
|
||||
/Users/Thilina/Projects/icehrm/src/Classes/RestApiManager.php=c53180aa40576c5fe8c519b2b0a39e32
|
||||
/Users/Thilina/Projects/icehrm/src/Payroll/Common/Model/Payroll.php=5c7eb622aade003f693275944e041cc7
|
||||
/Users/Thilina/Projects/icehrm/src/Attendance/Admin/Api/AttendanceActionManager.php=9045182bc0854647219b0a0418c37ffd
|
||||
/Users/Thilina/Projects/icehrm/src/Reports/Admin/Api/PDFReportBuilder.php=fbbc196b5ea432671667bcc239d8bf54
|
||||
/Users/Thilina/Projects/icehrm/src/Employees/Rest/EmployeeRestEndPoint.php=5a006d8637a05d63f19e130b37bdd97d
|
||||
/Users/Thilina/Projects/icehrm/src/Model/File.php=8211922ac309e1c3e5fc316a90bc0bf0
|
||||
/Users/Thilina/Projects/icehrm/src/Data/Admin/Api/AbstractDataImporter.php=315bf5eec45aa13e174d412014e2237f
|
||||
/Users/Thilina/Projects/icehrm/src/Classes/NotificationManager.php=a739fd4177892d44e78efed1641072cc
|
||||
/Users/Thilina/Projects/icehrm/src/Utils/SessionUtils.php=f5c4db2214dfb4d8bf5b9bfe5edb1bac
|
||||
/Users/Thilina/Projects/icehrm/src/Travel/Admin/Api/TravelActionManager.php=0e2fdd403d3456ebda102d554349e9f4
|
||||
/Users/Thilina/Projects/icehrm/src/Payroll/Common/Model/PayrollColumn.php=0f2e8fd9b44c038f163ae646d3c6f4b6
|
||||
/Users/Thilina/Projects/icehrm/src/Travel/Common/Model/EmployeeTravelRecord.php=5366a1927bd94630217ffbc9386ff605
|
||||
/Users/Thilina/Projects/icehrm/src/Reports/Admin/Reports/TravelRequestReport.php=c4bdd4c88f4a7b15c8091a0dcbb5018a
|
||||
/Users/Thilina/Projects/icehrm/src/Classes/StatusChangeLogManager.php=b091e855d9800eea9d4190e0c75e3e8c
|
||||
/Users/Thilina/Projects/icehrm/src/Qualifications/Admin/Api/QualificationsAdminManager.php=3037d64a2344a497ff0ceea52265d2a6
|
||||
/Users/Thilina/Projects/icehrm/src/Reports/Admin/Reports/EmployeeLeavesReport.php=bd5efb4666ca4103a2e7e98aa24e1c83
|
||||
/Users/Thilina/Projects/icehrm/src/TimeSheets/User/Api/TimeSheetsActionManager.php=ef271183cf6e71d8db24b8d3369e19b9
|
||||
/Users/Thilina/Projects/icehrm/src/Expenses/Common/Model/ExpensesCategory.php=e9c0e170b950a39994d0a33d5981374f
|
||||
/Users/Thilina/Projects/icehrm/src/Classes/Email/SwiftMailer.php=eca37dc0add437ae1089c695b5074b90
|
||||
/Users/Thilina/Projects/icehrm/src/Data/Admin/Import/AttendanceDataImporter.php=dc4dec4294b9feac08a5f996b85cab85
|
||||
/Users/Thilina/Projects/icehrm/src/Salary/Common/Model/PayrollEmployee.php=1a01bd60d1f82fc6f3eeb1875006f659
|
||||
/Users/Thilina/Projects/icehrm/src/Classes/Crypt/AesCtr.php=4897c7fe9a510f38eeb91046127d79f7
|
||||
/Users/Thilina/Projects/icehrm/src/Classes/AbstractModuleManager.php=5bb9fc5859bdd790753277a47752b0b9
|
||||
/Users/Thilina/Projects/icehrm/src/Metadata/Common/Model/ImmigrationStatus.php=f0dc9a94bcc487df21d53387ae8e89ba
|
||||
/Users/Thilina/Projects/icehrm/src/Salary/Admin/Api/SalaryAdminManager.php=8bedb5d82608974feedd1c094cac64fa
|
||||
/Users/Thilina/Projects/icehrm/src/Reports/Admin/Api/ClassBasedReportBuilder.php=fc77219539745bdb6364fc81bdda2516
|
||||
/Users/Thilina/Projects/icehrm/src/Classes/BaseService.php=e0de0276b6a8b58a4e318848a45439b6
|
||||
/Users/Thilina/Projects/icehrm/src/Payroll/Common/Model/PayrollColumnTemplate.php=cb69bf4717cfbaf0f395b931296efd9a
|
||||
/Users/Thilina/Projects/icehrm/src/Expenses/Admin/Api/ExpensesActionManager.php=2997346b4574ccd83e564c338e38b189
|
||||
/Users/Thilina/Projects/icehrm/src/Reports/Admin/Reports/EmployeeTimeTrackReport.php=eddda882fae0c258e97fb50aafe21061
|
||||
/Users/Thilina/Projects/icehrm/src/Metadata/Common/Model/Nationality.php=0f0cd1d95496f95ac9de08aa15e6b6a4
|
||||
/Users/Thilina/Projects/icehrm/src/Classes/ReportHandler.php=80b280cae34fdfbee864b05b07c6789a
|
||||
/Users/Thilina/Projects/icehrm/src/Reports/User/Reports/ExpenseReport.php=7c8d187bc57175a92b8bc0fa33e501f0
|
||||
/Users/Thilina/Projects/icehrm/src/Overtime/Admin/Api/OvertimeAdminManager.php=7ae7776e6445429a1f0158a5efd38c04
|
||||
/Users/Thilina/Projects/icehrm/src/Salary/Common/Model/SalaryComponentType.php=d96878a0b1547f44731830526306ab56
|
||||
/Users/Thilina/Projects/icehrm/src/Travel/Common/Model/EmployeeImmigration.php=1dcb690d0045699a1aa65eda033f9adf
|
||||
/Users/Thilina/Projects/icehrm/src/Classes/MenuItemTemplate.php=7ad7eb3a874ec729ec1baf0760f0b4ed
|
||||
/Users/Thilina/Projects/icehrm/src/Employees/Admin/Api/EmployeesAdminManager.php=15e983c78e17191ced1a7eec13be0d3e
|
||||
/Users/Thilina/Projects/icehrm/src/Classes/Cron/CronUtils.php=b55a1fe1c4ed55dc582e208b341f52b4
|
||||
/Users/Thilina/Projects/icehrm/src/Overtime/Common/Model/EmployeeOvertimeApproval.php=edd2eedebb9f62a44f0e588c615654ce
|
||||
/Users/Thilina/Projects/icehrm/src/Qualifications/Common/Model/EmployeeSkill.php=a02c5ceda0489aba4ed47df010d4892e
|
||||
/Users/Thilina/Projects/icehrm/src/Reports/Admin/Reports/EmployeeAttendanceReport.php=a20c94c986fa57c52daebbcbf4fa1f3f
|
||||
/Users/Thilina/Projects/icehrm/src/Overtime/User/Api/OvertimeActionManager.php=f6d2c26500ed9e10b90bb5826d6c124e
|
||||
/Users/Thilina/Projects/icehrm/src/Projects/Common/Model/Client.php=666b6d5ad575ddd9ccc198f5e98e1211
|
||||
/Users/Thilina/Projects/icehrm/src/Dependents/User/Api/DependentsModulesManager.php=409b6ea72b6ce0319bb12df6458d2bef
|
||||
/Users/Thilina/Projects/icehrm/src/Jobs/Common/Model/JobTitle.php=4765635589eb4cc84cec2e578faa1557
|
||||
/Users/Thilina/Projects/icehrm/src/Model/Cron.php=4f3da95d8dd8e6b4642e6a2c6390c5fe
|
||||
/Users/Thilina/Projects/icehrm/src/Projects/Admin/Api/ProjectsAdminManager.php=8f20c5277a8560a69318263166b804e3
|
||||
/Users/Thilina/Projects/icehrm/src/Loans/Common/Model/CompanyLoan.php=6e1e409dd612f22b47c6ffdcda4fe3a0
|
||||
/Users/Thilina/Projects/icehrm/src/Classes/Migration/MigrationManager.php=10ce5f1187ed06d2b12820a0d9d7e90a
|
||||
/Users/Thilina/Projects/icehrm/src/Reports/Admin/Api/ReportsAdminManager.php=be16482fcb8d6714f13618407acf25a5
|
||||
/Users/Thilina/Projects/icehrm/src/Utils/CalendarTools.php=9f60bf1aaa928a02163680da60ac255c
|
||||
/Users/Thilina/Projects/icehrm/src/Data/Admin/Api/DataAdminManager.php=3913dc1f43ae1965956c420d0d9084c8
|
||||
/Users/Thilina/Projects/icehrm/src/TimeSheets/Common/Model/EmployeeTimeEntry.php=f69d37222ff6d528b5dde53fcbb5b3a8
|
||||
/Users/Thilina/Projects/icehrm/src/Classes/UIManager.php=03b64742f6595dedce18bba1372d4b20
|
||||
/Users/Thilina/Projects/icehrm/src/Classes/MemcacheService.php=e07916b1c628686162c19fa26aad93d5
|
||||
/Users/Thilina/Projects/icehrm/src/Reports/User/Reports/EmployeeTimesheetReport.php=2ec16a7dccb131862f295ad97db9067b
|
||||
/Users/Thilina/Projects/icehrm/src/Metadata/Common/Model/Country.php=f772b574b2b1310977a50daf9d2a51ef
|
||||
/Users/Thilina/Projects/icehrm/src/Model/Audit.php=31e7780e4e210a8c840188d2015d2e01
|
||||
/Users/Thilina/Projects/icehrm/src/Classes/Approval/ApproveModuleActionManager.php=834a7aad3a07c194a0a830cc353daec9
|
||||
/Users/Thilina/Projects/icehrm/src/Loans/Admin/Api/LoansAdminManager.php=0954d425f553598a6f3a9dbefc19fb45
|
||||
/Users/Thilina/Projects/icehrm/src/Classes/SubActionManager.php=7523ec5017da87c8d7d3e4438310d96f
|
||||
/Users/Thilina/Projects/icehrm/src/Model/ApproveModel.php=7f15abbdae78812f15d65e7a165f6115
|
||||
/Users/Thilina/Projects/icehrm/src/Classes/CustomFieldManager.php=7259e4d11e73fdd04984097e00233203
|
||||
/Users/Thilina/Projects/icehrm/src/Payroll/Admin/Api/PayrollActionManager.php=177d85ae36ed00f8a42d9bb9e8f9aa1a
|
||||
/Users/Thilina/Projects/icehrm/src/Loans/User/Api/LoansModulesManager.php=4f0650c7b4ab3ec6c241bd32c680dfca
|
||||
/Users/Thilina/Projects/icehrm/src/Utils/Math/EvalMathStack.php=4b86e2041c19d8ef8eaf7f4ea630e116
|
||||
/Users/Thilina/Projects/icehrm/src/Users/Admin/Api/UsersAdminManager.php=695662b7186616d4379d0a588b5130e6
|
||||
/Users/Thilina/Projects/icehrm/src/Qualifications/Common/Model/Language.php=c904c6e3e2e167f5e79afffabf94716a
|
||||
/Users/Thilina/Projects/icehrm/src/Classes/Macaw.php=5a2f26ffcb41c9f42af776a91c283572
|
||||
/Users/Thilina/Projects/icehrm/src/Attendance/Common/Model/AttendanceStatus.php=ad80af2d596e584a3ab60a5fce4aac09
|
||||
/Users/Thilina/Projects/icehrm/src/Classes/Email/SMTPEmailSender.php=0df2a519ce3a2d61d486b9527782f72b
|
||||
/Users/Thilina/Projects/icehrm/src/FieldNames/Admin/Api/FieldNamesAdminManager.php=5eca8c33ccd8d9fc1c4e5b7fa81ed93c
|
||||
/Users/Thilina/Projects/icehrm/src/Payroll/Common/Model/PayFrequency.php=9207a551d667bab9734aa041e02a1be1
|
||||
/Users/Thilina/Projects/icehrm/src/Metadata/Common/Model/CurrencyType.php=e9f5f17d4e18a706e4c4068f253c01ac
|
||||
/Users/Thilina/Projects/icehrm/src/Employees/Common/Model/EmployeeApproval.php=481ddd171d66e644bb442ab02e97b097
|
||||
/Users/Thilina/Projects/icehrm/src/Data/Admin/Api/DataImporter.php=ad94e2de98e11c1d3f0f0b32c46f358c
|
||||
/Users/Thilina/Projects/icehrm/src/Expenses/Common/Model/EmployeeExpense.php=29d2dccb5d009d392c4b8f44c59fcdd8
|
||||
/Users/Thilina/Projects/icehrm/test/TestTemplate.php=8e6ff185d587f339892a9a720e2bfa5f
|
||||
/Users/Thilina/Projects/icehrm/src/Classes/Crypt/Aes.php=d0b15a04faf73b0ff35efc308d09b6e7
|
||||
/Users/Thilina/Projects/icehrm/src/Classes/LanguageManager.php=8df5d6d62bae8a5e14ab1cd486325af3
|
||||
/Users/Thilina/Projects/icehrm/src/Qualifications/Common/Model/Education.php=6f992ef2bb13951f3c52f5209d73733b
|
||||
/Users/Thilina/Projects/icehrm/src/Reports/User/Reports/EmployeeLeavesReport.php=0bd5801ac4c9803db53198c68904d5f5
|
||||
/Users/Thilina/Projects/icehrm/src/TimeSheets/Common/Model/EmployeeTimeSheet.php=2a4e685315485e4933df5d2ba856d8fb
|
||||
/Users/Thilina/Projects/icehrm/src/Reports/User/Reports/ClientProjectTimeReport.php=f860b3cff536b5074bb7d1e193c1c41d
|
||||
/Users/Thilina/Projects/icehrm/src/Expenses/User/Api/ExpensesActionManager.php=c8ce93f6877fd2cdbc963b5c38708f04
|
||||
/Users/Thilina/Projects/icehrm/src/Reports/User/Reports/EmployeeAttendanceReport.php=600c1feca3eab6d724ac9661f2f514d5
|
||||
/Users/Thilina/Projects/icehrm/src/Utils/Math/EvalMath.php=476cb2ee5306966d7cd7bee2f3202559
|
||||
/Users/Thilina/Projects/icehrm/src/Model/Migration.php=3f11c6dfaa18d4a6dcb2caa8d3677121
|
||||
/Users/Thilina/Projects/icehrm/src/Data/Common/Model/DataImportFile.php=a0b3f8410e80862ba79aa9d8fed383d7
|
||||
/Users/Thilina/Projects/icehrm/src/Travel/User/Api/TravelActionManager.php=e6241358886dc00138506f3bc4d13346
|
||||
/Users/Thilina/Projects/icehrm/src/Company/Common/Model/CompanyStructure.php=a1957202858bc093b29e8dfe48955cc6
|
||||
/Users/Thilina/Projects/icehrm/src/Classes/Migration/AbstractMigration.php=324fe15e15a0ca2b0f50f4029ae10548
|
||||
/Users/Thilina/Projects/icehrm/src/Qualifications/Common/Model/EmployeeCertification.php=96045388cba569f4ea9617dc8fbeded6
|
||||
/Users/Thilina/Projects/icehrm/src/Payroll/Common/Model/PayslipTemplate.php=cc9bf7552cfccd84a0b9b1431f224f1f
|
||||
/Users/Thilina/Projects/icehrm/test/test.includes.php=d87bcd9386b3271b62818e2b86df6c28
|
||||
/Users/Thilina/Projects/icehrm/src/Company/Admin/Api/CompanyAdminManager.php=484a8b669d5fed117f1f40f289f2c6f4
|
||||
/Users/Thilina/Projects/icehrm/src/Classes/Email/PHPMailer.php=54789d10177cc5075cb4d50838b05821
|
||||
/Users/Thilina/Projects/icehrm/src/Qualifications/Common/Model/EmployeeEducation.php=8ba4cbc034b5ee23d593cc3352cf46a9
|
||||
/Users/Thilina/Projects/icehrm/src/Reports/Admin/Reports/TerminatedEmployeeReport.php=1b8b58d6e85eb77e45aaf44f426025ea
|
||||
/Users/Thilina/Projects/icehrm/src/Users/Admin/Api/UsersEmailSender.php=87247955c331115e482aa3e577eca0b4
|
||||
/Users/Thilina/Projects/icehrm/src/Classes/IceConstants.php=5f7497997d12c27dab080b6f34640df1
|
||||
/Users/Thilina/Projects/icehrm/test/test.config.php=2d82ac9b697f10bb9bd6d760f63d2be4
|
||||
/Users/Thilina/Projects/icehrm/src/Travel/Common/Model/ImmigrationDocument.php=c0636d2ce3e7d89d9e4ebb00c8d1450f
|
||||
/Users/Thilina/Projects/icehrm/src/Classes/ModuleBuilder/ModuleBuilder.php=29fed2a27587032060efc02c7a30a838
|
||||
/Users/Thilina/Projects/icehrm/src/Reports/User/Reports/PayslipReport.php=a7197be66726cf126c196bf6beccb907
|
||||
/Users/Thilina/Projects/icehrm/src/Reports/User/Reports/EmployeeTimeTrackReport.php=ce6f2b098845233342c336f837001554
|
||||
/Users/Thilina/Projects/icehrm/src/Reports/Admin/Api/PDFReportBuilderInterface.php=cc049c4c1b86e5a5e4fd99ddf24e563d
|
||||
/Users/Thilina/Projects/icehrm/src/Qualifications/User/Api/QualificationsModulesManager.php=e668d64139ecc146af9ebaea2f91e1fe
|
||||
/Users/Thilina/Projects/icehrm/src/Classes/RestEndPoint.php=86136262a2e2a8f45564d17123dd5812
|
||||
/Users/Thilina/Projects/icehrm/src/Classes/S3FileSystem.php=6308aca72380cef1981625946b59652f
|
||||
/Users/Thilina/Projects/icehrm/src/Classes/Cron/Task/EmailIceTask.php=b754a286061db310b3f18677946d7b43
|
||||
/Users/Thilina/Projects/icehrm/src/Data/Admin/Import/EmployeeDataImporter.php=d1b66e2d042335df792fa8913d363d5f
|
||||
/Users/Thilina/Projects/icehrm/src/Projects/Common/Model/EmployeeProject.php=b0de956de8ec4c423604195b96f57df9
|
||||
/Users/Thilina/Projects/icehrm/src/Model/Report.php=498c96015d1be2b31d8cd0bcedea7fab
|
||||
/Users/Thilina/Projects/icehrm/src/Metadata/Common/Model/CustomFieldValue.php=a9b7d8db9ee113345298ba49f9354be8
|
||||
/Users/Thilina/Projects/icehrm/src/Classes/Cron/IceCron.php=edb023962095493d7daa728793ceaf9c
|
||||
/Users/Thilina/Projects/icehrm/src/Settings/Admin/Api/SettingsInitialize.php=148bc391f5d101121f915a590f991a6b
|
||||
/Users/Thilina/Projects/icehrm/src/Dashboard/Admin/Api/DashboardActionManager.php=5e8e996f9f4b77f1fbd10e026a5d1351
|
||||
/Users/Thilina/Projects/icehrm/src/Payroll/Admin/Api/PayrollAdminManager.php=9bac9a6ed8406c9eb6fe7ef666aee482
|
||||
/Users/Thilina/Projects/icehrm/src/Jobs/Admin/Api/JobsAdminManager.php=12546328edffcc5bda7e84f6a8c56d9e
|
||||
/Users/Thilina/Projects/icehrm/src/Jobs/Common/Model/PayGrade.php=55f2f83ff22136154b14460b6b37632a
|
||||
/Users/Thilina/Projects/icehrm/src/EmergencyContacts/Common/Model/EmergencyContact.php=6ec07210d94e695732c6d1a6a0fb34be
|
||||
/Users/Thilina/Projects/icehrm/src/Employees/Admin/Api/EmployeesActionManager.php=63c6ccf63f54eab8556c893cf47f983c
|
||||
/Users/Thilina/Projects/icehrm/src/Metadata/Common/Model/CalculationHook.php=bbfa6f83e4042db9640b67c131274118
|
||||
/Users/Thilina/Projects/icehrm/src/Users/Common/Model/User.php=cc9b6c966b40678574fdd35bb1f16cb2
|
||||
/Users/Thilina/Projects/icehrm/src/Users/Admin/Api/UsersActionManager.php=b65c97c665190f9fb011cc8d0b97888c
|
||||
/Users/Thilina/Projects/icehrm/src/Attendance/User/Api/AttendanceModulesManager.php=f1b34fae71cc963e197b41ed2ca032ca
|
||||
/Users/Thilina/Projects/icehrm/src/Classes/IceResponse.php=bb74495c33fab87e96f72b610cfd5374
|
||||
/Users/Thilina/Projects/icehrm/src/Qualifications/Common/Model/Certification.php=e81a7f90a10799d97a918e2cb071c1a9
|
||||
/Users/Thilina/Projects/icehrm/src/Model/BaseModel.php=d932a9bb126c174000b9c51a8cb4d2f6
|
||||
/Users/Thilina/Projects/icehrm/src/Model/StatusChangeLog.php=0745140bddda3f06915dcfcc6ac97ce8
|
||||
/Users/Thilina/Projects/icehrm/src/Classes/AbstractInitialize.php=841a38244ca1d44b008f67a6b45df348
|
||||
/Users/Thilina/Projects/icehrm/src/Reports/User/Reports/EmployeeTimeSheetData.php=2d6e95947963949b1c5150269d7527f7
|
||||
/Users/Thilina/Projects/icehrm/src/Data/Admin/Api/DataActionManager.php=82f3ced08b946ca6e10a83c6e07475db
|
||||
/Users/Thilina/Projects/icehrm/src/Reports/User/Reports/OvertimeReport.php=431965980b2458019398d2ed6d7fc39a
|
||||
/Users/Thilina/Projects/icehrm/src/Metadata/Common/Model/Ethnicity.php=5f5935cdeab1b41ac0d2db9f6973f6b0
|
||||
/Users/Thilina/Projects/icehrm/test/integration/MigrationManagerIntegration.php=f0f5bccf120067b34396f1e61fd6d20a
|
||||
/Users/Thilina/Projects/icehrm/src/Reports/Admin/Api/CSVReportBuilderInterface.php=6ada9a15e850c09162fc75020d6b00e4
|
||||
/Users/Thilina/Projects/icehrm/src/Payroll/Common/Model/PayrollCalculations.php=70d1b733b1adbb6c6a2ea0dcec89efca
|
||||
/Users/Thilina/Projects/icehrm/src/Travel/Admin/Api/TravelAdminManager.php=9b3c6e369e2264d2bc9fca122e8ed90c
|
||||
/Users/Thilina/Projects/icehrm/src/Model/ReportFile.php=0a766e94902b5473ef1fa24583cf2481
|
||||
/Users/Thilina/Projects/icehrm/src/Modules/Admin/Api/ModulesActionManager.php=c4d592d8930201a883a5d1ea71a037af
|
||||
/Users/Thilina/Projects/icehrm/src/Model/IceEmail.php=02bd3cd01cb37ab05d763e468cba3835
|
||||
/Users/Thilina/Projects/icehrm/src/Reports/Admin/Api/ReportBuilderInterface.php=dd7e723c48ec4f97db98ffec0d0f39cb
|
||||
/Users/Thilina/Projects/icehrm/src/TimeSheets/User/Api/TimeSheetsModulesManager.php=63a8c4364cd579be46b60a2e83f8f87f
|
||||
/Users/Thilina/Projects/icehrm/src/Employees/Common/Model/ArchivedEmployee.php=6056e5073538c0d7a22dea52b6c25374
|
||||
/Users/Thilina/Projects/icehrm/src/Reports/Admin/Api/ReportBuilder.php=9b0e8e996157caebcf17a2a342ba0f6e
|
||||
/Users/Thilina/Projects/icehrm/src/Users/Common/Model/UserRole.php=8d7dbcdf68c2c5a7a4d4f73dbb07d63b
|
||||
/Users/Thilina/Projects/icehrm/src/Salary/Common/Model/PayFrequency.php=fab16310b7db7bb9aace5a6b038c9d2a
|
||||
/Users/Thilina/Projects/icehrm/src/Model/Notification.php=0b06b249e456508d5a8ce06b453efe6b
|
||||
/Users/Thilina/Projects/icehrm/src/Attendance/Admin/Api/AttendanceDashboardManager.php=c08fc7c021dd0c0780851c308225291f
|
||||
/Users/Thilina/Projects/icehrm/src/Reports/User/Reports/TravelRequestReport.php=810d405042307fe9c6ca82e082c3673e
|
||||
/Users/Thilina/Projects/icehrm/src/Attendance/Common/Model/Attendance.php=aa0945e6fc70e6e3418d0e09f7110082
|
||||
/Users/Thilina/Projects/icehrm/src/Employees/Common/Model/EmploymentStatus.php=11365db49528f08847e0dfbf1b31472d
|
||||
/Users/Thilina/Projects/icehrm/src/Attendance/Admin/Api/AttendanceAdminManager.php=21e4a22a3eb290704181e5a4a7a5df7a
|
||||
/Users/Thilina/Projects/icehrm/src/Classes/HistoryManager.php=4741dd856bb81ec2e27bd016afb8e042
|
||||
/Users/Thilina/Projects/icehrm/src/Dashboard/Admin/Api/DashboardAdminManager.php=800b72969de1b8c311a8e1b7d2940c79
|
||||
/Users/Thilina/Projects/icehrm/src/Overtime/User/Api/OvertimeModulesManager.php=b29d52a4e3f021cdd786f41cbf1b9837
|
||||
/Users/Thilina/Projects/icehrm/src/Reports/User/Reports/OvertimeSummaryReport.php=3918d7210957040977b8a43c580abae0
|
||||
/Users/Thilina/Projects/icehrm/src/Classes/ModuleBuilder/ModuleTab.php=89136363d7520967c2d42e175052f4d5
|
||||
/Users/Thilina/Projects/icehrm/src/Reports/Admin/Api/CSVReportBuilder.php=5c5f7175cc2aff776388c3281cea9cf3
|
||||
/Users/Thilina/Projects/icehrm/src/Model/Setting.php=5b9440e9211662f5ed69f29794b6054d
|
||||
/Users/Thilina/Projects/icehrm/src/FieldNames/Common/Model/CustomField.php=88578da07f1f07bae868e17b4a8e4cf7
|
||||
/Users/Thilina/Projects/icehrm/src/Attendance/User/Api/AttendanceActionManager.php=feaa97dd192e7faec2045aba7dc03125
|
||||
/Users/Thilina/Projects/icehrm/src/Overtime/Common/Model/OvertimeCategory.php=e9c90b23155e3fe1c7d9dd9cef462d1e
|
||||
/Users/Thilina/Projects/icehrm/src/Attendance/Common/Calculations/CaliforniaOvertimeCalculator.php=a1a5ff46939030747f505710fbd49ffd
|
||||
@@ -1,31 +1,16 @@
|
||||
<?php
|
||||
/*
|
||||
This file is part of iCE Hrm.
|
||||
|
||||
iCE Hrm is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
iCE Hrm is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with iCE Hrm. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
------------------------------------------------------------------
|
||||
|
||||
Original work Copyright (c) 2012 [Gamonoid Media Pvt. Ltd]
|
||||
Developer: Thilina Hasantha (thilina.hasantha[at]gmail.com / facebook.com/thilinah)
|
||||
Copyright (c) 2018 [Glacies UG, Berlin, Germany] (http://glacies.de)
|
||||
Developer: Thilina Hasantha (http://lk.linkedin.com/in/thilinah | https://github.com/thilinah)
|
||||
*/
|
||||
|
||||
$moduleName = 'attendance_monitor';
|
||||
$moduleName = 'attendance';
|
||||
$moduleGroup = 'admin';
|
||||
define('MODULE_PATH',dirname(__FILE__));
|
||||
include APP_BASE_PATH.'header.php';
|
||||
include APP_BASE_PATH.'modulejslibs.inc.php';
|
||||
$photoAttendance = \Classes\SettingsManager::getInstance()->getSetting('Attendance: Photo Attendance');
|
||||
$mapAttendance = \Classes\SettingsManager::getInstance()->getSetting('Attendance: Request Attendance Location on Mobile');
|
||||
?><div class="span9">
|
||||
|
||||
<ul class="nav nav-tabs" id="modTab" style="margin-bottom:0px;margin-left:5px;border-bottom: none;">
|
||||
@@ -66,15 +51,38 @@ $photoAttendance = \Classes\SettingsManager::getInstance()->getSetting('Attendan
|
||||
<h4 id="attendnaceCanvasEmp"></h4>
|
||||
</div>
|
||||
<div class="row" style="background: #f3f4f5; padding: 10px;">
|
||||
<div id="attendnaceCanvasPunchInTimeWraper" class="col-sm-6" style="text-align: center;">
|
||||
<b>In: </b><span id="attendnaceCanvasPunchInTime"></span>
|
||||
<br/>
|
||||
IP Address: <span id="punchInIp"></span>
|
||||
</div>
|
||||
<div id="attendnaceCanvasPunchOutTimeWrapper" class="col-sm-6" style="text-align: center;">
|
||||
<b>Out: </b><span id="attendnaceCanvasPunchOutTime"></span>
|
||||
<br/>
|
||||
IP Address: <span id="punchOutIp"></span>
|
||||
</div>
|
||||
</div>
|
||||
<div id="attendancePhoto" class="row" style="background: #f3f4f5; padding: 10px;display:none;">
|
||||
<div class="col-sm-6" style="text-align: center;">
|
||||
<canvas id="attendnaceCanvasIn" height="156" width="208" style="border: 1px #222 dotted;"></canvas>
|
||||
<hr/>
|
||||
<span id="attendnaceCanvasPunchInTime"></span>
|
||||
|
||||
</div>
|
||||
<div class="col-sm-6" style="text-align: center;">
|
||||
<canvas id="attendnaceCanvasOut" height="156" width="208" style="border: 1px #222 dotted;"></canvas>
|
||||
<hr/>
|
||||
<span id="attendnaceCanvasPunchOutTime"></span>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div id="attendanceMap" class="row" style="background: #f3f4f5; padding: 10px;display:none;">
|
||||
<div id="attendnaceMapCanvasInWrapper" class="col-sm-6" style="text-align: center;">
|
||||
|
||||
</div>
|
||||
<div id="attendnaceMapCanvasOutWrapper" class="col-sm-6" style="text-align: center;">
|
||||
|
||||
</div>
|
||||
<div class="col-sm-6" style="text-align: center;">
|
||||
<span>Location: <span id="punchInLocation"></span></span>
|
||||
|
||||
</div>
|
||||
<div class="col-sm-6" style="text-align: center;">
|
||||
<span>Location: <span id="punchOutLocation"></span></span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -88,7 +96,7 @@ $photoAttendance = \Classes\SettingsManager::getInstance()->getSetting('Attendan
|
||||
var modJsList = new Array();
|
||||
modJsList['tabAttendance'] = new AttendanceAdapter('Attendance','Attendance','','in_time desc');
|
||||
modJsList['tabAttendance'].setRemoteTable(true);
|
||||
modJsList['tabAttendance'].setPhotoAttendance(<?=$photoAttendance == '1'?>);
|
||||
modJsList['tabAttendance'].setPhotoAttendance(<?=$photoAttendance == '1' || $mapAttendance == '1'?>);
|
||||
modJsList['tabAttendanceStatus'] = new AttendanceStatusAdapter('AttendanceStatus','AttendanceStatus','','');
|
||||
modJsList['tabAttendanceStatus'].setShowAddNew(false);
|
||||
var modJs = modJsList['tabAttendance'];
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
"label": "Monitor Attendance",
|
||||
"menu": "Employees",
|
||||
"order": "8",
|
||||
"icon": "fa-clock-o",
|
||||
"icon": "fa-clock",
|
||||
"user_levels": [
|
||||
"Admin",
|
||||
"Manager"
|
||||
|
||||
51
core/admin/clients/index.php
Normal file
51
core/admin/clients/index.php
Normal file
@@ -0,0 +1,51 @@
|
||||
<?php
|
||||
/*
|
||||
Copyright (c) 2020 [Glacies UG, Berlin, Germany] (http://glacies.de)
|
||||
Developer: Thilina Hasantha (http://lk.linkedin.com/in/thilinah | https://github.com/thilinah)
|
||||
*/
|
||||
|
||||
$moduleName = 'clients';
|
||||
$moduleGroup = 'admin';
|
||||
define('MODULE_PATH',dirname(__FILE__));
|
||||
include APP_BASE_PATH.'header.php';
|
||||
include APP_BASE_PATH.'modulejslibs.inc.php';
|
||||
?><div class="span9">
|
||||
|
||||
<ul class="nav nav-tabs" id="modTab" style="margin-bottom:0px;margin-left:5px;border-bottom: none;">
|
||||
<li class="active"><a id="tabClient" href="#tabPageClient"><?=t('Clients')?></a></li>
|
||||
</ul>
|
||||
|
||||
<div class="tab-content">
|
||||
<div class="tab-pane active" id="tabPageClient">
|
||||
<div id="Client" class="reviewBlock" data-content="List" style="padding-left:5px;">
|
||||
|
||||
</div>
|
||||
<div id="ClientForm" class="reviewBlock" data-content="Form" style="padding-left:5px;display:none;">
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<script>
|
||||
var modJsList = [];
|
||||
|
||||
modJsList['tabClient'] = new ClientAdapter('Client','Client');
|
||||
|
||||
<?php if(isset($modulePermissions['perm']['Add Clients']) && $modulePermissions['perm']['Add Clients'] == "No"){?>
|
||||
modJsList['tabClient'].setShowAddNew(false);
|
||||
<?php }?>
|
||||
|
||||
<?php if(isset($modulePermissions['perm']['Delete Clients']) && $modulePermissions['perm']['Delete Clients'] == "No"){?>
|
||||
modJsList['tabClient'].setShowDelete(false);
|
||||
<?php }?>
|
||||
|
||||
<?php if(isset($modulePermissions['perm']['Edit Clients']) && $modulePermissions['perm']['Edit Clients'] == "No"){?>
|
||||
modJsList['tabClient'].setShowSave(false);
|
||||
<?php }?>
|
||||
|
||||
|
||||
var modJs = modJsList['tabClient'];
|
||||
|
||||
</script>
|
||||
<?php include APP_BASE_PATH.'footer.php';?>
|
||||
20
core/admin/clients/meta.json
Normal file
20
core/admin/clients/meta.json
Normal file
@@ -0,0 +1,20 @@
|
||||
{
|
||||
"label": "Clients",
|
||||
"menu": "Admin",
|
||||
"order": "52",
|
||||
"icon": "fa-user-circle",
|
||||
"user_levels": [
|
||||
"Admin",
|
||||
"Manager"
|
||||
],
|
||||
"dashboardPosition": 4,
|
||||
"permissions": {
|
||||
"Manager": {
|
||||
"Add Clients": "Yes",
|
||||
"Edit Clients": "Yes",
|
||||
"Delete Clients": "No"
|
||||
}
|
||||
},
|
||||
"model_namespace": "\\Clients\\Common\\Model",
|
||||
"manager": "\\Clients\\Admin\\Api\\ClientsAdminManager"
|
||||
}
|
||||
@@ -1,27 +1,11 @@
|
||||
<?php
|
||||
/*
|
||||
This file is part of iCE Hrm.
|
||||
|
||||
iCE Hrm is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
iCE Hrm is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with iCE Hrm. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
------------------------------------------------------------------
|
||||
|
||||
Original work Copyright (c) 2012 [Gamonoid Media Pvt. Ltd]
|
||||
Developer: Thilina Hasantha (thilina.hasantha[at]gmail.com / facebook.com/thilinah)
|
||||
Copyright (c) 2018 [Glacies UG, Berlin, Germany] (http://glacies.de)
|
||||
Developer: Thilina Hasantha (http://lk.linkedin.com/in/thilinah | https://github.com/thilinah)
|
||||
*/
|
||||
|
||||
$moduleName = 'company_structure';
|
||||
$moduleGroup = 'admin';
|
||||
define('MODULE_PATH',dirname(__FILE__));
|
||||
include APP_BASE_PATH.'header.php';
|
||||
include APP_BASE_PATH.'modulejslibs.inc.php';
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
"label":"Company Structure",
|
||||
"menu":"Admin",
|
||||
"order":"2",
|
||||
"icon":"fa-building-o",
|
||||
"icon":"fa-building",
|
||||
"user_levels":["Admin","Manager"],
|
||||
"dashboardPosition":2,
|
||||
|
||||
|
||||
@@ -1,86 +1,16 @@
|
||||
<?php
|
||||
/*
|
||||
This file is part of iCE Hrm.
|
||||
|
||||
iCE Hrm is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
iCE Hrm is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with iCE Hrm. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
------------------------------------------------------------------
|
||||
|
||||
Original work Copyright (c) 2012 [Gamonoid Media Pvt. Ltd]
|
||||
Developer: Thilina Hasantha (thilina.hasantha[at]gmail.com / facebook.com/thilinah)
|
||||
Copyright (c) 2018 [Glacies UG, Berlin, Germany] (http://glacies.de)
|
||||
Developer: Thilina Hasantha (http://lk.linkedin.com/in/thilinah | https://github.com/thilinah)
|
||||
*/
|
||||
|
||||
$moduleName = 'dashboard';
|
||||
$moduleGroup = 'admin';
|
||||
define('MODULE_PATH',dirname(__FILE__));
|
||||
include APP_BASE_PATH.'header.php';
|
||||
include APP_BASE_PATH.'modulejslibs.inc.php';
|
||||
|
||||
$invoices = [];
|
||||
$numOfUnpaidInvoices = 0;
|
||||
if (class_exists('\\Billing\\Admin\\Api\\BillingActionManager')) {
|
||||
$billingActionManager = new \Billing\Admin\Api\BillingActionManager();
|
||||
|
||||
$invoices = $billingActionManager->getInvoices(null)->getData();
|
||||
if(!empty($invoices)){
|
||||
$invoices = json_decode(json_encode($invoices));
|
||||
}
|
||||
|
||||
foreach($invoices as $inv){
|
||||
if($inv->status == "Sent"){
|
||||
$numOfUnpaidInvoices++;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
?><div class="span9">
|
||||
<div class="row">
|
||||
<?php if($numOfUnpaidInvoices == 1){?>
|
||||
<div class="callout callout-warning lead" style="font-size: 14px;">
|
||||
<h4>You have a pending invoice</h4>
|
||||
<p style="font-weight: bold;">
|
||||
You have a pending invoice. Please make you complete the payment so we can provide a better service.
|
||||
<br/>
|
||||
<br/>
|
||||
<a href="<?=CLIENT_BASE_URL?>?g=admin&n=billing&m=admin_System#tabInvoice" class="btn btn-success btm-xs"><i class="fa fa-checkout"></i> Make a Payment</a>
|
||||
</p>
|
||||
</div>
|
||||
<?php }else if($numOfUnpaidInvoices > 1){?>
|
||||
<div class="callout callout-danger lead" style="font-size: 14px;">
|
||||
<h4>You have <?=$numOfUnpaidInvoices?> pending invoices</h4>
|
||||
<p style="font-weight: bold;">
|
||||
You have <?=$numOfUnpaidInvoices?> pending invoice. None of your employees are currently allowed to login. Please make sure you complete payments to all the invoices to restore your service.
|
||||
Please logout and login after completing the payment to get your service restored.
|
||||
<br/>
|
||||
<br/>
|
||||
<a href="<?=CLIENT_BASE_URL?>?g=admin&n=billing&m=admin_System#tabInvoice" class="btn btn-success btm-xs"><i class="fa fa-checkout"></i> Make a Payment</a>
|
||||
</p>
|
||||
</div>
|
||||
<?php }?>
|
||||
|
||||
<?php if(\Utils\SessionUtils::getSessionObject('account_locked') == "1"){?>
|
||||
<div class="callout callout-danger lead" style="font-size: 14px;">
|
||||
<h4>Your Trial Has Expired</h4>
|
||||
<p style="font-weight: bold;">
|
||||
Your Icehrm Trial has expired. Please upgrade subscription to continue. If not upgraded your account will be deleted with in few days.
|
||||
<br/>
|
||||
<br/>
|
||||
<a href="<?=CLIENT_BASE_URL?>?g=admin&n=billing&m=admin_System" class="btn btn-success btm-xs"><i class="fa fa-checkout"></i> Upgrade Subscription</a>
|
||||
</p>
|
||||
</div>
|
||||
<?php }?>
|
||||
|
||||
<?php
|
||||
$moduleManagers = \Classes\BaseService::getInstance()->getModuleManagers();
|
||||
$dashBoardList = array();
|
||||
@@ -121,5 +51,9 @@ if (class_exists('\\Billing\\Admin\\Api\\BillingActionManager')) {
|
||||
|
||||
var modJs = modJsList['tabDashboard'];
|
||||
|
||||
$(document).ready(function () {
|
||||
$('.span9 .row').prepend(window.atob('PGRpdiBjbGFzcz0iY2FsbG91dCBjYWxsb3V0LXdhcm5pbmcgbGVhZCIgc3R5bGU9ImZvbnQtc2l6ZTogMTRweDttYXJnaW4tdG9wOiA5MHB4OyI+CiAgICAgICAgICAgIDxoND5Zb3UgYXJlIGN1cnJlbnRseSB1c2luZyBJY2VIcm0gT3BlbnNvdXJjZSBWZXJzaW9uPC9oND4KICAgICAgICAgICAgPHAgc3R5bGU9ImZvbnQtd2VpZ2h0OiBib2xkOyI+CiAgICAgICAgICAgICAgICBXZSBoYXZlIGEgbG90IG1vcmUgZmVhdHVyZXMgdG8gb2ZmZXIuIEluY2x1ZGluZyBvdXIgaGlnaGx5IGN1c3RvbWl6YWJsZSBsZWF2ZSBtYW5hZ2VtZW50LCByZWNydWl0bWVudCBtb2R1bGVzIGFuZCBtYW55IG1vcmUgYWR2YW5jZWQgZmVhdHVyZXMgaW4gSWNlSHJtUHJvJiMxNzQ7CiAgICAgICAgICAgICAgICA8YnIvPgogICAgICAgICAgICAgICAgPGJyLz4KICAgICAgICAgICAgICAgIDxhIHRhcmdldD0iX2JsYW5rIiBocmVmPSJodHRwczovL2ljZWhybS5jb20vcHVyY2hhc2UtaWNlaHJtcHJvIiBjbGFzcz0iYnRuIGJ0bi1zdWNjZXNzIGJ0bS14cyI+PGkgY2xhc3M9ImZhIGZhLWNoZWNrb3V0Ij48L2k+IE1vcmUgYWJvdXQgSWNlSHJtUHJvJiMxNzQ7PC9hPgogICAgICAgICAgICA8L3A+CiAgICAgICAgPC9kaXY+'));
|
||||
});
|
||||
|
||||
</script>
|
||||
<?php include APP_BASE_PATH.'footer.php';?>
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
<?php
|
||||
|
||||
$moduleName = 'data';
|
||||
$moduleGroup = 'admin';
|
||||
define('MODULE_PATH',dirname(__FILE__));
|
||||
include APP_BASE_PATH.'header.php';
|
||||
include APP_BASE_PATH.'modulejslibs.inc.php';
|
||||
|
||||
19
core/admin/documents/dashboard.html
Normal file
19
core/admin/documents/dashboard.html
Normal file
@@ -0,0 +1,19 @@
|
||||
<div class="col-lg-3 col-xs-12">
|
||||
|
||||
<div class="small-box bg-green">
|
||||
<div class="inner">
|
||||
<h3>
|
||||
<t>Document</t>
|
||||
</h3>
|
||||
<p id="numberOfDocuments">
|
||||
<t>Management</t>
|
||||
</p>
|
||||
</div>
|
||||
<div class="icon">
|
||||
<i class="ion ion-document"></i>
|
||||
</div>
|
||||
<a href="#_moduleLink_#" class="small-box-footer" id="documentLink">
|
||||
<t>Manage</t> <t>Documents</t> <i class="fa fa-arrow-circle-right"></i>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
@@ -0,0 +1,8 @@
|
||||
Dear #_employee_#,<br/><br/>
|
||||
Following documents listed under your profile will be soon be expired<br/>
|
||||
Please login and take necessary actions.
|
||||
<br/>
|
||||
<hr/>
|
||||
#_documents_#
|
||||
IceHrm Url: <a href="#_url_#">#_url_#</a>
|
||||
<br/>
|
||||
66
core/admin/documents/index.php
Normal file
66
core/admin/documents/index.php
Normal file
@@ -0,0 +1,66 @@
|
||||
<?php
|
||||
/*
|
||||
Copyright (c) 2018 [Glacies UG, Berlin, Germany] (http://glacies.de)
|
||||
Developer: Thilina Hasantha (http://lk.linkedin.com/in/thilinah | https://github.com/thilinah)
|
||||
*/
|
||||
|
||||
$moduleName = 'documents';
|
||||
$moduleGroup = 'admin';
|
||||
define('MODULE_PATH',dirname(__FILE__));
|
||||
include APP_BASE_PATH.'header.php';
|
||||
include APP_BASE_PATH.'modulejslibs.inc.php';
|
||||
$activeStr = '';
|
||||
if($user->user_level == "Manager"){
|
||||
$activeStr = 'active';
|
||||
}
|
||||
|
||||
$moduleBuilder = new \Classes\ModuleBuilder\ModuleBuilder();
|
||||
if($user->user_level == "Admin") {
|
||||
$moduleBuilder->addModuleOrGroup(new \Classes\ModuleBuilder\ModuleTab(
|
||||
'CompanyDocument',
|
||||
'CompanyDocument',
|
||||
'Company Documents',
|
||||
'CompanyDocumentAdapter',
|
||||
'',
|
||||
'',
|
||||
true
|
||||
));
|
||||
$moduleBuilder->addModuleOrGroup(new \Classes\ModuleBuilder\ModuleTab(
|
||||
'Document',
|
||||
'Document',
|
||||
'Document Types',
|
||||
'DocumentAdapter',
|
||||
'',
|
||||
'',
|
||||
false
|
||||
));
|
||||
$options1 = array();
|
||||
$options1['setRemoteTable'] = 'true';
|
||||
$moduleBuilder->addModuleOrGroup(new \Classes\ModuleBuilder\ModuleTab(
|
||||
'EmployeeDocument',
|
||||
'EmployeeDocument',
|
||||
'Employee Documents',
|
||||
'EmployeeDocumentAdapter',
|
||||
'',
|
||||
'',
|
||||
false,
|
||||
$options1
|
||||
));
|
||||
}else{
|
||||
$options1 = array();
|
||||
$options1['setRemoteTable'] = 'true';
|
||||
$moduleBuilder->addModuleOrGroup(new \Classes\ModuleBuilder\ModuleTab(
|
||||
'EmployeeDocument',
|
||||
'EmployeeDocument',
|
||||
'Employee Documents',
|
||||
'EmployeeDocumentAdapter',
|
||||
'',
|
||||
'',
|
||||
($user->user_level != "Admin"),
|
||||
$options1
|
||||
));
|
||||
}
|
||||
|
||||
echo \Classes\UIManager::getInstance()->renderModule($moduleBuilder);
|
||||
|
||||
include APP_BASE_PATH.'footer.php';
|
||||
14
core/admin/documents/meta.json
Normal file
14
core/admin/documents/meta.json
Normal file
@@ -0,0 +1,14 @@
|
||||
{
|
||||
"label": "Document Management",
|
||||
"menu": "Employees",
|
||||
"order": "2",
|
||||
"icon": "fa-file-alt",
|
||||
"user_levels": [
|
||||
"Admin",
|
||||
"Manager"
|
||||
],
|
||||
"dashboardPosition": 13,
|
||||
"permissions": [],
|
||||
"model_namespace": "\\Documents\\Common\\Model",
|
||||
"manager": "\\Documents\\Admin\\Api\\DocumentsAdminManager"
|
||||
}
|
||||
@@ -159,10 +159,11 @@
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="row" style="margin-left:10px;margin-top:20px;">
|
||||
<div id="customFieldsCont">
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="modal" id="adminUsersModel" tabindex="-1" role="dialog" aria-labelledby="messageModelLabel" aria-hidden="true">
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
<?php
|
||||
|
||||
$moduleName = 'employees';
|
||||
$moduleGroup = 'admin';
|
||||
define('MODULE_PATH',dirname(__FILE__));
|
||||
include APP_BASE_PATH.'header.php';
|
||||
include APP_BASE_PATH.'modulejslibs.inc.php';
|
||||
|
||||
@@ -1,14 +1,11 @@
|
||||
<?php
|
||||
/*
|
||||
This file is part of Ice Framework.
|
||||
|
||||
------------------------------------------------------------------
|
||||
|
||||
Original work Copyright (c) 2012 [Gamonoid Media Pvt. Ltd]
|
||||
Developer: Thilina Hasantha (thilina.hasantha[at]gmail.com / facebook.com/thilinah)
|
||||
Copyright (c) 2018 [Glacies UG, Berlin, Germany] (http://glacies.de)
|
||||
Developer: Thilina Hasantha (http://lk.linkedin.com/in/thilinah | https://github.com/thilinah)
|
||||
*/
|
||||
|
||||
$moduleName = 'fieldnames';
|
||||
$moduleGroup = 'admin';
|
||||
define('MODULE_PATH',dirname(__FILE__));
|
||||
include APP_BASE_PATH.'header.php';
|
||||
include APP_BASE_PATH.'modulejslibs.inc.php';
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
"label": "Employee Custom Fields",
|
||||
"menu": "Admin",
|
||||
"order": "83",
|
||||
"icon": "fa-sliders",
|
||||
"icon": "fa-ruler-horizontal",
|
||||
"user_levels": [
|
||||
"Admin"
|
||||
],
|
||||
|
||||
@@ -1,26 +1,10 @@
|
||||
<?php
|
||||
/*
|
||||
This file is part of iCE Hrm.
|
||||
|
||||
iCE Hrm is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
iCE Hrm is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with iCE Hrm. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
------------------------------------------------------------------
|
||||
|
||||
Original work Copyright (c) 2012 [Gamonoid Media Pvt. Ltd]
|
||||
Developer: Thilina Hasantha (thilina.hasantha[at]gmail.com / facebook.com/thilinah)
|
||||
Copyright (c) 2018 [Glacies UG, Berlin, Germany] (http://glacies.de)
|
||||
Developer: Thilina Hasantha (http://lk.linkedin.com/in/thilinah | https://github.com/thilinah)
|
||||
*/
|
||||
$moduleName = 'jobs';
|
||||
$moduleGroup = 'admin';
|
||||
define('MODULE_PATH',dirname(__FILE__));
|
||||
include APP_BASE_PATH.'header.php';
|
||||
include APP_BASE_PATH.'modulejslibs.inc.php';
|
||||
|
||||
@@ -1,27 +1,11 @@
|
||||
<?php
|
||||
/*
|
||||
This file is part of iCE Hrm.
|
||||
|
||||
iCE Hrm is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
iCE Hrm is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with iCE Hrm. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
------------------------------------------------------------------
|
||||
|
||||
Original work Copyright (c) 2012 [Gamonoid Media Pvt. Ltd]
|
||||
Developer: Thilina Hasantha (thilina.hasantha[at]gmail.com / facebook.com/thilinah)
|
||||
Copyright (c) 2018 [Glacies UG, Berlin, Germany] (http://glacies.de)
|
||||
Developer: Thilina Hasantha (http://lk.linkedin.com/in/thilinah | https://github.com/thilinah)
|
||||
*/
|
||||
|
||||
$moduleName = 'CompanyLoans';
|
||||
$moduleName = 'loans';
|
||||
$moduleGroup = 'admin';
|
||||
define('MODULE_PATH',dirname(__FILE__));
|
||||
include APP_BASE_PATH.'header.php';
|
||||
include APP_BASE_PATH.'modulejslibs.inc.php';
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
"label": "Company Loans",
|
||||
"menu": "Admin",
|
||||
"order": "89",
|
||||
"icon": "fa-shield",
|
||||
"icon": "fa-money-check",
|
||||
"user_levels": [
|
||||
"Admin"
|
||||
],
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
{
|
||||
"Admin": "fa-cubes",
|
||||
"Employees":"fa-users",
|
||||
"Admin Reports":"fa-file-text",
|
||||
"Employees": "fa-grip-horizontal",
|
||||
"Admin Reports": "fa-book-reader",
|
||||
"System": "fa-cogs",
|
||||
"Insights":"fa-bar-chart-o",
|
||||
"Payroll":"fa-money"
|
||||
"Insights": "fa-chart-line",
|
||||
"Payroll": "fa-file-archive"
|
||||
}
|
||||
|
||||
@@ -1,27 +1,6 @@
|
||||
<?php
|
||||
/*
|
||||
This file is part of Ice Framework.
|
||||
|
||||
Ice Framework is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
Ice Framework is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with Ice Framework. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
------------------------------------------------------------------
|
||||
|
||||
Original work Copyright (c) 2012 [Gamonoid Media Pvt. Ltd]
|
||||
Developer: Thilina Hasantha (thilina.hasantha[at]gmail.com / facebook.com/thilinah)
|
||||
*/
|
||||
|
||||
$moduleName = 'metadata';
|
||||
$moduleGroup = 'admin';
|
||||
define('MODULE_PATH',dirname(__FILE__));
|
||||
include APP_BASE_PATH.'header.php';
|
||||
include APP_BASE_PATH.'modulejslibs.inc.php';
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
"label": "Manage Metadata",
|
||||
"menu": "System",
|
||||
"order": "6",
|
||||
"icon": "fa-sort-alpha-asc",
|
||||
"icon": "fa-microchip",
|
||||
"user_levels": [
|
||||
"Admin"
|
||||
],
|
||||
|
||||
@@ -1,27 +1,11 @@
|
||||
<?php
|
||||
/*
|
||||
This file is part of iCE Hrm.
|
||||
|
||||
iCE Hrm is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
iCE Hrm is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with iCE Hrm. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
------------------------------------------------------------------
|
||||
|
||||
Original work Copyright (c) 2012 [Gamonoid Media Pvt. Ltd]
|
||||
Developer: Thilina Hasantha (thilina.hasantha[at]gmail.com / facebook.com/thilinah)
|
||||
Copyright (c) 2018 [Glacies UG, Berlin, Germany] (http://glacies.de)
|
||||
Developer: Thilina Hasantha (http://lk.linkedin.com/in/thilinah | https://github.com/thilinah)
|
||||
*/
|
||||
|
||||
$moduleName = 'Modules';
|
||||
$moduleName = 'modules';
|
||||
$moduleGroup = 'admin';
|
||||
define('MODULE_PATH',dirname(__FILE__));
|
||||
include APP_BASE_PATH.'header.php';
|
||||
include APP_BASE_PATH.'modulejslibs.inc.php';
|
||||
|
||||
@@ -1,27 +1,11 @@
|
||||
<?php
|
||||
/*
|
||||
This file is part of iCE Hrm.
|
||||
|
||||
iCE Hrm is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
iCE Hrm is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with iCE Hrm. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
------------------------------------------------------------------
|
||||
|
||||
Original work Copyright (c) 2012 [Gamonoid Media Pvt. Ltd]
|
||||
Developer: Thilina Hasantha (thilina.hasantha[at]gmail.com / facebook.com/thilinah)
|
||||
Copyright (c) 2018 [Glacies UG, Berlin, Germany] (http://glacies.de)
|
||||
Developer: Thilina Hasantha (http://lk.linkedin.com/in/thilinah | https://github.com/thilinah)
|
||||
*/
|
||||
|
||||
$moduleName = 'travel';
|
||||
$moduleName = 'overtime';
|
||||
$moduleGroup = 'admin';
|
||||
define('MODULE_PATH',dirname(__FILE__));
|
||||
include APP_BASE_PATH.'header.php';
|
||||
include APP_BASE_PATH.'modulejslibs.inc.php';
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"label": "Overtime Administration",
|
||||
"label": "Overtime",
|
||||
"menu": "Admin",
|
||||
"order": "82",
|
||||
"icon": "fa-align-center",
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
<?php
|
||||
|
||||
$moduleName = 'payroll';
|
||||
$moduleGroup = 'admin';
|
||||
define('MODULE_PATH',dirname(__FILE__));
|
||||
include APP_BASE_PATH.'header.php';
|
||||
include APP_BASE_PATH.'modulejslibs.inc.php';
|
||||
@@ -10,11 +11,11 @@ include APP_BASE_PATH.'modulejslibs.inc.php';
|
||||
</style>
|
||||
<div class="span9">
|
||||
<ul class="nav nav-tabs" id="modTab" style="margin-bottom:0px;margin-left:5px;border-bottom: none;">
|
||||
<li class="active"><a id="tabPayrollEmployee" href="#tabPagePayrollEmployee"><?=t('Company Payroll')?></a></li>
|
||||
<li class="active"><a id="tabPayrollEmployee" href="#tabPagePayrollEmployee"><?=t('Payroll Employees')?></a></li>
|
||||
<li class=""><a id="tabPayroll" href="#tabPagePayroll"><?=t('Payroll Reports')?></a></li>
|
||||
<li class=""><a id="tabPayrollColumn" href="#tabPagePayrollColumn"><?=t('Payroll Columns')?></a></li>
|
||||
<li class=""><a id="tabDeductionGroup" href="#tabPageDeductionGroup"><?=t('Calculation Groups')?></a></li>
|
||||
<li class=""><a id="tabDeduction" href="#tabPageDeduction"><?=t('Calculation Methods')?></a></li>
|
||||
<li class=""><a id="tabDeductionGroup" href="#tabPageDeductionGroup"><?=t('Payroll Groups')?></a></li>
|
||||
<li class=""><a id="tabDeduction" href="#tabPageDeduction"><?=t('Saved Calculations')?></a></li>
|
||||
<li class=""><a id="tabPayslipTemplate" href="#tabPagePayslipTemplate"><?=t('Payslip Templates')?></a></li>
|
||||
</ul>
|
||||
|
||||
|
||||
@@ -1,27 +1,11 @@
|
||||
<?php
|
||||
/*
|
||||
This file is part of iCE Hrm.
|
||||
|
||||
iCE Hrm is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
iCE Hrm is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with iCE Hrm. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
------------------------------------------------------------------
|
||||
|
||||
Original work Copyright (c) 2012 [Gamonoid Media Pvt. Ltd]
|
||||
Developer: Thilina Hasantha (thilina.hasantha[at]gmail.com / facebook.com/thilinah)
|
||||
Copyright (c) 2018 [Glacies UG, Berlin, Germany] (http://glacies.de)
|
||||
Developer: Thilina Hasantha (http://lk.linkedin.com/in/thilinah | https://github.com/thilinah)
|
||||
*/
|
||||
|
||||
$moduleName = 'Permissions';
|
||||
$moduleName = 'permissions';
|
||||
$moduleGroup = 'admin';
|
||||
define('MODULE_PATH',dirname(__FILE__));
|
||||
include APP_BASE_PATH.'header.php';
|
||||
include APP_BASE_PATH.'modulejslibs.inc.php';
|
||||
|
||||
@@ -1,48 +1,23 @@
|
||||
<?php
|
||||
/*
|
||||
This file is part of iCE Hrm.
|
||||
|
||||
iCE Hrm is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
iCE Hrm is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with iCE Hrm. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
------------------------------------------------------------------
|
||||
|
||||
Original work Copyright (c) 2012 [Gamonoid Media Pvt. Ltd]
|
||||
Developer: Thilina Hasantha (thilina.hasantha[at]gmail.com / facebook.com/thilinah)
|
||||
Copyright (c) 2018 [Glacies UG, Berlin, Germany] (http://glacies.de)
|
||||
Developer: Thilina Hasantha (http://lk.linkedin.com/in/thilinah | https://github.com/thilinah)
|
||||
*/
|
||||
|
||||
$moduleName = 'projects';
|
||||
$moduleGroup = 'admin';
|
||||
define('MODULE_PATH',dirname(__FILE__));
|
||||
include APP_BASE_PATH.'header.php';
|
||||
include APP_BASE_PATH.'modulejslibs.inc.php';
|
||||
?><div class="span9">
|
||||
|
||||
<ul class="nav nav-tabs" id="modTab" style="margin-bottom:0px;margin-left:5px;border-bottom: none;">
|
||||
<li class="active"><a id="tabClient" href="#tabPageClient"><?=t('Clients')?></a></li>
|
||||
<li><a id="tabProject" href="#tabPageProject"><?=t('Projects')?></a></li>
|
||||
<li class="active"><a id="tabProject" href="#tabPageProject"><?=t('Projects')?></a></li>
|
||||
<li><a id="tabEmployeeProject" href="#tabPageEmployeeProject"><?=t('Employee Projects')?></a></li>
|
||||
</ul>
|
||||
|
||||
<div class="tab-content">
|
||||
<div class="tab-pane active" id="tabPageClient">
|
||||
<div id="Client" class="reviewBlock" data-content="List" style="padding-left:5px;">
|
||||
|
||||
</div>
|
||||
<div id="ClientForm" class="reviewBlock" data-content="Form" style="padding-left:5px;display:none;">
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="tab-pane" id="tabPageProject">
|
||||
<div class="tab-pane active" id="tabPageProject">
|
||||
<div id="Project" class="reviewBlock" data-content="List" style="padding-left:5px;">
|
||||
|
||||
</div>
|
||||
@@ -62,21 +37,7 @@ include APP_BASE_PATH.'modulejslibs.inc.php';
|
||||
|
||||
</div>
|
||||
<script>
|
||||
var modJsList = new Array();
|
||||
|
||||
modJsList['tabClient'] = new ClientAdapter('Client','Client');
|
||||
|
||||
<?php if(isset($modulePermissions['perm']['Add Clients']) && $modulePermissions['perm']['Add Clients'] == "No"){?>
|
||||
modJsList['tabClient'].setShowAddNew(false);
|
||||
<?php }?>
|
||||
|
||||
<?php if(isset($modulePermissions['perm']['Delete Clients']) && $modulePermissions['perm']['Delete Clients'] == "No"){?>
|
||||
modJsList['tabClient'].setShowDelete(false);
|
||||
<?php }?>
|
||||
|
||||
<?php if(isset($modulePermissions['perm']['Edit Clients']) && $modulePermissions['perm']['Edit Clients'] == "No"){?>
|
||||
modJsList['tabClient'].setShowSave(false);
|
||||
<?php }?>
|
||||
var modJsList = [];
|
||||
|
||||
modJsList['tabProject'] = new ProjectAdapter('Project','Project');
|
||||
|
||||
@@ -107,7 +68,7 @@ modJsList['tabEmployeeProject'].setShowEdit(false);
|
||||
<?php }?>
|
||||
|
||||
|
||||
var modJs = modJsList['tabClient'];
|
||||
var modJs = modJsList['tabProject'];
|
||||
|
||||
</script>
|
||||
<?php include APP_BASE_PATH.'footer.php';?>
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"label": "Projects\/Client Setup",
|
||||
"label": "Projects",
|
||||
"menu": "Admin",
|
||||
"order": "51",
|
||||
"icon": "fa-list-alt",
|
||||
@@ -12,10 +12,7 @@
|
||||
"Manager": {
|
||||
"Add Projects": "Yes",
|
||||
"Edit Projects": "Yes",
|
||||
"Delete Projects": "No",
|
||||
"Add Clients": "Yes",
|
||||
"Edit Clients": "Yes",
|
||||
"Delete Clients": "No"
|
||||
"Delete Projects": "No"
|
||||
}
|
||||
},
|
||||
"model_namespace": "\\Projects\\Common\\Model",
|
||||
|
||||
@@ -1,27 +1,11 @@
|
||||
<?php
|
||||
/*
|
||||
This file is part of iCE Hrm.
|
||||
|
||||
iCE Hrm is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
iCE Hrm is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with iCE Hrm. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
------------------------------------------------------------------
|
||||
|
||||
Original work Copyright (c) 2012 [Gamonoid Media Pvt. Ltd]
|
||||
Developer: Thilina Hasantha (thilina.hasantha[at]gmail.com / facebook.com/thilinah)
|
||||
Copyright (c) 2018 [Glacies UG, Berlin, Germany] (http://glacies.de)
|
||||
Developer: Thilina Hasantha (http://lk.linkedin.com/in/thilinah | https://github.com/thilinah)
|
||||
*/
|
||||
|
||||
$moduleName = 'company_structure';
|
||||
$moduleName = 'qualifications';
|
||||
$moduleGroup = 'admin';
|
||||
define('MODULE_PATH',dirname(__FILE__));
|
||||
include APP_BASE_PATH.'header.php';
|
||||
include APP_BASE_PATH.'modulejslibs.inc.php';
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
"label": "Qualifications Setup",
|
||||
"menu": "Admin",
|
||||
"order": "4",
|
||||
"icon": "fa-check-square-o",
|
||||
"icon": "fa-check-square",
|
||||
"user_levels": [
|
||||
"Admin",
|
||||
"Manager"
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
<?php
|
||||
|
||||
$moduleName = 'Reports';
|
||||
$moduleName = 'reports';
|
||||
$moduleGroup = 'admin';
|
||||
define('MODULE_PATH',dirname(__FILE__));
|
||||
include APP_BASE_PATH.'header.php';
|
||||
include APP_BASE_PATH.'modulejslibs.inc.php';
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
"label": "Reports",
|
||||
"menu": "Admin Reports",
|
||||
"order": "1",
|
||||
"icon": "fa-file-o",
|
||||
"icon": "fa-window-maximize",
|
||||
"user_levels": [
|
||||
"Admin",
|
||||
"Manager"
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
<?php
|
||||
|
||||
$moduleName = 'salary';
|
||||
$moduleGroup = 'admin';
|
||||
define('MODULE_PATH',dirname(__FILE__));
|
||||
include APP_BASE_PATH.'header.php';
|
||||
include APP_BASE_PATH.'modulejslibs.inc.php';
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
"label": "Salary",
|
||||
"menu": "Payroll",
|
||||
"order": "1",
|
||||
"icon": "fa-money",
|
||||
"icon": "fa-money-check-alt",
|
||||
"user_levels": [
|
||||
"Admin"
|
||||
],
|
||||
|
||||
@@ -1,60 +1,48 @@
|
||||
<?php
|
||||
/*
|
||||
This file is part of iCE Hrm.
|
||||
|
||||
iCE Hrm is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
iCE Hrm is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with iCE Hrm. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
------------------------------------------------------------------
|
||||
|
||||
Original work Copyright (c) 2012 [Gamonoid Media Pvt. Ltd]
|
||||
Developer: Thilina Hasantha (thilina.hasantha[at]gmail.com / facebook.com/thilinah)
|
||||
Copyright (c) 2018 [Glacies UG, Berlin, Germany] (http://glacies.de)
|
||||
Developer: Thilina Hasantha (http://lk.linkedin.com/in/thilinah | https://github.com/thilinah)
|
||||
*/
|
||||
|
||||
use Classes\ModuleBuilder\ModuleBuilder;
|
||||
use Classes\ModuleBuilder\ModuleTab;
|
||||
|
||||
$moduleName = 'settings';
|
||||
$moduleGroup = 'admin';
|
||||
define('MODULE_PATH',dirname(__FILE__));
|
||||
include APP_BASE_PATH.'header.php';
|
||||
include APP_BASE_PATH.'modulejslibs.inc.php';
|
||||
|
||||
$moduleBuilder = new \Classes\ModuleBuilder\ModuleBuilder();
|
||||
$moduleBuilder = new ModuleBuilder();
|
||||
|
||||
$options1 = array();
|
||||
$options1['setShowAddNew'] = 'false';
|
||||
$options1['setRemoteTable'] = 'true';
|
||||
|
||||
$moduleBuilder->addModuleOrGroup(new \Classes\ModuleBuilder\ModuleTab(
|
||||
'CompanySetting','Setting','Company','SettingAdapter','{"name":["Company:"]}','name',true,$options1
|
||||
$moduleBuilder->addModuleOrGroup(new ModuleTab(
|
||||
'CompanySetting','Setting','Company','SettingAdapter','{"category":"Company"}','name',true,$options1
|
||||
));
|
||||
$moduleBuilder->addModuleOrGroup(new \Classes\ModuleBuilder\ModuleTab(
|
||||
'SystemSetting','Setting','System','SettingAdapter','{"name":["System:"]}','name',false,$options1
|
||||
$moduleBuilder->addModuleOrGroup(new ModuleTab(
|
||||
'SystemSetting','Setting','System','SettingAdapter','{"category":"System"}','name',false,$options1
|
||||
));
|
||||
if (!defined('CLOUD_INSTALLATION')) {
|
||||
$moduleBuilder->addModuleOrGroup(new \Classes\ModuleBuilder\ModuleTab(
|
||||
'EmailSetting', 'Setting', 'Email', 'SettingAdapter', '{"name":["Email:"]}', 'name', false, $options1
|
||||
$moduleBuilder->addModuleOrGroup(new ModuleTab(
|
||||
'EmailSetting', 'Setting', 'Email', 'SettingAdapter', '{"category":"Email"}', 'name', false, $options1
|
||||
));
|
||||
}
|
||||
$moduleBuilder->addModuleOrGroup(new \Classes\ModuleBuilder\ModuleTab(
|
||||
'LeaveSetting','Setting','Leave / PTO','SettingAdapter','{"name":["Leave:"]}','name',false,$options1
|
||||
$moduleBuilder->addModuleOrGroup(new ModuleTab(
|
||||
'LeaveSetting','Setting','Leave / PTO','SettingAdapter','{"category":"Leave"}','name',false,$options1
|
||||
));
|
||||
if(!defined('LDAP_ENABLED') || LDAP_ENABLED == true){
|
||||
$moduleBuilder->addModuleOrGroup(new \Classes\ModuleBuilder\ModuleTab(
|
||||
'LDAPSetting','Setting','LDAP','SettingAdapter','{"name":["LDAP:"]}','name',false,$options1
|
||||
$moduleBuilder->addModuleOrGroup(new ModuleTab(
|
||||
'LDAPSetting','Setting','LDAP','SettingAdapter','{"category":"LDAP"}','name',false,$options1
|
||||
));
|
||||
}
|
||||
$moduleBuilder->addModuleOrGroup(new \Classes\ModuleBuilder\ModuleTab(
|
||||
'AttendanceSetting','Setting','Attendance','SettingAdapter','{"name":["Attendance:"]}','name',false,$options1
|
||||
$moduleBuilder->addModuleOrGroup(new ModuleTab(
|
||||
'AttendanceSetting','Setting','Attendance','SettingAdapter','{"category":"Attendance"}','name',false,$options1
|
||||
));
|
||||
$moduleBuilder->addModuleOrGroup(new \Classes\ModuleBuilder\ModuleTab(
|
||||
'OtherSetting','Setting','Other','SettingAdapter','{"name":["Projects:","Recruitment:","Notifications:","Expense:","Travel:","Api:","Overtime:"]}','name',false,$options1
|
||||
$moduleBuilder->addModuleOrGroup(new ModuleTab(
|
||||
'OtherSetting','Setting','Other','SettingAdapter','{"category":["Projects","Recruitment","Notifications","Expense","Travel","Api","Overtime"]}','name',false,$options1
|
||||
));
|
||||
echo \Classes\UIManager::getInstance()->renderModule($moduleBuilder);
|
||||
?>
|
||||
|
||||
@@ -1,27 +1,11 @@
|
||||
<?php
|
||||
/*
|
||||
This file is part of iCE Hrm.
|
||||
|
||||
iCE Hrm is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
iCE Hrm is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with iCE Hrm. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
------------------------------------------------------------------
|
||||
|
||||
Original work Copyright (c) 2012 [Gamonoid Media Pvt. Ltd]
|
||||
Developer: Thilina Hasantha (thilina.hasantha[at]gmail.com / facebook.com/thilinah)
|
||||
Copyright (c) 2018 [Glacies UG, Berlin, Germany] (http://glacies.de)
|
||||
Developer: Thilina Hasantha (http://lk.linkedin.com/in/thilinah | https://github.com/thilinah)
|
||||
*/
|
||||
|
||||
$moduleName = 'travel';
|
||||
$moduleGroup = 'admin';
|
||||
define('MODULE_PATH',dirname(__FILE__));
|
||||
include APP_BASE_PATH.'header.php';
|
||||
include APP_BASE_PATH.'modulejslibs.inc.php';
|
||||
|
||||
@@ -4,11 +4,20 @@ Your account in <b>IceHrm</b> has been created on <a href="#_url_#">#_url_#</a><
|
||||
<b>Please find your account information below:</b><br/><br/>
|
||||
Username: <b>#_username_#</b><br/>
|
||||
Email: <b>#_email_#</b> (You can use, username or email to login)<br/>
|
||||
Password: <b>#_password_#</b> (Strongly advised to change this password once logged in)<br/>
|
||||
Temporary Password: <b>#_password_#</b> (Strongly advised to change this password once logged in)<br/>
|
||||
<br/>
|
||||
|
||||
|
||||
To get started, follow this link: <b><a href="#_url_#">#_url_#</a></b><br/><br/>
|
||||
Login to IceHrm here: (<b><a href="#_url_#">#_url_#</a></b>)<br/>
|
||||
<table class="body-action" align="center" width="100%" cellpadding="0" cellspacing="0" style="font-family: Arial, 'Helvetica Neue', Helvetica, sans-serif; -webkit-box-sizing: border-box; box-sizing: border-box; width: 100%; margin: 30px auto; padding: 0; text-align: center;">
|
||||
<tr>
|
||||
<td align="center" style="font-family: Arial, 'Helvetica Neue', Helvetica, sans-serif; -webkit-box-sizing: border-box; box-sizing: border-box;">
|
||||
<div style="font-family: Arial, 'Helvetica Neue', Helvetica, sans-serif; -webkit-box-sizing: border-box; box-sizing: border-box;">
|
||||
<a href="#_url_#" class="button" style="font-family: Arial, 'Helvetica Neue', Helvetica, sans-serif; -webkit-box-sizing: border-box; box-sizing: border-box; display: inline-block; width: 200px; border-radius: 3px; color: #ffffff; font-size: 15px; line-height: 45px; text-align: center; text-decoration: none; -webkit-text-size-adjust: none; mso-hide: all; background-color: #22BC66;" target="_blank">Get Started</a>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<font face="Arial, sans-serif" size="1" color="#4a4a4a">
|
||||
THIS IS AN AUTOMATED EMAIL - REPLIES WILL BE SENT TO #_adminEmail_#
|
||||
|
||||
@@ -1,27 +1,11 @@
|
||||
<?php
|
||||
/*
|
||||
This file is part of iCE Hrm.
|
||||
|
||||
iCE Hrm is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
iCE Hrm is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with iCE Hrm. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
------------------------------------------------------------------
|
||||
|
||||
Original work Copyright (c) 2012 [Gamonoid Media Pvt. Ltd]
|
||||
Developer: Thilina Hasantha (thilina.hasantha[at]gmail.com / facebook.com/thilinah)
|
||||
Copyright (c) 2018 [Glacies UG, Berlin, Germany] (http://glacies.de)
|
||||
Developer: Thilina Hasantha (http://lk.linkedin.com/in/thilinah | https://github.com/thilinah)
|
||||
*/
|
||||
|
||||
$moduleName = 'users';
|
||||
$moduleGroup = 'admin';
|
||||
define('MODULE_PATH',dirname(__FILE__));
|
||||
include APP_BASE_PATH.'header.php';
|
||||
include APP_BASE_PATH.'modulejslibs.inc.php';
|
||||
@@ -29,7 +13,7 @@ $csrf = \Classes\BaseService::getInstance()->generateCsrf('User');
|
||||
?><div class="span9">
|
||||
<ul class="nav nav-tabs" id="modTab" style="margin-bottom:0px;margin-left:5px;border-bottom: none;">
|
||||
<li class="active"><a id="tabUser" href="#tabPageUser"><?=t('Users')?></a></li>
|
||||
<li class=""><a id="tabUserRole" href="#tabPageUserRole"><?=t('User Roles')?></a></li>
|
||||
<li class=""><a id="tabUserRole" href="#tabPageUserRole"><?=t('Users Roles')?></a></li>
|
||||
</ul>
|
||||
|
||||
<div class="tab-content">
|
||||
@@ -53,9 +37,10 @@ $csrf = \Classes\BaseService::getInstance()->generateCsrf('User');
|
||||
|
||||
</div>
|
||||
<script>
|
||||
var modJsList = new Array();
|
||||
var modJsList = [];
|
||||
modJsList['tabUser'] = new UserAdapter('User');
|
||||
modJsList['tabUser'].setCSRFRequired(true);
|
||||
modJsList['tabUser'].setRemoteTable(true);;
|
||||
<?php if(isset($_GET['action']) && $_GET['action'] == "new" && isset($_GET['object'])){?>
|
||||
modJsList['tabUser'].newInitObject = JSON.parse(Base64.decode('<?=$_GET['object']?>'));
|
||||
<?php }?>
|
||||
|
||||
@@ -13,10 +13,10 @@ if(!defined('HOME_LINK_OTHERS')){
|
||||
}
|
||||
|
||||
//Version
|
||||
define('VERSION', '24.0.0.OS');
|
||||
define('CACHE_VALUE', '24.0.0.OS');
|
||||
define('VERSION_NUMBER', '2400');
|
||||
define('VERSION_DATE', '26/06/2018');
|
||||
define('VERSION', '27.0.0.OS');
|
||||
define('CACHE_VALUE', '27.0.0.OS');
|
||||
define('VERSION_NUMBER', '270000');
|
||||
define('VERSION_DATE', '29/05/2020');
|
||||
|
||||
if(!defined('CONTACT_EMAIL')){define('CONTACT_EMAIL','icehrm@gamonoid.com');}
|
||||
if(!defined('KEY_PREFIX')){define('KEY_PREFIX','IceHrm');}
|
||||
|
||||
@@ -10,7 +10,6 @@ if(!$crons){
|
||||
|
||||
\Utils\LogManager::getInstance()->info(CLIENT_NAME." cron count :".count($crons));
|
||||
foreach($crons as $cron){
|
||||
$count++;
|
||||
$iceCron = new \Classes\Cron\IceCron($cron);
|
||||
\Utils\LogManager::getInstance()->info(CLIENT_NAME." check cron :".$cron->name);
|
||||
if($iceCron->isRunNow()){
|
||||
|
||||
@@ -17,6 +17,14 @@ $_REQUEST['sm'] = \Classes\BaseService::getInstance()->fixJSON($_REQUEST['sm']);
|
||||
$_REQUEST['cl'] = \Classes\BaseService::getInstance()->fixJSON($_REQUEST['cl']);
|
||||
$_REQUEST['ft'] = \Classes\BaseService::getInstance()->fixJSON($_REQUEST['ft']);
|
||||
|
||||
// Domain aware input cleanup
|
||||
$cleaner = new \Classes\DomainAwareInputCleaner();
|
||||
$_REQUEST['t'] = $cleaner->cleanTableColumn($_REQUEST['t']);
|
||||
$_REQUEST['ft'] = $cleaner->cleanFilters($_REQUEST['ft']);
|
||||
$_REQUEST['ob'] = $cleaner->cleanOrderBy($_REQUEST['ob']);
|
||||
$_REQUEST['sSearch'] = $cleaner->cleanSearch($_REQUEST['sSearch']);
|
||||
$_REQUEST['cl'] = $cleaner->cleanColumns($_REQUEST['cl']);
|
||||
|
||||
$columns = json_decode($_REQUEST['cl'], true);
|
||||
$columns[] = "id";
|
||||
$table = $_REQUEST['t'];
|
||||
@@ -207,6 +215,7 @@ if (!isset($_REQUEST['objects'])) {
|
||||
echo \Classes\BaseService::getInstance()->safeJsonEncode($output);
|
||||
} catch (Exception $e) {
|
||||
\Utils\LogManager::getInstance()->error($e->getMessage());
|
||||
\Utils\LogManager::getInstance()->notifyException($e);
|
||||
echo json_encode(['status' => 'Error']);
|
||||
}
|
||||
} else {
|
||||
|
||||
312
core/data/payroll/Ghana-Payroll.txt
Normal file
312
core/data/payroll/Ghana-Payroll.txt
Normal file
@@ -0,0 +1,312 @@
|
||||
{
|
||||
"name": "Ghana Payroll Calculation",
|
||||
"description": "",
|
||||
"deductions": [
|
||||
{
|
||||
"id": "101",
|
||||
"name": "Housing Allowance (10%)",
|
||||
"componentType": "[]",
|
||||
"component": "[\"1\"]",
|
||||
"payrollColumn": null,
|
||||
"rangeAmounts": "[{\"lowerCondition\":\"No Lower Limit\",\"lowerLimit\":0,\"upperCondition\":\"No Upper Limit\",\"upperLimit\":0,\"amount\":\"X*0.1\",\"id\":\"rangeAmounts_1\"}]"
|
||||
},
|
||||
{
|
||||
"id": "102",
|
||||
"name": "Overtime Allowance (10%)",
|
||||
"componentType": "[]",
|
||||
"component": "[\"1\"]",
|
||||
"payrollColumn": null,
|
||||
"rangeAmounts": "[{\"lowerCondition\":\"No Lower Limit\",\"lowerLimit\":0,\"upperCondition\":\"No Upper Limit\",\"upperLimit\":0,\"amount\":\"X*0.1\",\"id\":\"rangeAmounts_1\"}]"
|
||||
},
|
||||
{
|
||||
"id": "103",
|
||||
"name": "SSNIT",
|
||||
"componentType": "[]",
|
||||
"component": "[\"1\"]",
|
||||
"payrollColumn": null,
|
||||
"rangeAmounts": "[{\"lowerCondition\":\"No Lower Limit\",\"lowerLimit\":0,\"upperCondition\":\"No Upper Limit\",\"upperLimit\":0,\"amount\":\"X*0.055\",\"id\":\"rangeAmounts_1\"}]"
|
||||
},
|
||||
{
|
||||
"id": "104",
|
||||
"name": "Tax - Ghana",
|
||||
"componentType": "[]",
|
||||
"component": "[]",
|
||||
"payrollColumn": null,
|
||||
"rangeAmounts": ""
|
||||
},
|
||||
{
|
||||
"id": "106",
|
||||
"name": "Next 108 GHC",
|
||||
"componentType": "[]",
|
||||
"component": "[]",
|
||||
"payrollColumn": "112",
|
||||
"rangeAmounts": "[{\"lowerCondition\":\"gte\",\"lowerLimit\":\"216\",\"upperCondition\":\"lt\",\"upperLimit\":\"324\",\"amount\":\"X*0.05\",\"id\":\"rangeAmounts_1\"},{\"lowerCondition\":\"gte\",\"lowerLimit\":\"324\",\"upperCondition\":\"No Upper Limit\",\"upperLimit\":0,\"amount\":\"5.4\",\"id\":\"rangeAmounts_2\"}]"
|
||||
},
|
||||
{
|
||||
"id": "107",
|
||||
"name": "Next 151 GHC",
|
||||
"componentType": "[]",
|
||||
"component": "[]",
|
||||
"payrollColumn": "112",
|
||||
"rangeAmounts": "[{\"lowerCondition\":\"gte\",\"lowerLimit\":\"324\",\"upperCondition\":\"lt\",\"upperLimit\":\"475\",\"amount\":\"(X-324) * 0.1\",\"id\":\"rangeAmounts_1\"},{\"lowerCondition\":\"gte\",\"lowerLimit\":\"259\",\"upperCondition\":\"No Upper Limit\",\"upperLimit\":0,\"amount\":\"15.10\",\"id\":\"rangeAmounts_2\"}]"
|
||||
},
|
||||
{
|
||||
"id": "108",
|
||||
"name": "Next 2765 GHC",
|
||||
"componentType": "[]",
|
||||
"component": "[]",
|
||||
"payrollColumn": "112",
|
||||
"rangeAmounts": "[{\"lowerCondition\":\"gte\",\"lowerLimit\":\"475\",\"upperCondition\":\"lt\",\"upperLimit\":\"3240\",\"amount\":\"(X - 475) * 0.175\",\"id\":\"rangeAmounts_1\"},{\"lowerCondition\":\"gte\",\"lowerLimit\":\"3240\",\"upperCondition\":\"No Upper Limit\",\"upperLimit\":0,\"amount\":\"483.88\",\"id\":\"rangeAmounts_2\"}]"
|
||||
},
|
||||
{
|
||||
"id": "111",
|
||||
"name": "Remaining after 3240 GHC",
|
||||
"componentType": "[]",
|
||||
"component": "[]",
|
||||
"payrollColumn": "112",
|
||||
"rangeAmounts": "[{\"lowerCondition\":\"gte\",\"lowerLimit\":\"3240\",\"upperCondition\":\"No Upper Limit\",\"upperLimit\":0,\"amount\":\"(X-3240)*0.25\",\"id\":\"rangeAmounts_1\"}]"
|
||||
}
|
||||
],
|
||||
"columns": [
|
||||
{
|
||||
"id": "105",
|
||||
"name": "GH - Salary (Basic)",
|
||||
"calculation_hook": null,
|
||||
"salary_components": "[\"1\"]",
|
||||
"deductions": "[]",
|
||||
"add_columns": "[]",
|
||||
"sub_columns": "[]",
|
||||
"colorder": "1",
|
||||
"editable": "No",
|
||||
"enabled": "Yes",
|
||||
"default_value": "0.00",
|
||||
"calculation_columns": "",
|
||||
"calculation_function": ""
|
||||
},
|
||||
{
|
||||
"id": "106",
|
||||
"name": "GH - Housing Allowance",
|
||||
"calculation_hook": null,
|
||||
"salary_components": "[]",
|
||||
"deductions": "[\"101\"]",
|
||||
"add_columns": "[]",
|
||||
"sub_columns": "[]",
|
||||
"colorder": "2",
|
||||
"editable": "No",
|
||||
"enabled": "Yes",
|
||||
"default_value": "0.00",
|
||||
"calculation_columns": "",
|
||||
"calculation_function": ""
|
||||
},
|
||||
{
|
||||
"id": "107",
|
||||
"name": "GH - Overtime Allowance",
|
||||
"calculation_hook": null,
|
||||
"salary_components": "[]",
|
||||
"deductions": "[\"102\"]",
|
||||
"add_columns": "[]",
|
||||
"sub_columns": "[]",
|
||||
"colorder": "3",
|
||||
"editable": "No",
|
||||
"enabled": "Yes",
|
||||
"default_value": "0.00",
|
||||
"calculation_columns": "",
|
||||
"calculation_function": ""
|
||||
},
|
||||
{
|
||||
"id": "108",
|
||||
"name": "GH - Total",
|
||||
"calculation_hook": null,
|
||||
"salary_components": "[]",
|
||||
"deductions": "[]",
|
||||
"add_columns": "[\"106\",\"107\",\"105\"]",
|
||||
"sub_columns": "[]",
|
||||
"colorder": "4",
|
||||
"editable": "No",
|
||||
"enabled": "Yes",
|
||||
"default_value": "0.00",
|
||||
"calculation_columns": "",
|
||||
"calculation_function": ""
|
||||
},
|
||||
{
|
||||
"id": "109",
|
||||
"name": "GH - SSNIT",
|
||||
"calculation_hook": null,
|
||||
"salary_components": "[]",
|
||||
"deductions": "[\"103\"]",
|
||||
"add_columns": "[]",
|
||||
"sub_columns": "[]",
|
||||
"colorder": "5",
|
||||
"editable": "No",
|
||||
"enabled": "Yes",
|
||||
"default_value": "0.00",
|
||||
"calculation_columns": "",
|
||||
"calculation_function": ""
|
||||
},
|
||||
{
|
||||
"id": "112",
|
||||
"name": "GH - Taxable Income",
|
||||
"calculation_hook": null,
|
||||
"salary_components": "[]",
|
||||
"deductions": "[]",
|
||||
"add_columns": "[\"106\",\"105\"]",
|
||||
"sub_columns": "[\"109\"]",
|
||||
"colorder": "7",
|
||||
"editable": "No",
|
||||
"enabled": "Yes",
|
||||
"default_value": "0.00",
|
||||
"calculation_columns": "",
|
||||
"calculation_function": ""
|
||||
},
|
||||
{
|
||||
"id": "113",
|
||||
"name": "GH - Next 108 GHC",
|
||||
"calculation_hook": null,
|
||||
"salary_components": "[]",
|
||||
"deductions": "[\"106\"]",
|
||||
"add_columns": "[]",
|
||||
"sub_columns": "[]",
|
||||
"colorder": "9",
|
||||
"editable": "No",
|
||||
"enabled": "Yes",
|
||||
"default_value": "0.00",
|
||||
"calculation_columns": "",
|
||||
"calculation_function": ""
|
||||
},
|
||||
{
|
||||
"id": "114",
|
||||
"name": "GH - Next 151 GHC",
|
||||
"calculation_hook": null,
|
||||
"salary_components": "[]",
|
||||
"deductions": "[\"107\"]",
|
||||
"add_columns": "[]",
|
||||
"sub_columns": "[]",
|
||||
"colorder": "10",
|
||||
"editable": "No",
|
||||
"enabled": "Yes",
|
||||
"default_value": "0.00",
|
||||
"calculation_columns": "",
|
||||
"calculation_function": ""
|
||||
},
|
||||
{
|
||||
"id": "115",
|
||||
"name": "GH - Next 2765 GHC",
|
||||
"calculation_hook": null,
|
||||
"salary_components": "[]",
|
||||
"deductions": "[\"108\"]",
|
||||
"add_columns": "[]",
|
||||
"sub_columns": "[]",
|
||||
"colorder": "11",
|
||||
"editable": "No",
|
||||
"enabled": "Yes",
|
||||
"default_value": "0.00",
|
||||
"calculation_columns": "",
|
||||
"calculation_function": ""
|
||||
},
|
||||
{
|
||||
"id": "120",
|
||||
"name": "GH - Remaining after 3240 GHC",
|
||||
"calculation_hook": null,
|
||||
"salary_components": "[]",
|
||||
"deductions": "[\"111\"]",
|
||||
"add_columns": "[]",
|
||||
"sub_columns": "[]",
|
||||
"colorder": "12",
|
||||
"editable": "No",
|
||||
"enabled": "Yes",
|
||||
"default_value": "0.00",
|
||||
"calculation_columns": "",
|
||||
"calculation_function": ""
|
||||
},
|
||||
{
|
||||
"id": "121",
|
||||
"name": "GH - Overtime Allow. Tax",
|
||||
"calculation_hook": null,
|
||||
"salary_components": "[]",
|
||||
"deductions": "[]",
|
||||
"add_columns": "[]",
|
||||
"sub_columns": "[]",
|
||||
"colorder": "13",
|
||||
"editable": "No",
|
||||
"enabled": "Yes",
|
||||
"default_value": "0.00",
|
||||
"calculation_columns": "[{\"name\":\"O\",\"column\":\"107\",\"id\":\"calculation_columns_1\"}]",
|
||||
"calculation_function": "O*0.05"
|
||||
},
|
||||
{
|
||||
"id": "122",
|
||||
"name": "GH - Total (PAYE Tax)",
|
||||
"calculation_hook": null,
|
||||
"salary_components": "[]",
|
||||
"deductions": "[]",
|
||||
"add_columns": "[\"113\",\"114\",\"115\",\"121\",\"120\"]",
|
||||
"sub_columns": "[]",
|
||||
"colorder": "14",
|
||||
"editable": "No",
|
||||
"enabled": "Yes",
|
||||
"default_value": "0.00",
|
||||
"calculation_columns": "",
|
||||
"calculation_function": ""
|
||||
},
|
||||
{
|
||||
"id": "123",
|
||||
"name": "GH - Deductions - Sub Total",
|
||||
"calculation_hook": null,
|
||||
"salary_components": "[]",
|
||||
"deductions": "[]",
|
||||
"add_columns": "[\"109\",\"122\"]",
|
||||
"sub_columns": "[]",
|
||||
"colorder": "15",
|
||||
"editable": "No",
|
||||
"enabled": "Yes",
|
||||
"default_value": "0.00",
|
||||
"calculation_columns": "",
|
||||
"calculation_function": ""
|
||||
},
|
||||
{
|
||||
"id": "125",
|
||||
"name": "GH - Final Total",
|
||||
"calculation_hook": null,
|
||||
"salary_components": "[]",
|
||||
"deductions": "[]",
|
||||
"add_columns": "[\"108\"]",
|
||||
"sub_columns": "[\"123\"]",
|
||||
"colorder": "16",
|
||||
"editable": "No",
|
||||
"enabled": "Yes",
|
||||
"default_value": "0.00",
|
||||
"calculation_columns": "",
|
||||
"calculation_function": ""
|
||||
}
|
||||
],
|
||||
"salaryComponents": [
|
||||
{
|
||||
"id": "1",
|
||||
"name": "Basic Salary",
|
||||
"componentType": "1",
|
||||
"details": null
|
||||
}
|
||||
],
|
||||
"salaryComponentTypes": [
|
||||
{
|
||||
"id": "1",
|
||||
"code": "B001",
|
||||
"name": "Basic"
|
||||
}
|
||||
],
|
||||
"samplePayroll": {
|
||||
"name": "Germany Payroll Calculation",
|
||||
"pay_period": "4",
|
||||
"columns": "[\"126\",\"127\",\"131\",\"129\",\"128\",\"133\",\"130\",\"132\"]",
|
||||
"date_start": "2017-08-01",
|
||||
"date_end": "2017-08-31",
|
||||
"status": "Draft"
|
||||
},
|
||||
"payslipTemplate": {
|
||||
"name": "Sample Payslip Template",
|
||||
"data": "[{\"type\":\"Company Logo\",\"payrollColumn\":\"NULL\",\"label\":\"\",\"text\":\"\",\"status\":\"Show\",\"id\":\"data_1\"},{\"type\":\"Company Name\",\"payrollColumn\":\"NULL\",\"label\":\"\",\"text\":\"\",\"status\":\"Show\",\"id\":\"data_2\"},{\"type\":\"Separators\",\"payrollColumn\":\"NULL\",\"label\":\"\",\"text\":\"\",\"status\":\"Show\",\"id\":\"data_5\"},{\"type\":\"Payroll Column\",\"payrollColumn\":\"126\",\"label\":\"Basic Salary\",\"text\":\"\",\"status\":\"Show\",\"id\":\"data_3\"},{\"type\":\"Payroll Column\",\"payrollColumn\":\"127\",\"label\":\"Car Allowance\",\"text\":\"\",\"status\":\"Show\",\"id\":\"data_4\"},{\"type\":\"Payroll Column\",\"payrollColumn\":\"130\",\"label\":\"Payment for Hours Worked\",\"text\":\"\",\"status\":\"Show\",\"id\":\"data_6\"},{\"type\":\"Separators\",\"payrollColumn\":\"NULL\",\"label\":\"\",\"text\":\"\",\"status\":\"Show\",\"id\":\"data_7\"},{\"type\":\"Payroll Column\",\"payrollColumn\":\"131\",\"label\":\"Gross Pay\",\"text\":\"\",\"status\":\"Show\",\"id\":\"data_8\"},{\"type\":\"Payroll Column\",\"payrollColumn\":\"132\",\"label\":\"Tax 19%\",\"text\":\"\",\"status\":\"Show\",\"id\":\"data_9\"},{\"type\":\"Separators\",\"payrollColumn\":\"NULL\",\"label\":\"\",\"text\":\"\",\"status\":\"Show\",\"id\":\"data_10\"},{\"type\":\"Payroll Column\",\"payrollColumn\":\"133\",\"label\":\"Net Pay\",\"text\":\"\",\"status\":\"Show\",\"id\":\"data_11\"}]",
|
||||
"status": null,
|
||||
"created": "2017-09-08 21:12:40",
|
||||
"updated": "2017-09-08 21:12:40"
|
||||
}
|
||||
}
|
||||
188
core/data/payroll/Sample-Country-Payroll.txt
Normal file
188
core/data/payroll/Sample-Country-Payroll.txt
Normal file
@@ -0,0 +1,188 @@
|
||||
{
|
||||
"name": "Sample Country Payroll",
|
||||
"description": "",
|
||||
"deductions": [
|
||||
{
|
||||
"id": "112",
|
||||
"name": "DE - Tax",
|
||||
"componentType": "[]",
|
||||
"component": "[]",
|
||||
"payrollColumn": "131",
|
||||
"rangeAmounts": "[{\"lowerCondition\":\"No Lower Limit\",\"lowerLimit\":0,\"upperCondition\":\"No Upper Limit\",\"upperLimit\":0,\"amount\":\"X * 0.19\",\"id\":\"rangeAmounts_1\"}]"
|
||||
}
|
||||
],
|
||||
"columns": [
|
||||
{
|
||||
"id": "126",
|
||||
"name": "DE - Basic Salary",
|
||||
"calculation_hook": null,
|
||||
"salary_components": "[\"1\"]",
|
||||
"deductions": "[]",
|
||||
"add_columns": "[]",
|
||||
"sub_columns": "[]",
|
||||
"colorder": "1",
|
||||
"editable": "Yes",
|
||||
"enabled": "Yes",
|
||||
"default_value": "0.00",
|
||||
"calculation_columns": "",
|
||||
"calculation_function": ""
|
||||
},
|
||||
{
|
||||
"id": "127",
|
||||
"name": "DE - Car Allowance",
|
||||
"calculation_hook": null,
|
||||
"salary_components": "[\"3\"]",
|
||||
"deductions": "[]",
|
||||
"add_columns": "[]",
|
||||
"sub_columns": "[]",
|
||||
"colorder": "2",
|
||||
"editable": "No",
|
||||
"enabled": "Yes",
|
||||
"default_value": "0.00",
|
||||
"calculation_columns": "",
|
||||
"calculation_function": ""
|
||||
},
|
||||
{
|
||||
"id": "128",
|
||||
"name": "DE - Hours Worked per Month",
|
||||
"calculation_hook": "AttendanceUtil_getTimeWorkedHours",
|
||||
"salary_components": "[]",
|
||||
"deductions": "[]",
|
||||
"add_columns": "[]",
|
||||
"sub_columns": "[]",
|
||||
"colorder": "3",
|
||||
"editable": "No",
|
||||
"enabled": "Yes",
|
||||
"default_value": "0",
|
||||
"calculation_columns": "",
|
||||
"calculation_function": ""
|
||||
},
|
||||
{
|
||||
"id": "129",
|
||||
"name": "DE - Hourly Pay",
|
||||
"calculation_hook": null,
|
||||
"salary_components": "[\"5\"]",
|
||||
"deductions": "[]",
|
||||
"add_columns": "[]",
|
||||
"sub_columns": "[]",
|
||||
"colorder": "4",
|
||||
"editable": "No",
|
||||
"enabled": "Yes",
|
||||
"default_value": "0.00",
|
||||
"calculation_columns": "",
|
||||
"calculation_function": ""
|
||||
},
|
||||
{
|
||||
"id": "130",
|
||||
"name": "DE - Payment for Hours Worked",
|
||||
"calculation_hook": null,
|
||||
"salary_components": "[]",
|
||||
"deductions": "[]",
|
||||
"add_columns": "[]",
|
||||
"sub_columns": "[]",
|
||||
"colorder": "5",
|
||||
"editable": "No",
|
||||
"enabled": "Yes",
|
||||
"default_value": "0.00",
|
||||
"calculation_columns": "[{\"name\":\"X\",\"column\":\"128\",\"id\":\"calculation_columns_1\"},{\"name\":\"Y\",\"column\":\"129\",\"id\":\"calculation_columns_2\"}]",
|
||||
"calculation_function": "X * Y"
|
||||
},
|
||||
{
|
||||
"id": "131",
|
||||
"name": "DE - Gross Salary",
|
||||
"calculation_hook": null,
|
||||
"salary_components": "[]",
|
||||
"deductions": "[]",
|
||||
"add_columns": "[\"126\",\"127\",\"130\"]",
|
||||
"sub_columns": "[]",
|
||||
"colorder": "6",
|
||||
"editable": "No",
|
||||
"enabled": "Yes",
|
||||
"default_value": "0.00",
|
||||
"calculation_columns": "",
|
||||
"calculation_function": ""
|
||||
},
|
||||
{
|
||||
"id": "132",
|
||||
"name": "DE - Tax",
|
||||
"calculation_hook": null,
|
||||
"salary_components": "[]",
|
||||
"deductions": "[\"112\"]",
|
||||
"add_columns": "[]",
|
||||
"sub_columns": "[]",
|
||||
"colorder": "7",
|
||||
"editable": "No",
|
||||
"enabled": "Yes",
|
||||
"default_value": "0.00",
|
||||
"calculation_columns": "",
|
||||
"calculation_function": ""
|
||||
},
|
||||
{
|
||||
"id": "133",
|
||||
"name": "DE - Net Salary",
|
||||
"calculation_hook": null,
|
||||
"salary_components": "[]",
|
||||
"deductions": "[]",
|
||||
"add_columns": "[\"131\"]",
|
||||
"sub_columns": "[\"132\"]",
|
||||
"colorder": "8",
|
||||
"editable": "No",
|
||||
"enabled": "Yes",
|
||||
"default_value": "0.00",
|
||||
"calculation_columns": "",
|
||||
"calculation_function": ""
|
||||
}
|
||||
],
|
||||
"salaryComponents": [
|
||||
{
|
||||
"id": "1",
|
||||
"name": "Basic Salary",
|
||||
"componentType": "1",
|
||||
"details": null
|
||||
},
|
||||
{
|
||||
"id": "3",
|
||||
"name": "Car Allowance",
|
||||
"componentType": "2",
|
||||
"details": null
|
||||
},
|
||||
{
|
||||
"id": "5",
|
||||
"name": "Regular Hourly Pay",
|
||||
"componentType": "3",
|
||||
"details": null
|
||||
}
|
||||
],
|
||||
"salaryComponentTypes": [
|
||||
{
|
||||
"id": "1",
|
||||
"code": "B001",
|
||||
"name": "Basic"
|
||||
},
|
||||
{
|
||||
"id": "2",
|
||||
"code": "B002",
|
||||
"name": "Allowance"
|
||||
},
|
||||
{
|
||||
"id": "3",
|
||||
"code": "B003",
|
||||
"name": "Hourly"
|
||||
}
|
||||
],
|
||||
"samplePayroll": {
|
||||
"name": "Sample Country Payroll",
|
||||
"pay_period": "4",
|
||||
"columns": "[\"126\",\"127\",\"131\",\"129\",\"128\",\"133\",\"130\",\"132\"]",
|
||||
"date_start": "2017-08-01",
|
||||
"date_end": "2017-08-31",
|
||||
"status": "Draft"
|
||||
},
|
||||
"payslipTemplate": {
|
||||
"name": "Sample Payslip Template",
|
||||
"data": "[{\"type\":\"Company Logo\",\"payrollColumn\":\"NULL\",\"label\":\"\",\"text\":\"\",\"status\":\"Show\",\"id\":\"data_1\"},{\"type\":\"Company Name\",\"payrollColumn\":\"NULL\",\"label\":\"\",\"text\":\"\",\"status\":\"Show\",\"id\":\"data_2\"},{\"type\":\"Separators\",\"payrollColumn\":\"NULL\",\"label\":\"\",\"text\":\"\",\"status\":\"Show\",\"id\":\"data_5\"},{\"type\":\"Payroll Column\",\"payrollColumn\":\"126\",\"label\":\"Basic Salary\",\"text\":\"\",\"status\":\"Show\",\"id\":\"data_3\"},{\"type\":\"Payroll Column\",\"payrollColumn\":\"127\",\"label\":\"Car Allowance\",\"text\":\"\",\"status\":\"Show\",\"id\":\"data_4\"},{\"type\":\"Payroll Column\",\"payrollColumn\":\"130\",\"label\":\"Payment for Hours Worked\",\"text\":\"\",\"status\":\"Show\",\"id\":\"data_6\"},{\"type\":\"Separators\",\"payrollColumn\":\"NULL\",\"label\":\"\",\"text\":\"\",\"status\":\"Show\",\"id\":\"data_7\"},{\"type\":\"Payroll Column\",\"payrollColumn\":\"131\",\"label\":\"Gross Pay\",\"text\":\"\",\"status\":\"Show\",\"id\":\"data_8\"},{\"type\":\"Payroll Column\",\"payrollColumn\":\"132\",\"label\":\"Tax 19%\",\"text\":\"\",\"status\":\"Show\",\"id\":\"data_9\"},{\"type\":\"Separators\",\"payrollColumn\":\"NULL\",\"label\":\"\",\"text\":\"\",\"status\":\"Show\",\"id\":\"data_10\"},{\"type\":\"Payroll Column\",\"payrollColumn\":\"133\",\"label\":\"Net Pay\",\"text\":\"\",\"status\":\"Show\",\"id\":\"data_11\"}]",
|
||||
"status": null,
|
||||
"created": "2017-09-08 21:12:40",
|
||||
"updated": "2017-09-08 21:12:40"
|
||||
}
|
||||
}
|
||||
264
core/data/payroll/SriLanka-Payroll.txt
Normal file
264
core/data/payroll/SriLanka-Payroll.txt
Normal file
@@ -0,0 +1,264 @@
|
||||
{
|
||||
"name": "Sri Lanka Payroll Calculation",
|
||||
"description": "",
|
||||
"deductions": [
|
||||
{
|
||||
"id": "1",
|
||||
"name": "EPF Employee Contribution",
|
||||
"componentType": "[]",
|
||||
"component": "[]",
|
||||
"payrollColumn": "7",
|
||||
"rangeAmounts": "[{\"lowerCondition\":\"No Lower Limit\",\"lowerLimit\":\"0\",\"upperCondition\":\"No Upper Limit\",\"upperLimit\":\"0\",\"amount\":\"X*0.08\",\"id\":\"rangeAmounts_1\"}]"
|
||||
},
|
||||
{
|
||||
"id": "2",
|
||||
"name": "EPF Employer Contribution",
|
||||
"componentType": "[]",
|
||||
"component": "[]",
|
||||
"payrollColumn": "7",
|
||||
"rangeAmounts": "[{\"lowerCondition\":\"No Lower Limit\",\"lowerLimit\":\"0\",\"upperCondition\":\"No Upper Limit\",\"upperLimit\":\"0\",\"amount\":\"X*0.12\",\"id\":\"rangeAmounts_1\"}]"
|
||||
},
|
||||
{
|
||||
"id": "3",
|
||||
"name": "ETF Employer Contribution",
|
||||
"componentType": "[]",
|
||||
"component": "[]",
|
||||
"payrollColumn": "7",
|
||||
"rangeAmounts": "[{\"lowerCondition\":\"No Lower Limit\",\"lowerLimit\":\"0\",\"upperCondition\":\"No Upper Limit\",\"upperLimit\":\"0\",\"amount\":\"X*0.03\",\"id\":\"rangeAmounts_1\"}]"
|
||||
},
|
||||
{
|
||||
"id": "4",
|
||||
"name": "PAYE Tax",
|
||||
"componentType": "[]",
|
||||
"component": "[]",
|
||||
"payrollColumn": "12",
|
||||
"rangeAmounts": "[{\"lowerCondition\":\"No Lower Limit\",\"lowerLimit\":\"0\",\"upperCondition\":\"lte\",\"upperLimit\":\"62500\",\"amount\":\"0\",\"id\":\"rangeAmounts_1\"},{\"lowerCondition\":\"gt\",\"lowerLimit\":\"62500\",\"upperCondition\":\"lte\",\"upperLimit\":\"104167\",\"amount\":\"X*0.04 - 2500\",\"id\":\"rangeAmounts_2\"},{\"lowerCondition\":\"gt\",\"lowerLimit\":\"104167\",\"upperCondition\":\"lte\",\"upperLimit\":\"145833\",\"amount\":\"X*0.08 - 6667\",\"id\":\"rangeAmounts_3\"},{\"lowerCondition\":\"gt\",\"lowerLimit\":\"145833\",\"upperCondition\":\"lte\",\"upperLimit\":\"187500\",\"amount\":\"X*0.12-12500\",\"id\":\"rangeAmounts_4\"},{\"lowerCondition\":\"gt\",\"lowerLimit\":\"187500\",\"upperCondition\":\"No Upper Limit\",\"upperLimit\":\"0\",\"amount\":\"X*0.16 - 20000\",\"id\":\"rangeAmounts_5\"}]"
|
||||
},
|
||||
{
|
||||
"id": "5",
|
||||
"name": "Stamp Duty",
|
||||
"componentType": "[]",
|
||||
"component": "[]",
|
||||
"payrollColumn": "12",
|
||||
"rangeAmounts": "[{\"lowerCondition\":\"No Lower Limit\",\"lowerLimit\":\"0\",\"upperCondition\":\"lte\",\"upperLimit\":\"25000\",\"amount\":\"0\",\"id\":\"rangeAmounts_1\"},{\"lowerCondition\":\"gt\",\"lowerLimit\":\"25000\",\"upperCondition\":\"No Upper Limit\",\"upperLimit\":\"0\",\"amount\":\"25\",\"id\":\"rangeAmounts_2\"}]"
|
||||
}
|
||||
],
|
||||
"columns": [
|
||||
{
|
||||
"id": "5",
|
||||
"name": "LK - Basic Salary",
|
||||
"calculation_hook": null,
|
||||
"salary_components": "[\"1\"]",
|
||||
"deductions": "[]",
|
||||
"add_columns": "[]",
|
||||
"sub_columns": "[]",
|
||||
"colorder": "5",
|
||||
"editable": "No",
|
||||
"enabled": "Yes",
|
||||
"default_value": "0.00",
|
||||
"calculation_columns": "",
|
||||
"calculation_function": ""
|
||||
},
|
||||
{
|
||||
"id": "6",
|
||||
"name": "LK - Fixed Allowance",
|
||||
"calculation_hook": null,
|
||||
"salary_components": "[\"2\"]",
|
||||
"deductions": "[]",
|
||||
"add_columns": "[]",
|
||||
"sub_columns": "[]",
|
||||
"colorder": "6",
|
||||
"editable": "No",
|
||||
"enabled": "Yes",
|
||||
"default_value": "0.00",
|
||||
"calculation_columns": "",
|
||||
"calculation_function": ""
|
||||
},
|
||||
{
|
||||
"id": "7",
|
||||
"name": "LK - Gross Pay",
|
||||
"calculation_hook": null,
|
||||
"salary_components": "[]",
|
||||
"deductions": "[]",
|
||||
"add_columns": "[\"5\",\"6\"]",
|
||||
"sub_columns": "[]",
|
||||
"colorder": "7",
|
||||
"editable": "No",
|
||||
"enabled": "Yes",
|
||||
"default_value": "0.00",
|
||||
"calculation_columns": "",
|
||||
"calculation_function": ""
|
||||
},
|
||||
{
|
||||
"id": "8",
|
||||
"name": "LK - EPF Employee Contribution",
|
||||
"calculation_hook": null,
|
||||
"salary_components": "[]",
|
||||
"deductions": "[\"1\"]",
|
||||
"add_columns": "[]",
|
||||
"sub_columns": "[]",
|
||||
"colorder": "8",
|
||||
"editable": "No",
|
||||
"enabled": "Yes",
|
||||
"default_value": "0.00",
|
||||
"calculation_columns": "",
|
||||
"calculation_function": ""
|
||||
},
|
||||
{
|
||||
"id": "9",
|
||||
"name": "LK - EPF Employer Contribution",
|
||||
"calculation_hook": null,
|
||||
"salary_components": "[]",
|
||||
"deductions": "[\"2\"]",
|
||||
"add_columns": "[]",
|
||||
"sub_columns": "[]",
|
||||
"colorder": "9",
|
||||
"editable": "No",
|
||||
"enabled": "Yes",
|
||||
"default_value": "0.00",
|
||||
"calculation_columns": "",
|
||||
"calculation_function": ""
|
||||
},
|
||||
{
|
||||
"id": "10",
|
||||
"name": "LK - ETF Employer Contribution",
|
||||
"calculation_hook": null,
|
||||
"salary_components": "[]",
|
||||
"deductions": "[\"3\"]",
|
||||
"add_columns": "[]",
|
||||
"sub_columns": "[]",
|
||||
"colorder": "10",
|
||||
"editable": "No",
|
||||
"enabled": "Yes",
|
||||
"default_value": "0.00",
|
||||
"calculation_columns": "",
|
||||
"calculation_function": ""
|
||||
},
|
||||
{
|
||||
"id": "11",
|
||||
"name": "LK - Total EPF 20%",
|
||||
"calculation_hook": null,
|
||||
"salary_components": "[]",
|
||||
"deductions": "[]",
|
||||
"add_columns": "[\"8\",\"9\"]",
|
||||
"sub_columns": "[]",
|
||||
"colorder": "11",
|
||||
"editable": "No",
|
||||
"enabled": "Yes",
|
||||
"default_value": "0.00",
|
||||
"calculation_columns": "",
|
||||
"calculation_function": ""
|
||||
},
|
||||
{
|
||||
"id": "12",
|
||||
"name": "LK - Total for PAYE",
|
||||
"calculation_hook": null,
|
||||
"salary_components": "[]",
|
||||
"deductions": "[]",
|
||||
"add_columns": "[\"7\"]",
|
||||
"sub_columns": "[]",
|
||||
"colorder": "12",
|
||||
"editable": "No",
|
||||
"enabled": "Yes",
|
||||
"default_value": "0.00",
|
||||
"calculation_columns": "",
|
||||
"calculation_function": ""
|
||||
},
|
||||
{
|
||||
"id": "13",
|
||||
"name": "LK - PAYE Tax",
|
||||
"calculation_hook": null,
|
||||
"salary_components": "[]",
|
||||
"deductions": "[\"4\"]",
|
||||
"add_columns": "[]",
|
||||
"sub_columns": "[]",
|
||||
"colorder": "13",
|
||||
"editable": "No",
|
||||
"enabled": "Yes",
|
||||
"default_value": "0.00",
|
||||
"calculation_columns": "",
|
||||
"calculation_function": ""
|
||||
},
|
||||
{
|
||||
"id": "14",
|
||||
"name": "LK - Stamp Duty",
|
||||
"calculation_hook": null,
|
||||
"salary_components": "[]",
|
||||
"deductions": "[\"5\"]",
|
||||
"add_columns": "[]",
|
||||
"sub_columns": "[]",
|
||||
"colorder": "14",
|
||||
"editable": "No",
|
||||
"enabled": "Yes",
|
||||
"default_value": "0.00",
|
||||
"calculation_columns": "",
|
||||
"calculation_function": ""
|
||||
},
|
||||
{
|
||||
"id": "15",
|
||||
"name": "LK - Total Deductions",
|
||||
"calculation_hook": null,
|
||||
"salary_components": "[]",
|
||||
"deductions": "[]",
|
||||
"add_columns": "[\"8\",\"13\",\"14\"]",
|
||||
"sub_columns": "[]",
|
||||
"colorder": "15",
|
||||
"editable": "No",
|
||||
"enabled": "Yes",
|
||||
"default_value": "0.00",
|
||||
"calculation_columns": "",
|
||||
"calculation_function": ""
|
||||
},
|
||||
{
|
||||
"id": "16",
|
||||
"name": "LK - Salary to Bank",
|
||||
"calculation_hook": null,
|
||||
"salary_components": "[]",
|
||||
"deductions": "[]",
|
||||
"add_columns": "[\"7\"]",
|
||||
"sub_columns": "[\"15\"]",
|
||||
"colorder": "16",
|
||||
"editable": "No",
|
||||
"enabled": "Yes",
|
||||
"default_value": "0.00",
|
||||
"calculation_columns": "",
|
||||
"calculation_function": ""
|
||||
}
|
||||
],
|
||||
"salaryComponents": [
|
||||
{
|
||||
"id": "1",
|
||||
"name": "Basic Salary",
|
||||
"componentType": "1",
|
||||
"details": null
|
||||
},
|
||||
{
|
||||
"id": "2",
|
||||
"name": "Fixed Allowance",
|
||||
"componentType": "1",
|
||||
"details": null
|
||||
}
|
||||
],
|
||||
"salaryComponentTypes": [
|
||||
{
|
||||
"id": "1",
|
||||
"code": "B001",
|
||||
"name": "Basic"
|
||||
}
|
||||
],
|
||||
"samplePayroll": {
|
||||
"name": "Sri Lanka Payroll Sample",
|
||||
"pay_period": "4",
|
||||
"columns": "[\"5\",\"8\",\"9\",\"10\",\"6\",\"7\",\"13\",\"16\",\"14\",\"15\",\"11\",\"12\"]",
|
||||
"date_start": "2016-03-01",
|
||||
"date_end": "2016-03-31",
|
||||
"status": "Draft"
|
||||
},
|
||||
"payslipTemplate": {
|
||||
"name": "Sri Lanka - Default Payslip",
|
||||
"data": "[{\"type\":\"Company Logo\",\"payrollColumn\":\"NULL\",\"label\":\"\",\"text\":\"\",\"fontSize\":\"Normal\",\"fontStyle\":\"Normal\",\"fontColor\":\"#000000\",\"status\":\"Show\",\"id\":\"data_1\"},{\"type\":\"Company Name\",\"payrollColumn\":\"NULL\",\"label\":\"\",\"text\":\"\",\"fontSize\":\"Normal\",\"fontStyle\":\"Normal\",\"fontColor\":\"\",\"status\":\"Show\",\"id\":\"data_2\"},{\"type\":\"Separators\",\"payrollColumn\":\"NULL\",\"label\":\"\",\"text\":\"\",\"fontSize\":\"Normal\",\"fontStyle\":\"Normal\",\"fontColor\":\"\",\"status\":\"Show\",\"id\":\"data_8\"},{\"type\":\"Payroll Column\",\"payrollColumn\":\"5\",\"label\":\"Basic Salary\",\"text\":\"\",\"status\":\"Show\",\"id\":\"data_3\"},{\"type\":\"Payroll Column\",\"payrollColumn\":\"6\",\"label\":\"Fixed Allowance\",\"text\":\"\",\"status\":\"Show\",\"id\":\"data_4\"},{\"type\":\"Payroll Column\",\"payrollColumn\":\"7\",\"label\":\"Gross Pay\",\"text\":\"\",\"status\":\"Show\",\"id\":\"data_11\"},{\"type\":\"Separators\",\"payrollColumn\":\"NULL\",\"label\":\"\",\"text\":\"\",\"fontSize\":\"Normal\",\"fontStyle\":\"Normal\",\"fontColor\":\"\",\"status\":\"Show\",\"id\":\"data_9\"},{\"type\":\"Text\",\"payrollColumn\":\"NULL\",\"label\":\"\",\"text\":\"Deductions\",\"status\":\"Show\",\"id\":\"data_13\"},{\"type\":\"Payroll Column\",\"payrollColumn\":\"8\",\"label\":\"EPF Employee Contribution\",\"text\":\"\",\"status\":\"Show\",\"id\":\"data_6\"},{\"type\":\"Payroll Column\",\"payrollColumn\":\"13\",\"label\":\"PAYE Tax\",\"text\":\"\",\"status\":\"Show\",\"id\":\"data_14\"},{\"type\":\"Payroll Column\",\"payrollColumn\":\"14\",\"label\":\"Stamp Duty\",\"text\":\"\",\"status\":\"Show\",\"id\":\"data_15\"},{\"type\":\"Payroll Column\",\"payrollColumn\":\"15\",\"label\":\"Total Deductions\",\"text\":\"\",\"status\":\"Show\",\"id\":\"data_16\"},{\"type\":\"Separators\",\"payrollColumn\":\"NULL\",\"label\":\"\",\"text\":\"\",\"status\":\"Show\",\"id\":\"data_17\"},{\"type\":\"Text\",\"payrollColumn\":\"NULL\",\"label\":\"\",\"text\":\"Employer Contributions\",\"status\":\"Show\",\"id\":\"data_18\"},{\"type\":\"Payroll Column\",\"payrollColumn\":\"9\",\"label\":\"EPF Employer Contribution\",\"text\":\"\",\"status\":\"Show\",\"id\":\"data_19\"},{\"type\":\"Payroll Column\",\"payrollColumn\":\"7\",\"label\":\"ETF Employer Contribution\",\"text\":\"\",\"status\":\"Show\",\"id\":\"data_20\"},{\"type\":\"Separators\",\"payrollColumn\":\"7\",\"label\":\"\",\"text\":\"\",\"status\":\"Show\",\"id\":\"data_21\"},{\"type\":\"Text\",\"payrollColumn\":\"7\",\"label\":\"\",\"text\":\"Totals\",\"status\":\"Show\",\"id\":\"data_22\"},{\"type\":\"Payroll Column\",\"payrollColumn\":\"11\",\"label\":\"Total EPF 20%\",\"text\":\"\",\"status\":\"Show\",\"id\":\"data_23\"},{\"type\":\"Payroll Column\",\"payrollColumn\":\"12\",\"label\":\"Total for PAYE\",\"text\":\"\",\"status\":\"Show\",\"id\":\"data_24\"},{\"type\":\"Payroll Column\",\"payrollColumn\":\"16\",\"label\":\"Net Salary\",\"text\":\"\",\"status\":\"Show\",\"id\":\"data_25\"}]",
|
||||
"status": null,
|
||||
"created": "2016-06-29 22:07:12",
|
||||
"updated": "2016-06-29 22:07:12"
|
||||
}
|
||||
}
|
||||
@@ -30,8 +30,6 @@
|
||||
modJsList[prop].setNoJSONRequests('<?=$noJSONRequests?>');
|
||||
}
|
||||
}
|
||||
var timeUtils = new TimeUtils();
|
||||
timeUtils.setServerGMToffset('<?=$diffHoursBetweenServerTimezoneWithGMT?>');
|
||||
|
||||
var clientUrl = '<?=CLIENT_BASE_URL?>';
|
||||
|
||||
|
||||
@@ -1,16 +1,26 @@
|
||||
<?php
|
||||
$logoFileName = CLIENT_BASE_PATH."data/logo.png";
|
||||
$logoFileUrl = CLIENT_BASE_URL."data/logo.png";
|
||||
if(!file_exists($logoFileName)){
|
||||
$logoFileUrl = BASE_URL."images/logo.png";
|
||||
}
|
||||
$logoFileUrl = \Classes\UIManager::getInstance()->getCompanyLogoUrl();
|
||||
?><!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
|
||||
<?php if (!empty(\Classes\BaseService::getInstance()->getGAKey())) { ?>
|
||||
<!-- Google Analytics -->
|
||||
<script>
|
||||
window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date;
|
||||
ga('create', '<?=\Classes\BaseService::getInstance()->getGAKey()?>', 'auto');
|
||||
ga('send', 'pageview');
|
||||
</script>
|
||||
<script async src='https://www.google-analytics.com/analytics.js'></script>
|
||||
<!-- End Google Analytics -->
|
||||
<?php } else { ?>
|
||||
<script>window.ga = [];</script>
|
||||
<?php } ?>
|
||||
|
||||
<meta charset="utf-8">
|
||||
<title><?=$meta->title?></title>
|
||||
<title><?=$companyName?></title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta name="description" content="">
|
||||
<link rel="shortcut icon" href="https://icehrm.s3.amazonaws.com/images/icon16.png">
|
||||
<meta name="author" content="">
|
||||
|
||||
<link rel="image_src" href="<?=!empty($meta->imageUrl)?$meta->imageUrl:$logoFileUrl?>"/>
|
||||
@@ -20,76 +30,20 @@ if(!file_exists($logoFileName)){
|
||||
<meta property="og:description" content="<?=$meta->description?>"/>
|
||||
|
||||
|
||||
<link href="<?=BASE_URL?>themecss/bootstrap.min.css" rel="stylesheet">
|
||||
<link href="<?=BASE_URL?>themecss/font-awesome.min.css" rel="stylesheet">
|
||||
<link href="<?=BASE_URL?>themecss/ionicons.min.css" rel="stylesheet">
|
||||
<link href="<?=BASE_URL?>dist/third-party.css?v=<?=$cssVersion?>" rel="stylesheet">
|
||||
<script type="text/javascript" src="<?=BASE_URL?>dist/third-party.js?v=<?=$jsVersion?>"></script>
|
||||
<script type="text/javascript" src="<?=BASE_URL?>dist/common.js?v=<?=$jsVersion?>"></script>
|
||||
|
||||
|
||||
|
||||
|
||||
<script type="text/javascript" src="<?=BASE_URL?>js/jquery2.0.2.min.js"></script>
|
||||
<script type="text/javascript" src="<?=BASE_URL?>js/jquery-ui.js"></script>
|
||||
|
||||
<script src="<?=BASE_URL?>themejs/bootstrap.js"></script>
|
||||
<script src="<?=BASE_URL?>js/jquery.placeholder.js"></script>
|
||||
<script src="<?=BASE_URL?>js/base64.js"></script>
|
||||
|
||||
|
||||
<script src="<?=BASE_URL?>js/bootstrap-datepicker.js"></script>
|
||||
<!-- Can not bundle - Start-->
|
||||
<script src="<?=BASE_URL?>js/jquery.timepicker.js"></script>
|
||||
<script src="<?=BASE_URL?>js/bootstrap-datetimepicker.js"></script>
|
||||
<script src="<?=BASE_URL?>js/fullcalendar.min.js"></script>
|
||||
<script src="<?=BASE_URL?>js/select2/select2.min.js"></script>
|
||||
<script src="<?=BASE_URL?>js/bootstrap-colorpicker-2.1.1/js/bootstrap-colorpicker.min.js"></script>
|
||||
|
||||
|
||||
|
||||
<link href="<?=BASE_URL?>themecss/datatables/dataTables.bootstrap.css" rel="stylesheet">
|
||||
<link href="<?=BASE_URL?>css/jquery.timepicker.css" rel="stylesheet">
|
||||
<link href="<?=BASE_URL?>css/datepicker.css" rel="stylesheet">
|
||||
<link href="<?=BASE_URL?>css/bootstrap-datetimepicker.min.css" rel="stylesheet">
|
||||
<link href="<?=BASE_URL?>css/fullcalendar.css" rel="stylesheet">
|
||||
<link href="<?=BASE_URL?>js/select2/select2.css" rel="stylesheet">
|
||||
<link href="<?=BASE_URL?>js/bootstrap-colorpicker-2.1.1/css/bootstrap-colorpicker.min.css" rel="stylesheet">
|
||||
|
||||
|
||||
<link href="<?=BASE_URL?>themecss/AdminLTE.css" rel="stylesheet">
|
||||
|
||||
<script src="<?=BASE_URL?>themejs/plugins/datatables/jquery.dataTables.js"></script>
|
||||
<script src="<?=BASE_URL?>themejs/plugins/datatables/dataTables.bootstrap.js"></script>
|
||||
<script src="<?=BASE_URL?>themejs/AdminLTE/app.js"></script>
|
||||
|
||||
|
||||
<link href="<?=BASE_URL?>css/style.css?v=<?=$cssVersion?>" rel="stylesheet">
|
||||
|
||||
<script type="text/javascript" src="<?=BASE_URL?>bower_components/tinymce/tinymce.min.js"></script>
|
||||
<link href="<?=BASE_URL?>bower_components/simplemde/dist/simplemde.min.css" rel="stylesheet">
|
||||
<script type="text/javascript" src="<?=BASE_URL?>bower_components/simplemde/dist/simplemde.min.js"></script>
|
||||
<script type="text/javascript" src="<?=BASE_URL?>js/signature_pad.js"></script>
|
||||
<script type="text/javascript" src="<?=BASE_URL?>js/date.js"></script>
|
||||
<script type="text/javascript" src="<?=BASE_URL?>js/json2.js"></script>
|
||||
<script type="text/javascript" src="<?=BASE_URL?>js/CrockfordInheritance.v0.1.js"></script>
|
||||
|
||||
<script type="text/javascript" src="<?=BASE_URL?>api/Base.js?v=<?=$jsVersion?>"></script>
|
||||
<script type="text/javascript" src="<?=BASE_URL?>api/AdapterBase.js?v=<?=$jsVersion?>"></script>
|
||||
<script type="text/javascript" src="<?=BASE_URL?>api/FormValidation.js?v=<?=$jsVersion?>"></script>
|
||||
<script type="text/javascript" src="<?=BASE_URL?>api/Notifications.js?v=<?=$jsVersion?>"></script>
|
||||
<script type="text/javascript" src="<?=BASE_URL?>api/TimeUtils.js?v=<?=$jsVersion?>"></script>
|
||||
<script type="text/javascript" src="<?=BASE_URL?>api/AesCrypt.js?v=<?=$jsVersion?>"></script>
|
||||
<?php include APP_BASE_PATH.'/modulejslibs.inc.php';?>
|
||||
|
||||
|
||||
<!-- HTML5 Shim and Respond.js IE8 support of HTML5 elements and media queries -->
|
||||
<!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
|
||||
<!--[if lt IE 9]>
|
||||
<script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script>
|
||||
<script src="https://oss.maxcdn.com/libs/respond.js/1.3.0/respond.min.js"></script>
|
||||
<![endif]-->
|
||||
<link href="<?=BASE_URL?>bower_components/flag-icon-css/css/flag-icon.min.css" rel="stylesheet">
|
||||
<!-- Can not bundle - End-->
|
||||
<script type="text/javascript" src="<?=BASE_URL.'admin/dist/candidates.js'?>?v=<?=$jsVersion?>"></script>
|
||||
<script>
|
||||
var baseUrl = '<?=CLIENT_BASE_URL?>service.php';
|
||||
var CLIENT_BASE_URL = '<?=CLIENT_BASE_URL?>';
|
||||
</script>
|
||||
<script type="text/javascript" src="<?=BASE_URL?>js/app-global.js"></script>
|
||||
|
||||
</head>
|
||||
<body>
|
||||
|
||||
@@ -78,8 +78,8 @@ class qqFileUploader {
|
||||
}
|
||||
|
||||
$size = $this->file->getSize();
|
||||
\Utils\LogManager::getInstance()->info('file size ='.$size);
|
||||
\Utils\LogManager::getInstance()->info('file size limit ='.$this->sizeLimit);
|
||||
\Utils\LogManager::getInstance()->debug('file size ='.$size);
|
||||
\Utils\LogManager::getInstance()->debug('file size limit ='.$this->sizeLimit);
|
||||
if ($size == 0) {
|
||||
return array('success'=>0,'error' => 'File is empty');
|
||||
}
|
||||
@@ -149,9 +149,6 @@ $s3WebUrl = \Classes\SettingsManager::getInstance()->getSetting("Files: S3 Web U
|
||||
|
||||
$uploadedToS3 = false;
|
||||
|
||||
\Utils\LogManager::getInstance()->info(
|
||||
$uploadFilesToS3."|".$uploadFilesToS3Key."|".$uploadFilesToS3Secret."|".$s3Bucket."|".$s3WebUrl."|".CLIENT_NAME
|
||||
);
|
||||
$localFile = CLIENT_BASE_PATH.'data/'.$result['filename'];
|
||||
$f_size = filesize($localFile);
|
||||
if($uploadFilesToS3.'' == '1' && !empty($uploadFilesToS3Key) && !empty($uploadFilesToS3Secret) &&
|
||||
@@ -159,9 +156,9 @@ if($uploadFilesToS3.'' == '1' && !empty($uploadFilesToS3Key) && !empty($uploadFi
|
||||
|
||||
|
||||
$uploadname = CLIENT_NAME."/".$result['filename'];
|
||||
\Utils\LogManager::getInstance()->info("Upload file to s3:".$uploadname);
|
||||
\Utils\LogManager::getInstance()->info("Local file:".$localFile);
|
||||
\Utils\LogManager::getInstance()->info("Local file size:".$f_size);
|
||||
\Utils\LogManager::getInstance()->debug("Upload file to s3:".$uploadname);
|
||||
\Utils\LogManager::getInstance()->debug("Local file:".$localFile);
|
||||
\Utils\LogManager::getInstance()->debug("Local file size:".$f_size);
|
||||
|
||||
|
||||
$s3FileSys = new \Classes\S3FileSystem($uploadFilesToS3Key, $uploadFilesToS3Secret);
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
<?php if(isset($emailTemplates)){?>
|
||||
modJsList[prop].setEmailTemplates(<?=json_encode($emailTemplates)?>);
|
||||
<?php } ?>
|
||||
modJsList[prop].setUser(<?=json_encode($user)?>);
|
||||
modJsList[prop].setUser(<?=json_encode(\Classes\BaseService::getInstance()->cleanUpUser($user))?>);
|
||||
<?php if(isset($_REQUEST['action']) && $_REQUEST['action'] == "new"){?>
|
||||
if(modJsList[prop].newInitObject == undefined || modJsList[prop].newInitObject == null){
|
||||
modJsList[prop].initFieldMasterData(null,modJsList[prop].renderForm);
|
||||
@@ -42,13 +42,8 @@
|
||||
|
||||
|
||||
//Other static js objects
|
||||
|
||||
var timeUtils = new TimeUtils();
|
||||
timeUtils.setServerGMToffset('<?=$diffHoursBetweenServerTimezoneWithGMT?>');
|
||||
|
||||
var notificationManager = new NotificationManager();
|
||||
notificationManager.setBaseUrl('<?=CLIENT_BASE_URL?>service.php');
|
||||
notificationManager.setTimeUtils(timeUtils);
|
||||
var timeUtils = setupTimeUtils('<?=$diffHoursBetweenServerTimezoneWithGMT?>');
|
||||
var notificationManager = setupNotifications('<?=CLIENT_BASE_URL?>service.php');
|
||||
|
||||
<?php
|
||||
$notificationTemplates = array();
|
||||
|
||||
104
core/header.php
104
core/header.php
@@ -1,25 +1,4 @@
|
||||
<?php
|
||||
/*
|
||||
This file is part of Ice Framework.
|
||||
|
||||
Ice Framework is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
Ice Framework is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with Ice Framework. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
------------------------------------------------------------------
|
||||
|
||||
Original work Copyright (c) 2012 [Gamonoid Media Pvt. Ltd]
|
||||
Developer: Thilina Hasantha (thilina.hasantha[at]gmail.com / facebook.com/thilinah)
|
||||
*/
|
||||
if (!defined('MODULE_NAME')) {
|
||||
define('MODULE_NAME', $moduleName);
|
||||
}
|
||||
@@ -94,6 +73,7 @@ $chatUserProfile = \Classes\UIManager::getInstance()->getCurrentProfile();
|
||||
?><!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<?php if (!empty(\Classes\BaseService::getInstance()->getGAKey())) { ?>
|
||||
<!-- Google Analytics -->
|
||||
<script>
|
||||
window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date;
|
||||
@@ -102,6 +82,9 @@ $chatUserProfile = \Classes\UIManager::getInstance()->getCurrentProfile();
|
||||
</script>
|
||||
<script async src='https://www.google-analytics.com/analytics.js'></script>
|
||||
<!-- End Google Analytics -->
|
||||
<?php } else { ?>
|
||||
<script>window.ga = [];</script>
|
||||
<?php } ?>
|
||||
|
||||
<meta charset="utf-8">
|
||||
<title><?=$companyName?></title>
|
||||
@@ -110,84 +93,20 @@ $chatUserProfile = \Classes\UIManager::getInstance()->getCurrentProfile();
|
||||
<meta name="description" content="">
|
||||
<meta name="author" content="">
|
||||
|
||||
<link href="<?=BASE_URL?>themecss/bootstrap.min.css" rel="stylesheet">
|
||||
<link href="<?=BASE_URL?>themecss/font-awesome.min.css" rel="stylesheet">
|
||||
<link href="<?=BASE_URL?>themecss/ionicons.min.css" rel="stylesheet">
|
||||
<link href="<?=BASE_URL?>bower_components/material-design-icons/iconfont/material-icons.css" rel="stylesheet">
|
||||
<link href="<?=BASE_URL?>dist/third-party.css?v=<?=$cssVersion?>" rel="stylesheet">
|
||||
<script type="text/javascript" src="<?=BASE_URL?>dist/third-party.js?v=<?=$jsVersion?>"></script>
|
||||
<script type="text/javascript" src="<?=BASE_URL?>dist/common.js?v=<?=$jsVersion?>"></script>
|
||||
|
||||
|
||||
|
||||
|
||||
<script type="text/javascript" src="<?=BASE_URL?>js/jquery2.0.2.min.js"></script>
|
||||
<script type="text/javascript" src="<?=BASE_URL?>js/jquery-ui.js"></script>
|
||||
|
||||
<script src="<?=BASE_URL?>themejs/bootstrap.js"></script>
|
||||
<script src="<?=BASE_URL?>js/jquery.placeholder.js"></script>
|
||||
<script src="<?=BASE_URL?>js/base64.js"></script>
|
||||
|
||||
|
||||
<script src="<?=BASE_URL?>js/bootstrap-datepicker.js"></script>
|
||||
<!-- Can not bundle - Start-->
|
||||
<script src="<?=BASE_URL?>js/jquery.timepicker.js"></script>
|
||||
<script src="<?=BASE_URL?>js/bootstrap-datetimepicker.js"></script>
|
||||
<script src="<?=BASE_URL?>js/select2/select2.min.js"></script>
|
||||
<script src="<?=BASE_URL?>js/bootstrap-colorpicker-2.1.1/js/bootstrap-colorpicker.min.js"></script>
|
||||
|
||||
<!--fullcaledar-->
|
||||
|
||||
<link href="<?=BASE_URL?>js/fullcaledar/fullcalendar.css" rel="stylesheet">
|
||||
<link href="<?=BASE_URL?>js/fullcaledar/fullcalendar.print.css" rel="stylesheet" media="print">
|
||||
<script src="<?=BASE_URL?>js/fullcaledar/lib/moment.min.js"></script>
|
||||
<script src="<?=BASE_URL?>js/fullcaledar/fullcalendar.min.js"></script>
|
||||
|
||||
<script src="<?=BASE_URL?>js/clipboard.js"></script>
|
||||
|
||||
<link href="<?=BASE_URL?>themecss/datatables/dataTables.bootstrap.css" rel="stylesheet">
|
||||
<link href="<?=BASE_URL?>css/jquery.timepicker.css" rel="stylesheet">
|
||||
<link href="<?=BASE_URL?>css/datepicker.css" rel="stylesheet">
|
||||
<link href="<?=BASE_URL?>css/bootstrap-datetimepicker.min.css" rel="stylesheet">
|
||||
<link href="<?=BASE_URL?>js/select2/select2.css" rel="stylesheet">
|
||||
<link href="<?=BASE_URL?>js/bootstrap-colorpicker-2.1.1/css/bootstrap-colorpicker.min.css" rel="stylesheet">
|
||||
<link href="<?=BASE_URL?>bower_components/flag-icon-css/css/flag-icon.min.css" rel="stylesheet">
|
||||
<!-- Can not bundle - End-->
|
||||
|
||||
<link href="<?=BASE_URL?>themecss/AdminLTE.css" rel="stylesheet">
|
||||
|
||||
<script src="<?=BASE_URL?>themejs/plugins/datatables/jquery.dataTables.js?v=<?=$jsVersion?>"></script>
|
||||
<script src="<?=BASE_URL?>themejs/plugins/datatables/dataTables.bootstrap.js?v=<?=$jsVersion?>"></script>
|
||||
<script src="<?=BASE_URL?>themejs/AdminLTE/app.js?v=<?=$jsVersion?>"></script>
|
||||
|
||||
|
||||
<link href="<?=BASE_URL?>css/style.css?v=<?=$cssVersion?>" rel="stylesheet">
|
||||
|
||||
<script type="text/javascript" src="<?=BASE_URL?>bower_components/tinymce/tinymce.min.js"></script>
|
||||
<link href="<?=BASE_URL?>bower_components/simplemde/dist/simplemde.min.css" rel="stylesheet">
|
||||
<script type="text/javascript" src="<?=BASE_URL?>bower_components/simplemde/dist/simplemde.min.js"></script>
|
||||
<script type="text/javascript" src="<?=BASE_URL?>bower_components/inputmask/dist/min/jquery.inputmask.bundle.min.js"></script>
|
||||
<script type="text/javascript" src="<?=BASE_URL?>js/signature_pad.js"></script>
|
||||
<script type="text/javascript" src="<?=BASE_URL?>js/date.js"></script>
|
||||
<script type="text/javascript" src="<?=BASE_URL?>js/json2.js"></script>
|
||||
<script type="text/javascript" src="<?=BASE_URL?>js/CrockfordInheritance.v0.1.js"></script>
|
||||
|
||||
<script type="text/javascript" src="<?=BASE_URL?>api/Base.js?v=<?=$jsVersion?>"></script>
|
||||
<script type="text/javascript" src="<?=BASE_URL?>api/AdapterBase.js?v=<?=$jsVersion?>"></script>
|
||||
<script type="text/javascript" src="<?=BASE_URL?>api/FormValidation.js?v=<?=$jsVersion?>"></script>
|
||||
<script type="text/javascript" src="<?=BASE_URL?>api/Notifications.js?v=<?=$jsVersion?>"></script>
|
||||
<script type="text/javascript" src="<?=BASE_URL?>api/TimeUtils.js?v=<?=$jsVersion?>"></script>
|
||||
<script type="text/javascript" src="<?=BASE_URL?>api/ConversationsAdapter.js?v=<?=$jsVersion?>"></script>
|
||||
<script type="text/javascript" src="<?=BASE_URL?>api/AesCrypt.js?v=<?=$jsVersion?>"></script>
|
||||
<script type="text/javascript" src="<?=BASE_URL?>api/SocialShare.js?v=<?=$jsVersion?>"></script>
|
||||
|
||||
|
||||
<!-- HTML5 Shim and Respond.js IE8 support of HTML5 elements and media queries -->
|
||||
<!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
|
||||
<!--[if lt IE 9]>
|
||||
<script src="<?=BASE_URL?>js/html5shiv.js"></script>
|
||||
<script src="<?=BASE_URL?>js/respond.min.js"></script>
|
||||
<![endif]-->
|
||||
<script>
|
||||
var baseUrl = '<?=CLIENT_BASE_URL?>service.php';
|
||||
var CLIENT_BASE_URL = '<?=CLIENT_BASE_URL?>';
|
||||
</script>
|
||||
<script type="text/javascript" src="<?=BASE_URL?>js/app-global.js"></script>
|
||||
|
||||
</head>
|
||||
<body class="skin-blue" data-turbolinks="false">
|
||||
@@ -214,6 +133,9 @@ $chatUserProfile = \Classes\UIManager::getInstance()->getCurrentProfile();
|
||||
</div>
|
||||
</nav>
|
||||
</header>
|
||||
<?php if(\Classes\UIManager::getInstance()->getCurrentLanguageCode() === 'ar') {?>
|
||||
<link href="<?=BASE_URL?>css/rtl.css" rel="stylesheet">
|
||||
<?php } ?>
|
||||
<div class="wrapper row-offcanvas row-offcanvas-left">
|
||||
<div id="iceloader" style="
|
||||
width: 100%;
|
||||
@@ -236,7 +158,7 @@ $chatUserProfile = \Classes\UIManager::getInstance()->getCurrentProfile();
|
||||
<ul class="sidebar-menu">
|
||||
|
||||
|
||||
<?php if($user->user_level == 'Admin' || $user->user_level == 'Manager' || $user->user_level == 'Other'){?>
|
||||
<?php if($user->user_level == 'Admin' || $user->user_level == 'Manager' || $user->user_level == 'Restricted Admin' || $user->user_level == 'Restricted Manager'){?>
|
||||
|
||||
<?php foreach($adminModules as $menu){?>
|
||||
<?php if(count($menu['menu']) == 0){continue;}?>
|
||||
|
||||
@@ -55,6 +55,7 @@ $fieldTemplates['colorpick'] = file_get_contents(CLIENT_PATH.'/templates/fields/
|
||||
$fieldTemplates['signature'] = file_get_contents(CLIENT_PATH.'/templates/fields/signature.html');
|
||||
$fieldTemplates['simplemde'] = file_get_contents(CLIENT_PATH.'/templates/fields/simplemde.html');
|
||||
$fieldTemplates['tinymce'] = file_get_contents(CLIENT_PATH.'/templates/fields/tinymce.html');
|
||||
$fieldTemplates['code'] = file_get_contents(CLIENT_PATH.'/templates/fields/code.html');
|
||||
|
||||
$templates = array();
|
||||
$templates['formTemplate'] = file_get_contents(CLIENT_PATH.'/templates/form_template.html');
|
||||
|
||||
1962
core/lang/al.po
Normal file
1962
core/lang/al.po
Normal file
File diff suppressed because it is too large
Load Diff
1974
core/lang/ar.po
Normal file
1974
core/lang/ar.po
Normal file
File diff suppressed because it is too large
Load Diff
@@ -1903,3 +1903,72 @@ msgstr "Gespräche"
|
||||
|
||||
msgid "Start Now"
|
||||
msgstr "Jetzt anfangen"
|
||||
|
||||
msgid "Company Assets"
|
||||
msgstr "Betriebsvermögen"
|
||||
|
||||
msgid "Asset Types"
|
||||
msgstr "Asset-Typ"
|
||||
|
||||
msgid "Asset Name"
|
||||
msgstr "Asset-Name"
|
||||
|
||||
msgid "Performance"
|
||||
msgstr "Performance"
|
||||
|
||||
msgid "Performance Review"
|
||||
msgstr "Leistungsbeurteilung"
|
||||
|
||||
msgid "Performance Reviews"
|
||||
msgstr "Leistungsbeurteilungen"
|
||||
|
||||
msgid "Review"
|
||||
msgstr "Rezension"
|
||||
|
||||
msgid "Reviews"
|
||||
msgstr "Bewertungen"
|
||||
|
||||
msgid "Review Feedback"
|
||||
msgstr "Rückmeldung überprüfen"
|
||||
|
||||
msgid "Review Template"
|
||||
msgstr "Vorlage überprüfen"
|
||||
|
||||
msgid "Template"
|
||||
msgstr "Vorlage"
|
||||
|
||||
msgid "Review Date"
|
||||
msgstr "Prüfungsdatum"
|
||||
|
||||
msgid "Self Assessment Due On"
|
||||
msgstr "Selbsteinschätzung fällig am"
|
||||
|
||||
msgid "Review Period Start"
|
||||
msgstr "Überprüfungszeitraum starten"
|
||||
|
||||
msgid "Review Period End"
|
||||
msgstr "Periodenende überprüfen"
|
||||
|
||||
msgid "Attendees"
|
||||
msgstr "Teilnehmer"
|
||||
|
||||
msgid "Performance Reviews Coordinated by Me"
|
||||
msgstr "Performance Reviews koordiniert von mir"
|
||||
|
||||
msgid "Provide Feedback"
|
||||
msgstr "Rückmeldung geben"
|
||||
|
||||
msgid "Review Status"
|
||||
msgstr "Überprüfen Sie den Status"
|
||||
|
||||
msgid "Payroll Employees"
|
||||
msgstr "Mitarbeiter der Gehaltsabrechnung"
|
||||
|
||||
msgid "Payroll Groups"
|
||||
msgstr "Gehaltsabrechnungs-Gruppen"
|
||||
|
||||
msgid "Saved Calculations"
|
||||
msgstr "Gespeicherte Berechnungen"
|
||||
|
||||
msgid "Total Leave Days"
|
||||
msgstr "Gesamturlaubstage"
|
||||
|
||||
@@ -1903,3 +1903,72 @@ msgstr "Conversations"
|
||||
|
||||
msgid "Start Now"
|
||||
msgstr "Start Now"
|
||||
|
||||
msgid "Company Assets"
|
||||
msgstr "Company Assets"
|
||||
|
||||
msgid "Asset Types"
|
||||
msgstr "Asset Types"
|
||||
|
||||
msgid "Asset Name"
|
||||
msgstr "Asset Name"
|
||||
|
||||
msgid "Performance"
|
||||
msgstr "Performance"
|
||||
|
||||
msgid "Performance Review"
|
||||
msgstr "Performance Review"
|
||||
|
||||
msgid "Performance Reviews"
|
||||
msgstr "Performance Reviews"
|
||||
|
||||
msgid "Review"
|
||||
msgstr "Review"
|
||||
|
||||
msgid "Reviews"
|
||||
msgstr "Reviews"
|
||||
|
||||
msgid "Review Feedback"
|
||||
msgstr "Review Feedback"
|
||||
|
||||
msgid "Review Template"
|
||||
msgstr "Review Template"
|
||||
|
||||
msgid "Template"
|
||||
msgstr "Template"
|
||||
|
||||
msgid "Review Date"
|
||||
msgstr "Review Date"
|
||||
|
||||
msgid "Self Assessment Due On"
|
||||
msgstr "Self Assessment Due On"
|
||||
|
||||
msgid "Review Period Start"
|
||||
msgstr "Review Period Start"
|
||||
|
||||
msgid "Review Period End"
|
||||
msgstr "Review Period End"
|
||||
|
||||
msgid "Attendees"
|
||||
msgstr "Attendees"
|
||||
|
||||
msgid "Performance Reviews Coordinated by Me"
|
||||
msgstr "Performance Reviews Coordinated by Me"
|
||||
|
||||
msgid "Provide Feedback"
|
||||
msgstr "Provide Feedback"
|
||||
|
||||
msgid "Review Status"
|
||||
msgstr "Review Status"
|
||||
|
||||
msgid "Payroll Employees"
|
||||
msgstr "Payroll Employees"
|
||||
|
||||
msgid "Payroll Groups"
|
||||
msgstr "Payroll Groups"
|
||||
|
||||
msgid "Saved Calculations"
|
||||
msgstr "Saved Calculations"
|
||||
|
||||
msgid "Total Leave Days"
|
||||
msgstr "Total Leave Days"
|
||||
|
||||
633
core/lang/es.po
633
core/lang/es.po
File diff suppressed because it is too large
Load Diff
1974
core/lang/fi.po
Normal file
1974
core/lang/fi.po
Normal file
File diff suppressed because it is too large
Load Diff
657
core/lang/fr.po
657
core/lang/fr.po
File diff suppressed because it is too large
Load Diff
@@ -1903,3 +1903,72 @@ msgstr "conversazioni"
|
||||
|
||||
msgid "Start Now"
|
||||
msgstr "Avviare ora"
|
||||
|
||||
msgid "Company Assets"
|
||||
msgstr "I beni aziendali"
|
||||
|
||||
msgid "Asset Types"
|
||||
msgstr "Tipi di cespite"
|
||||
|
||||
msgid "Asset Name"
|
||||
msgstr "Asset Nome"
|
||||
|
||||
msgid "Performance"
|
||||
msgstr "Prestazione"
|
||||
|
||||
msgid "Performance Review"
|
||||
msgstr "Valutazione delle prestazioni"
|
||||
|
||||
msgid "Performance Reviews"
|
||||
msgstr "Recensioni sulle prestazioni"
|
||||
|
||||
msgid "Review"
|
||||
msgstr "Revisione"
|
||||
|
||||
msgid "Reviews"
|
||||
msgstr "Recensioni"
|
||||
|
||||
msgid "Review Feedback"
|
||||
msgstr "Rivedi il feedback"
|
||||
|
||||
msgid "Review Template"
|
||||
msgstr "Modello di recensione"
|
||||
|
||||
msgid "Template"
|
||||
msgstr "Modello"
|
||||
|
||||
msgid "Review Date"
|
||||
msgstr "Data della recensione"
|
||||
|
||||
msgid "Self Assessment Due On"
|
||||
msgstr "Autovalutazione dovuta"
|
||||
|
||||
msgid "Review Period Start"
|
||||
msgstr "Esaminare l'inizio del periodo"
|
||||
|
||||
msgid "Review Period End"
|
||||
msgstr "Revisione periodo fine"
|
||||
|
||||
msgid "Attendees"
|
||||
msgstr "I partecipanti"
|
||||
|
||||
msgid "Performance Reviews Coordinated by Me"
|
||||
msgstr "Recensioni sulle prestazioni coordinate da me"
|
||||
|
||||
msgid "Provide Feedback"
|
||||
msgstr "Fornire un feedback"
|
||||
|
||||
msgid "Review Status"
|
||||
msgstr "Verifica lo stato"
|
||||
|
||||
msgid "Payroll Employees"
|
||||
msgstr "Personale dipendente"
|
||||
|
||||
msgid "Payroll Groups"
|
||||
msgstr "Gruppi di lavoro"
|
||||
|
||||
msgid "Saved Calculations"
|
||||
msgstr "Calcoli salvati"
|
||||
|
||||
msgid "Total Leave Days"
|
||||
msgstr "Giorni di congedo totali"
|
||||
|
||||
@@ -1903,3 +1903,72 @@ msgstr "会話"
|
||||
|
||||
msgid "Start Now"
|
||||
msgstr "今すぐ開始"
|
||||
|
||||
msgid "Company Assets"
|
||||
msgstr "会社の資産"
|
||||
|
||||
msgid "Asset Types"
|
||||
msgstr "資産タイプ"
|
||||
|
||||
msgid "Asset Name"
|
||||
msgstr "資産名"
|
||||
|
||||
msgid "Performance"
|
||||
msgstr "パフォーマンス"
|
||||
|
||||
msgid "Performance Review"
|
||||
msgstr "人事考課"
|
||||
|
||||
msgid "Performance Reviews"
|
||||
msgstr "パフォーマンス・レビュー"
|
||||
|
||||
msgid "Review"
|
||||
msgstr "レビュー"
|
||||
|
||||
msgid "Reviews"
|
||||
msgstr "レビュー"
|
||||
|
||||
msgid "Review Feedback"
|
||||
msgstr "フィードバックを確認する"
|
||||
|
||||
msgid "Review Template"
|
||||
msgstr "レビューテンプレート"
|
||||
|
||||
msgid "Template"
|
||||
msgstr "テンプレート"
|
||||
|
||||
msgid "Review Date"
|
||||
msgstr "レビュー日"
|
||||
|
||||
msgid "Self Assessment Due On"
|
||||
msgstr "セルフアセスメントの期限"
|
||||
|
||||
msgid "Review Period Start"
|
||||
msgstr "審査期間の開始"
|
||||
|
||||
msgid "Review Period End"
|
||||
msgstr "期間終了の確認"
|
||||
|
||||
msgid "Attendees"
|
||||
msgstr "出席者"
|
||||
|
||||
msgid "Performance Reviews Coordinated by Me"
|
||||
msgstr "私が調整したパフォーマンスレビュー"
|
||||
|
||||
msgid "Provide Feedback"
|
||||
msgstr "フィードバックを提供します"
|
||||
|
||||
msgid "Review Status"
|
||||
msgstr "審査ステータス"
|
||||
|
||||
msgid "Payroll Employees"
|
||||
msgstr "給与計算従業員"
|
||||
|
||||
msgid "Payroll Groups"
|
||||
msgstr "給与グループ"
|
||||
|
||||
msgid "Saved Calculations"
|
||||
msgstr "保存された計算"
|
||||
|
||||
msgid "Total Leave Days"
|
||||
msgstr "総休暇日数"
|
||||
|
||||
1974
core/lang/nl.po
Normal file
1974
core/lang/nl.po
Normal file
File diff suppressed because it is too large
Load Diff
1974
core/lang/no.po
Normal file
1974
core/lang/no.po
Normal file
File diff suppressed because it is too large
Load Diff
709
core/lang/pl.po
709
core/lang/pl.po
File diff suppressed because it is too large
Load Diff
1974
core/lang/pt.po
Normal file
1974
core/lang/pt.po
Normal file
File diff suppressed because it is too large
Load Diff
1974
core/lang/sr.po
Normal file
1974
core/lang/sr.po
Normal file
File diff suppressed because it is too large
Load Diff
1974
core/lang/sv.po
Normal file
1974
core/lang/sv.po
Normal file
File diff suppressed because it is too large
Load Diff
@@ -1903,3 +1903,72 @@ msgstr "对话"
|
||||
|
||||
msgid "Start Now"
|
||||
msgstr "现在开始"
|
||||
|
||||
msgid "Company Assets"
|
||||
msgstr "公司资产"
|
||||
|
||||
msgid "Asset Types"
|
||||
msgstr "资产类型"
|
||||
|
||||
msgid "Asset Name"
|
||||
msgstr "资产名称"
|
||||
|
||||
msgid "Performance"
|
||||
msgstr "性能"
|
||||
|
||||
msgid "Performance Review"
|
||||
msgstr "性能评估"
|
||||
|
||||
msgid "Performance Reviews"
|
||||
msgstr "绩效评估"
|
||||
|
||||
msgid "Review"
|
||||
msgstr "评论"
|
||||
|
||||
msgid "Reviews"
|
||||
msgstr "评测"
|
||||
|
||||
msgid "Review Feedback"
|
||||
msgstr "回顾反馈"
|
||||
|
||||
msgid "Review Template"
|
||||
msgstr "审核模板"
|
||||
|
||||
msgid "Template"
|
||||
msgstr "模板"
|
||||
|
||||
msgid "Review Date"
|
||||
msgstr "审核日期"
|
||||
|
||||
msgid "Self Assessment Due On"
|
||||
msgstr "到期的自我评估"
|
||||
|
||||
msgid "Review Period Start"
|
||||
msgstr "查看期间开始"
|
||||
|
||||
msgid "Review Period End"
|
||||
msgstr "查看期末"
|
||||
|
||||
msgid "Attendees"
|
||||
msgstr "与会者"
|
||||
|
||||
msgid "Performance Reviews Coordinated by Me"
|
||||
msgstr "性能评估由我协调"
|
||||
|
||||
msgid "Provide Feedback"
|
||||
msgstr "提供反馈信息"
|
||||
|
||||
msgid "Review Status"
|
||||
msgstr "审核状态"
|
||||
|
||||
msgid "Payroll Employees"
|
||||
msgstr "薪资员工"
|
||||
|
||||
msgid "Payroll Groups"
|
||||
msgstr "工资组"
|
||||
|
||||
msgid "Saved Calculations"
|
||||
msgstr "保存的计算"
|
||||
|
||||
msgid "Total Leave Days"
|
||||
msgstr "休假总天数"
|
||||
|
||||
@@ -11,7 +11,8 @@
|
||||
"spomky-labs/base64url": "^1.0",
|
||||
"cebe/markdown": "^1.2",
|
||||
"neitanod/forceutf8": "^2.0",
|
||||
"google/apiclient": "^2.2"
|
||||
"google/apiclient": "^2.2",
|
||||
"predis/predis": "^1.1"
|
||||
},
|
||||
"require-dev": {
|
||||
"phpunit/phpunit": "~6"
|
||||
|
||||
73
core/lib/composer/composer.lock
generated
73
core/lib/composer/composer.lock
generated
@@ -4,7 +4,7 @@
|
||||
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file",
|
||||
"This file is @generated automatically"
|
||||
],
|
||||
"content-hash": "bea0e0b37a382bfad7a07c0466ef70bb",
|
||||
"content-hash": "5f13ca2ac8663a7be5e32beacd03c6df",
|
||||
"packages": [
|
||||
{
|
||||
"name": "cebe/markdown",
|
||||
@@ -374,6 +374,7 @@
|
||||
],
|
||||
"description": "Promoting the interoperability of container objects (DIC, SL, etc.)",
|
||||
"homepage": "https://github.com/container-interop/container-interop",
|
||||
"abandoned": "psr/container",
|
||||
"time": "2017-02-14T19:40:03+00:00"
|
||||
},
|
||||
{
|
||||
@@ -658,12 +659,12 @@
|
||||
"version": "v4.0.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/oscarotero/Gettext.git",
|
||||
"url": "https://github.com/php-gettext/Gettext.git",
|
||||
"reference": "7efdd4a01afd7fab85a90fb64fb88eeaef06f3b1"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/oscarotero/Gettext/zipball/7efdd4a01afd7fab85a90fb64fb88eeaef06f3b1",
|
||||
"url": "https://api.github.com/repos/php-gettext/Gettext/zipball/7efdd4a01afd7fab85a90fb64fb88eeaef06f3b1",
|
||||
"reference": "7efdd4a01afd7fab85a90fb64fb88eeaef06f3b1",
|
||||
"shasum": ""
|
||||
},
|
||||
@@ -718,12 +719,12 @@
|
||||
"version": "2.3.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/mlocati/cldr-to-gettext-plural-rules.git",
|
||||
"url": "https://github.com/php-gettext/Languages.git",
|
||||
"reference": "49c39e51569963cc917a924b489e7025bfb9d8c7"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/mlocati/cldr-to-gettext-plural-rules/zipball/49c39e51569963cc917a924b489e7025bfb9d8c7",
|
||||
"url": "https://api.github.com/repos/php-gettext/Languages/zipball/49c39e51569963cc917a924b489e7025bfb9d8c7",
|
||||
"reference": "49c39e51569963cc917a924b489e7025bfb9d8c7",
|
||||
"shasum": ""
|
||||
},
|
||||
@@ -779,12 +780,12 @@
|
||||
"version": "v2.2.1",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/google/google-api-php-client.git",
|
||||
"url": "https://github.com/googleapis/google-api-php-client.git",
|
||||
"reference": "b69b8ac4bf6501793c389d4e013a79d09c85c5f2"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/google/google-api-php-client/zipball/b69b8ac4bf6501793c389d4e013a79d09c85c5f2",
|
||||
"url": "https://api.github.com/repos/googleapis/google-api-php-client/zipball/b69b8ac4bf6501793c389d4e013a79d09c85c5f2",
|
||||
"reference": "b69b8ac4bf6501793c389d4e013a79d09c85c5f2",
|
||||
"shasum": ""
|
||||
},
|
||||
@@ -838,12 +839,12 @@
|
||||
"version": "v0.61",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/google/google-api-php-client-services.git",
|
||||
"url": "https://github.com/googleapis/google-api-php-client-services.git",
|
||||
"reference": "f7221039fda179b3f5096a6272b38706f2a6fcd0"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/google/google-api-php-client-services/zipball/f7221039fda179b3f5096a6272b38706f2a6fcd0",
|
||||
"url": "https://api.github.com/repos/googleapis/google-api-php-client-services/zipball/f7221039fda179b3f5096a6272b38706f2a6fcd0",
|
||||
"reference": "f7221039fda179b3f5096a6272b38706f2a6fcd0",
|
||||
"shasum": ""
|
||||
},
|
||||
@@ -875,12 +876,12 @@
|
||||
"version": "v1.3.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/google/google-auth-library-php.git",
|
||||
"url": "https://github.com/googleapis/google-auth-library-php.git",
|
||||
"reference": "8f7c96146b2c62d3f4c6bbc4b5bb8a8e396b0b71"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/google/google-auth-library-php/zipball/8f7c96146b2c62d3f4c6bbc4b5bb8a8e396b0b71",
|
||||
"url": "https://api.github.com/repos/googleapis/google-auth-library-php/zipball/8f7c96146b2c62d3f4c6bbc4b5bb8a8e396b0b71",
|
||||
"reference": "8f7c96146b2c62d3f4c6bbc4b5bb8a8e396b0b71",
|
||||
"shasum": ""
|
||||
},
|
||||
@@ -1780,6 +1781,56 @@
|
||||
],
|
||||
"time": "2018-04-15T16:55:05+00:00"
|
||||
},
|
||||
{
|
||||
"name": "predis/predis",
|
||||
"version": "v1.1.1",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/nrk/predis.git",
|
||||
"reference": "f0210e38881631afeafb56ab43405a92cafd9fd1"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/nrk/predis/zipball/f0210e38881631afeafb56ab43405a92cafd9fd1",
|
||||
"reference": "f0210e38881631afeafb56ab43405a92cafd9fd1",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": ">=5.3.9"
|
||||
},
|
||||
"require-dev": {
|
||||
"phpunit/phpunit": "~4.8"
|
||||
},
|
||||
"suggest": {
|
||||
"ext-curl": "Allows access to Webdis when paired with phpiredis",
|
||||
"ext-phpiredis": "Allows faster serialization and deserialization of the Redis protocol"
|
||||
},
|
||||
"type": "library",
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"Predis\\": "src/"
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Daniele Alessandri",
|
||||
"email": "suppakilla@gmail.com",
|
||||
"homepage": "http://clorophilla.net"
|
||||
}
|
||||
],
|
||||
"description": "Flexible and feature-complete Redis client for PHP and HHVM",
|
||||
"homepage": "http://github.com/nrk/predis",
|
||||
"keywords": [
|
||||
"nosql",
|
||||
"predis",
|
||||
"redis"
|
||||
],
|
||||
"time": "2016-06-16T16:22:20+00:00"
|
||||
},
|
||||
{
|
||||
"name": "psr/cache",
|
||||
"version": "1.0.1",
|
||||
|
||||
@@ -1 +0,0 @@
|
||||
../gettext/languages/bin/export-plural-rules
|
||||
4
core/lib/composer/vendor/bin/export-plural-rules
vendored
Executable file
4
core/lib/composer/vendor/bin/export-plural-rules
vendored
Executable file
@@ -0,0 +1,4 @@
|
||||
#!/usr/bin/env php
|
||||
<?php
|
||||
|
||||
include 'export-plural-rules.php';
|
||||
@@ -1 +0,0 @@
|
||||
../gettext/languages/bin/export-plural-rules.php
|
||||
234
core/lib/composer/vendor/bin/export-plural-rules.php
vendored
Executable file
234
core/lib/composer/vendor/bin/export-plural-rules.php
vendored
Executable file
@@ -0,0 +1,234 @@
|
||||
<?php
|
||||
use Gettext\Languages\Exporter\Exporter;
|
||||
use Gettext\Languages\Language;
|
||||
|
||||
// Let's start by imposing that we don't accept any error or warning.
|
||||
// This is a really life-saving approach.
|
||||
error_reporting(E_ALL);
|
||||
set_error_handler(function ($errno, $errstr, $errfile, $errline) {
|
||||
Enviro::echoErr("$errstr\nFile: $errfile\nLine: $errline\nCode: $errno\n");
|
||||
die(5);
|
||||
});
|
||||
|
||||
require_once dirname(__DIR__).'/src/autoloader.php';
|
||||
|
||||
// Parse the command line options
|
||||
Enviro::initialize();
|
||||
|
||||
try {
|
||||
if (isset(Enviro::$languages)) {
|
||||
$languages = array();
|
||||
foreach (Enviro::$languages as $languageId) {
|
||||
$language = Language::getById($languageId);
|
||||
if (!isset($language)) {
|
||||
throw new Exception("Unable to find the language with id '$languageId'");
|
||||
}
|
||||
$languages[] = $language;
|
||||
}
|
||||
} else {
|
||||
$languages = Language::getAll();
|
||||
}
|
||||
if (Enviro::$reduce) {
|
||||
$languages = Enviro::reduce($languages);
|
||||
}
|
||||
if (isset(Enviro::$outputFilename)) {
|
||||
echo call_user_func(array(Exporter::getExporterClassName(Enviro::$outputFormat), 'toFile'), $languages, Enviro::$outputFilename, array('us-ascii' => Enviro::$outputUSAscii));
|
||||
} else {
|
||||
echo call_user_func(array(Exporter::getExporterClassName(Enviro::$outputFormat), 'toString'), $languages, array('us-ascii' => Enviro::$outputUSAscii));
|
||||
}
|
||||
} catch (Exception $x) {
|
||||
Enviro::echoErr($x->getMessage()."\n");
|
||||
Enviro::echoErr("Trace:\n");
|
||||
Enviro::echoErr($x->getTraceAsString()."\n");
|
||||
die(4);
|
||||
}
|
||||
|
||||
die(0);
|
||||
|
||||
/**
|
||||
* Helper class to handle command line options.
|
||||
*/
|
||||
class Enviro
|
||||
{
|
||||
/**
|
||||
* Shall the output contain only US-ASCII characters?
|
||||
* @var bool
|
||||
*/
|
||||
public static $outputUSAscii;
|
||||
/**
|
||||
* The output format.
|
||||
* @var string
|
||||
*/
|
||||
public static $outputFormat;
|
||||
/**
|
||||
* Output file name.
|
||||
* @var string
|
||||
*/
|
||||
public static $outputFilename;
|
||||
/**
|
||||
* List of wanted language IDs; it not set: all languages will be returned.
|
||||
* @var array|null
|
||||
*/
|
||||
public static $languages;
|
||||
/**
|
||||
* Reduce the language list to the minimum common denominator.
|
||||
* @var bool
|
||||
*/
|
||||
public static $reduce;
|
||||
/**
|
||||
* Parse the command line options.
|
||||
*/
|
||||
public static function initialize()
|
||||
{
|
||||
global $argv;
|
||||
self::$outputUSAscii = false;
|
||||
self::$outputFormat = null;
|
||||
self::$outputFilename = null;
|
||||
self::$languages = null;
|
||||
self::$reduce = null;
|
||||
$exporters = Exporter::getExporters();
|
||||
if (isset($argv) && is_array($argv)) {
|
||||
foreach ($argv as $argi => $arg) {
|
||||
if ($argi === 0) {
|
||||
continue;
|
||||
}
|
||||
if (is_string($arg)) {
|
||||
$argLC = trim(strtolower($arg));
|
||||
switch ($argLC) {
|
||||
case '--us-ascii':
|
||||
self::$outputUSAscii = true;
|
||||
break;
|
||||
case '--reduce=yes':
|
||||
self::$reduce = true;
|
||||
break;
|
||||
case '--reduce=no':
|
||||
self::$reduce = false;
|
||||
break;
|
||||
default:
|
||||
if (preg_match('/^--output=.+$/', $argLC)) {
|
||||
if (isset(self::$outputFilename)) {
|
||||
self::echoErr("The output file name has been specified more than once!\n");
|
||||
self::showSyntax();
|
||||
die(3);
|
||||
}
|
||||
list(, self::$outputFilename) = explode('=', $arg, 2);
|
||||
self::$outputFilename = trim(self::$outputFilename);
|
||||
} elseif (preg_match('/^--languages?=.+$/', $argLC)) {
|
||||
list(, $s) = explode('=', $arg, 2);
|
||||
$list = explode(',', $s);
|
||||
if (is_array(self::$languages)) {
|
||||
self::$languages = array_merge(self::$languages, $list);
|
||||
} else {
|
||||
self::$languages = $list;
|
||||
}
|
||||
} elseif (isset($exporters[$argLC])) {
|
||||
if (isset(self::$outputFormat)) {
|
||||
self::echoErr("The output format has been specified more than once!\n");
|
||||
self::showSyntax();
|
||||
die(3);
|
||||
}
|
||||
self::$outputFormat = $argLC;
|
||||
} else {
|
||||
self::echoErr("Unknown option: $arg\n");
|
||||
self::showSyntax();
|
||||
die(2);
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if (!isset(self::$outputFormat)) {
|
||||
self::showSyntax();
|
||||
die(1);
|
||||
}
|
||||
if (isset(self::$languages)) {
|
||||
self::$languages = array_values(array_unique(self::$languages));
|
||||
}
|
||||
if (!isset(self::$reduce)) {
|
||||
self::$reduce = isset(self::$languages) ? false : true;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Write out the syntax.
|
||||
*/
|
||||
public static function showSyntax()
|
||||
{
|
||||
$exporters = array_keys(Exporter::getExporters(true));
|
||||
self::echoErr("Syntax: php ".basename(__FILE__)." [--us-ascii] [--languages=<LanguageId>[,<LanguageId>,...]] [--reduce=yes|no] [--output=<file name>] <".implode('|', $exporters).">\n");
|
||||
self::echoErr("Where:\n");
|
||||
self::echoErr("--us-ascii : if specified, the output will contain only US-ASCII characters.\n");
|
||||
self::echoErr("--languages: (or --language) export only the specified language codes.\n");
|
||||
self::echoErr(" Separate languages with commas; you can also use this argument\n");
|
||||
self::echoErr(" more than once; it's case insensitive and accepts both '_' and\n");
|
||||
self::echoErr(" '-' as locale chunks separator (eg we accept 'it_IT' as well as\n");
|
||||
self::echoErr(" 'it-it').\n");
|
||||
self::echoErr("--reduce : if set to yes the output won't contain languages with the same\n");
|
||||
self::echoErr(" base language and rules.\n For instance nl_BE ('Flemish') will be\n");
|
||||
self::echoErr(" omitted because it's the same as nl ('Dutch').\n");
|
||||
self::echoErr(" Defaults to 'no' --languages is specified, to 'yes' otherwise.\n");
|
||||
self::echoErr("--output : if specified, the output will be saved to <file name>. If not\n");
|
||||
self::echoErr(" specified we'll output to standard output.\n");
|
||||
self::echoErr("Output formats\n");
|
||||
$len = max(array_map('strlen', $exporters));
|
||||
foreach ($exporters as $exporter) {
|
||||
self::echoErr(str_pad($exporter, $len).": ".Exporter::getExporterDescription($exporter)."\n");
|
||||
}
|
||||
}
|
||||
/**
|
||||
* Print a string to stderr.
|
||||
* @param string $str The string to be printed out.
|
||||
*/
|
||||
public static function echoErr($str)
|
||||
{
|
||||
$hStdErr = @fopen('php://stderr', 'a');
|
||||
if ($hStdErr === false) {
|
||||
echo $str;
|
||||
} else {
|
||||
fwrite($hStdErr, $str);
|
||||
fclose($hStdErr);
|
||||
}
|
||||
}
|
||||
/**
|
||||
* Reduce a language list to the minimum common denominator.
|
||||
* @param Language[] $languages
|
||||
* @return Language[]
|
||||
*/
|
||||
public static function reduce($languages)
|
||||
{
|
||||
for ($numChunks = 3; $numChunks >= 2; $numChunks--) {
|
||||
$filtered = array();
|
||||
foreach ($languages as $language) {
|
||||
$chunks = explode('_', $language->id);
|
||||
$compatibleFound = false;
|
||||
if (count($chunks) === $numChunks) {
|
||||
$categoriesHash = serialize($language->categories);
|
||||
$otherIds = array();
|
||||
$otherIds[] = $chunks[0];
|
||||
for ($k = 2; $k < $numChunks; $k++) {
|
||||
$otherIds[] = $chunks[0].'_'.$chunks[$numChunks - 1];
|
||||
}
|
||||
|
||||
foreach ($languages as $check) {
|
||||
foreach ($otherIds as $otherId) {
|
||||
if (($check->id === $otherId) && ($check->formula === $language->formula) && (serialize($check->categories) === $categoriesHash)) {
|
||||
$compatibleFound = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if ($compatibleFound === true) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
if (!$compatibleFound) {
|
||||
$filtered[] = $language;
|
||||
}
|
||||
}
|
||||
$languages = $filtered;
|
||||
}
|
||||
|
||||
return $languages;
|
||||
}
|
||||
}
|
||||
1
core/lib/composer/vendor/bin/markdown
vendored
1
core/lib/composer/vendor/bin/markdown
vendored
@@ -1 +0,0 @@
|
||||
../cebe/markdown/bin/markdown
|
||||
170
core/lib/composer/vendor/bin/markdown
vendored
Executable file
170
core/lib/composer/vendor/bin/markdown
vendored
Executable file
@@ -0,0 +1,170 @@
|
||||
#!/usr/bin/env php
|
||||
<?php
|
||||
/**
|
||||
* @copyright Copyright (c) 2014 Carsten Brandt
|
||||
* @license https://github.com/cebe/markdown/blob/master/LICENSE
|
||||
* @link https://github.com/cebe/markdown#readme
|
||||
*/
|
||||
|
||||
$composerAutoload = [
|
||||
__DIR__ . '/../vendor/autoload.php', // standalone with "composer install" run
|
||||
__DIR__ . '/../../../autoload.php', // script is installed as a composer binary
|
||||
];
|
||||
foreach ($composerAutoload as $autoload) {
|
||||
if (file_exists($autoload)) {
|
||||
require($autoload);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
// Send all errors to stderr
|
||||
ini_set('display_errors', 'stderr');
|
||||
|
||||
$flavor = 'cebe\\markdown\\Markdown';
|
||||
$flavors = [
|
||||
'gfm' => ['cebe\\markdown\\GithubMarkdown', __DIR__ . '/../GithubMarkdown.php'],
|
||||
'extra' => ['cebe\\markdown\\MarkdownExtra', __DIR__ . '/../MarkdownExtra.php'],
|
||||
];
|
||||
|
||||
$full = false;
|
||||
$src = [];
|
||||
foreach($argv as $k => $arg) {
|
||||
if ($k == 0) {
|
||||
continue;
|
||||
}
|
||||
if ($arg[0] == '-') {
|
||||
$arg = explode('=', $arg);
|
||||
switch($arg[0]) {
|
||||
case '--flavor':
|
||||
if (isset($arg[1])) {
|
||||
if (isset($flavors[$arg[1]])) {
|
||||
require($flavors[$arg[1]][1]);
|
||||
$flavor = $flavors[$arg[1]][0];
|
||||
} else {
|
||||
error("Unknown flavor: " . $arg[1], "usage");
|
||||
}
|
||||
} else {
|
||||
error("Incomplete argument --flavor!", "usage");
|
||||
}
|
||||
break;
|
||||
case '--full':
|
||||
$full = true;
|
||||
break;
|
||||
case '-h':
|
||||
case '--help':
|
||||
echo "PHP Markdown to HTML converter\n";
|
||||
echo "------------------------------\n\n";
|
||||
echo "by Carsten Brandt <mail@cebe.cc>\n\n";
|
||||
usage();
|
||||
break;
|
||||
default:
|
||||
error("Unknown argument " . $arg[0], "usage");
|
||||
}
|
||||
} else {
|
||||
$src[] = $arg;
|
||||
}
|
||||
}
|
||||
|
||||
if (empty($src)) {
|
||||
$markdown = file_get_contents("php://stdin");
|
||||
} elseif (count($src) == 1) {
|
||||
$file = reset($src);
|
||||
if (!file_exists($file)) {
|
||||
error("File does not exist:" . $file);
|
||||
}
|
||||
$markdown = file_get_contents($file);
|
||||
} else {
|
||||
error("Converting multiple files is not yet supported.", "usage");
|
||||
}
|
||||
|
||||
/** @var cebe\markdown\Parser $md */
|
||||
$md = new $flavor();
|
||||
$markup = $md->parse($markdown);
|
||||
|
||||
if ($full) {
|
||||
echo <<<HTML
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||
"http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
<style>
|
||||
body { font-family: Arial, sans-serif; }
|
||||
code { background: #eeeeff; padding: 2px; }
|
||||
li { margin-bottom: 5px; }
|
||||
img { max-width: 1200px; }
|
||||
table, td, th { border: solid 1px #ccc; border-collapse: collapse; }
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
$markup
|
||||
</body>
|
||||
</html>
|
||||
HTML;
|
||||
} else {
|
||||
echo $markup;
|
||||
}
|
||||
|
||||
// functions
|
||||
|
||||
/**
|
||||
* Display usage information
|
||||
*/
|
||||
function usage() {
|
||||
global $argv;
|
||||
$cmd = $argv[0];
|
||||
echo <<<EOF
|
||||
Usage:
|
||||
$cmd [--flavor=<flavor>] [--full] [file.md]
|
||||
|
||||
--flavor specifies the markdown flavor to use. If omitted the original markdown by John Gruber [1] will be used.
|
||||
Available flavors:
|
||||
|
||||
gfm - Github flavored markdown [2]
|
||||
extra - Markdown Extra [3]
|
||||
|
||||
--full ouput a full HTML page with head and body. If not given, only the parsed markdown will be output.
|
||||
|
||||
--help shows this usage information.
|
||||
|
||||
If no file is specified input will be read from STDIN.
|
||||
|
||||
Examples:
|
||||
|
||||
Render a file with original markdown:
|
||||
|
||||
$cmd README.md > README.html
|
||||
|
||||
Render a file using gihtub flavored markdown:
|
||||
|
||||
$cmd --flavor=gfm README.md > README.html
|
||||
|
||||
Convert the original markdown description to html using STDIN:
|
||||
|
||||
curl http://daringfireball.net/projects/markdown/syntax.text | $cmd > md.html
|
||||
|
||||
|
||||
[1] http://daringfireball.net/projects/markdown/syntax
|
||||
[2] https://help.github.com/articles/github-flavored-markdown
|
||||
[3] http://michelf.ca/projects/php-markdown/extra/
|
||||
|
||||
EOF;
|
||||
exit(1);
|
||||
}
|
||||
|
||||
/**
|
||||
* Send custom error message to stderr
|
||||
* @param $message string
|
||||
* @param $callback mixed called before script exit
|
||||
* @return void
|
||||
*/
|
||||
function error($message, $callback = null) {
|
||||
$fe = fopen("php://stderr", "w");
|
||||
fwrite($fe, "Error: " . $message . "\n");
|
||||
|
||||
if (is_callable($callback)) {
|
||||
call_user_func($callback);
|
||||
}
|
||||
|
||||
exit(1);
|
||||
}
|
||||
1
core/lib/composer/vendor/bin/phpunit
vendored
1
core/lib/composer/vendor/bin/phpunit
vendored
@@ -1 +0,0 @@
|
||||
../phpunit/phpunit/phpunit
|
||||
53
core/lib/composer/vendor/bin/phpunit
vendored
Executable file
53
core/lib/composer/vendor/bin/phpunit
vendored
Executable file
@@ -0,0 +1,53 @@
|
||||
#!/usr/bin/env php
|
||||
<?php
|
||||
/*
|
||||
* This file is part of PHPUnit.
|
||||
*
|
||||
* (c) Sebastian Bergmann <sebastian@phpunit.de>
|
||||
*
|
||||
* For the full copyright and license information, please view the LICENSE
|
||||
* file that was distributed with this source code.
|
||||
*/
|
||||
|
||||
if (version_compare('7.0.0', PHP_VERSION, '>')) {
|
||||
fwrite(
|
||||
STDERR,
|
||||
sprintf(
|
||||
'This version of PHPUnit is supported on PHP 7.0 and PHP 7.1.' . PHP_EOL .
|
||||
'You are using PHP %s (%s).' . PHP_EOL,
|
||||
PHP_VERSION,
|
||||
PHP_BINARY
|
||||
)
|
||||
);
|
||||
|
||||
die(1);
|
||||
}
|
||||
|
||||
if (!ini_get('date.timezone')) {
|
||||
ini_set('date.timezone', 'UTC');
|
||||
}
|
||||
|
||||
foreach (array(__DIR__ . '/../../autoload.php', __DIR__ . '/../vendor/autoload.php', __DIR__ . '/vendor/autoload.php') as $file) {
|
||||
if (file_exists($file)) {
|
||||
define('PHPUNIT_COMPOSER_INSTALL', $file);
|
||||
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
unset($file);
|
||||
|
||||
if (!defined('PHPUNIT_COMPOSER_INSTALL')) {
|
||||
fwrite(
|
||||
STDERR,
|
||||
'You need to set up the project dependencies using Composer:' . PHP_EOL . PHP_EOL .
|
||||
' composer install' . PHP_EOL . PHP_EOL .
|
||||
'You can learn all about Composer on https://getcomposer.org/.' . PHP_EOL
|
||||
);
|
||||
|
||||
die(1);
|
||||
}
|
||||
|
||||
require PHPUNIT_COMPOSER_INSTALL;
|
||||
|
||||
PHPUnit\TextUI\Command::main();
|
||||
1
core/lib/composer/vendor/bin/robo
vendored
1
core/lib/composer/vendor/bin/robo
vendored
@@ -1 +0,0 @@
|
||||
../consolidation/robo/robo
|
||||
22
core/lib/composer/vendor/bin/robo
vendored
Executable file
22
core/lib/composer/vendor/bin/robo
vendored
Executable file
@@ -0,0 +1,22 @@
|
||||
#!/usr/bin/env php
|
||||
<?php
|
||||
|
||||
/**
|
||||
* if we're running from phar load the phar autoload,
|
||||
* else let the script 'robo' search for the autoloader
|
||||
*/
|
||||
if (strpos(basename(__FILE__), 'phar')) {
|
||||
require_once 'phar://robo.phar/vendor/autoload.php';
|
||||
} else {
|
||||
if (file_exists(__DIR__.'/vendor/autoload.php')) {
|
||||
require_once __DIR__.'/vendor/autoload.php';
|
||||
} elseif (file_exists(__DIR__.'/../../autoload.php')) {
|
||||
require_once __DIR__ . '/../../autoload.php';
|
||||
} else {
|
||||
require_once 'phar://robo.phar/vendor/autoload.php';
|
||||
}
|
||||
}
|
||||
$runner = new \Robo\Runner();
|
||||
$runner->setSelfUpdateRepository('consolidation/robo');
|
||||
$statusCode = $runner->execute($_SERVER['argv']);
|
||||
exit($statusCode);
|
||||
@@ -24,6 +24,7 @@ return array(
|
||||
'Psr\\Http\\Message\\' => array($vendorDir . '/psr/http-message/src'),
|
||||
'Psr\\Container\\' => array($vendorDir . '/psr/container/src'),
|
||||
'Psr\\Cache\\' => array($vendorDir . '/psr/cache/src'),
|
||||
'Predis\\' => array($vendorDir . '/predis/predis/src'),
|
||||
'Monolog\\' => array($vendorDir . '/monolog/monolog/src/Monolog'),
|
||||
'League\\Container\\' => array($vendorDir . '/league/container/src'),
|
||||
'Interop\\Container\\' => array($vendorDir . '/container-interop/container-interop/src/Interop/Container'),
|
||||
|
||||
@@ -52,6 +52,7 @@ class ComposerStaticInit6d4a28cd96a5bc5d5b97781c062572d9
|
||||
'Psr\\Http\\Message\\' => 17,
|
||||
'Psr\\Container\\' => 14,
|
||||
'Psr\\Cache\\' => 10,
|
||||
'Predis\\' => 7,
|
||||
),
|
||||
'M' =>
|
||||
array (
|
||||
@@ -177,6 +178,10 @@ class ComposerStaticInit6d4a28cd96a5bc5d5b97781c062572d9
|
||||
array (
|
||||
0 => __DIR__ . '/..' . '/psr/cache/src',
|
||||
),
|
||||
'Predis\\' =>
|
||||
array (
|
||||
0 => __DIR__ . '/..' . '/predis/predis/src',
|
||||
),
|
||||
'Monolog\\' =>
|
||||
array (
|
||||
0 => __DIR__ . '/..' . '/monolog/monolog/src/Monolog',
|
||||
|
||||
76
core/lib/composer/vendor/composer/installed.json
vendored
76
core/lib/composer/vendor/composer/installed.json
vendored
@@ -381,7 +381,8 @@
|
||||
"MIT"
|
||||
],
|
||||
"description": "Promoting the interoperability of container objects (DIC, SL, etc.)",
|
||||
"homepage": "https://github.com/container-interop/container-interop"
|
||||
"homepage": "https://github.com/container-interop/container-interop",
|
||||
"abandoned": "psr/container"
|
||||
},
|
||||
{
|
||||
"name": "dflydev/dot-access-data",
|
||||
@@ -732,12 +733,12 @@
|
||||
"version_normalized": "4.0.0.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/oscarotero/Gettext.git",
|
||||
"url": "https://github.com/php-gettext/Gettext.git",
|
||||
"reference": "7efdd4a01afd7fab85a90fb64fb88eeaef06f3b1"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/oscarotero/Gettext/zipball/7efdd4a01afd7fab85a90fb64fb88eeaef06f3b1",
|
||||
"url": "https://api.github.com/repos/php-gettext/Gettext/zipball/7efdd4a01afd7fab85a90fb64fb88eeaef06f3b1",
|
||||
"reference": "7efdd4a01afd7fab85a90fb64fb88eeaef06f3b1",
|
||||
"shasum": ""
|
||||
},
|
||||
@@ -794,12 +795,12 @@
|
||||
"version_normalized": "2.3.0.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/mlocati/cldr-to-gettext-plural-rules.git",
|
||||
"url": "https://github.com/php-gettext/Languages.git",
|
||||
"reference": "49c39e51569963cc917a924b489e7025bfb9d8c7"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/mlocati/cldr-to-gettext-plural-rules/zipball/49c39e51569963cc917a924b489e7025bfb9d8c7",
|
||||
"url": "https://api.github.com/repos/php-gettext/Languages/zipball/49c39e51569963cc917a924b489e7025bfb9d8c7",
|
||||
"reference": "49c39e51569963cc917a924b489e7025bfb9d8c7",
|
||||
"shasum": ""
|
||||
},
|
||||
@@ -857,12 +858,12 @@
|
||||
"version_normalized": "2.2.1.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/google/google-api-php-client.git",
|
||||
"url": "https://github.com/googleapis/google-api-php-client.git",
|
||||
"reference": "b69b8ac4bf6501793c389d4e013a79d09c85c5f2"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/google/google-api-php-client/zipball/b69b8ac4bf6501793c389d4e013a79d09c85c5f2",
|
||||
"url": "https://api.github.com/repos/googleapis/google-api-php-client/zipball/b69b8ac4bf6501793c389d4e013a79d09c85c5f2",
|
||||
"reference": "b69b8ac4bf6501793c389d4e013a79d09c85c5f2",
|
||||
"shasum": ""
|
||||
},
|
||||
@@ -918,12 +919,12 @@
|
||||
"version_normalized": "0.61.0.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/google/google-api-php-client-services.git",
|
||||
"url": "https://github.com/googleapis/google-api-php-client-services.git",
|
||||
"reference": "f7221039fda179b3f5096a6272b38706f2a6fcd0"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/google/google-api-php-client-services/zipball/f7221039fda179b3f5096a6272b38706f2a6fcd0",
|
||||
"url": "https://api.github.com/repos/googleapis/google-api-php-client-services/zipball/f7221039fda179b3f5096a6272b38706f2a6fcd0",
|
||||
"reference": "f7221039fda179b3f5096a6272b38706f2a6fcd0",
|
||||
"shasum": ""
|
||||
},
|
||||
@@ -957,12 +958,12 @@
|
||||
"version_normalized": "1.3.0.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/google/google-auth-library-php.git",
|
||||
"url": "https://github.com/googleapis/google-auth-library-php.git",
|
||||
"reference": "8f7c96146b2c62d3f4c6bbc4b5bb8a8e396b0b71"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/google/google-auth-library-php/zipball/8f7c96146b2c62d3f4c6bbc4b5bb8a8e396b0b71",
|
||||
"url": "https://api.github.com/repos/googleapis/google-auth-library-php/zipball/8f7c96146b2c62d3f4c6bbc4b5bb8a8e396b0b71",
|
||||
"reference": "8f7c96146b2c62d3f4c6bbc4b5bb8a8e396b0b71",
|
||||
"shasum": ""
|
||||
},
|
||||
@@ -2673,6 +2674,59 @@
|
||||
"keywords": [
|
||||
"mock",
|
||||
"xunit"
|
||||
],
|
||||
"abandoned": true
|
||||
},
|
||||
{
|
||||
"name": "predis/predis",
|
||||
"version": "v1.1.1",
|
||||
"version_normalized": "1.1.1.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/nrk/predis.git",
|
||||
"reference": "f0210e38881631afeafb56ab43405a92cafd9fd1"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/nrk/predis/zipball/f0210e38881631afeafb56ab43405a92cafd9fd1",
|
||||
"reference": "f0210e38881631afeafb56ab43405a92cafd9fd1",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": ">=5.3.9"
|
||||
},
|
||||
"require-dev": {
|
||||
"phpunit/phpunit": "~4.8"
|
||||
},
|
||||
"suggest": {
|
||||
"ext-curl": "Allows access to Webdis when paired with phpiredis",
|
||||
"ext-phpiredis": "Allows faster serialization and deserialization of the Redis protocol"
|
||||
},
|
||||
"time": "2016-06-16T16:22:20+00:00",
|
||||
"type": "library",
|
||||
"installation-source": "dist",
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"Predis\\": "src/"
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Daniele Alessandri",
|
||||
"email": "suppakilla@gmail.com",
|
||||
"homepage": "http://clorophilla.net"
|
||||
}
|
||||
],
|
||||
"description": "Flexible and feature-complete Redis client for PHP and HHVM",
|
||||
"homepage": "http://github.com/nrk/predis",
|
||||
"keywords": [
|
||||
"nosql",
|
||||
"predis",
|
||||
"redis"
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -1 +0,0 @@
|
||||
../../src
|
||||
157
core/lib/composer/vendor/consolidation/config/scenarios/symfony2/src/Config.php
vendored
Normal file
157
core/lib/composer/vendor/consolidation/config/scenarios/symfony2/src/Config.php
vendored
Normal file
@@ -0,0 +1,157 @@
|
||||
<?php
|
||||
|
||||
namespace Consolidation\Config;
|
||||
|
||||
use Dflydev\DotAccessData\Data;
|
||||
|
||||
class Config implements ConfigInterface
|
||||
{
|
||||
|
||||
/**
|
||||
* @var Data
|
||||
*/
|
||||
protected $config;
|
||||
|
||||
/**
|
||||
* TODO: make this private in 2.0 to prevent being saved as an array
|
||||
* Making private now breaks backward compatibility
|
||||
*
|
||||
* @var Data
|
||||
*/
|
||||
protected $defaults;
|
||||
|
||||
/**
|
||||
* Create a new configuration object, and initialize it with
|
||||
* the provided nested array containing configuration data.
|
||||
*
|
||||
* @param array $data - Config data to store
|
||||
*/
|
||||
public function __construct(array $data = null)
|
||||
{
|
||||
$this->config = new Data($data);
|
||||
$this->setDefaults(new Data());
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
public function has($key)
|
||||
{
|
||||
return ($this->config->has($key));
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
public function get($key, $defaultFallback = null)
|
||||
{
|
||||
if ($this->has($key)) {
|
||||
return $this->config->get($key);
|
||||
}
|
||||
return $this->getDefault($key, $defaultFallback);
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
public function set($key, $value)
|
||||
{
|
||||
$this->config->set($key, $value);
|
||||
return $this;
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
public function import($data)
|
||||
{
|
||||
return $this->replace($data);
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
public function replace($data)
|
||||
{
|
||||
$this->config = new Data($data);
|
||||
return $this;
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
public function combine($data)
|
||||
{
|
||||
if (!empty($data)) {
|
||||
$this->config->import($data, true);
|
||||
}
|
||||
return $this;
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
public function export()
|
||||
{
|
||||
return $this->config->export();
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
public function hasDefault($key)
|
||||
{
|
||||
return $this->getDefaults()->has($key);
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
public function getDefault($key, $defaultFallback = null)
|
||||
{
|
||||
return $this->hasDefault($key) ? $this->getDefaults()->get($key) : $defaultFallback;
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
public function setDefault($key, $value)
|
||||
{
|
||||
$this->getDefaults()->set($key, $value);
|
||||
return $this;
|
||||
}
|
||||
|
||||
/**
|
||||
* Return the class $defaults property and ensure it's a Data object
|
||||
* TODO: remove Data object validation in 2.0
|
||||
*
|
||||
* @return Data
|
||||
*/
|
||||
protected function getDefaults()
|
||||
{
|
||||
// Ensure $this->defaults is a Data object (not an array)
|
||||
if (!$this->defaults instanceof Data) {
|
||||
$this->setDefaults($this->defaults);
|
||||
}
|
||||
return $this->defaults;
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the $defaults class parameter
|
||||
* TODO: remove support for array in 2.0 as this would currently break backward compatibility
|
||||
*
|
||||
* @param Data|array $defaults
|
||||
*
|
||||
* @throws \Exception
|
||||
*/
|
||||
protected function setDefaults($defaults)
|
||||
{
|
||||
if (is_array($defaults)) {
|
||||
$this->defaults = new Data($defaults);
|
||||
} elseif ($defaults instanceof Data) {
|
||||
$this->defaults = $defaults;
|
||||
} else {
|
||||
throw new \Exception("Unknown type provided for \$defaults");
|
||||
}
|
||||
}
|
||||
}
|
||||
105
core/lib/composer/vendor/consolidation/config/scenarios/symfony2/src/ConfigInterface.php
vendored
Normal file
105
core/lib/composer/vendor/consolidation/config/scenarios/symfony2/src/ConfigInterface.php
vendored
Normal file
@@ -0,0 +1,105 @@
|
||||
<?php
|
||||
namespace Consolidation\Config;
|
||||
|
||||
interface ConfigInterface
|
||||
{
|
||||
/**
|
||||
* Determine if a non-default config value exists.
|
||||
*/
|
||||
public function has($key);
|
||||
|
||||
/**
|
||||
* Fetch a configuration value
|
||||
*
|
||||
* @param string $key Which config item to look up
|
||||
* @param string|null $defaultFallback Fallback default value to use when
|
||||
* configuration object has neither a value nor a default. Use is
|
||||
* discouraged; use default context in ConfigOverlay, or provide defaults
|
||||
* using a config processor.
|
||||
*
|
||||
* @return mixed
|
||||
*/
|
||||
public function get($key, $defaultFallback = null);
|
||||
|
||||
/**
|
||||
* Set a config value
|
||||
*
|
||||
* @param string $key
|
||||
* @param mixed $value
|
||||
*
|
||||
* @return $this
|
||||
*/
|
||||
public function set($key, $value);
|
||||
|
||||
/**
|
||||
* Import configuration from the provided nexted array, replacing whatever
|
||||
* was here previously. No processing is done on the provided data.
|
||||
*
|
||||
* @deprecated Use 'replace'. Dflydev\DotAccessData\Data::import() merges, which is confusing, since this method replaces.
|
||||
*
|
||||
* @param array $data
|
||||
* @return Config
|
||||
*/
|
||||
public function import($data);
|
||||
|
||||
/**
|
||||
* Load configuration from the provided nexted array, replacing whatever
|
||||
* was here previously. No processing is done on the provided data.
|
||||
*
|
||||
* TODO: This will become a required method in version 2.0. Adding now
|
||||
* would break clients that implement ConfigInterface.
|
||||
*
|
||||
* @param array $data
|
||||
* @return Config
|
||||
*/
|
||||
// public function replace($data);
|
||||
|
||||
/**
|
||||
* Import configuration from the provided nexted array, merging with whatever
|
||||
* was here previously. No processing is done on the provided data.
|
||||
* Any data provided to the combine() method will overwrite existing data
|
||||
* with the same key.
|
||||
*
|
||||
* TODO: This will become a required method in version 2.0. Adding now
|
||||
* would break clients that implement ConfigInterface.
|
||||
*
|
||||
* @param array $data
|
||||
* @return Config
|
||||
*/
|
||||
// public function combine($data);
|
||||
|
||||
/**
|
||||
* Export all configuration as a nested array.
|
||||
*/
|
||||
public function export();
|
||||
|
||||
/**
|
||||
* Return the default value for a given configuration item.
|
||||
*
|
||||
* @param string $key
|
||||
*
|
||||
* @return mixed
|
||||
*/
|
||||
public function hasDefault($key);
|
||||
|
||||
/**
|
||||
* Return the default value for a given configuration item.
|
||||
*
|
||||
* @param string $key
|
||||
* @param mixed $defaultFallback
|
||||
*
|
||||
* @return mixed
|
||||
*/
|
||||
public function getDefault($key, $defaultFallback = null);
|
||||
|
||||
/**
|
||||
* Set the default value for a configuration setting. This allows us to
|
||||
* set defaults either before or after more specific configuration values
|
||||
* are loaded. Keeping defaults separate from current settings also
|
||||
* allows us to determine when a setting has been overridden.
|
||||
*
|
||||
* @param string $key
|
||||
* @param string $value
|
||||
*/
|
||||
public function setDefault($key, $value);
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
<?php
|
||||
namespace Consolidation\Config;
|
||||
|
||||
interface GlobalOptionDefaultValuesInterface
|
||||
{
|
||||
/**
|
||||
* Return an associative array of option-key => default-value
|
||||
*/
|
||||
public function getGlobalOptionDefaultValues();
|
||||
}
|
||||
127
core/lib/composer/vendor/consolidation/config/scenarios/symfony2/src/Inject/ConfigForCommand.php
vendored
Normal file
127
core/lib/composer/vendor/consolidation/config/scenarios/symfony2/src/Inject/ConfigForCommand.php
vendored
Normal file
@@ -0,0 +1,127 @@
|
||||
<?php
|
||||
namespace Consolidation\Config\Inject;
|
||||
|
||||
use Consolidation\Config\ConfigInterface;
|
||||
use Consolidation\Config\Util\ConfigFallback;
|
||||
|
||||
use Symfony\Component\Console\ConsoleEvents;
|
||||
use Symfony\Component\Console\Event\ConsoleCommandEvent;
|
||||
use Symfony\Component\EventDispatcher\EventSubscriberInterface;
|
||||
use Symfony\Component\Console\Application;
|
||||
use Symfony\Component\Console\Input\InputOption;
|
||||
|
||||
class ConfigForCommand implements EventSubscriberInterface
|
||||
{
|
||||
protected $config;
|
||||
protected $application;
|
||||
|
||||
public function __construct(ConfigInterface $config)
|
||||
{
|
||||
$this->config = $config;
|
||||
}
|
||||
|
||||
public function setApplication(Application $application)
|
||||
{
|
||||
$this->application = $application;
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
public static function getSubscribedEvents()
|
||||
{
|
||||
return [ConsoleEvents::COMMAND => 'injectConfiguration'];
|
||||
}
|
||||
|
||||
/**
|
||||
* Before a Console command runs, inject configuration settings
|
||||
* for this command into the default value of the options of
|
||||
* this command.
|
||||
*
|
||||
* @param \Symfony\Component\Console\Event\ConsoleCommandEvent $event
|
||||
*/
|
||||
public function injectConfiguration(ConsoleCommandEvent $event)
|
||||
{
|
||||
$command = $event->getCommand();
|
||||
$this->injectConfigurationForGlobalOptions($event->getInput());
|
||||
$this->injectConfigurationForCommand($command, $event->getInput());
|
||||
|
||||
$targetOfHelpCommand = $this->getHelpCommandTarget($command, $event->getInput());
|
||||
if ($targetOfHelpCommand) {
|
||||
$this->injectConfigurationForCommand($targetOfHelpCommand, $event->getInput());
|
||||
}
|
||||
}
|
||||
|
||||
protected function injectConfigurationForGlobalOptions($input)
|
||||
{
|
||||
if (!$this->application) {
|
||||
return;
|
||||
}
|
||||
|
||||
$configGroup = new ConfigFallback($this->config, 'options');
|
||||
|
||||
$definition = $this->application->getDefinition();
|
||||
$options = $definition->getOptions();
|
||||
|
||||
return $this->injectConfigGroupIntoOptions($configGroup, $options, $input);
|
||||
}
|
||||
|
||||
protected function injectConfigurationForCommand($command, $input)
|
||||
{
|
||||
$commandName = $command->getName();
|
||||
$commandName = str_replace(':', '.', $commandName);
|
||||
$configGroup = new ConfigFallback($this->config, $commandName, 'command.', '.options.');
|
||||
|
||||
$definition = $command->getDefinition();
|
||||
$options = $definition->getOptions();
|
||||
|
||||
return $this->injectConfigGroupIntoOptions($configGroup, $options, $input);
|
||||
}
|
||||
|
||||
protected function injectConfigGroupIntoOptions($configGroup, $options, $input)
|
||||
{
|
||||
foreach ($options as $option => $inputOption) {
|
||||
$key = str_replace('.', '-', $option);
|
||||
$value = $configGroup->get($key);
|
||||
if ($value !== null) {
|
||||
if (is_bool($value) && ($value == true)) {
|
||||
$input->setOption($key, $value);
|
||||
} elseif ($inputOption->acceptValue()) {
|
||||
$inputOption->setDefault($value);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
protected function getHelpCommandTarget($command, $input)
|
||||
{
|
||||
if (($command->getName() != 'help') || (!isset($this->application))) {
|
||||
return false;
|
||||
}
|
||||
|
||||
$this->fixInputForSymfony2($command, $input);
|
||||
|
||||
// Symfony Console helpfully swaps 'command_name' and 'command'
|
||||
// depending on whether the user entered `help foo` or `--help foo`.
|
||||
// One of these is always `help`, and the other is the command we
|
||||
// are actually interested in.
|
||||
$nameOfCommandToDescribe = $input->getArgument('command_name');
|
||||
if ($nameOfCommandToDescribe == 'help') {
|
||||
$nameOfCommandToDescribe = $input->getArgument('command');
|
||||
}
|
||||
return $this->application->find($nameOfCommandToDescribe);
|
||||
}
|
||||
|
||||
protected function fixInputForSymfony2($command, $input)
|
||||
{
|
||||
// Symfony 3.x prepares $input for us; Symfony 2.x, on the other
|
||||
// hand, passes it in prior to binding with the command definition,
|
||||
// so we have to go to a little extra work. It may be inadvisable
|
||||
// to do these steps for commands other than 'help'.
|
||||
if (!$input->hasArgument('command_name')) {
|
||||
$command->ignoreValidationErrors();
|
||||
$command->mergeApplicationDefinition();
|
||||
$input->bind($command->getDefinition());
|
||||
}
|
||||
}
|
||||
}
|
||||
47
core/lib/composer/vendor/consolidation/config/scenarios/symfony2/src/Inject/ConfigForSetters.php
vendored
Normal file
47
core/lib/composer/vendor/consolidation/config/scenarios/symfony2/src/Inject/ConfigForSetters.php
vendored
Normal file
@@ -0,0 +1,47 @@
|
||||
<?php
|
||||
namespace Consolidation\Config\Inject;
|
||||
|
||||
use Consolidation\Config\Util\ConfigMerge;
|
||||
|
||||
/**
|
||||
* Given an object that contains configuration methods, inject any
|
||||
* configuration found in the configuration file.
|
||||
*
|
||||
* The proper use for this method is to call setter methods of the
|
||||
* provided object. Using configuration to call methods that do work
|
||||
* is an abuse of this mechanism.
|
||||
*/
|
||||
class ConfigForSetters
|
||||
{
|
||||
protected $config;
|
||||
|
||||
public function __construct($config, $group, $prefix = '', $postfix = '')
|
||||
{
|
||||
if (!empty($group) && empty($postfix)) {
|
||||
$postfix = '.';
|
||||
}
|
||||
|
||||
$this->config = new ConfigMerge($config, $group, $prefix, $postfix);
|
||||
}
|
||||
|
||||
public function apply($object, $configurationKey)
|
||||
{
|
||||
$settings = $this->config->get($configurationKey);
|
||||
foreach ($settings as $setterMethod => $args) {
|
||||
$fn = [$object, $setterMethod];
|
||||
if (is_callable($fn)) {
|
||||
$result = call_user_func_array($fn, (array)$args);
|
||||
|
||||
// We require that $fn must only be used with setter methods.
|
||||
// Setter methods are required to always return $this so that
|
||||
// they may be chained. We will therefore throw an exception
|
||||
// for any setter that returns something else.
|
||||
if ($result != $object) {
|
||||
$methodDescription = get_class($object) . "::$setterMethod";
|
||||
$propertyDescription = $this->config->describe($configurationKey);
|
||||
throw new \Exception("$methodDescription did not return '\$this' when processing $propertyDescription.");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
35
core/lib/composer/vendor/consolidation/config/scenarios/symfony2/src/Loader/ConfigLoader.php
vendored
Normal file
35
core/lib/composer/vendor/consolidation/config/scenarios/symfony2/src/Loader/ConfigLoader.php
vendored
Normal file
@@ -0,0 +1,35 @@
|
||||
<?php
|
||||
|
||||
namespace Consolidation\Config\Loader;
|
||||
|
||||
/**
|
||||
* Load configuration files.
|
||||
*/
|
||||
abstract class ConfigLoader implements ConfigLoaderInterface
|
||||
{
|
||||
protected $config = [];
|
||||
protected $source = '';
|
||||
|
||||
public function getSourceName()
|
||||
{
|
||||
return $this->source;
|
||||
}
|
||||
|
||||
protected function setSourceName($source)
|
||||
{
|
||||
$this->source = $source;
|
||||
return $this;
|
||||
}
|
||||
|
||||
public function export()
|
||||
{
|
||||
return $this->config;
|
||||
}
|
||||
|
||||
public function keys()
|
||||
{
|
||||
return array_keys($this->config);
|
||||
}
|
||||
|
||||
abstract public function load($path);
|
||||
}
|
||||
@@ -0,0 +1,29 @@
|
||||
<?php
|
||||
|
||||
namespace Consolidation\Config\Loader;
|
||||
|
||||
/**
|
||||
* Load configuration files, and fill in any property values that
|
||||
* need to be expanded.
|
||||
*/
|
||||
interface ConfigLoaderInterface
|
||||
{
|
||||
/**
|
||||
* Convert loaded configuration into a simple php nested array.
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public function export();
|
||||
|
||||
/**
|
||||
* Return the top-level keys in the exported data.
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public function keys();
|
||||
|
||||
/**
|
||||
* Return a symbolic name for this configuration loader instance.
|
||||
*/
|
||||
public function getSourceName();
|
||||
}
|
||||
167
core/lib/composer/vendor/consolidation/config/scenarios/symfony2/src/Loader/ConfigProcessor.php
vendored
Normal file
167
core/lib/composer/vendor/consolidation/config/scenarios/symfony2/src/Loader/ConfigProcessor.php
vendored
Normal file
@@ -0,0 +1,167 @@
|
||||
<?php
|
||||
|
||||
namespace Consolidation\Config\Loader;
|
||||
|
||||
use Grasmash\Expander\Expander;
|
||||
use Consolidation\Config\Util\ArrayUtil;
|
||||
|
||||
/**
|
||||
* The config processor combines multiple configuration
|
||||
* files together, and processes them as necessary.
|
||||
*/
|
||||
class ConfigProcessor
|
||||
{
|
||||
protected $processedConfig = [];
|
||||
protected $unprocessedConfig = [];
|
||||
protected $expander;
|
||||
|
||||
public function __construct($expander = null)
|
||||
{
|
||||
$this->expander = $expander ?: new Expander();
|
||||
}
|
||||
|
||||
/**
|
||||
* Extend the configuration to be processed with the
|
||||
* configuration provided by the specified loader.
|
||||
*
|
||||
* @param ConfigLoaderInterface $loader
|
||||
*/
|
||||
public function extend(ConfigLoaderInterface $loader)
|
||||
{
|
||||
return $this->addFromSource($loader->export(), $loader->getSourceName());
|
||||
}
|
||||
|
||||
/**
|
||||
* Extend the configuration to be processed with
|
||||
* the provided nested array.
|
||||
*
|
||||
* @param array $data
|
||||
*/
|
||||
public function add($data)
|
||||
{
|
||||
$this->unprocessedConfig[] = $data;
|
||||
return $this;
|
||||
}
|
||||
|
||||
/**
|
||||
* Extend the configuration to be processed with
|
||||
* the provided nested array. Also record the name
|
||||
* of the data source, if applicable.
|
||||
*
|
||||
* @param array $data
|
||||
* @param string $source
|
||||
*/
|
||||
protected function addFromSource($data, $source = '')
|
||||
{
|
||||
if (empty($source)) {
|
||||
return $this->add($data);
|
||||
}
|
||||
$this->unprocessedConfig[$source] = $data;
|
||||
return $this;
|
||||
}
|
||||
|
||||
/**
|
||||
* Process all of the configuration that has been collected,
|
||||
* and return a nested array.
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public function export($referenceArray = [])
|
||||
{
|
||||
if (!empty($this->unprocessedConfig)) {
|
||||
$this->processedConfig = $this->process(
|
||||
$this->processedConfig,
|
||||
$this->fetchUnprocessed(),
|
||||
$referenceArray
|
||||
);
|
||||
}
|
||||
return $this->processedConfig;
|
||||
}
|
||||
|
||||
/**
|
||||
* To aid in debugging: return the source of each configuration item.
|
||||
* n.b. Must call this function *before* export and save the result
|
||||
* if persistence is desired.
|
||||
*/
|
||||
public function sources()
|
||||
{
|
||||
$sources = [];
|
||||
foreach ($this->unprocessedConfig as $sourceName => $config) {
|
||||
if (!empty($sourceName)) {
|
||||
$configSources = ArrayUtil::fillRecursive($config, $sourceName);
|
||||
$sources = ArrayUtil::mergeRecursiveDistinct($sources, $configSources);
|
||||
}
|
||||
}
|
||||
return $sources;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the configuration to be processed, and clear out the
|
||||
* 'unprocessed' list.
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
protected function fetchUnprocessed()
|
||||
{
|
||||
$toBeProcessed = $this->unprocessedConfig;
|
||||
$this->unprocessedConfig = [];
|
||||
return $toBeProcessed;
|
||||
}
|
||||
|
||||
/**
|
||||
* Use a map-reduce to evaluate the items to be processed,
|
||||
* and merge them into the processed array.
|
||||
*
|
||||
* @param array $processed
|
||||
* @param array $toBeProcessed
|
||||
* @return array
|
||||
*/
|
||||
protected function process(array $processed, array $toBeProcessed, $referenceArray = [])
|
||||
{
|
||||
$toBeReduced = array_map([$this, 'preprocess'], $toBeProcessed);
|
||||
$reduced = array_reduce($toBeReduced, [$this, 'reduceOne'], $processed);
|
||||
return $this->evaluate($reduced, $referenceArray);
|
||||
}
|
||||
|
||||
/**
|
||||
* Process a single configuration file from the 'to be processed'
|
||||
* list. By default this is a no-op. Override this method to
|
||||
* provide any desired configuration preprocessing, e.g. dot-notation
|
||||
* expansion of the configuration keys, etc.
|
||||
*
|
||||
* @param array $config
|
||||
* @return array
|
||||
*/
|
||||
protected function preprocess(array $config)
|
||||
{
|
||||
return $config;
|
||||
}
|
||||
|
||||
/**
|
||||
* Evaluate one item in the 'to be evaluated' list, and then
|
||||
* merge it into the processed configuration (the 'carry').
|
||||
*
|
||||
* @param array $processed
|
||||
* @param array $config
|
||||
* @return array
|
||||
*/
|
||||
protected function reduceOne(array $processed, array $config)
|
||||
{
|
||||
return ArrayUtil::mergeRecursiveDistinct($processed, $config);
|
||||
}
|
||||
|
||||
/**
|
||||
* Evaluate one configuration item.
|
||||
*
|
||||
* @param array $processed
|
||||
* @param array $config
|
||||
* @return array
|
||||
*/
|
||||
protected function evaluate(array $config, $referenceArray = [])
|
||||
{
|
||||
return $this->expander->expandArrayProperties(
|
||||
$config,
|
||||
$referenceArray
|
||||
);
|
||||
}
|
||||
}
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user