Changeset 3151570
- Timestamp:
- 09/13/2024 08:47:01 PM (17 months ago)
- Location:
- time-sheets
- Files:
-
- 376 added
- 5 edited
-
branches/2.1.2 (added)
-
branches/2.1.2/arrow_down.png (added)
-
branches/2.1.2/arrow_up.png (added)
-
branches/2.1.2/check.png (added)
-
branches/2.1.2/common.php (added)
-
branches/2.1.2/cron.php (added)
-
branches/2.1.2/db.php (added)
-
branches/2.1.2/docs.php (added)
-
branches/2.1.2/entry.php (added)
-
branches/2.1.2/icon.png (added)
-
branches/2.1.2/js (added)
-
branches/2.1.2/js/MIT-LICENSE.txt (added)
-
branches/2.1.2/js/dev (added)
-
branches/2.1.2/js/dev/polyfiller.js (added)
-
branches/2.1.2/js/dev/shims (added)
-
branches/2.1.2/js/dev/shims/FlashCanvas (added)
-
branches/2.1.2/js/dev/shims/FlashCanvas/canvas2png.js (added)
-
branches/2.1.2/js/dev/shims/FlashCanvas/flashcanvas.js (added)
-
branches/2.1.2/js/dev/shims/FlashCanvas/flashcanvas.swf (added)
-
branches/2.1.2/js/dev/shims/FlashCanvas/proxy.php (added)
-
branches/2.1.2/js/dev/shims/FlashCanvas/save.php (added)
-
branches/2.1.2/js/dev/shims/FlashCanvasPro (added)
-
branches/2.1.2/js/dev/shims/FlashCanvasPro/canvas2png.js (added)
-
branches/2.1.2/js/dev/shims/FlashCanvasPro/flash10canvas.swf (added)
-
branches/2.1.2/js/dev/shims/FlashCanvasPro/flash9canvas.swf (added)
-
branches/2.1.2/js/dev/shims/FlashCanvasPro/flashcanvas.js (added)
-
branches/2.1.2/js/dev/shims/FlashCanvasPro/proxy.php (added)
-
branches/2.1.2/js/dev/shims/FlashCanvasPro/save.php (added)
-
branches/2.1.2/js/dev/shims/canvas-blob.js (added)
-
branches/2.1.2/js/dev/shims/color-picker.js (added)
-
branches/2.1.2/js/dev/shims/combos (added)
-
branches/2.1.2/js/dev/shims/combos/1.js (added)
-
branches/2.1.2/js/dev/shims/combos/10.js (added)
-
branches/2.1.2/js/dev/shims/combos/11.js (added)
-
branches/2.1.2/js/dev/shims/combos/12.js (added)
-
branches/2.1.2/js/dev/shims/combos/13.js (added)
-
branches/2.1.2/js/dev/shims/combos/14.js (added)
-
branches/2.1.2/js/dev/shims/combos/15.js (added)
-
branches/2.1.2/js/dev/shims/combos/16.js (added)
-
branches/2.1.2/js/dev/shims/combos/17.js (added)
-
branches/2.1.2/js/dev/shims/combos/18.js (added)
-
branches/2.1.2/js/dev/shims/combos/2.js (added)
-
branches/2.1.2/js/dev/shims/combos/21.js (added)
-
branches/2.1.2/js/dev/shims/combos/22.js (added)
-
branches/2.1.2/js/dev/shims/combos/23.js (added)
-
branches/2.1.2/js/dev/shims/combos/25.js (added)
-
branches/2.1.2/js/dev/shims/combos/27.js (added)
-
branches/2.1.2/js/dev/shims/combos/28.js (added)
-
branches/2.1.2/js/dev/shims/combos/29.js (added)
-
branches/2.1.2/js/dev/shims/combos/3.js (added)
-
branches/2.1.2/js/dev/shims/combos/30.js (added)
-
branches/2.1.2/js/dev/shims/combos/31.js (added)
-
branches/2.1.2/js/dev/shims/combos/33.js (added)
-
branches/2.1.2/js/dev/shims/combos/34.js (added)
-
branches/2.1.2/js/dev/shims/combos/4.js (added)
-
branches/2.1.2/js/dev/shims/combos/5.js (added)
-
branches/2.1.2/js/dev/shims/combos/6.js (added)
-
branches/2.1.2/js/dev/shims/combos/7.js (added)
-
branches/2.1.2/js/dev/shims/combos/8.js (added)
-
branches/2.1.2/js/dev/shims/combos/9.js (added)
-
branches/2.1.2/js/dev/shims/combos/97.js (added)
-
branches/2.1.2/js/dev/shims/combos/98.js (added)
-
branches/2.1.2/js/dev/shims/combos/99.js (added)
-
branches/2.1.2/js/dev/shims/combos/comboinfo.json (added)
-
branches/2.1.2/js/dev/shims/details.js (added)
-
branches/2.1.2/js/dev/shims/dom-extend.js (added)
-
branches/2.1.2/js/dev/shims/es5.js (added)
-
branches/2.1.2/js/dev/shims/es6.js (added)
-
branches/2.1.2/js/dev/shims/excanvas.js (added)
-
branches/2.1.2/js/dev/shims/filereader-xhr.js (added)
-
branches/2.1.2/js/dev/shims/form-combat.js (added)
-
branches/2.1.2/js/dev/shims/form-core.js (added)
-
branches/2.1.2/js/dev/shims/form-datalist-lazy.js (added)
-
branches/2.1.2/js/dev/shims/form-datalist.js (added)
-
branches/2.1.2/js/dev/shims/form-fixrangechange.js (added)
-
branches/2.1.2/js/dev/shims/form-inputmode.js (added)
-
branches/2.1.2/js/dev/shims/form-message.js (added)
-
branches/2.1.2/js/dev/shims/form-native-extend.js (added)
-
branches/2.1.2/js/dev/shims/form-number-date-api.js (added)
-
branches/2.1.2/js/dev/shims/form-number-date-ui.js (added)
-
branches/2.1.2/js/dev/shims/form-shim-extend.js (added)
-
branches/2.1.2/js/dev/shims/form-shim-extend2.js (added)
-
branches/2.1.2/js/dev/shims/form-validation.js (added)
-
branches/2.1.2/js/dev/shims/form-validators.js (added)
-
branches/2.1.2/js/dev/shims/forms-picker.js (added)
-
branches/2.1.2/js/dev/shims/geolocation.js (added)
-
branches/2.1.2/js/dev/shims/i18n (added)
-
branches/2.1.2/js/dev/shims/i18n/formcfg-ar.js (added)
-
branches/2.1.2/js/dev/shims/i18n/formcfg-bg.js (added)
-
branches/2.1.2/js/dev/shims/i18n/formcfg-ca.js (added)
-
branches/2.1.2/js/dev/shims/i18n/formcfg-ch-CN.js (added)
-
branches/2.1.2/js/dev/shims/i18n/formcfg-cs.js (added)
-
branches/2.1.2/js/dev/shims/i18n/formcfg-de.js (added)
-
branches/2.1.2/js/dev/shims/i18n/formcfg-el.js (added)
-
branches/2.1.2/js/dev/shims/i18n/formcfg-en.js (added)
-
branches/2.1.2/js/dev/shims/i18n/formcfg-es.js (added)
-
branches/2.1.2/js/dev/shims/i18n/formcfg-fa.js (added)
-
branches/2.1.2/js/dev/shims/i18n/formcfg-fi.js (added)
-
branches/2.1.2/js/dev/shims/i18n/formcfg-fr.js (added)
-
branches/2.1.2/js/dev/shims/i18n/formcfg-he.js (added)
-
branches/2.1.2/js/dev/shims/i18n/formcfg-hi.js (added)
-
branches/2.1.2/js/dev/shims/i18n/formcfg-hu.js (added)
-
branches/2.1.2/js/dev/shims/i18n/formcfg-it.js (added)
-
branches/2.1.2/js/dev/shims/i18n/formcfg-ja.js (added)
-
branches/2.1.2/js/dev/shims/i18n/formcfg-lt.js (added)
-
branches/2.1.2/js/dev/shims/i18n/formcfg-nl.js (added)
-
branches/2.1.2/js/dev/shims/i18n/formcfg-no.js (added)
-
branches/2.1.2/js/dev/shims/i18n/formcfg-pl.js (added)
-
branches/2.1.2/js/dev/shims/i18n/formcfg-pt-BR.js (added)
-
branches/2.1.2/js/dev/shims/i18n/formcfg-pt-PT.js (added)
-
branches/2.1.2/js/dev/shims/i18n/formcfg-pt.js (added)
-
branches/2.1.2/js/dev/shims/i18n/formcfg-ru.js (added)
-
branches/2.1.2/js/dev/shims/i18n/formcfg-sv.js (added)
-
branches/2.1.2/js/dev/shims/i18n/formcfg-zh-CN.js (added)
-
branches/2.1.2/js/dev/shims/i18n/formcfg-zh-TW.js (added)
-
branches/2.1.2/js/dev/shims/jme (added)
-
branches/2.1.2/js/dev/shims/jme/_icons.scss (added)
-
branches/2.1.2/js/dev/shims/jme/alternate-media.js (added)
-
branches/2.1.2/js/dev/shims/jme/base.js (added)
-
branches/2.1.2/js/dev/shims/jme/controls.css (added)
-
branches/2.1.2/js/dev/shims/jme/controls.scss (added)
-
branches/2.1.2/js/dev/shims/jme/jme.eot (added)
-
branches/2.1.2/js/dev/shims/jme/jme.svg (added)
-
branches/2.1.2/js/dev/shims/jme/jme.ttf (added)
-
branches/2.1.2/js/dev/shims/jme/jme.woff (added)
-
branches/2.1.2/js/dev/shims/jme/mediacontrols-lazy.js (added)
-
branches/2.1.2/js/dev/shims/jme/mediacontrols.js (added)
-
branches/2.1.2/js/dev/shims/jme/playlist.js (added)
-
branches/2.1.2/js/dev/shims/jpicker (added)
-
branches/2.1.2/js/dev/shims/jpicker/ChangeLog.txt (added)
-
branches/2.1.2/js/dev/shims/jpicker/ReadMe.txt (added)
-
branches/2.1.2/js/dev/shims/jpicker/images (added)
-
branches/2.1.2/js/dev/shims/jpicker/images/AlphaBar.png (added)
-
branches/2.1.2/js/dev/shims/jpicker/images/Bars.png (added)
-
branches/2.1.2/js/dev/shims/jpicker/images/Maps.png (added)
-
branches/2.1.2/js/dev/shims/jpicker/images/NoColor.png (added)
-
branches/2.1.2/js/dev/shims/jpicker/images/bar-opacity.png (added)
-
branches/2.1.2/js/dev/shims/jpicker/images/map-opacity.png (added)
-
branches/2.1.2/js/dev/shims/jpicker/images/mappoint.gif (added)
-
branches/2.1.2/js/dev/shims/jpicker/images/picker.gif (added)
-
branches/2.1.2/js/dev/shims/jpicker/images/preview-opacity.png (added)
-
branches/2.1.2/js/dev/shims/jpicker/images/rangearrows.gif (added)
-
branches/2.1.2/js/dev/shims/jpicker/jpicker.css (added)
-
branches/2.1.2/js/dev/shims/matchMedia.js (added)
-
branches/2.1.2/js/dev/shims/mediacapture-picker.js (added)
-
branches/2.1.2/js/dev/shims/mediacapture.js (added)
-
branches/2.1.2/js/dev/shims/mediaelement-core.js (added)
-
branches/2.1.2/js/dev/shims/mediaelement-debug.js (added)
-
branches/2.1.2/js/dev/shims/mediaelement-jaris.js (added)
-
branches/2.1.2/js/dev/shims/mediaelement-native-fix.js (added)
-
branches/2.1.2/js/dev/shims/mediaelement-yt.js (added)
-
branches/2.1.2/js/dev/shims/moxie (added)
-
branches/2.1.2/js/dev/shims/moxie/flash (added)
-
branches/2.1.2/js/dev/shims/moxie/flash/Moxie.cdn.swf (added)
-
branches/2.1.2/js/dev/shims/moxie/flash/Moxie.min.swf (added)
-
branches/2.1.2/js/dev/shims/moxie/js (added)
-
branches/2.1.2/js/dev/shims/moxie/js/moxie-html4.js (added)
-
branches/2.1.2/js/dev/shims/moxie/js/moxie-swf.js (added)
-
branches/2.1.2/js/dev/shims/picture.js (added)
-
branches/2.1.2/js/dev/shims/plugins (added)
-
branches/2.1.2/js/dev/shims/plugins/jquery.ui.position.js (added)
-
branches/2.1.2/js/dev/shims/range-ui.js (added)
-
branches/2.1.2/js/dev/shims/sizzle.js (added)
-
branches/2.1.2/js/dev/shims/sticky.js (added)
-
branches/2.1.2/js/dev/shims/styles (added)
-
branches/2.1.2/js/dev/shims/styles/color-picker.png (added)
-
branches/2.1.2/js/dev/shims/styles/forms-ext.css (added)
-
branches/2.1.2/js/dev/shims/styles/forms-picker.css (added)
-
branches/2.1.2/js/dev/shims/styles/progress.gif (added)
-
branches/2.1.2/js/dev/shims/styles/progress.png (added)
-
branches/2.1.2/js/dev/shims/styles/scss (added)
-
branches/2.1.2/js/dev/shims/styles/scss/_api-forms-ext.scss (added)
-
branches/2.1.2/js/dev/shims/styles/scss/_api-shim.scss (added)
-
branches/2.1.2/js/dev/shims/styles/scss/_extends.scss (added)
-
branches/2.1.2/js/dev/shims/styles/scss/forms-ext.scss (added)
-
branches/2.1.2/js/dev/shims/styles/scss/forms-picker.scss (added)
-
branches/2.1.2/js/dev/shims/styles/scss/shim-ext.scss (added)
-
branches/2.1.2/js/dev/shims/styles/scss/shim.scss (added)
-
branches/2.1.2/js/dev/shims/styles/shim-ext.css (added)
-
branches/2.1.2/js/dev/shims/styles/shim.css (added)
-
branches/2.1.2/js/dev/shims/styles/transparent.png (added)
-
branches/2.1.2/js/dev/shims/styles/widget-font.zip (added)
-
branches/2.1.2/js/dev/shims/styles/widget.eot (added)
-
branches/2.1.2/js/dev/shims/styles/widget.svg (added)
-
branches/2.1.2/js/dev/shims/styles/widget.ttf (added)
-
branches/2.1.2/js/dev/shims/styles/widget.woff (added)
-
branches/2.1.2/js/dev/shims/swf (added)
-
branches/2.1.2/js/dev/shims/swf/JarisFLVPlayer.swf (added)
-
branches/2.1.2/js/dev/shims/swfmini-embed.js (added)
-
branches/2.1.2/js/dev/shims/swfmini.js (added)
-
branches/2.1.2/js/dev/shims/track-ui.js (added)
-
branches/2.1.2/js/dev/shims/track.js (added)
-
branches/2.1.2/js/dev/shims/url.js (added)
-
branches/2.1.2/js/dev/shims/usermedia-core.js (added)
-
branches/2.1.2/js/dev/shims/usermedia-shim.js (added)
-
branches/2.1.2/js/minified (added)
-
branches/2.1.2/js/minified/polyfiller.js (added)
-
branches/2.1.2/js/minified/shims (added)
-
branches/2.1.2/js/minified/shims/FlashCanvas (added)
-
branches/2.1.2/js/minified/shims/FlashCanvas/canvas2png.js (added)
-
branches/2.1.2/js/minified/shims/FlashCanvas/flashcanvas.js (added)
-
branches/2.1.2/js/minified/shims/FlashCanvas/flashcanvas.swf (added)
-
branches/2.1.2/js/minified/shims/FlashCanvasPro (added)
-
branches/2.1.2/js/minified/shims/FlashCanvasPro/canvas2png.js (added)
-
branches/2.1.2/js/minified/shims/FlashCanvasPro/flash10canvas.swf (added)
-
branches/2.1.2/js/minified/shims/FlashCanvasPro/flash9canvas.swf (added)
-
branches/2.1.2/js/minified/shims/FlashCanvasPro/flashcanvas.js (added)
-
branches/2.1.2/js/minified/shims/canvas-blob.js (added)
-
branches/2.1.2/js/minified/shims/color-picker.js (added)
-
branches/2.1.2/js/minified/shims/combos (added)
-
branches/2.1.2/js/minified/shims/combos/1.js (added)
-
branches/2.1.2/js/minified/shims/combos/10.js (added)
-
branches/2.1.2/js/minified/shims/combos/11.js (added)
-
branches/2.1.2/js/minified/shims/combos/12.js (added)
-
branches/2.1.2/js/minified/shims/combos/13.js (added)
-
branches/2.1.2/js/minified/shims/combos/14.js (added)
-
branches/2.1.2/js/minified/shims/combos/15.js (added)
-
branches/2.1.2/js/minified/shims/combos/16.js (added)
-
branches/2.1.2/js/minified/shims/combos/17.js (added)
-
branches/2.1.2/js/minified/shims/combos/18.js (added)
-
branches/2.1.2/js/minified/shims/combos/2.js (added)
-
branches/2.1.2/js/minified/shims/combos/21.js (added)
-
branches/2.1.2/js/minified/shims/combos/22.js (added)
-
branches/2.1.2/js/minified/shims/combos/23.js (added)
-
branches/2.1.2/js/minified/shims/combos/25.js (added)
-
branches/2.1.2/js/minified/shims/combos/27.js (added)
-
branches/2.1.2/js/minified/shims/combos/28.js (added)
-
branches/2.1.2/js/minified/shims/combos/29.js (added)
-
branches/2.1.2/js/minified/shims/combos/3.js (added)
-
branches/2.1.2/js/minified/shims/combos/30.js (added)
-
branches/2.1.2/js/minified/shims/combos/31.js (added)
-
branches/2.1.2/js/minified/shims/combos/33.js (added)
-
branches/2.1.2/js/minified/shims/combos/34.js (added)
-
branches/2.1.2/js/minified/shims/combos/4.js (added)
-
branches/2.1.2/js/minified/shims/combos/5.js (added)
-
branches/2.1.2/js/minified/shims/combos/6.js (added)
-
branches/2.1.2/js/minified/shims/combos/7.js (added)
-
branches/2.1.2/js/minified/shims/combos/8.js (added)
-
branches/2.1.2/js/minified/shims/combos/9.js (added)
-
branches/2.1.2/js/minified/shims/combos/97.js (added)
-
branches/2.1.2/js/minified/shims/combos/98.js (added)
-
branches/2.1.2/js/minified/shims/combos/99.js (added)
-
branches/2.1.2/js/minified/shims/details.js (added)
-
branches/2.1.2/js/minified/shims/dom-extend.js (added)
-
branches/2.1.2/js/minified/shims/es5.js (added)
-
branches/2.1.2/js/minified/shims/es6.js (added)
-
branches/2.1.2/js/minified/shims/excanvas.js (added)
-
branches/2.1.2/js/minified/shims/filereader-xhr.js (added)
-
branches/2.1.2/js/minified/shims/form-combat.js (added)
-
branches/2.1.2/js/minified/shims/form-core.js (added)
-
branches/2.1.2/js/minified/shims/form-datalist-lazy.js (added)
-
branches/2.1.2/js/minified/shims/form-datalist.js (added)
-
branches/2.1.2/js/minified/shims/form-fixrangechange.js (added)
-
branches/2.1.2/js/minified/shims/form-inputmode.js (added)
-
branches/2.1.2/js/minified/shims/form-message.js (added)
-
branches/2.1.2/js/minified/shims/form-native-extend.js (added)
-
branches/2.1.2/js/minified/shims/form-number-date-api.js (added)
-
branches/2.1.2/js/minified/shims/form-number-date-ui.js (added)
-
branches/2.1.2/js/minified/shims/form-shim-extend.js (added)
-
branches/2.1.2/js/minified/shims/form-shim-extend2.js (added)
-
branches/2.1.2/js/minified/shims/form-validation.js (added)
-
branches/2.1.2/js/minified/shims/form-validators.js (added)
-
branches/2.1.2/js/minified/shims/forms-picker.js (added)
-
branches/2.1.2/js/minified/shims/geolocation.js (added)
-
branches/2.1.2/js/minified/shims/i18n (added)
-
branches/2.1.2/js/minified/shims/i18n/formcfg-ar.js (added)
-
branches/2.1.2/js/minified/shims/i18n/formcfg-bg.js (added)
-
branches/2.1.2/js/minified/shims/i18n/formcfg-ca.js (added)
-
branches/2.1.2/js/minified/shims/i18n/formcfg-ch-CN.js (added)
-
branches/2.1.2/js/minified/shims/i18n/formcfg-cs.js (added)
-
branches/2.1.2/js/minified/shims/i18n/formcfg-de.js (added)
-
branches/2.1.2/js/minified/shims/i18n/formcfg-el.js (added)
-
branches/2.1.2/js/minified/shims/i18n/formcfg-en.js (added)
-
branches/2.1.2/js/minified/shims/i18n/formcfg-es.js (added)
-
branches/2.1.2/js/minified/shims/i18n/formcfg-fa.js (added)
-
branches/2.1.2/js/minified/shims/i18n/formcfg-fi.js (added)
-
branches/2.1.2/js/minified/shims/i18n/formcfg-fr.js (added)
-
branches/2.1.2/js/minified/shims/i18n/formcfg-he.js (added)
-
branches/2.1.2/js/minified/shims/i18n/formcfg-hi.js (added)
-
branches/2.1.2/js/minified/shims/i18n/formcfg-hu.js (added)
-
branches/2.1.2/js/minified/shims/i18n/formcfg-it.js (added)
-
branches/2.1.2/js/minified/shims/i18n/formcfg-ja.js (added)
-
branches/2.1.2/js/minified/shims/i18n/formcfg-lt.js (added)
-
branches/2.1.2/js/minified/shims/i18n/formcfg-nl.js (added)
-
branches/2.1.2/js/minified/shims/i18n/formcfg-no.js (added)
-
branches/2.1.2/js/minified/shims/i18n/formcfg-pl.js (added)
-
branches/2.1.2/js/minified/shims/i18n/formcfg-pt-BR.js (added)
-
branches/2.1.2/js/minified/shims/i18n/formcfg-pt-PT.js (added)
-
branches/2.1.2/js/minified/shims/i18n/formcfg-pt.js (added)
-
branches/2.1.2/js/minified/shims/i18n/formcfg-ru.js (added)
-
branches/2.1.2/js/minified/shims/i18n/formcfg-sv.js (added)
-
branches/2.1.2/js/minified/shims/i18n/formcfg-zh-CN.js (added)
-
branches/2.1.2/js/minified/shims/i18n/formcfg-zh-TW.js (added)
-
branches/2.1.2/js/minified/shims/jme (added)
-
branches/2.1.2/js/minified/shims/jme/alternate-media.js (added)
-
branches/2.1.2/js/minified/shims/jme/base.js (added)
-
branches/2.1.2/js/minified/shims/jme/controls.css (added)
-
branches/2.1.2/js/minified/shims/jme/jme.eot (added)
-
branches/2.1.2/js/minified/shims/jme/jme.svg (added)
-
branches/2.1.2/js/minified/shims/jme/jme.ttf (added)
-
branches/2.1.2/js/minified/shims/jme/jme.woff (added)
-
branches/2.1.2/js/minified/shims/jme/mediacontrols-lazy.js (added)
-
branches/2.1.2/js/minified/shims/jme/mediacontrols.js (added)
-
branches/2.1.2/js/minified/shims/jme/playlist.js (added)
-
branches/2.1.2/js/minified/shims/jpicker (added)
-
branches/2.1.2/js/minified/shims/jpicker/images (added)
-
branches/2.1.2/js/minified/shims/jpicker/images/AlphaBar.png (added)
-
branches/2.1.2/js/minified/shims/jpicker/images/Bars.png (added)
-
branches/2.1.2/js/minified/shims/jpicker/images/Maps.png (added)
-
branches/2.1.2/js/minified/shims/jpicker/images/NoColor.png (added)
-
branches/2.1.2/js/minified/shims/jpicker/images/bar-opacity.png (added)
-
branches/2.1.2/js/minified/shims/jpicker/images/map-opacity.png (added)
-
branches/2.1.2/js/minified/shims/jpicker/images/mappoint.gif (added)
-
branches/2.1.2/js/minified/shims/jpicker/images/picker.gif (added)
-
branches/2.1.2/js/minified/shims/jpicker/images/preview-opacity.png (added)
-
branches/2.1.2/js/minified/shims/jpicker/images/rangearrows.gif (added)
-
branches/2.1.2/js/minified/shims/jpicker/jpicker.css (added)
-
branches/2.1.2/js/minified/shims/matchMedia.js (added)
-
branches/2.1.2/js/minified/shims/mediacapture-picker.js (added)
-
branches/2.1.2/js/minified/shims/mediacapture.js (added)
-
branches/2.1.2/js/minified/shims/mediaelement-core.js (added)
-
branches/2.1.2/js/minified/shims/mediaelement-debug.js (added)
-
branches/2.1.2/js/minified/shims/mediaelement-jaris.js (added)
-
branches/2.1.2/js/minified/shims/mediaelement-native-fix.js (added)
-
branches/2.1.2/js/minified/shims/mediaelement-yt.js (added)
-
branches/2.1.2/js/minified/shims/moxie (added)
-
branches/2.1.2/js/minified/shims/moxie/flash (added)
-
branches/2.1.2/js/minified/shims/moxie/flash/Moxie.cdn.swf (added)
-
branches/2.1.2/js/minified/shims/moxie/flash/Moxie.min.swf (added)
-
branches/2.1.2/js/minified/shims/moxie/js (added)
-
branches/2.1.2/js/minified/shims/moxie/js/moxie-html4.js (added)
-
branches/2.1.2/js/minified/shims/moxie/js/moxie-swf.js (added)
-
branches/2.1.2/js/minified/shims/picture.js (added)
-
branches/2.1.2/js/minified/shims/plugins (added)
-
branches/2.1.2/js/minified/shims/plugins/jquery.ui.position.js (added)
-
branches/2.1.2/js/minified/shims/range-ui.js (added)
-
branches/2.1.2/js/minified/shims/sizzle.js (added)
-
branches/2.1.2/js/minified/shims/sticky.js (added)
-
branches/2.1.2/js/minified/shims/styles (added)
-
branches/2.1.2/js/minified/shims/styles/color-picker.png (added)
-
branches/2.1.2/js/minified/shims/styles/forms-ext.css (added)
-
branches/2.1.2/js/minified/shims/styles/forms-picker.css (added)
-
branches/2.1.2/js/minified/shims/styles/progress.gif (added)
-
branches/2.1.2/js/minified/shims/styles/progress.png (added)
-
branches/2.1.2/js/minified/shims/styles/shim-ext.css (added)
-
branches/2.1.2/js/minified/shims/styles/shim.css (added)
-
branches/2.1.2/js/minified/shims/styles/transparent.png (added)
-
branches/2.1.2/js/minified/shims/styles/widget.eot (added)
-
branches/2.1.2/js/minified/shims/styles/widget.svg (added)
-
branches/2.1.2/js/minified/shims/styles/widget.ttf (added)
-
branches/2.1.2/js/minified/shims/styles/widget.woff (added)
-
branches/2.1.2/js/minified/shims/swf (added)
-
branches/2.1.2/js/minified/shims/swf/JarisFLVPlayer.swf (added)
-
branches/2.1.2/js/minified/shims/swfmini-embed.js (added)
-
branches/2.1.2/js/minified/shims/swfmini.js (added)
-
branches/2.1.2/js/minified/shims/track-ui.js (added)
-
branches/2.1.2/js/minified/shims/track.js (added)
-
branches/2.1.2/js/minified/shims/url.js (added)
-
branches/2.1.2/js/minified/shims/usermedia-core.js (added)
-
branches/2.1.2/js/minified/shims/usermedia-shim.js (added)
-
branches/2.1.2/manage-client-approvers.php (added)
-
branches/2.1.2/manage-projects.php (added)
-
branches/2.1.2/my_dashboard.php (added)
-
branches/2.1.2/mysettings.php (added)
-
branches/2.1.2/queue-approval.php (added)
-
branches/2.1.2/queue-invoice.php (added)
-
branches/2.1.2/queue-payroll.php (added)
-
branches/2.1.2/readme.txt (added)
-
branches/2.1.2/settings.php (added)
-
branches/2.1.2/setup.php (added)
-
branches/2.1.2/split.png (added)
-
branches/2.1.2/time-sheets.css (added)
-
branches/2.1.2/time-sheets.php (added)
-
branches/2.1.2/view.png (added)
-
branches/2.1.2/widget.php (added)
-
branches/2.1.2/x.png (added)
-
trunk/cron.php (modified) (2 diffs)
-
trunk/entry.php (modified) (16 diffs)
-
trunk/manage-projects.php (modified) (4 diffs)
-
trunk/readme.txt (modified) (5 diffs)
-
trunk/time-sheets.php (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
time-sheets/trunk/cron.php
r3122661 r3151570 328 328 $daysinmonth = date('t'); 329 329 $today = date('d'); 330 331 var_dump($today);332 330 333 331 if ($today != $daysinmonth) { 332 echo "This procedure has exited. It only runs on the last day of the month."; 334 333 return; 335 334 } … … 346 345 $db->query($sql); 347 346 348 $sql = "insert into {$wpdb->prefix}timesheet_client_projects_archive 349 select -1, now(), 'UPDATED', ProjectId, ClientId, ProjectName, IsRetainer, MaxHours, HoursUsed, Active, notes, BillOnProjectCompletion, flat_rate, po_number, sales_person_id, technical_sales_person_id, close_on_completion 350 FROM {$wpdb->prefix}timesheet_client_projects_archive 351 WHERE IsRetainer = 1"; 352 $db->query($sql); 347 $common->archive_records('timesheet_client_projects', 'timesheet_client_projects_archive', 'IsRetainer', '1'); 353 348 354 349 -
time-sheets/trunk/entry.php
r3122661 r3151570 717 717 } 718 718 719 $page = $page . "<form name='timesheet' method='POST' autocomplete='off' onsubmit='submit.disabled=true; '>";719 $page = $page . "<form name='timesheet' method='POST' autocomplete='off' onsubmit='submit.disabled=true;is_template.disabled=false'>"; 720 720 //class='ws-validate' 721 721 … … 744 744 $page = $page . "<table>"; 745 745 if (isset($timesheet_user)) { 746 $page = $page . "<TR><TD> TimesheetNumber:</TD><TD>{$timesheet_id}</TD></TR>";747 $page = $page . "<TR><TD> TimesheetFor:</TD><TD>{$timesheet_user}</TD></TR>";746 $page = $page . "<TR><TD>" . (($is_template == true)?"Template":"Timesheet") . " Number:</TD><TD>{$timesheet_id}</TD></TR>"; 747 $page = $page . "<TR><TD>" . (($is_template == true)?"Template":"Timesheet") . " For:</TD><TD>{$timesheet_user}</TD></TR>"; 748 748 if (isset($options['allow_money_based_retainers']) && (isset($timesheet->week_complete) && ($timesheet->week_complete=='1'))){ 749 749 $page = $page . "<TR><TD>Employee Title"; … … 846 846 $total_nb = $monday_nb+$tuesday_nb+$wednesday_nb+$thursday_nb+$friday_nb+$saturday_nb+$sunday_nb; 847 847 848 $page = $page . "<tr align='center'><td></td><td><input type='text' name='monday_date' value='' size='5' disabled></td>849 <td><input type='text' name='tuesday_date' value='' size='5' disabled></td>850 <td><input type='text' name='wednesday_date' value='' size='5' disabled></td>851 <td><input type='text' name='thursday_date' value='' size='5' disabled></td>852 <td><input type='text' name='friday_date' value='' size='5' disabled></td>853 <td><input type='text' name='saturday_date' value='' size='5' disabled></td>854 <td><input type='text' name='sunday_date' value='' size='5' disabled></td></tr>";855 $page = $page . "<tr><td>Hours</td><td><input type=' text' name='monday_hours' size='5' maxlength='5' value='{$monday_hours}'></td>";856 $page = $page . "<td><input type=' text' name='tuesday_hours' size='5' maxlength='5' value='{$tuesday_hours}'></td>";857 $page = $page . "<td><input type=' text' name='wednesday_hours' size='5' maxlength='5' value='{$wednesday_hours}'></td>";858 $page = $page . "<td><input type=' text' name='thursday_hours' size='5' maxlength='5' value='{$thursday_hours}'></td>";859 $page = $page . "<td><input type=' text' name='friday_hours' size='5' maxlength='5' value='{$friday_hours}'></td>";860 $page = $page . "<td><input type=' text' name='saturday_hours' size='5' maxlength='5' value='{$saturday_hours}'></td>";861 $page = $page . "<td><input type=' text' name='sunday_hours' size='5' maxlength='5' value='{$sunday_hours}'></td></tr>";848 $page = $page . "<tr align='center'><td></td><td><input type='text' name='monday_date' value='' size='5' style='width: 5em' disabled></td> 849 <td><input type='text' name='tuesday_date' value='' size='5' style='width: 5em' disabled></td> 850 <td><input type='text' name='wednesday_date' value='' size='5' style='width: 5em' disabled></td> 851 <td><input type='text' name='thursday_date' value='' size='5' style='width: 5em' disabled></td> 852 <td><input type='text' name='friday_date' value='' size='5' style='width: 5em' disabled></td> 853 <td><input type='text' name='saturday_date' value='' size='5' style='width: 5em' disabled></td> 854 <td><input type='text' name='sunday_date' value='' size='5' style='width: 5em' disabled></td></tr>"; 855 $page = $page . "<tr><td>Hours</td><td><input type='number' name='monday_hours' min='0' max='24' step='0.25' style='width: 5em' value='{$monday_hours}'></td>"; 856 $page = $page . "<td><input type='number' name='tuesday_hours' min='0' max='24' step='0.25' style='width: 5em' value='{$tuesday_hours}'></td>"; 857 $page = $page . "<td><input type='number' name='wednesday_hours' min='0' max='24' step='0.25' style='width: 5em' value='{$wednesday_hours}'></td>"; 858 $page = $page . "<td><input type='number' name='thursday_hours' min='0' max='24' step='0.25' style='width: 5em' value='{$thursday_hours}'></td>"; 859 $page = $page . "<td><input type='number' name='friday_hours' min='0' max='24' step='0.25' style='width: 5em' value='{$friday_hours}'></td>"; 860 $page = $page . "<td><input type='number' name='saturday_hours' min='0' max='24' step='0.25' style='width: 5em' value='{$saturday_hours}'></td>"; 861 $page = $page . "<td><input type='number' name='sunday_hours' min='0' max='24' step='0.25' style='width: 5em' value='{$sunday_hours}'></td></tr>"; 862 862 $hide_ot = 0; 863 863 $hide_nb = 0; … … 890 890 891 891 892 $page = $page . "<tr><td>Overtime</td><td><input type=' text' name='monday_ot' size='5' maxlength='5' $monday_ot_style value='{$monday_ot}'></td>";893 $page = $page . "<td><input type=' text' name='tuesday_ot' size='5' maxlength='5' $tuesday_ot_style value='{$tuesday_ot}'></td>";894 $page = $page . "<td><input type=' text' name='wednesday_ot' size='5' maxlength='5' $wednesday_ot_style value='{$wednesday_ot}'></td>";895 $page = $page . "<td><input type=' text' name='thursday_ot' size='5' maxlength='5' $thursday_ot_style value='{$thursday_ot}'></td>";896 $page = $page . "<td><input type=' text' name='friday_ot' size='5' maxlength='5' $friday_ot_style value='{$friday_ot}'></td>";897 $page = $page . "<td><input type=' text' name='saturday_ot' size='5' maxlength='5' $saturday_ot_style value='{$saturday_ot}'></td>";898 $page = $page . "<td><input type=' text' name='sunday_ot' size='5' maxlength='5' $sunday_ot_style value='{$sunday_ot}'></td></tr>";892 $page = $page . "<tr><td>Overtime</td><td><input type='number' name='monday_ot' min='0' max='24' step='0.25' style='width: 5em' $monday_ot_style value='{$monday_ot}'></td>"; 893 $page = $page . "<td><input type='number' name='tuesday_ot' min='0' max='24' step='0.25' style='width: 5em' $tuesday_ot_style value='{$tuesday_ot}'></td>"; 894 $page = $page . "<td><input type='number' name='wednesday_ot' min='0' max='24' step='0.25' style='width: 5em' $wednesday_ot_style value='{$wednesday_ot}'></td>"; 895 $page = $page . "<td><input type='number' name='thursday_ot' min='0' max='24' step='0.25' style='width: 5em' $thursday_ot_style value='{$thursday_ot}'></td>"; 896 $page = $page . "<td><input type='number' name='friday_ot' min='0' max='24' step='0.25' style='width: 5em' $friday_ot_style value='{$friday_ot}'></td>"; 897 $page = $page . "<td><input type='number' name='saturday_ot' min='0' max='24' step='0.25' style='width: 5em' $saturday_ot_style value='{$saturday_ot}'></td>"; 898 $page = $page . "<td><input type='number' name='sunday_ot' min='0' max='24' step='0.25' style='width: 5em' $sunday_ot_style value='{$sunday_ot}'></td></tr>"; 899 899 } 900 900 901 901 if ($hide_nb == 0) { 902 $page = $page . "<tr><td>Non-Billable Time</td><td><input type=' text' name='monday_nb' size='5' maxlength='5' value='{$monday_nb}'></td>";903 $page = $page . "<td><input type=' text' name='tuesday_nb' size='5' maxlength='5' value='{$tuesday_nb}'></td>";904 $page = $page . "<td><input type=' text' name='wednesday_nb' size='5' maxlength='5' value='{$wednesday_nb}'></td>";905 $page = $page . "<td><input type=' text' name='thursday_nb' size='5' maxlength='5' value='{$thursday_nb}'></td>";906 $page = $page . "<td><input type=' text' name='friday_nb' size='5' maxlength='5' value='{$friday_nb}'></td>";907 $page = $page . "<td><input type=' text' name='saturday_nb' size='5' maxlength='5' value='{$saturday_nb}'></td>";908 $page = $page . "<td><input type=' text' name='sunday_nb' size='5' maxlength='5' value='{$sunday_nb}'></td></tr>";902 $page = $page . "<tr><td>Non-Billable Time</td><td><input type='number' name='monday_nb' min='0' max='24' step='0.25' style='width: 5em' value='{$monday_nb}'></td>"; 903 $page = $page . "<td><input type='number' name='tuesday_nb' min='0' max='24' step='0.25' style='width: 5em' value='{$tuesday_nb}'></td>"; 904 $page = $page . "<td><input type='number' name='wednesday_nb' min='0' max='24' step='0.25' style='width: 5em' value='{$wednesday_nb}'></td>"; 905 $page = $page . "<td><input type='number' name='thursday_nb' min='0' max='24' step='0.25' style='width: 5em' value='{$thursday_nb}'></td>"; 906 $page = $page . "<td><input type='number' name='friday_nb' min='0' max='24' step='0.25' style='width: 5em' value='{$friday_nb}'></td>"; 907 $page = $page . "<td><input type='number' name='saturday_nb' min='0' max='24' step='0.25' style='width: 5em'' value='{$saturday_nb}'></td>"; 908 $page = $page . "<td><input type='number' name='sunday_nb' min='0' max='24' step='0.25' style='width: 5em' value='{$sunday_nb}'></td></tr>"; 909 909 910 910 } … … 953 953 $other_expenses_notes = (isset($timesheet->other_expenses_notes) ? $timesheet->other_expenses_notes : ''); 954 954 955 $page = $page . "<tr><td align='center'><input type=' text' name='per_diem_days' size='8' maxlength='9' value='{$per_diem_days}'></td>";955 $page = $page . "<tr><td align='center'><input type='number' name='per_diem_days 'min='0' style='width: 5em' value='{$per_diem_days}'></td>"; 956 956 $page = $page . "<td align='center'><input type='text' name='perdiem_city' size='15' value='{$per_diem_city}'></td>"; 957 $page = $page . "<td align='center'>{$currency_char}<input type=' text' name='flight_cost' size='8' maxlength='9' value='{$flight_cost}'></td>";958 $page = $page . "<td align='center'>{$currency_char}<input type=' text' name='hotel_charges' size='8' maxlength='9' value='{$hotel_charges}'></td>";959 $page = $page . "<td align='center'>{$currency_char}<input type=' text' name='rental_car_charges' size='8' maxlength='9' value='{$rental_car_charges}'></td>";960 $page = $page . "<td align='center'>{$currency_char}<input type=' text' name='taxi' size='8' maxlength='9' value='{$taxi}'></td>";961 $page = $page . "<td align='center'>{$currency_char}<input type=' text' name='tolls' size='8' maxlength='9' value='{$tolls}'></td>";962 $page = $page . "<td align='center'><input type=' text' name='mileage' size='8' maxlength='9' value='{$mileage}'></td>";963 $page = $page . "<td align='center'>{$currency_char}<input type=' text' name='other_expenses' size='8' maxlength='9' value='{$other_expenses}'></td></tr>";957 $page = $page . "<td align='center'>{$currency_char}<input type='number' name='flight_cost' min='0' style='width: 5em' value='{$flight_cost}'></td>"; 958 $page = $page . "<td align='center'>{$currency_char}<input type='number' name='hotel_charges' min='0' style='width: 5em' value='{$hotel_charges}'></td>"; 959 $page = $page . "<td align='center'>{$currency_char}<input type='number' name='rental_car_charges' min='0' style='width: 5em' value='{$rental_car_charges}'></td>"; 960 $page = $page . "<td align='center'>{$currency_char}<input type='number' name='taxi' min='0' style='width: 5em' value='{$taxi}'></td>"; 961 $page = $page . "<td align='center'>{$currency_char}<input type='number' name='tolls' min='0' style='width: 5em' value='{$tolls}'></td>"; 962 $page = $page . "<td align='center'><input type='number' name='mileage' min='0' style='width: 5em' value='{$mileage}'></td>"; 963 $page = $page . "<td align='center'>{$currency_char}<input type='number' name='other_expenses' min='0' style='width: 5em' value='{$other_expenses}'></td></tr>"; 964 964 $page = $page . "<tr><td valign='top'>Other Expense Notes:</td><td colspan='8'><textarea name='other_expenses_notes' cols='70' rows='8'>{$common->esc_textarea($other_expenses_notes)}</textarea></td></tr></table>"; 965 965 } … … 980 980 981 981 //Recuring Timesheet 982 if (isset($options['allow_recurring_timesheets']) && $timesheet_id_int==0) {983 $page = $page . "<tr><td>Make this a recurring timesheet?</td><td><input type='checkbox' name='is_template' value='1' onclick='switchRecuringFields()' ></td></tr>";982 if (isset($options['allow_recurring_timesheets']) && ($is_template==true || $timesheet_id_int==0)) { 983 $page = $page . "<tr><td>Make this a recurring timesheet?</td><td><input type='checkbox' name='is_template' value='1' onclick='switchRecuringFields()'" . (($is_template == true)?" disabled checked":"") . "></td></tr>"; 984 984 $page = $page . "<tr><td colspan='2'> 985 985 <table> … … 990 990 <td> 991 991 <select name='interval' disabled> 992 <option value='w' >Weekly</option>993 <option value='m' >Monthly</option>994 <option value='q' >Quarterly</option>995 <option value='a' >Annualy</option>992 <option value='w'{$common->is_match('w', (($timesheet_id_int==0)?'':$timesheet->frequency), ' selected')}>Weekly</option> 993 <option value='m'{$common->is_match('m', (($timesheet_id_int==0)?'':$timesheet->frequency), ' selected')}>Monthly</option> 994 <option value='q'{$common->is_match('q', (($timesheet_id_int==0)?'':$timesheet->frequency), ' selected')}>Quarterly</option> 995 <option value='a'{$common->is_match('a', (($timesheet_id_int==0)?'':$timesheet->frequency), ' selected')}>Annualy</option> 996 996 </select> 997 997 </td> … … 1002 1002 </td> 1003 1003 <td> 1004 <input type='date' name='next_execution' disabled>1004 <input type='date' name='next_execution' value='" . (($timesheet_id_int==0)?'':date("Y-m-d", strtotime($timesheet->next_execution))) . "' disabled> 1005 1005 </td> 1006 1006 </tr> … … 1011 1011 </td> 1012 1012 <td> 1013 <input type='date' name='expires' disabled> (optional)1013 <input type='date' name='expires' value='" . (($timesheet_id_int==0)?'':date("Y-m-d", strtotime($timesheet->expires_on))) . "' disabled> (optional) 1014 1014 </td> 1015 1015 </tr> 1016 1016 <tr> 1017 1017 <td colspan='2'> 1018 <input type='checkbox' name='delete_after_expiration' value='1' disabled > Delete template after expiration?1018 <input type='checkbox' name='delete_after_expiration' value='1' disabled ". ((($timesheet_id_int==0)?'':$timesheet->delete_after_expiration==1)?'checked':'') . "> Delete template after expiration? 1019 1019 <input type='hidden' name='template' value=''> 1020 1020 </td> … … 1025 1025 $page = $page . "</table>"; 1026 1026 1027 if (!$is_template) {1027 //if (!$is_template) { 1028 1028 if ($timesheet_id_int==0 || $timesheet->week_complete=='0') { 1029 1029 if (isset($timesheet->user_id)) { … … 1035 1035 } 1036 1036 } 1037 }1037 //} 1038 1038 1039 1039 $page = $page . "<input type='hidden' name='action' value='save'>"; 1040 1040 if ($timesheet_id != "") { 1041 1041 $page = $page . "<input type='hidden' name='timesheet_id' value='{$timesheet_id}'>"; 1042 if ($is_template == true) { 1043 $page = $page . "<input type='hidden' name='template_id' value='{$timesheet_id}'>"; 1044 } 1042 1045 } 1043 1046 $page = $page . "<input type='hidden' name='may_embargo' value='0'>"; … … 1249 1252 } 1250 1253 $page = $page . " 1254 switchRecuringFields() 1251 1255 </script>"; 1252 1256 … … 1332 1336 $ot_multiplier = isset($options['ot_multiplier']) ? floatval($options['ot_multiplier']) : 1; 1333 1337 1334 if ( !isset($_POST['is_template'])) {1338 if ((!isset($_POST['is_template']) && !isset($_POST['template_id']))) { 1335 1339 $table_name = "timesheet"; 1336 1340 $archive_name = "timesheet_archive"; … … 1606 1610 } 1607 1611 1608 #Archive the change1609 $common->archive_records ($table_name, $archive_name, 'timesheet_id', intval($_POST['timesheet_id']));1610 1612 1611 1613 … … 1672 1674 #$this->check_overages($timesheet_id, 1); 1673 1675 1674 if (isset($_POST['is_template'])) { 1675 if (isset($_POST['interval'])) { 1676 if ($_POST['interval'] = 'w') { 1677 $interval = 'w'; 1678 } 1676 1677 1678 if ($week_complete==1 && !isset($_POST['is_template'])) { 1679 $sql = "update {$wpdb->prefix}timesheet 1680 set marked_complete_by=$user_id, 1681 marked_complete_date = CURDATE() 1682 where timesheet_id=$timesheet_id"; 1683 1684 if (isset($options['allow_recurring_timesheets'])) { 1685 $this->update_retainer_usage($timesheet_id); 1679 1686 } 1680 1687 1681 if (isset($_POST['delete_after_expiration'])) { 1682 $delete_after_expiration = 1; 1683 } else { 1684 $delete_after_expiration = 0; 1685 } 1688 $db->query($sql); 1689 if ($EmbargoPendingProjectClose==0) { 1690 $this->email_on_submission($timesheet_id); 1691 } 1692 1693 $sql = "update {$wpdb->prefix}timesheet_client_projects 1694 set HoursUsed=HoursUsed+$total_hours 1695 where ProjectId=%d"; 1696 $params=array(intval($_POST['ProjectId'])); 1697 1698 $db->query($sql, $params); 1686 1699 1687 $sql = "update {$wpdb->prefix}{$table_name} 1700 $this->set_project_inactive_on_date(intval($_POST['ProjectId'])); 1701 } 1702 1703 1704 1705 echo "<div class='notice notice-success is-dismissible'><p>" . ((isset($_POST['is_template']) || isset($_POST['template_id']) )?'Template':'Timesheet') . " saved.</p></div>"; 1706 1707 } 1708 1709 if (isset($_POST['is_template']) || isset($_POST['template_id']) ) { //If this is a template 1710 if (isset($_POST['interval'])) { 1711 if ($_POST['interval'] == 'w') { 1712 $interval = 'w'; 1713 } elseif ($_POST['interval'] == 'm') { 1714 $interval = 'm'; 1715 } elseif ($_POST['interval'] == 'q') { 1716 $interval = 'q'; 1717 } elseif ($_POST['interval'] == 'a') { 1718 $interval = 'a'; 1719 } 1720 } 1721 1722 if (isset($_POST['delete_after_expiration'])) { 1723 $delete_after_expiration = 1; 1724 } else { 1725 $delete_after_expiration = 0; 1726 } 1727 1728 $sql = "update {$wpdb->prefix}{$table_name} 1688 1729 set frequency = %s, 1689 1730 next_execution = %s, … … 1691 1732 delete_after_expiration = %d 1692 1733 where timesheet_id = %d"; 1693 1694 $params = array($interval, $_POST['next_execution'], $_POST['expires'], $delete_after_expiration, $timesheet_id); 1695 1696 $db->query($sql, $params); 1697 } 1698 1699 if ($week_complete==1 && !isset($_POST['is_template'])) { 1700 $sql = "update {$wpdb->prefix}timesheet 1701 set marked_complete_by=$user_id, 1702 marked_complete_date = CURDATE() 1703 where timesheet_id=$timesheet_id"; 1704 1705 if (isset($options['allow_recurring_timesheets'])) { 1706 $this->update_retainer_usage($timesheet_id); 1707 } 1708 1709 $db->query($sql); 1710 if ($EmbargoPendingProjectClose==0) { 1711 $this->email_on_submission($timesheet_id); 1712 } 1713 1714 $sql = "update {$wpdb->prefix}timesheet_client_projects 1715 set HoursUsed=HoursUsed+$total_hours 1716 where ProjectId=%d"; 1717 $params=array(intval($_POST['ProjectId'])); 1718 1719 $db->query($sql, $params); 1720 1721 $this->set_project_inactive_on_date(intval($_POST['ProjectId'])); 1722 } 1723 1724 //Archive the change 1734 1735 $params = array($interval, $_POST['next_execution'], $_POST['expires'], $delete_after_expiration, $timesheet_id); 1736 1737 $db->query($sql, $params); 1738 } 1739 1740 #Archive the change 1741 if (isset($_POST['timesheet_id'])) { //UPDATE 1742 $common->archive_records ($table_name, $archive_name, 'timesheet_id', intval($_POST['timesheet_id'])); 1743 } else { //INSERT 1725 1744 $common->archive_records ($table_name, $archive_name, 'timesheet_id', intval($timesheet_id), '=', 'INSERT'); 1726 1727 1728 echo '<div class="notice notice-success is-dismissible"><p>Timesheet saved.</p></div>';1729 1730 1745 } 1731 1746 -
time-sheets/trunk/manage-projects.php
r3105849 r3151570 536 536 <tr> 537 537 <td>Retainer Hours</td> 538 <td><input type=' text' id='hours_included' name='hours_included' size='5' value='{$hours_included}'></td>";538 <td><input type='number' id='hours_included' name='hours_included' 'min='0' style='width: 5em' value='{$hours_included}'></td>"; 539 539 if (isset($options['allow_money_based_retainers'])) { 540 echo "<td>Max Project Frequency Budget</td><td>{$options['currency_char']}<input type=' text' name='max_monthly_budget' size='5'value='{$max_monthly_budget}'> <div id='project_override'>test</div></td>";540 echo "<td>Max Project Frequency Budget</td><td>{$options['currency_char']}<input type='number' name='max_monthly_budget' 'min='0' style='width: 5em' value='{$max_monthly_budget}'> <div id='project_override'>test</div></td>"; 541 541 542 542 $sql = "select e.* from {$wpdb->prefix}timesheet_employee_titles e … … 548 548 } 549 549 echo "</tr> 550 <tr><td rowspan='{$valign}' valign='top'>Retainer Rate</td><td rowspan='{$valign}' valign='top'><input type=' text' id='hourly_rate' name='hourly_rate' size='5' value='{$hourly_rate}'></td>";550 <tr><td rowspan='{$valign}' valign='top'>Retainer Rate</td><td rowspan='{$valign}' valign='top'><input type='number' id='hourly_rate' name='hourly_rate' 'min='0' style='width: 5em' value='{$hourly_rate}'></td>"; 551 551 if (isset($options['allow_money_based_retainers'])) { 552 552 if ($titles) { 553 553 foreach ($titles as $title) { 554 echo "<tr><td>Rate for {$title->name}:</td><td>{$options['currency_char']}<input type=' text' size='5'name='title_{$title->title_id}' value=''></td></tr>";554 echo "<tr><td>Rate for {$title->name}:</td><td>{$options['currency_char']}<input type='number' 'min='0' style='width: 5em' name='title_{$title->title_id}' value=''></td></tr>"; 555 555 } 556 556 } 557 557 } 558 echo "</table><tr><td>Max Project Hours:</td><td><input type=' text' name='MaxHours' size='5'value='{$MaxHours}'></td></tr>558 echo "</table><tr><td>Max Project Hours:</td><td><input type='number' name='MaxHours' 'min='0' style='width: 5em' value='{$MaxHours}'></td></tr> 559 559 <tr><td colspan='2'>Active / Visable <input type='checkbox' name='Active' value='1'{$Active}></td></tr>"; 560 560 if (!isset($options['remove_embargo'])) { … … 845 845 <tr> 846 846 <td>Retainer Hours</td> 847 <td><input type=' text' id='hours_included' name='hours_included' size='5' value='{$hours_included}'></td>";847 <td><input type='number' id='hours_included' name='hours_included''min='0' style='width: 5em' value='{$hours_included}'></td>"; 848 848 if (isset($options['allow_money_based_retainers'])) { 849 echo "<td>Max Project Frequency Budget</td><td>{$options['currency_char']}<input type=' text' name='max_monthly_budget' size='5' value='{$max_monthly_budget}'> <div id='project_override'></div></td>";849 echo "<td>Max Project Frequency Budget</td><td>{$options['currency_char']}<input type='number' name='max_monthly_budget' 'min='0' style='width: 5em' value='{$max_monthly_budget}'> <div id='project_override'></div></td>"; 850 850 851 851 $sql = "select e.*, p.hourly_rate from {$wpdb->prefix}timesheet_employee_titles e … … 858 858 } 859 859 echo "</tr> 860 <tr><td rowspan='{$valign}' valign='top'>Retainer Rate</td><td rowspan='{$valign}' valign='top'><input type=' text' id='hourly_rate' name='hourly_rate' size='5'value='{$hourly_rate}'></td>";860 <tr><td rowspan='{$valign}' valign='top'>Retainer Rate</td><td rowspan='{$valign}' valign='top'><input type='number' id='hourly_rate' name='hourly_rate' 'min='0' style='width: 5em' value='{$hourly_rate}'></td>"; 861 861 if (isset($options['allow_money_based_retainers'])) { 862 862 if ($titles) { 863 863 foreach ($titles as $title) { 864 echo "<tr><td>Rate for {$title->name}:</td><td>{$options['currency_char']}<input type=' text' size='5' name='title_{$title->title_id}' value='{$title->hourly_rate}'></td></tr>";864 echo "<tr><td>Rate for {$title->name}:</td><td>{$options['currency_char']}<input type='number' 'min='0' style='width: 5em' name='title_{$title->title_id}' value='{$title->hourly_rate}'></td></tr>"; 865 865 } 866 866 } 867 867 } 868 echo "</table><tr><td>Max Project Hours:</td><td><input type=' text' id='MaxHours' name='MaxHours' size='5' value='{$project->MaxHours}'></td></tr>868 echo "</table><tr><td>Max Project Hours:</td><td><input type='number' id='MaxHours' name='MaxHours' 'min='0' style='width: 5em' value='{$project->MaxHours}'></td></tr> 869 869 <tr><td>Hours Used:</td><td><a href='admin.php?page=timesheet_manage_clients&menu=view_timesheets_for_project&ProjectId={$common->intval($_GET['ProjectId'])}'>{$hoursused}</a></td></tr> 870 870 <tr><td>Hours Remaining:</td><td>{$hoursleft}</td></tr> -
time-sheets/trunk/readme.txt
r3130722 r3151570 1 === Time Sheets ===1 === Time Sheets === 2 2 Contributors: mrdenny 3 3 Donate Link: https://www.dcac.com/go/time-sheets 4 4 Tags: ticketing system, time sheets, business management, consulting, workflow, invoicing, payroll, time tracking 5 5 Requires at least: 4.7.0 6 Tested up to: 6.6. 16 Tested up to: 6.6.2 7 7 Stable tag: trunk 8 8 License: GPLv2 or later … … 58 58 59 59 = When do retainer reminders get sent out? = 60 They are sent out on the last day of the month. 60 They are sent out on the last day of the month. (This is based on the time settings of your web server.) 61 61 62 62 = When do reminders for late time sheets get sent out? = 63 They are sent out on Monday mornings. 63 They are sent out on Monday mornings. (This is based on the time settings of your web server.) 64 64 65 65 = What is a work week defined as? = … … 82 82 83 83 = How many clients does the system support? = 84 As many as you need. 84 As many as you need. Your limits are the numbers of rows supported in the database, and the amount of disk space which the database server has. 85 85 86 86 = How many employees does the system support? = 87 As many users as WordPress supports in the system. 87 As many users as WordPress supports in the system. Your limits are the numbers of rows supported in the database, and the amount of disk space which the database server has. 88 88 89 89 = Where are the settings located? = … … 94 94 95 95 = I have multiple web servers, but I only want to run the email jobs on one, can I? = 96 Yes you can. Add the code "define( 'TIMESHEETS_SKIP_CRON', false );" to your wp-config.php. This will stop that web server from processing the email messages . Just make sure that you do not put this setting on every web server otherwise you won't get the messages on any server.96 Yes you can. Add the code "define( 'TIMESHEETS_SKIP_CRON', false );" to your wp-config.php. This will stop that web server from processing the email messages and just about anything else that's scheduled through cron. Just make sure that you do not put this setting on every web server otherwise all the cron tasks won't run. 97 97 98 98 == Screenshots == … … 115 115 116 116 == Changelog == 117 = 2.1.2 = 118 * Changing numeric fields to numeric data type so the user can't enter text 119 * Calling the archive function from the email_retainers_due function instead of manually archiving 120 * Allows for updating of templates 121 * Adjusting the order of operations when saving a timesheet / template 122 * Updated the save message to account for saving a template vs timesheet 123 * Updated FAQ 124 117 125 = 2.1.1 = 118 126 * Correct and made consistant the logic around the notes and expeses fields in settings -
time-sheets/trunk/time-sheets.php
r3130722 r3151570 2 2 /* 3 3 Plugin Name: Time Sheets 4 Version: 2.1. 14 Version: 2.1.2 5 5 Plugin URI: https://www.dcac.com/go/time-sheets 6 6 Description: Time Sheets application
Note: See TracChangeset
for help on using the changeset viewer.