From 1d0ee088c423b09d24340967f1528da7a4ce7ef6 Mon Sep 17 00:00:00 2001 From: Alex Tselegidis Date: Wed, 14 Jan 2015 23:15:27 +0100 Subject: [PATCH] Cleanup Respository - Updated CodeIgniter - Removed unnecessary files. - Added custom translations. - Updated release-notes.txt for v1.1 --- .gitignore | 1 + build.bat | 12 - db/easy_appointments.sql | 329 -- doc/E!A UML.zargo | Bin 30532 -> 0 bytes doc/code/generate-docs.bat | 17 - doc/thesis-topic.pdf | Bin 149600 -> 0 bytes doc/thesis/compile.bat | 51 - doc/thesis/compile.sh | 36 - doc/thesis/diagrams/ea-ad-book-appointment.io | 1 - .../diagrams/ea-ad-install-application.io | 1 - .../ea-ad-provider-available-hours.io | 1 - .../diagrams/ea-ad-sync-appointments.io | 1 - doc/thesis/diagrams/ea-cd-backend-settings.io | 1 - doc/thesis/diagrams/ea-cd-backend-users.io | 1 - doc/thesis/diagrams/ea-domain-model.io | 1 - doc/thesis/diagrams/ea-er.io | 1 - doc/thesis/diagrams/ea-gantt-analytic.gantter | 1 - doc/thesis/diagrams/ea-gantt-simple.ods | Bin 12199 -> 0 bytes doc/thesis/diagrams/ea-sd-save-appointment.io | 1 - doc/thesis/diagrams/ea-sd-sync-appointment.io | 1 - doc/thesis/diagrams/ea-system-architecture.io | 1 - doc/thesis/images/ad-book-appointment.png | Bin 49743 -> 0 bytes doc/thesis/images/ad-install-application.png | Bin 20491 -> 0 bytes .../images/ad-provider-available-hours.png | Bin 13537 -> 0 bytes doc/thesis/images/ad-sync-appointments.png | Bin 21976 -> 0 bytes doc/thesis/images/backend-calendar.jpg | Bin 375335 -> 0 bytes doc/thesis/images/backend-providers.jpg | Bin 181199 -> 0 bytes doc/thesis/images/backend-settings.jpg | Bin 291047 -> 0 bytes doc/thesis/images/book-appointment.jpg | Bin 163797 -> 0 bytes doc/thesis/images/cd-backend-settings.png | Bin 20415 -> 0 bytes doc/thesis/images/cd-backend-users.png | Bin 28136 -> 0 bytes doc/thesis/images/domain-model.png | Bin 37281 -> 0 bytes doc/thesis/images/ea-unit-testing.png | Bin 33321 -> 0 bytes doc/thesis/images/er.png | Bin 65047 -> 0 bytes doc/thesis/images/gantt-simple.jpg | Bin 95998 -> 0 bytes doc/thesis/images/gantt-simple.png | Bin 11067 -> 0 bytes doc/thesis/images/google-calendar-api.png | Bin 49899 -> 0 bytes doc/thesis/images/mvc.png | Bin 16962 -> 0 bytes doc/thesis/images/sd-save-appointment.png | Bin 24691 -> 0 bytes doc/thesis/images/sd-sync-appointment.png | Bin 14958 -> 0 bytes doc/thesis/images/system-architecture.png | Bin 23817 -> 0 bytes doc/thesis/includes/conclusions.tex | 45 - doc/thesis/includes/external-tools.tex | 40 - doc/thesis/includes/google-calendar-api.tex | 153 - doc/thesis/includes/headers.tex | 71 - doc/thesis/includes/implementation.tex | 198 - doc/thesis/includes/introduction.tex | 144 - doc/thesis/includes/unit-testing.tex | 47 - doc/thesis/includes/usage-scenarios.tex | 22 - doc/thesis/includes/use-cases.tex | 162 - doc/thesis/presentation.odp | Bin 1055268 -> 0 bytes doc/thesis/presentation.pdf | Bin 911636 -> 0 bytes doc/thesis/snippets/find_record_id.php | 30 - doc/thesis/snippets/google_sync_algorithm.php | 168 - .../snippets/provider_appointment_hours.php | 108 - .../snippets/provider_available_periods.php | 139 - doc/thesis/snippets/unit_test_automation.php | 15 - .../snippets/unit_test_get_value_example.php | 22 - .../snippets/unit_test_insert_example.php | 31 - doc/thesis/thesis.bib | 21 - doc/thesis/thesis.pdf | Bin 1766198 -> 0 bytes doc/thesis/thesis.sty | 454 -- doc/thesis/thesis.tex | 27 - release-notes.txt | 20 - rsc/code-doc.sh | 7 + rsc/db/sample-data.sql | 103 + rsc/db/structure.sql | 220 + rsc/{design => gfx}/logo/ea-logo.png | Bin rsc/{design => gfx}/logo/ea-logo.psd | Bin rsc/{design => gfx}/logo/gplus-ea-logo.png | Bin .../logo/installation-banner.png | Bin .../logo/installation-banner.psd | Bin .../misc/google-code-banner.png | Bin .../misc/google-code-banner.psd | Bin rsc/misc/code/CodeIgniter_2.1.3.zip | Bin 2321739 -> 0 bytes rsc/misc/ebooks/RUP pt1.pdf | Bin 752790 -> 0 bytes rsc/misc/ebooks/RUP pt2.pdf | Bin 210604 -> 0 bytes rsc/misc/ebooks/RUP pt3.pdf | Bin 636977 -> 0 bytes rsc/misc/ebooks/listings.pdf | Bin 717293 -> 0 bytes .../open sans/Apache License Version 2.txt | 53 - rsc/misc/fonts/open sans/OpenSans-Bold.ttf | Bin 224592 -> 0 bytes .../fonts/open sans/OpenSans-BoldItalic.ttf | Bin 213292 -> 0 bytes .../fonts/open sans/OpenSans-ExtraBold.ttf | Bin 222584 -> 0 bytes .../open sans/OpenSans-ExtraBoldItalic.ttf | Bin 213420 -> 0 bytes rsc/misc/fonts/open sans/OpenSans-Italic.ttf | Bin 212896 -> 0 bytes rsc/misc/fonts/open sans/OpenSans-Light.ttf | Bin 222412 -> 0 bytes .../fonts/open sans/OpenSans-LightItalic.ttf | Bin 213128 -> 0 bytes rsc/misc/fonts/open sans/OpenSans-Regular.ttf | Bin 217360 -> 0 bytes .../fonts/open sans/OpenSans-Semibold.ttf | Bin 221328 -> 0 bytes .../open sans/OpenSans-SemiboldItalic.ttf | Bin 212820 -> 0 bytes rsc/package.sh | 10 + rsc/scripts/jsdoc/Jake/lib/mustache.js | 335 -- .../jsdoc/Jake/templates/package.json.tmpl | 46 - rsc/scripts/jsdoc/Jakefile.js | 82 - rsc/scripts/jsdoc/LICENSE.md | 344 -- rsc/scripts/jsdoc/README.md | 116 - rsc/scripts/jsdoc/apache-license-2.0.txt | 202 - rsc/scripts/jsdoc/conf.json | 17 - rsc/scripts/jsdoc/docs/app.html | 122 - rsc/scripts/jsdoc/docs/bookAppointment.html | 720 --- .../jsdoc/docs/book_appointment.js.html | 362 -- rsc/scripts/jsdoc/docs/env.html | 441 -- rsc/scripts/jsdoc/docs/global.html | 195 - rsc/scripts/jsdoc/docs/index.html | 63 - rsc/scripts/jsdoc/docs/jsdoc.js.html | 358 -- rsc/scripts/jsdoc/docs/scripts/linenumber.js | 17 - .../scripts/prettify/Apache-License-2.0.txt | 202 - .../jsdoc/docs/scripts/prettify/lang-css.js | 2 - .../jsdoc/docs/scripts/prettify/prettify.js | 28 - .../jsdoc/docs/styles/jsdoc-default.css | 283 - .../jsdoc/docs/styles/prettify-jsdoc.css | 111 - .../jsdoc/docs/styles/prettify-tomorrow.css | 132 - rsc/scripts/jsdoc/jsdoc | 41 - rsc/scripts/jsdoc/jsdoc.cmd | 45 - rsc/scripts/jsdoc/jsdoc.js | 308 -- rsc/scripts/jsdoc/lib/initialize.js | 40 - rsc/scripts/jsdoc/lib/jsdoc/augment.js | 138 - rsc/scripts/jsdoc/lib/jsdoc/borrow.js | 65 - rsc/scripts/jsdoc/lib/jsdoc/config.js | 58 - rsc/scripts/jsdoc/lib/jsdoc/doclet.js | 337 -- rsc/scripts/jsdoc/lib/jsdoc/fs.js | 14 - rsc/scripts/jsdoc/lib/jsdoc/name.js | 258 - rsc/scripts/jsdoc/lib/jsdoc/opts/argparser.js | 179 - rsc/scripts/jsdoc/lib/jsdoc/opts/args.js | 127 - rsc/scripts/jsdoc/lib/jsdoc/package.js | 69 - rsc/scripts/jsdoc/lib/jsdoc/path.js | 136 - rsc/scripts/jsdoc/lib/jsdoc/plugins.js | 45 - rsc/scripts/jsdoc/lib/jsdoc/readme.js | 25 - rsc/scripts/jsdoc/lib/jsdoc/schema.js | 308 -- rsc/scripts/jsdoc/lib/jsdoc/src/filter.js | 53 - rsc/scripts/jsdoc/lib/jsdoc/src/handlers.js | 200 - rsc/scripts/jsdoc/lib/jsdoc/src/parser.js | 779 --- rsc/scripts/jsdoc/lib/jsdoc/src/scanner.js | 58 - rsc/scripts/jsdoc/lib/jsdoc/tag.js | 103 - rsc/scripts/jsdoc/lib/jsdoc/tag/dictionary.js | 85 - .../lib/jsdoc/tag/dictionary/definitions.js | 677 --- rsc/scripts/jsdoc/lib/jsdoc/tag/inline.js | 107 - rsc/scripts/jsdoc/lib/jsdoc/tag/type.js | 286 - rsc/scripts/jsdoc/lib/jsdoc/tag/validator.js | 62 - rsc/scripts/jsdoc/lib/jsdoc/template.js | 84 - rsc/scripts/jsdoc/lib/jsdoc/tutorial.js | 110 - .../jsdoc/lib/jsdoc/tutorial/resolver.js | 190 - rsc/scripts/jsdoc/lib/jsdoc/util/doop.js | 20 - rsc/scripts/jsdoc/lib/jsdoc/util/dumper.js | 94 - rsc/scripts/jsdoc/lib/jsdoc/util/error.js | 32 - rsc/scripts/jsdoc/lib/jsdoc/util/global.js | 7 - rsc/scripts/jsdoc/lib/jsdoc/util/include.js | 19 - rsc/scripts/jsdoc/lib/jsdoc/util/markdown.js | 112 - .../jsdoc/lib/jsdoc/util/templateHelper.js | 711 --- rsc/scripts/jsdoc/lib/jsdoc/util/vm.js | 83 - rsc/scripts/jsdoc/node_modules/async/LICENSE | 19 - rsc/scripts/jsdoc/node_modules/async/index.js | 3 - .../jsdoc/node_modules/async/lib/async.js | 692 --- .../jsdoc/node_modules/async/package.json | 30 - .../jsdoc/node_modules/catharsis/LICENSE | 16 - .../jsdoc/node_modules/catharsis/catharsis.js | 123 - .../node_modules/catharsis/lib/parser.js | 3 - .../node_modules/catharsis/lib/stringify.js | 257 - .../jsdoc/node_modules/catharsis/lib/types.js | 24 - .../jsdoc/node_modules/catharsis/package.json | 44 - .../node_modules/crypto-browserify/index.js | 68 - .../crypto-browserify/package.json | 29 - .../node_modules/crypto-browserify/rng.js | 37 - .../node_modules/crypto-browserify/sha.js | 210 - .../node_modules/js2xmlparser/LICENSE.md | 16 - .../js2xmlparser/lib/js2xmlparser.js | 223 - .../node_modules/js2xmlparser/package.json | 30 - rsc/scripts/jsdoc/node_modules/jsdoc | 1 - rsc/scripts/jsdoc/node_modules/jshint/LICENSE | 4 - .../jsdoc/node_modules/jshint/package.json | 43 - .../jshint/packages/jshint/jshint.js | 4832 ----------------- .../node_modules/markdown/README.markdown | 115 - .../jsdoc/node_modules/markdown/lib/index.js | 3 - .../node_modules/markdown/lib/markdown.js | 1616 ------ .../jsdoc/node_modules/markdown/package.json | 68 - rsc/scripts/jsdoc/node_modules/marked/LICENSE | 19 - .../jsdoc/node_modules/marked/index.js | 1 - .../jsdoc/node_modules/marked/lib/marked.js | 1076 ---- .../jsdoc/node_modules/marked/package.json | 46 - .../jsdoc/node_modules/taffydb/README.md | 1 - .../jsdoc/node_modules/taffydb/package.json | 17 - .../node_modules/taffydb/taffy-test.html | 84 - .../jsdoc/node_modules/taffydb/taffy.js | 1973 ------- .../jsdoc/node_modules/underscore/LICENSE | 22 - .../node_modules/underscore/package.json | 25 - .../node_modules/underscore/underscore.js | 1200 ---- rsc/scripts/jsdoc/node_modules/wrench/LICENSE | 21 - .../jsdoc/node_modules/wrench/lib/wrench.js | 399 -- .../jsdoc/node_modules/wrench/package.json | 39 - rsc/scripts/jsdoc/nodejs/bin/jsdoc | 26 - rsc/scripts/jsdoc/nodejs/jsdoc/fs.js | 17 - .../jsdoc/nodejs/jsdoc/util/include.js | 8 - rsc/scripts/jsdoc/out/app.html | 122 - rsc/scripts/jsdoc/out/env.html | 441 -- rsc/scripts/jsdoc/out/functions..html | 124 - .../jsdoc/out/general_functions.js.html | 134 - rsc/scripts/jsdoc/out/global.html | 195 - rsc/scripts/jsdoc/out/index.html | 63 - rsc/scripts/jsdoc/out/jsdoc.js.html | 358 -- rsc/scripts/jsdoc/out/scripts/linenumber.js | 17 - .../scripts/prettify/Apache-License-2.0.txt | 202 - .../jsdoc/out/scripts/prettify/lang-css.js | 2 - .../jsdoc/out/scripts/prettify/prettify.js | 28 - .../jsdoc/out/styles/jsdoc-default.css | 283 - .../jsdoc/out/styles/prettify-jsdoc.css | 111 - .../jsdoc/out/styles/prettify-tomorrow.css | 132 - rsc/scripts/jsdoc/package.json | 46 - rsc/scripts/jsdoc/plugins/README.md | 389 -- rsc/scripts/jsdoc/plugins/commentConvert.js | 21 - rsc/scripts/jsdoc/plugins/commentsOnly.js | 17 - rsc/scripts/jsdoc/plugins/escapeHtml.js | 21 - rsc/scripts/jsdoc/plugins/eventDumper.js | 69 - rsc/scripts/jsdoc/plugins/markdown.js | 67 - rsc/scripts/jsdoc/plugins/markdown.md | 86 - rsc/scripts/jsdoc/plugins/overloadHelper.js | 184 - rsc/scripts/jsdoc/plugins/partial.js | 31 - rsc/scripts/jsdoc/plugins/railsTemplate.js | 20 - rsc/scripts/jsdoc/plugins/shout.js | 16 - rsc/scripts/jsdoc/plugins/sourcetag.js | 43 - .../plugins/test/fixtures/overloadHelper.js | 50 - .../test/fixtures/railsTemplate.js.erb | 20 - .../plugins/test/fixtures/seetag-markdown.js | 12 - .../plugins/test/specs/commentConvert.js | 14 - .../jsdoc/plugins/test/specs/escapeHtml.js | 14 - .../jsdoc/plugins/test/specs/markdown.js | 22 - .../plugins/test/specs/overloadHelper.js | 96 - .../jsdoc/plugins/test/specs/railsTemplate.js | 16 - rsc/scripts/jsdoc/plugins/test/specs/shout.js | 14 - .../jsdoc/plugins/test/specs/sourcetag.js | 16 - .../jsdoc/plugins/test/specs/verboseOutput.js | 19 - rsc/scripts/jsdoc/plugins/verboseOutput.js | 15 - rsc/scripts/jsdoc/rhino/MPL_1.1.txt | 470 -- rsc/scripts/jsdoc/rhino/crypto.js | 1 - rsc/scripts/jsdoc/rhino/events.js | 200 - rsc/scripts/jsdoc/rhino/fs.js | 176 - rsc/scripts/jsdoc/rhino/js.jar | Bin 1111429 -> 0 bytes rsc/scripts/jsdoc/rhino/jsdoc.js | 9 - rsc/scripts/jsdoc/rhino/jsdoc/util/include.js | 7 - rsc/scripts/jsdoc/rhino/os.js | 18 - rsc/scripts/jsdoc/rhino/path.js | 399 -- rsc/scripts/jsdoc/rhino/querystring.js | 122 - rsc/scripts/jsdoc/rhino/rhino-shim.js | 123 - rsc/scripts/jsdoc/rhino/util.js | 561 -- rsc/scripts/jsdoc/templates/README.md | 20 - rsc/scripts/jsdoc/templates/default/README.md | 1 - .../jsdoc/templates/default/publish.js | 559 -- .../default/static/scripts/linenumber.js | 17 - .../scripts/prettify/Apache-License-2.0.txt | 202 - .../static/scripts/prettify/lang-css.js | 2 - .../static/scripts/prettify/prettify.js | 28 - .../default/static/styles/jsdoc-default.css | 283 - .../default/static/styles/prettify-jsdoc.css | 111 - .../static/styles/prettify-tomorrow.css | 132 - .../templates/default/tmpl/container.tmpl | 154 - .../jsdoc/templates/default/tmpl/details.tmpl | 98 - .../jsdoc/templates/default/tmpl/example.tmpl | 2 - .../templates/default/tmpl/examples.tmpl | 11 - .../templates/default/tmpl/exceptions.tmpl | 30 - .../jsdoc/templates/default/tmpl/layout.tmpl | 38 - .../templates/default/tmpl/mainpage.tmpl | 14 - .../jsdoc/templates/default/tmpl/members.tmpl | 34 - .../jsdoc/templates/default/tmpl/method.tmpl | 90 - .../jsdoc/templates/default/tmpl/params.tmpl | 112 - .../templates/default/tmpl/properties.tmpl | 107 - .../jsdoc/templates/default/tmpl/returns.tmpl | 19 - .../jsdoc/templates/default/tmpl/source.tmpl | 8 - .../templates/default/tmpl/tutorial.tmpl | 19 - .../jsdoc/templates/default/tmpl/type.tmpl | 7 - rsc/scripts/jsdoc/templates/haruki/README.md | 39 - rsc/scripts/jsdoc/templates/haruki/publish.js | 220 - rsc/scripts/jsdoc/test/README.md | 45 - rsc/scripts/jsdoc/test/async-callback.js | 57 - .../jsdoc/test/fixtures/abstracttag.js | 17 - rsc/scripts/jsdoc/test/fixtures/accesstag.js | 29 - rsc/scripts/jsdoc/test/fixtures/alias.js | 13 - rsc/scripts/jsdoc/test/fixtures/alias2.js | 10 - rsc/scripts/jsdoc/test/fixtures/alias3.js | 12 - .../jsdoc/test/fixtures/aliasglobal.js | 7 - .../jsdoc/test/fixtures/aliasglobal2.js | 18 - .../jsdoc/test/fixtures/aliasresolve.js | 19 - .../jsdoc/test/fixtures/aliasresolve2.js | 19 - rsc/scripts/jsdoc/test/fixtures/also.js | 46 - .../jsdoc/test/fixtures/augmentstag.js | 53 - .../jsdoc/test/fixtures/augmentstag2.js | 6 - .../jsdoc/test/fixtures/augmentstag3.js | 18 - rsc/scripts/jsdoc/test/fixtures/authortag.js | 10 - rsc/scripts/jsdoc/test/fixtures/borrowstag.js | 14 - .../jsdoc/test/fixtures/borrowstag2.js | 21 - .../jsdoc/test/fixtures/callbacktag.js | 21 - .../jsdoc/test/fixtures/classdesctag.js | 7 - rsc/scripts/jsdoc/test/fixtures/classtag.js | 12 - .../jsdoc/test/fixtures/constanttag.js | 6 - .../jsdoc/test/fixtures/constructortag.js | 15 - .../jsdoc/test/fixtures/constructstag.js | 19 - .../jsdoc/test/fixtures/constructstag2.js | 16 - .../jsdoc/test/fixtures/constructstag3.js | 26 - .../jsdoc/test/fixtures/constructstag4.js | 24 - .../jsdoc/test/fixtures/constructstag5.js | 14 - .../jsdoc/test/fixtures/copyrighttag.js | 6 - rsc/scripts/jsdoc/test/fixtures/defaulttag.js | 34 - .../jsdoc/test/fixtures/deprecatedtag.js | 11 - .../jsdoc/test/fixtures/descriptiontag.js | 7 - .../jsdoc/test/fixtures/destructuring.js | 5 - rsc/scripts/jsdoc/test/fixtures/doclet.js | 23 - rsc/scripts/jsdoc/test/fixtures/enumtag.js | 11 - .../jsdoc/test/fixtures/eventfirestag.js | 30 - rsc/scripts/jsdoc/test/fixtures/exampletag.js | 14 - .../jsdoc/test/fixtures/exceptiontag.js | 20 - rsc/scripts/jsdoc/test/fixtures/exports.js | 15 - rsc/scripts/jsdoc/test/fixtures/exportstag.js | 20 - .../jsdoc/test/fixtures/exportstag2.js | 18 - .../jsdoc/test/fixtures/exportstag3.js | 22 - .../jsdoc/test/fixtures/exportstag4.js | 12 - rsc/scripts/jsdoc/test/fixtures/externals.js | 24 - rsc/scripts/jsdoc/test/fixtures/externals2.js | 11 - rsc/scripts/jsdoc/test/fixtures/file.js | 7 - .../jsdoc/test/fixtures/functiontag.js | 7 - rsc/scripts/jsdoc/test/fixtures/getset.js | 37 - rsc/scripts/jsdoc/test/fixtures/globaltag.js | 16 - rsc/scripts/jsdoc/test/fixtures/ignoretag.js | 6 - rsc/scripts/jsdoc/test/fixtures/ignoretag2.js | 6 - rsc/scripts/jsdoc/test/fixtures/include.js | 3 - .../jsdoc/test/fixtures/inlinecomment.js | 2 - rsc/scripts/jsdoc/test/fixtures/inner.js | 7 - rsc/scripts/jsdoc/test/fixtures/innerscope.js | 18 - .../jsdoc/test/fixtures/innerscope2.js | 19 - .../jsdoc/test/fixtures/jshint/badfile.js | 3 - .../jsdoc/test/fixtures/jshint/goodfile.js | 1 - .../jsdoc/test/fixtures/jslangnames.js | 24 - rsc/scripts/jsdoc/test/fixtures/kindtag.js | 2 - rsc/scripts/jsdoc/test/fixtures/lends.js | 16 - rsc/scripts/jsdoc/test/fixtures/lends2.js | 18 - rsc/scripts/jsdoc/test/fixtures/lends3.js | 18 - .../jsdoc/test/fixtures/lendsglobal.js | 14 - rsc/scripts/jsdoc/test/fixtures/licensetag.js | 2 - rsc/scripts/jsdoc/test/fixtures/linktag.js | 15 - rsc/scripts/jsdoc/test/fixtures/listenstag.js | 34 - .../jsdoc/test/fixtures/markdowntest.md | 10 - .../jsdoc/test/fixtures/memberoftag.js | 11 - .../jsdoc/test/fixtures/memberoftag2.js | 10 - .../jsdoc/test/fixtures/memberoftag3.js | 19 - .../jsdoc/test/fixtures/memberoftag4.js | 16 - .../jsdoc/test/fixtures/memberoftagforced.js | 44 - rsc/scripts/jsdoc/test/fixtures/membertag.js | 5 - rsc/scripts/jsdoc/test/fixtures/mixintag.js | 27 - .../jsdoc/test/fixtures/moduleinner.js | 28 - .../test/fixtures/moduleisconstructor.js | 17 - .../jsdoc/test/fixtures/moduleisfunction.js | 10 - .../jsdoc/test/fixtures/modules/data/mod-1.js | 5 - .../jsdoc/test/fixtures/modules/data/mod-2.js | 5 - .../jsdoc/test/fixtures/modules/data/mod-3.js | 21 - rsc/scripts/jsdoc/test/fixtures/moduletag.js | 11 - rsc/scripts/jsdoc/test/fixtures/moduletag2.js | 9 - rsc/scripts/jsdoc/test/fixtures/moduletag3.js | 20 - .../jsdoc/test/fixtures/namedFuncStatement.js | 7 - .../test/fixtures/namedFuncStatement2.js | 7 - .../test/fixtures/namedFuncStatement3.js | 9 - .../jsdoc/test/fixtures/namespacetag.js | 5 - rsc/scripts/jsdoc/test/fixtures/objectlit.js | 8 - rsc/scripts/jsdoc/test/fixtures/objectlit2.js | 8 - .../jsdoc/test/fixtures/objectpropertykeys.js | 22 - rsc/scripts/jsdoc/test/fixtures/paramtag.js | 47 - rsc/scripts/jsdoc/test/fixtures/plugins.js | 10 - rsc/scripts/jsdoc/test/fixtures/privatetag.js | 11 - rsc/scripts/jsdoc/test/fixtures/projecttag.js | 9 - .../jsdoc/test/fixtures/propertytag.js | 13 - rsc/scripts/jsdoc/test/fixtures/quotename.js | 19 - rsc/scripts/jsdoc/test/fixtures/quotename2.js | 10 - .../jsdoc/test/fixtures/readonlytag.js | 10 - .../jsdoc/test/fixtures/requirestag.js | 12 - rsc/scripts/jsdoc/test/fixtures/returnstag.js | 11 - rsc/scripts/jsdoc/test/fixtures/scopetags.js | 10 - rsc/scripts/jsdoc/test/fixtures/seetag.js | 11 - rsc/scripts/jsdoc/test/fixtures/sincetag.js | 6 - .../jsdoc/test/fixtures/specialnames.js | 2 - .../jsdoc/test/fixtures/src/_dir2/four.js | 0 .../jsdoc/test/fixtures/src/_ignored.js | 0 .../jsdoc/test/fixtures/src/dir1/three.js | 0 .../jsdoc/test/fixtures/src/ignored.txt | 0 rsc/scripts/jsdoc/test/fixtures/src/one.js | 0 rsc/scripts/jsdoc/test/fixtures/src/two.js | 0 .../jsdoc/test/fixtures/starbangstar.js | 12 - rsc/scripts/jsdoc/test/fixtures/summarytag.js | 3 - .../jsdoc/test/fixtures/testPlugin1.js | 39 - .../jsdoc/test/fixtures/testPlugin2.js | 29 - .../jsdoc/test/fixtures/this-and-objectlit.js | 12 - rsc/scripts/jsdoc/test/fixtures/this.js | 10 - rsc/scripts/jsdoc/test/fixtures/this2.js | 15 - rsc/scripts/jsdoc/test/fixtures/this3.js | 5 - rsc/scripts/jsdoc/test/fixtures/thistag.js | 10 - rsc/scripts/jsdoc/test/fixtures/todotag.js | 6 - .../jsdoc/test/fixtures/tutorialtag.js | 5 - rsc/scripts/jsdoc/test/fixtures/typedeftag.js | 11 - rsc/scripts/jsdoc/test/fixtures/typekind.js | 17 - rsc/scripts/jsdoc/test/fixtures/typetag.js | 10 - .../jsdoc/test/fixtures/undocumentedtag.js | 3 - rsc/scripts/jsdoc/test/fixtures/utf8.js | 6 - rsc/scripts/jsdoc/test/fixtures/var.js | 10 - rsc/scripts/jsdoc/test/fixtures/variations.js | 26 - .../jsdoc/test/fixtures/variations2.js | 36 - .../jsdoc/test/fixtures/variations3.js | 15 - rsc/scripts/jsdoc/test/fixtures/versiontag.js | 6 - rsc/scripts/jsdoc/test/fixtures/virtual.js | 3 - rsc/scripts/jsdoc/test/jasmine-jsdoc.js | 142 - rsc/scripts/jsdoc/test/lib/jasmine.js | 2547 --------- rsc/scripts/jsdoc/test/reporter.js | 299 - rsc/scripts/jsdoc/test/runner.js | 57 - rsc/scripts/jsdoc/test/spec-collection.js | 55 - .../jsdoc/test/specs/documentation/alias.js | 67 - .../jsdoc/test/specs/documentation/also.js | 47 - .../test/specs/documentation/callback.js | 27 - .../jsdoc/test/specs/documentation/exports.js | 11 - .../jsdoc/test/specs/documentation/getset.js | 23 - .../test/specs/documentation/inlinecomment.js | 12 - .../jsdoc/test/specs/documentation/inner.js | 24 - .../test/specs/documentation/innerscope.js | 40 - .../jsdoc/test/specs/documentation/lends.js | 71 - .../test/specs/documentation/moduleinner.js | 13 - .../documentation/moduleisconstructor.js | 5 - .../specs/documentation/moduleisfunction.js | 23 - .../jsdoc/test/specs/documentation/modules.js | 23 - .../specs/documentation/namedFuncStatement.js | 43 - .../test/specs/documentation/objectlit.js | 43 - .../specs/documentation/objectpropertykeys.js | 6 - .../test/specs/documentation/quotename.js | 23 - .../test/specs/documentation/specialnames.js | 10 - .../test/specs/documentation/starbangstar.js | 13 - .../jsdoc/test/specs/documentation/this.js | 102 - .../jsdoc/test/specs/documentation/var.js | 58 - .../test/specs/documentation/variations.js | 38 - .../jsdoc/test/specs/documentation/virtual.js | 15 - rsc/scripts/jsdoc/test/specs/jsdoc/augment.js | 4 - rsc/scripts/jsdoc/test/specs/jsdoc/borrow.js | 3 - rsc/scripts/jsdoc/test/specs/jsdoc/config.js | 47 - rsc/scripts/jsdoc/test/specs/jsdoc/doclet.js | 16 - rsc/scripts/jsdoc/test/specs/jsdoc/name.js | 285 - .../jsdoc/test/specs/jsdoc/opts/argparser.js | 32 - .../jsdoc/test/specs/jsdoc/opts/args.js | 259 - rsc/scripts/jsdoc/test/specs/jsdoc/path.js | 95 - rsc/scripts/jsdoc/test/specs/jsdoc/plugins.js | 20 - rsc/scripts/jsdoc/test/specs/jsdoc/readme.js | 14 - .../jsdoc/test/specs/jsdoc/src/filter.js | 20 - .../jsdoc/test/specs/jsdoc/src/handlers.js | 55 - .../jsdoc/test/specs/jsdoc/src/parser.js | 123 - .../jsdoc/test/specs/jsdoc/src/scanner.js | 21 - rsc/scripts/jsdoc/test/specs/jsdoc/tag.js | 162 - .../jsdoc/test/specs/jsdoc/tag/dictionary.js | 98 - .../specs/jsdoc/tag/dictionary/definitions.js | 15 - .../jsdoc/test/specs/jsdoc/tag/inline.js | 211 - .../jsdoc/test/specs/jsdoc/tag/type.js | 247 - .../jsdoc/test/specs/jsdoc/tag/validator.js | 96 - .../jsdoc/test/specs/jsdoc/tutorial.js | 226 - .../test/specs/jsdoc/tutorial/resolver.js | 231 - .../jsdoc/test/specs/jsdoc/util/doop.js | 73 - .../jsdoc/test/specs/jsdoc/util/dumper.js | 103 - .../jsdoc/test/specs/jsdoc/util/error.js | 53 - .../jsdoc/test/specs/jsdoc/util/include.js | 36 - .../jsdoc/test/specs/jsdoc/util/markdown.js | 96 - .../test/specs/jsdoc/util/templateHelper.js | 1353 ----- rsc/scripts/jsdoc/test/specs/jsdoc/util/vm.js | 66 - .../jsdoc/test/specs/jshint/jshint-clean.js | 72 - .../jsdoc/test/specs/plugins/plugins.js | 55 - rsc/scripts/jsdoc/test/specs/rhino/fs.js | 4 - rsc/scripts/jsdoc/test/specs/rhino/os.js | 4 - rsc/scripts/jsdoc/test/specs/rhino/path.js | 35 - .../jsdoc/test/specs/tags/abstracttag.js | 20 - .../jsdoc/test/specs/tags/accesstag.js | 24 - rsc/scripts/jsdoc/test/specs/tags/aliastag.js | 11 - .../jsdoc/test/specs/tags/augmentstag.js | 99 - .../jsdoc/test/specs/tags/authortag.js | 18 - .../jsdoc/test/specs/tags/borrowstag.js | 24 - .../jsdoc/test/specs/tags/classdesctag.js | 8 - rsc/scripts/jsdoc/test/specs/tags/classtag.js | 14 - .../jsdoc/test/specs/tags/constanttag.js | 28 - .../jsdoc/test/specs/tags/constructortag.js | 13 - .../jsdoc/test/specs/tags/constructstag.js | 54 - .../jsdoc/test/specs/tags/copyrighttag.js | 8 - .../jsdoc/test/specs/tags/defaulttag.js | 39 - .../jsdoc/test/specs/tags/deprecatedtag.js | 14 - .../jsdoc/test/specs/tags/descriptiontag.js | 15 - rsc/scripts/jsdoc/test/specs/tags/enumtag.js | 31 - .../jsdoc/test/specs/tags/eventfirestag.js | 30 - .../jsdoc/test/specs/tags/exampletag.js | 22 - .../jsdoc/test/specs/tags/exceptiontag.js | 17 - .../jsdoc/test/specs/tags/exportstag.js | 89 - .../jsdoc/test/specs/tags/functiontag.js | 18 - .../jsdoc/test/specs/tags/globaltag.js | 24 - .../jsdoc/test/specs/tags/ignoretag.js | 18 - rsc/scripts/jsdoc/test/specs/tags/kindtag.js | 8 - rsc/scripts/jsdoc/test/specs/tags/lendstag.js | 16 - .../jsdoc/test/specs/tags/licensetag.js | 8 - .../jsdoc/test/specs/tags/listenstag.js | 15 - .../jsdoc/test/specs/tags/memberoftag.js | 83 - .../jsdoc/test/specs/tags/membertag.js | 25 - rsc/scripts/jsdoc/test/specs/tags/mixestag.js | 19 - rsc/scripts/jsdoc/test/specs/tags/mixintag.js | 13 - .../jsdoc/test/specs/tags/moduletag.js | 41 - .../jsdoc/test/specs/tags/namespacetag.js | 25 - .../jsdoc/test/specs/tags/overviewtag.js | 18 - rsc/scripts/jsdoc/test/specs/tags/paramtag.js | 80 - .../jsdoc/test/specs/tags/privatetag.js | 9 - .../jsdoc/test/specs/tags/propertytag.js | 15 - .../jsdoc/test/specs/tags/readonlytag.js | 9 - .../jsdoc/test/specs/tags/requirestag.js | 14 - .../jsdoc/test/specs/tags/returnstag.js | 18 - .../jsdoc/test/specs/tags/scopetags.js | 31 - rsc/scripts/jsdoc/test/specs/tags/seetag.js | 13 - rsc/scripts/jsdoc/test/specs/tags/sincetag.js | 8 - .../jsdoc/test/specs/tags/summarytag.js | 8 - rsc/scripts/jsdoc/test/specs/tags/thistag.js | 16 - rsc/scripts/jsdoc/test/specs/tags/todotag.js | 13 - .../jsdoc/test/specs/tags/tutorialtag.js | 13 - .../jsdoc/test/specs/tags/typedeftag.js | 34 - rsc/scripts/jsdoc/test/specs/tags/typekind.js | 15 - rsc/scripts/jsdoc/test/specs/tags/typetag.js | 15 - .../jsdoc/test/specs/tags/undocumentedtag.js | 13 - .../jsdoc/test/specs/tags/versiontag.js | 8 - rsc/scripts/jsdoc/test/tutorials/build.sh | 2 - .../test/tutorials/duplicateDefined/asdf.html | 1 - .../test/tutorials/duplicateDefined/asdf.json | 1 - .../tutorials/duplicateDefined/index.json | 5 - .../test/tutorials/incomplete/parent.html | 3 - .../test/tutorials/incomplete/parent.json | 1 - rsc/scripts/jsdoc/test/tutorials/src/x.js | 8 - .../test/tutorials/tutorials/constructor.md | 1 - .../test/tutorials/tutorials/multiple.json | 12 - .../jsdoc/test/tutorials/tutorials/test.html | 3 - .../jsdoc/test/tutorials/tutorials/test.json | 1 - .../test/tutorials/tutorials/test2.markdown | 1 - .../jsdoc/test/tutorials/tutorials/test3.htm | 3 - .../jsdoc/test/tutorials/tutorials/test4.md | 1 - .../jsdoc/test/tutorials/tutorials/test5.txt | 1 - .../jsdoc/test/tutorials/tutorials/test6.xml | 1 - src/application/config/config.php | 36 +- src/application/controllers/appointments.php | 2 +- src/application/language/chinese/index.html | 10 + .../language/chinese/migration_lang.php | 13 + .../language/chinese/translations_lang.php | 272 + src/application/language/dutch/index.html | 10 + .../language/dutch/migration_lang.php | 13 + .../language/dutch/translations_lang.php | 273 + .../language/english/translations_lang.php | 2 +- src/application/language/french/index.html | 10 + .../language/french/migration_lang.php | 13 + .../language/french/translations_lang.php | 272 + src/application/language/japanese/index.html | 10 + .../language/japanese/migration_lang.php | 13 + .../language/japanese/translations_lang.php | 272 + src/application/language/polish/index.html | 10 + .../language/polish/migration_lang.php | 13 + .../language/polish/translations_lang.php | 264 + src/application/language/spanish/index.html | 10 + .../language/spanish/migration_lang.php | 13 + .../language/spanish/translations_lang.php | 273 + src/application/views/appointments/book.php | 2 +- .../views/appointments/book_success.php | 4 +- src/application/views/appointments/cancel.php | 4 +- .../views/appointments/message.php | 2 +- src/application/views/backend/header.php | 6 +- src/application/views/backend/settings.php | 10 +- src/application/views/general/error404.php | 2 +- .../views/general/installation.php | 6 +- .../views/user/forgot_password.php | 2 +- src/application/views/user/login.php | 2 +- src/application/views/user/logout.php | 2 +- src/application/views/user/no_privileges.php | 2 +- src/assets/css/backend.css | 6 +- src/assets/css/general.css | 2 +- src/assets/css/libs/bootstrap/bootstrap.css | 4 +- src/assets/{images => img}/break.jpg | Bin src/assets/{images => img}/custom.jpg | Bin src/assets/{images => img}/error.png | Bin src/assets/{images => img}/favicon.ico | Bin .../glyphicons-halflings-white.png | Bin .../{images => img}/glyphicons-halflings.png | Bin .../{images => img}/installation-banner.png | Bin src/assets/{images => img}/loading.gif | Bin src/assets/{images => img}/logo.png | Bin src/assets/{images => img}/success.png | Bin src/assets/{images => img}/unavailable.jpg | Bin src/{read-me.txt => ea-license.txt} | 22 +- src/index.php | 1 - src/release-notes.txt | 44 + src/system/core/Benchmark.php | 2 +- src/system/core/CodeIgniter.php | 4 +- src/system/core/Common.php | 11 +- src/system/core/Config.php | 4 +- src/system/core/Controller.php | 4 +- src/system/core/Exceptions.php | 2 +- src/system/core/Hooks.php | 2 +- src/system/core/Input.php | 18 +- src/system/core/Lang.php | 2 +- src/system/core/Loader.php | 2 +- src/system/core/Model.php | 2 +- src/system/core/Output.php | 2 +- src/system/core/Router.php | 2 +- src/system/core/Security.php | 10 +- src/system/core/URI.php | 2 +- src/system/core/Utf8.php | 2 +- src/system/database/DB.php | 2 +- src/system/database/DB_active_rec.php | 2 +- src/system/database/DB_cache.php | 2 +- src/system/database/DB_driver.php | 2 +- src/system/database/DB_forge.php | 2 +- src/system/database/DB_result.php | 2 +- src/system/database/DB_utility.php | 4 +- .../database/drivers/cubrid/cubrid_driver.php | 2 +- .../database/drivers/cubrid/cubrid_forge.php | 2 +- .../database/drivers/cubrid/cubrid_result.php | 2 +- .../drivers/cubrid/cubrid_utility.php | 2 +- .../database/drivers/mssql/mssql_driver.php | 2 +- .../database/drivers/mssql/mssql_forge.php | 2 +- .../database/drivers/mssql/mssql_result.php | 2 +- .../database/drivers/mssql/mssql_utility.php | 2 +- .../database/drivers/mysql/mysql_driver.php | 2 +- .../database/drivers/mysql/mysql_forge.php | 2 +- .../database/drivers/mysql/mysql_result.php | 2 +- .../database/drivers/mysql/mysql_utility.php | 2 +- .../database/drivers/mysqli/mysqli_driver.php | 18 +- .../database/drivers/mysqli/mysqli_forge.php | 2 +- .../database/drivers/mysqli/mysqli_result.php | 2 +- .../drivers/mysqli/mysqli_utility.php | 2 +- .../database/drivers/oci8/oci8_driver.php | 2 +- .../database/drivers/oci8/oci8_forge.php | 2 +- .../database/drivers/oci8/oci8_result.php | 6 +- .../database/drivers/oci8/oci8_utility.php | 2 +- .../database/drivers/odbc/odbc_driver.php | 2 +- .../database/drivers/odbc/odbc_forge.php | 2 +- .../database/drivers/odbc/odbc_result.php | 2 +- .../database/drivers/odbc/odbc_utility.php | 2 +- .../database/drivers/pdo/pdo_driver.php | 15 +- src/system/database/drivers/pdo/pdo_forge.php | 2 +- .../database/drivers/pdo/pdo_result.php | 2 +- .../database/drivers/pdo/pdo_utility.php | 2 +- .../drivers/postgre/postgre_driver.php | 2 +- .../drivers/postgre/postgre_forge.php | 2 +- .../drivers/postgre/postgre_result.php | 2 +- .../drivers/postgre/postgre_utility.php | 2 +- .../database/drivers/sqlite/sqlite_driver.php | 2 +- .../database/drivers/sqlite/sqlite_forge.php | 2 +- .../database/drivers/sqlite/sqlite_result.php | 2 +- .../drivers/sqlite/sqlite_utility.php | 2 +- .../database/drivers/sqlsrv/sqlsrv_driver.php | 42 +- .../database/drivers/sqlsrv/sqlsrv_forge.php | 23 +- .../database/drivers/sqlsrv/sqlsrv_result.php | 2 +- .../drivers/sqlsrv/sqlsrv_utility.php | 2 +- src/system/helpers/array_helper.php | 2 +- src/system/helpers/captcha_helper.php | 2 +- src/system/helpers/cookie_helper.php | 2 +- src/system/helpers/date_helper.php | 2 +- src/system/helpers/directory_helper.php | 2 +- src/system/helpers/download_helper.php | 7 +- src/system/helpers/email_helper.php | 2 +- src/system/helpers/file_helper.php | 4 +- src/system/helpers/form_helper.php | 2 +- src/system/helpers/html_helper.php | 2 +- src/system/helpers/inflector_helper.php | 2 +- src/system/helpers/language_helper.php | 2 +- src/system/helpers/number_helper.php | 2 +- src/system/helpers/path_helper.php | 2 +- src/system/helpers/security_helper.php | 2 +- src/system/helpers/smiley_helper.php | 2 +- src/system/helpers/string_helper.php | 2 +- src/system/helpers/text_helper.php | 11 +- src/system/helpers/typography_helper.php | 2 +- src/system/helpers/url_helper.php | 2 +- src/system/helpers/xml_helper.php | 2 +- src/system/language/english/ftp_lang.php | 2 +- src/system/libraries/Cache/Cache.php | 36 +- .../libraries/Cache/drivers/Cache_apc.php | 38 +- .../libraries/Cache/drivers/Cache_dummy.php | 7 +- .../libraries/Cache/drivers/Cache_file.php | 38 +- .../Cache/drivers/Cache_memcached.php | 40 +- src/system/libraries/Cache/drivers/index.html | 10 + src/system/libraries/Cache/index.html | 10 + src/system/libraries/Calendar.php | 2 +- src/system/libraries/Cart.php | 3 +- src/system/libraries/Driver.php | 8 +- src/system/libraries/Email.php | 10 +- src/system/libraries/Encrypt.php | 79 +- src/system/libraries/Form_validation.php | 2 +- src/system/libraries/Ftp.php | 3 +- src/system/libraries/Image_lib.php | 2 +- src/system/libraries/Javascript.php | 2 +- src/system/libraries/Log.php | 2 +- src/system/libraries/Migration.php | 3 +- src/system/libraries/Pagination.php | 2 +- src/system/libraries/Parser.php | 2 +- src/system/libraries/Profiler.php | 2 +- src/system/libraries/Session.php | 69 +- src/system/libraries/Sha1.php | 2 +- src/system/libraries/Table.php | 2 +- src/system/libraries/Trackback.php | 2 +- src/system/libraries/Typography.php | 2 +- src/system/libraries/Unit_test.php | 2 +- src/system/libraries/Upload.php | 2 +- src/system/libraries/User_agent.php | 2 +- src/system/libraries/Xmlrpc.php | 2 +- src/system/libraries/Xmlrpcs.php | 2 +- src/system/libraries/Zip.php | 2 +- src/system/libraries/javascript/Jquery.php | 14 +- src/system/libraries/javascript/index.html | 10 + 702 files changed, 2564 insertions(+), 45851 deletions(-) create mode 100644 .gitignore delete mode 100644 build.bat delete mode 100644 db/easy_appointments.sql delete mode 100644 doc/E!A UML.zargo delete mode 100644 doc/code/generate-docs.bat delete mode 100644 doc/thesis-topic.pdf delete mode 100644 doc/thesis/compile.bat delete mode 100644 doc/thesis/compile.sh delete mode 100644 doc/thesis/diagrams/ea-ad-book-appointment.io delete mode 100644 doc/thesis/diagrams/ea-ad-install-application.io delete mode 100644 doc/thesis/diagrams/ea-ad-provider-available-hours.io delete mode 100644 doc/thesis/diagrams/ea-ad-sync-appointments.io delete mode 100644 doc/thesis/diagrams/ea-cd-backend-settings.io delete mode 100644 doc/thesis/diagrams/ea-cd-backend-users.io delete mode 100644 doc/thesis/diagrams/ea-domain-model.io delete mode 100644 doc/thesis/diagrams/ea-er.io delete mode 100644 doc/thesis/diagrams/ea-gantt-analytic.gantter delete mode 100644 doc/thesis/diagrams/ea-gantt-simple.ods delete mode 100644 doc/thesis/diagrams/ea-sd-save-appointment.io delete mode 100644 doc/thesis/diagrams/ea-sd-sync-appointment.io delete mode 100644 doc/thesis/diagrams/ea-system-architecture.io delete mode 100644 doc/thesis/images/ad-book-appointment.png delete mode 100644 doc/thesis/images/ad-install-application.png delete mode 100644 doc/thesis/images/ad-provider-available-hours.png delete mode 100644 doc/thesis/images/ad-sync-appointments.png delete mode 100644 doc/thesis/images/backend-calendar.jpg delete mode 100644 doc/thesis/images/backend-providers.jpg delete mode 100644 doc/thesis/images/backend-settings.jpg delete mode 100644 doc/thesis/images/book-appointment.jpg delete mode 100644 doc/thesis/images/cd-backend-settings.png delete mode 100644 doc/thesis/images/cd-backend-users.png delete mode 100644 doc/thesis/images/domain-model.png delete mode 100644 doc/thesis/images/ea-unit-testing.png delete mode 100644 doc/thesis/images/er.png delete mode 100644 doc/thesis/images/gantt-simple.jpg delete mode 100644 doc/thesis/images/gantt-simple.png delete mode 100644 doc/thesis/images/google-calendar-api.png delete mode 100644 doc/thesis/images/mvc.png delete mode 100644 doc/thesis/images/sd-save-appointment.png delete mode 100644 doc/thesis/images/sd-sync-appointment.png delete mode 100644 doc/thesis/images/system-architecture.png delete mode 100644 doc/thesis/includes/conclusions.tex delete mode 100644 doc/thesis/includes/external-tools.tex delete mode 100644 doc/thesis/includes/google-calendar-api.tex delete mode 100644 doc/thesis/includes/headers.tex delete mode 100644 doc/thesis/includes/implementation.tex delete mode 100644 doc/thesis/includes/introduction.tex delete mode 100644 doc/thesis/includes/unit-testing.tex delete mode 100644 doc/thesis/includes/usage-scenarios.tex delete mode 100644 doc/thesis/includes/use-cases.tex delete mode 100644 doc/thesis/presentation.odp delete mode 100644 doc/thesis/presentation.pdf delete mode 100644 doc/thesis/snippets/find_record_id.php delete mode 100644 doc/thesis/snippets/google_sync_algorithm.php delete mode 100644 doc/thesis/snippets/provider_appointment_hours.php delete mode 100644 doc/thesis/snippets/provider_available_periods.php delete mode 100644 doc/thesis/snippets/unit_test_automation.php delete mode 100644 doc/thesis/snippets/unit_test_get_value_example.php delete mode 100644 doc/thesis/snippets/unit_test_insert_example.php delete mode 100644 doc/thesis/thesis.bib delete mode 100644 doc/thesis/thesis.pdf delete mode 100644 doc/thesis/thesis.sty delete mode 100644 doc/thesis/thesis.tex delete mode 100644 release-notes.txt create mode 100644 rsc/code-doc.sh create mode 100644 rsc/db/sample-data.sql create mode 100644 rsc/db/structure.sql rename rsc/{design => gfx}/logo/ea-logo.png (100%) rename rsc/{design => gfx}/logo/ea-logo.psd (100%) rename rsc/{design => gfx}/logo/gplus-ea-logo.png (100%) rename rsc/{design => gfx}/logo/installation-banner.png (100%) rename rsc/{design => gfx}/logo/installation-banner.psd (100%) rename rsc/{design => gfx}/misc/google-code-banner.png (100%) rename rsc/{design => gfx}/misc/google-code-banner.psd (100%) delete mode 100644 rsc/misc/code/CodeIgniter_2.1.3.zip delete mode 100644 rsc/misc/ebooks/RUP pt1.pdf delete mode 100644 rsc/misc/ebooks/RUP pt2.pdf delete mode 100644 rsc/misc/ebooks/RUP pt3.pdf delete mode 100644 rsc/misc/ebooks/listings.pdf delete mode 100644 rsc/misc/fonts/open sans/Apache License Version 2.txt delete mode 100644 rsc/misc/fonts/open sans/OpenSans-Bold.ttf delete mode 100644 rsc/misc/fonts/open sans/OpenSans-BoldItalic.ttf delete mode 100644 rsc/misc/fonts/open sans/OpenSans-ExtraBold.ttf delete mode 100644 rsc/misc/fonts/open sans/OpenSans-ExtraBoldItalic.ttf delete mode 100644 rsc/misc/fonts/open sans/OpenSans-Italic.ttf delete mode 100644 rsc/misc/fonts/open sans/OpenSans-Light.ttf delete mode 100644 rsc/misc/fonts/open sans/OpenSans-LightItalic.ttf delete mode 100644 rsc/misc/fonts/open sans/OpenSans-Regular.ttf delete mode 100644 rsc/misc/fonts/open sans/OpenSans-Semibold.ttf delete mode 100644 rsc/misc/fonts/open sans/OpenSans-SemiboldItalic.ttf create mode 100644 rsc/package.sh delete mode 100644 rsc/scripts/jsdoc/Jake/lib/mustache.js delete mode 100644 rsc/scripts/jsdoc/Jake/templates/package.json.tmpl delete mode 100644 rsc/scripts/jsdoc/Jakefile.js delete mode 100644 rsc/scripts/jsdoc/LICENSE.md delete mode 100644 rsc/scripts/jsdoc/README.md delete mode 100644 rsc/scripts/jsdoc/apache-license-2.0.txt delete mode 100644 rsc/scripts/jsdoc/conf.json delete mode 100644 rsc/scripts/jsdoc/docs/app.html delete mode 100644 rsc/scripts/jsdoc/docs/bookAppointment.html delete mode 100644 rsc/scripts/jsdoc/docs/book_appointment.js.html delete mode 100644 rsc/scripts/jsdoc/docs/env.html delete mode 100644 rsc/scripts/jsdoc/docs/global.html delete mode 100644 rsc/scripts/jsdoc/docs/index.html delete mode 100644 rsc/scripts/jsdoc/docs/jsdoc.js.html delete mode 100644 rsc/scripts/jsdoc/docs/scripts/linenumber.js delete mode 100644 rsc/scripts/jsdoc/docs/scripts/prettify/Apache-License-2.0.txt delete mode 100644 rsc/scripts/jsdoc/docs/scripts/prettify/lang-css.js delete mode 100644 rsc/scripts/jsdoc/docs/scripts/prettify/prettify.js delete mode 100644 rsc/scripts/jsdoc/docs/styles/jsdoc-default.css delete mode 100644 rsc/scripts/jsdoc/docs/styles/prettify-jsdoc.css delete mode 100644 rsc/scripts/jsdoc/docs/styles/prettify-tomorrow.css delete mode 100644 rsc/scripts/jsdoc/jsdoc delete mode 100644 rsc/scripts/jsdoc/jsdoc.cmd delete mode 100644 rsc/scripts/jsdoc/jsdoc.js delete mode 100644 rsc/scripts/jsdoc/lib/initialize.js delete mode 100644 rsc/scripts/jsdoc/lib/jsdoc/augment.js delete mode 100644 rsc/scripts/jsdoc/lib/jsdoc/borrow.js delete mode 100644 rsc/scripts/jsdoc/lib/jsdoc/config.js delete mode 100644 rsc/scripts/jsdoc/lib/jsdoc/doclet.js delete mode 100644 rsc/scripts/jsdoc/lib/jsdoc/fs.js delete mode 100644 rsc/scripts/jsdoc/lib/jsdoc/name.js delete mode 100644 rsc/scripts/jsdoc/lib/jsdoc/opts/argparser.js delete mode 100644 rsc/scripts/jsdoc/lib/jsdoc/opts/args.js delete mode 100644 rsc/scripts/jsdoc/lib/jsdoc/package.js delete mode 100644 rsc/scripts/jsdoc/lib/jsdoc/path.js delete mode 100644 rsc/scripts/jsdoc/lib/jsdoc/plugins.js delete mode 100644 rsc/scripts/jsdoc/lib/jsdoc/readme.js delete mode 100644 rsc/scripts/jsdoc/lib/jsdoc/schema.js delete mode 100644 rsc/scripts/jsdoc/lib/jsdoc/src/filter.js delete mode 100644 rsc/scripts/jsdoc/lib/jsdoc/src/handlers.js delete mode 100644 rsc/scripts/jsdoc/lib/jsdoc/src/parser.js delete mode 100644 rsc/scripts/jsdoc/lib/jsdoc/src/scanner.js delete mode 100644 rsc/scripts/jsdoc/lib/jsdoc/tag.js delete mode 100644 rsc/scripts/jsdoc/lib/jsdoc/tag/dictionary.js delete mode 100644 rsc/scripts/jsdoc/lib/jsdoc/tag/dictionary/definitions.js delete mode 100644 rsc/scripts/jsdoc/lib/jsdoc/tag/inline.js delete mode 100644 rsc/scripts/jsdoc/lib/jsdoc/tag/type.js delete mode 100644 rsc/scripts/jsdoc/lib/jsdoc/tag/validator.js delete mode 100644 rsc/scripts/jsdoc/lib/jsdoc/template.js delete mode 100644 rsc/scripts/jsdoc/lib/jsdoc/tutorial.js delete mode 100644 rsc/scripts/jsdoc/lib/jsdoc/tutorial/resolver.js delete mode 100644 rsc/scripts/jsdoc/lib/jsdoc/util/doop.js delete mode 100644 rsc/scripts/jsdoc/lib/jsdoc/util/dumper.js delete mode 100644 rsc/scripts/jsdoc/lib/jsdoc/util/error.js delete mode 100644 rsc/scripts/jsdoc/lib/jsdoc/util/global.js delete mode 100644 rsc/scripts/jsdoc/lib/jsdoc/util/include.js delete mode 100644 rsc/scripts/jsdoc/lib/jsdoc/util/markdown.js delete mode 100644 rsc/scripts/jsdoc/lib/jsdoc/util/templateHelper.js delete mode 100644 rsc/scripts/jsdoc/lib/jsdoc/util/vm.js delete mode 100644 rsc/scripts/jsdoc/node_modules/async/LICENSE delete mode 100644 rsc/scripts/jsdoc/node_modules/async/index.js delete mode 100644 rsc/scripts/jsdoc/node_modules/async/lib/async.js delete mode 100644 rsc/scripts/jsdoc/node_modules/async/package.json delete mode 100644 rsc/scripts/jsdoc/node_modules/catharsis/LICENSE delete mode 100644 rsc/scripts/jsdoc/node_modules/catharsis/catharsis.js delete mode 100644 rsc/scripts/jsdoc/node_modules/catharsis/lib/parser.js delete mode 100644 rsc/scripts/jsdoc/node_modules/catharsis/lib/stringify.js delete mode 100644 rsc/scripts/jsdoc/node_modules/catharsis/lib/types.js delete mode 100644 rsc/scripts/jsdoc/node_modules/catharsis/package.json delete mode 100644 rsc/scripts/jsdoc/node_modules/crypto-browserify/index.js delete mode 100644 rsc/scripts/jsdoc/node_modules/crypto-browserify/package.json delete mode 100644 rsc/scripts/jsdoc/node_modules/crypto-browserify/rng.js delete mode 100644 rsc/scripts/jsdoc/node_modules/crypto-browserify/sha.js delete mode 100644 rsc/scripts/jsdoc/node_modules/js2xmlparser/LICENSE.md delete mode 100644 rsc/scripts/jsdoc/node_modules/js2xmlparser/lib/js2xmlparser.js delete mode 100644 rsc/scripts/jsdoc/node_modules/js2xmlparser/package.json delete mode 100644 rsc/scripts/jsdoc/node_modules/jsdoc delete mode 100644 rsc/scripts/jsdoc/node_modules/jshint/LICENSE delete mode 100644 rsc/scripts/jsdoc/node_modules/jshint/package.json delete mode 100644 rsc/scripts/jsdoc/node_modules/jshint/packages/jshint/jshint.js delete mode 100644 rsc/scripts/jsdoc/node_modules/markdown/README.markdown delete mode 100644 rsc/scripts/jsdoc/node_modules/markdown/lib/index.js delete mode 100644 rsc/scripts/jsdoc/node_modules/markdown/lib/markdown.js delete mode 100644 rsc/scripts/jsdoc/node_modules/markdown/package.json delete mode 100644 rsc/scripts/jsdoc/node_modules/marked/LICENSE delete mode 100644 rsc/scripts/jsdoc/node_modules/marked/index.js delete mode 100644 rsc/scripts/jsdoc/node_modules/marked/lib/marked.js delete mode 100644 rsc/scripts/jsdoc/node_modules/marked/package.json delete mode 100644 rsc/scripts/jsdoc/node_modules/taffydb/README.md delete mode 100644 rsc/scripts/jsdoc/node_modules/taffydb/package.json delete mode 100644 rsc/scripts/jsdoc/node_modules/taffydb/taffy-test.html delete mode 100644 rsc/scripts/jsdoc/node_modules/taffydb/taffy.js delete mode 100644 rsc/scripts/jsdoc/node_modules/underscore/LICENSE delete mode 100644 rsc/scripts/jsdoc/node_modules/underscore/package.json delete mode 100644 rsc/scripts/jsdoc/node_modules/underscore/underscore.js delete mode 100644 rsc/scripts/jsdoc/node_modules/wrench/LICENSE delete mode 100644 rsc/scripts/jsdoc/node_modules/wrench/lib/wrench.js delete mode 100644 rsc/scripts/jsdoc/node_modules/wrench/package.json delete mode 100644 rsc/scripts/jsdoc/nodejs/bin/jsdoc delete mode 100644 rsc/scripts/jsdoc/nodejs/jsdoc/fs.js delete mode 100644 rsc/scripts/jsdoc/nodejs/jsdoc/util/include.js delete mode 100644 rsc/scripts/jsdoc/out/app.html delete mode 100644 rsc/scripts/jsdoc/out/env.html delete mode 100644 rsc/scripts/jsdoc/out/functions..html delete mode 100644 rsc/scripts/jsdoc/out/general_functions.js.html delete mode 100644 rsc/scripts/jsdoc/out/global.html delete mode 100644 rsc/scripts/jsdoc/out/index.html delete mode 100644 rsc/scripts/jsdoc/out/jsdoc.js.html delete mode 100644 rsc/scripts/jsdoc/out/scripts/linenumber.js delete mode 100644 rsc/scripts/jsdoc/out/scripts/prettify/Apache-License-2.0.txt delete mode 100644 rsc/scripts/jsdoc/out/scripts/prettify/lang-css.js delete mode 100644 rsc/scripts/jsdoc/out/scripts/prettify/prettify.js delete mode 100644 rsc/scripts/jsdoc/out/styles/jsdoc-default.css delete mode 100644 rsc/scripts/jsdoc/out/styles/prettify-jsdoc.css delete mode 100644 rsc/scripts/jsdoc/out/styles/prettify-tomorrow.css delete mode 100644 rsc/scripts/jsdoc/package.json delete mode 100644 rsc/scripts/jsdoc/plugins/README.md delete mode 100644 rsc/scripts/jsdoc/plugins/commentConvert.js delete mode 100644 rsc/scripts/jsdoc/plugins/commentsOnly.js delete mode 100644 rsc/scripts/jsdoc/plugins/escapeHtml.js delete mode 100644 rsc/scripts/jsdoc/plugins/eventDumper.js delete mode 100644 rsc/scripts/jsdoc/plugins/markdown.js delete mode 100644 rsc/scripts/jsdoc/plugins/markdown.md delete mode 100644 rsc/scripts/jsdoc/plugins/overloadHelper.js delete mode 100644 rsc/scripts/jsdoc/plugins/partial.js delete mode 100644 rsc/scripts/jsdoc/plugins/railsTemplate.js delete mode 100644 rsc/scripts/jsdoc/plugins/shout.js delete mode 100644 rsc/scripts/jsdoc/plugins/sourcetag.js delete mode 100644 rsc/scripts/jsdoc/plugins/test/fixtures/overloadHelper.js delete mode 100644 rsc/scripts/jsdoc/plugins/test/fixtures/railsTemplate.js.erb delete mode 100644 rsc/scripts/jsdoc/plugins/test/fixtures/seetag-markdown.js delete mode 100644 rsc/scripts/jsdoc/plugins/test/specs/commentConvert.js delete mode 100644 rsc/scripts/jsdoc/plugins/test/specs/escapeHtml.js delete mode 100644 rsc/scripts/jsdoc/plugins/test/specs/markdown.js delete mode 100644 rsc/scripts/jsdoc/plugins/test/specs/overloadHelper.js delete mode 100644 rsc/scripts/jsdoc/plugins/test/specs/railsTemplate.js delete mode 100644 rsc/scripts/jsdoc/plugins/test/specs/shout.js delete mode 100644 rsc/scripts/jsdoc/plugins/test/specs/sourcetag.js delete mode 100644 rsc/scripts/jsdoc/plugins/test/specs/verboseOutput.js delete mode 100644 rsc/scripts/jsdoc/plugins/verboseOutput.js delete mode 100644 rsc/scripts/jsdoc/rhino/MPL_1.1.txt delete mode 100644 rsc/scripts/jsdoc/rhino/crypto.js delete mode 100644 rsc/scripts/jsdoc/rhino/events.js delete mode 100644 rsc/scripts/jsdoc/rhino/fs.js delete mode 100644 rsc/scripts/jsdoc/rhino/js.jar delete mode 100644 rsc/scripts/jsdoc/rhino/jsdoc.js delete mode 100644 rsc/scripts/jsdoc/rhino/jsdoc/util/include.js delete mode 100644 rsc/scripts/jsdoc/rhino/os.js delete mode 100644 rsc/scripts/jsdoc/rhino/path.js delete mode 100644 rsc/scripts/jsdoc/rhino/querystring.js delete mode 100644 rsc/scripts/jsdoc/rhino/rhino-shim.js delete mode 100644 rsc/scripts/jsdoc/rhino/util.js delete mode 100644 rsc/scripts/jsdoc/templates/README.md delete mode 100644 rsc/scripts/jsdoc/templates/default/README.md delete mode 100644 rsc/scripts/jsdoc/templates/default/publish.js delete mode 100644 rsc/scripts/jsdoc/templates/default/static/scripts/linenumber.js delete mode 100644 rsc/scripts/jsdoc/templates/default/static/scripts/prettify/Apache-License-2.0.txt delete mode 100644 rsc/scripts/jsdoc/templates/default/static/scripts/prettify/lang-css.js delete mode 100644 rsc/scripts/jsdoc/templates/default/static/scripts/prettify/prettify.js delete mode 100644 rsc/scripts/jsdoc/templates/default/static/styles/jsdoc-default.css delete mode 100644 rsc/scripts/jsdoc/templates/default/static/styles/prettify-jsdoc.css delete mode 100644 rsc/scripts/jsdoc/templates/default/static/styles/prettify-tomorrow.css delete mode 100644 rsc/scripts/jsdoc/templates/default/tmpl/container.tmpl delete mode 100644 rsc/scripts/jsdoc/templates/default/tmpl/details.tmpl delete mode 100644 rsc/scripts/jsdoc/templates/default/tmpl/example.tmpl delete mode 100644 rsc/scripts/jsdoc/templates/default/tmpl/examples.tmpl delete mode 100644 rsc/scripts/jsdoc/templates/default/tmpl/exceptions.tmpl delete mode 100644 rsc/scripts/jsdoc/templates/default/tmpl/layout.tmpl delete mode 100644 rsc/scripts/jsdoc/templates/default/tmpl/mainpage.tmpl delete mode 100644 rsc/scripts/jsdoc/templates/default/tmpl/members.tmpl delete mode 100644 rsc/scripts/jsdoc/templates/default/tmpl/method.tmpl delete mode 100644 rsc/scripts/jsdoc/templates/default/tmpl/params.tmpl delete mode 100644 rsc/scripts/jsdoc/templates/default/tmpl/properties.tmpl delete mode 100644 rsc/scripts/jsdoc/templates/default/tmpl/returns.tmpl delete mode 100644 rsc/scripts/jsdoc/templates/default/tmpl/source.tmpl delete mode 100644 rsc/scripts/jsdoc/templates/default/tmpl/tutorial.tmpl delete mode 100644 rsc/scripts/jsdoc/templates/default/tmpl/type.tmpl delete mode 100644 rsc/scripts/jsdoc/templates/haruki/README.md delete mode 100644 rsc/scripts/jsdoc/templates/haruki/publish.js delete mode 100644 rsc/scripts/jsdoc/test/README.md delete mode 100644 rsc/scripts/jsdoc/test/async-callback.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/abstracttag.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/accesstag.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/alias.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/alias2.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/alias3.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/aliasglobal.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/aliasglobal2.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/aliasresolve.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/aliasresolve2.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/also.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/augmentstag.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/augmentstag2.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/augmentstag3.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/authortag.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/borrowstag.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/borrowstag2.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/callbacktag.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/classdesctag.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/classtag.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/constanttag.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/constructortag.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/constructstag.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/constructstag2.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/constructstag3.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/constructstag4.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/constructstag5.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/copyrighttag.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/defaulttag.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/deprecatedtag.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/descriptiontag.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/destructuring.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/doclet.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/enumtag.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/eventfirestag.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/exampletag.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/exceptiontag.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/exports.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/exportstag.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/exportstag2.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/exportstag3.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/exportstag4.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/externals.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/externals2.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/file.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/functiontag.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/getset.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/globaltag.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/ignoretag.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/ignoretag2.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/include.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/inlinecomment.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/inner.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/innerscope.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/innerscope2.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/jshint/badfile.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/jshint/goodfile.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/jslangnames.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/kindtag.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/lends.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/lends2.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/lends3.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/lendsglobal.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/licensetag.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/linktag.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/listenstag.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/markdowntest.md delete mode 100644 rsc/scripts/jsdoc/test/fixtures/memberoftag.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/memberoftag2.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/memberoftag3.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/memberoftag4.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/memberoftagforced.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/membertag.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/mixintag.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/moduleinner.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/moduleisconstructor.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/moduleisfunction.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/modules/data/mod-1.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/modules/data/mod-2.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/modules/data/mod-3.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/moduletag.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/moduletag2.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/moduletag3.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/namedFuncStatement.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/namedFuncStatement2.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/namedFuncStatement3.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/namespacetag.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/objectlit.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/objectlit2.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/objectpropertykeys.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/paramtag.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/plugins.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/privatetag.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/projecttag.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/propertytag.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/quotename.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/quotename2.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/readonlytag.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/requirestag.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/returnstag.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/scopetags.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/seetag.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/sincetag.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/specialnames.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/src/_dir2/four.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/src/_ignored.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/src/dir1/three.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/src/ignored.txt delete mode 100644 rsc/scripts/jsdoc/test/fixtures/src/one.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/src/two.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/starbangstar.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/summarytag.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/testPlugin1.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/testPlugin2.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/this-and-objectlit.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/this.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/this2.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/this3.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/thistag.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/todotag.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/tutorialtag.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/typedeftag.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/typekind.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/typetag.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/undocumentedtag.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/utf8.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/var.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/variations.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/variations2.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/variations3.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/versiontag.js delete mode 100644 rsc/scripts/jsdoc/test/fixtures/virtual.js delete mode 100644 rsc/scripts/jsdoc/test/jasmine-jsdoc.js delete mode 100644 rsc/scripts/jsdoc/test/lib/jasmine.js delete mode 100644 rsc/scripts/jsdoc/test/reporter.js delete mode 100644 rsc/scripts/jsdoc/test/runner.js delete mode 100644 rsc/scripts/jsdoc/test/spec-collection.js delete mode 100644 rsc/scripts/jsdoc/test/specs/documentation/alias.js delete mode 100644 rsc/scripts/jsdoc/test/specs/documentation/also.js delete mode 100644 rsc/scripts/jsdoc/test/specs/documentation/callback.js delete mode 100644 rsc/scripts/jsdoc/test/specs/documentation/exports.js delete mode 100644 rsc/scripts/jsdoc/test/specs/documentation/getset.js delete mode 100644 rsc/scripts/jsdoc/test/specs/documentation/inlinecomment.js delete mode 100644 rsc/scripts/jsdoc/test/specs/documentation/inner.js delete mode 100644 rsc/scripts/jsdoc/test/specs/documentation/innerscope.js delete mode 100644 rsc/scripts/jsdoc/test/specs/documentation/lends.js delete mode 100644 rsc/scripts/jsdoc/test/specs/documentation/moduleinner.js delete mode 100644 rsc/scripts/jsdoc/test/specs/documentation/moduleisconstructor.js delete mode 100644 rsc/scripts/jsdoc/test/specs/documentation/moduleisfunction.js delete mode 100644 rsc/scripts/jsdoc/test/specs/documentation/modules.js delete mode 100644 rsc/scripts/jsdoc/test/specs/documentation/namedFuncStatement.js delete mode 100644 rsc/scripts/jsdoc/test/specs/documentation/objectlit.js delete mode 100644 rsc/scripts/jsdoc/test/specs/documentation/objectpropertykeys.js delete mode 100644 rsc/scripts/jsdoc/test/specs/documentation/quotename.js delete mode 100644 rsc/scripts/jsdoc/test/specs/documentation/specialnames.js delete mode 100644 rsc/scripts/jsdoc/test/specs/documentation/starbangstar.js delete mode 100644 rsc/scripts/jsdoc/test/specs/documentation/this.js delete mode 100644 rsc/scripts/jsdoc/test/specs/documentation/var.js delete mode 100644 rsc/scripts/jsdoc/test/specs/documentation/variations.js delete mode 100644 rsc/scripts/jsdoc/test/specs/documentation/virtual.js delete mode 100644 rsc/scripts/jsdoc/test/specs/jsdoc/augment.js delete mode 100644 rsc/scripts/jsdoc/test/specs/jsdoc/borrow.js delete mode 100644 rsc/scripts/jsdoc/test/specs/jsdoc/config.js delete mode 100644 rsc/scripts/jsdoc/test/specs/jsdoc/doclet.js delete mode 100644 rsc/scripts/jsdoc/test/specs/jsdoc/name.js delete mode 100644 rsc/scripts/jsdoc/test/specs/jsdoc/opts/argparser.js delete mode 100644 rsc/scripts/jsdoc/test/specs/jsdoc/opts/args.js delete mode 100644 rsc/scripts/jsdoc/test/specs/jsdoc/path.js delete mode 100644 rsc/scripts/jsdoc/test/specs/jsdoc/plugins.js delete mode 100644 rsc/scripts/jsdoc/test/specs/jsdoc/readme.js delete mode 100644 rsc/scripts/jsdoc/test/specs/jsdoc/src/filter.js delete mode 100644 rsc/scripts/jsdoc/test/specs/jsdoc/src/handlers.js delete mode 100644 rsc/scripts/jsdoc/test/specs/jsdoc/src/parser.js delete mode 100644 rsc/scripts/jsdoc/test/specs/jsdoc/src/scanner.js delete mode 100644 rsc/scripts/jsdoc/test/specs/jsdoc/tag.js delete mode 100644 rsc/scripts/jsdoc/test/specs/jsdoc/tag/dictionary.js delete mode 100644 rsc/scripts/jsdoc/test/specs/jsdoc/tag/dictionary/definitions.js delete mode 100644 rsc/scripts/jsdoc/test/specs/jsdoc/tag/inline.js delete mode 100644 rsc/scripts/jsdoc/test/specs/jsdoc/tag/type.js delete mode 100644 rsc/scripts/jsdoc/test/specs/jsdoc/tag/validator.js delete mode 100644 rsc/scripts/jsdoc/test/specs/jsdoc/tutorial.js delete mode 100644 rsc/scripts/jsdoc/test/specs/jsdoc/tutorial/resolver.js delete mode 100644 rsc/scripts/jsdoc/test/specs/jsdoc/util/doop.js delete mode 100644 rsc/scripts/jsdoc/test/specs/jsdoc/util/dumper.js delete mode 100644 rsc/scripts/jsdoc/test/specs/jsdoc/util/error.js delete mode 100644 rsc/scripts/jsdoc/test/specs/jsdoc/util/include.js delete mode 100644 rsc/scripts/jsdoc/test/specs/jsdoc/util/markdown.js delete mode 100644 rsc/scripts/jsdoc/test/specs/jsdoc/util/templateHelper.js delete mode 100644 rsc/scripts/jsdoc/test/specs/jsdoc/util/vm.js delete mode 100644 rsc/scripts/jsdoc/test/specs/jshint/jshint-clean.js delete mode 100644 rsc/scripts/jsdoc/test/specs/plugins/plugins.js delete mode 100644 rsc/scripts/jsdoc/test/specs/rhino/fs.js delete mode 100644 rsc/scripts/jsdoc/test/specs/rhino/os.js delete mode 100644 rsc/scripts/jsdoc/test/specs/rhino/path.js delete mode 100644 rsc/scripts/jsdoc/test/specs/tags/abstracttag.js delete mode 100644 rsc/scripts/jsdoc/test/specs/tags/accesstag.js delete mode 100644 rsc/scripts/jsdoc/test/specs/tags/aliastag.js delete mode 100644 rsc/scripts/jsdoc/test/specs/tags/augmentstag.js delete mode 100644 rsc/scripts/jsdoc/test/specs/tags/authortag.js delete mode 100644 rsc/scripts/jsdoc/test/specs/tags/borrowstag.js delete mode 100644 rsc/scripts/jsdoc/test/specs/tags/classdesctag.js delete mode 100644 rsc/scripts/jsdoc/test/specs/tags/classtag.js delete mode 100644 rsc/scripts/jsdoc/test/specs/tags/constanttag.js delete mode 100644 rsc/scripts/jsdoc/test/specs/tags/constructortag.js delete mode 100644 rsc/scripts/jsdoc/test/specs/tags/constructstag.js delete mode 100644 rsc/scripts/jsdoc/test/specs/tags/copyrighttag.js delete mode 100644 rsc/scripts/jsdoc/test/specs/tags/defaulttag.js delete mode 100644 rsc/scripts/jsdoc/test/specs/tags/deprecatedtag.js delete mode 100644 rsc/scripts/jsdoc/test/specs/tags/descriptiontag.js delete mode 100644 rsc/scripts/jsdoc/test/specs/tags/enumtag.js delete mode 100644 rsc/scripts/jsdoc/test/specs/tags/eventfirestag.js delete mode 100644 rsc/scripts/jsdoc/test/specs/tags/exampletag.js delete mode 100644 rsc/scripts/jsdoc/test/specs/tags/exceptiontag.js delete mode 100644 rsc/scripts/jsdoc/test/specs/tags/exportstag.js delete mode 100644 rsc/scripts/jsdoc/test/specs/tags/functiontag.js delete mode 100644 rsc/scripts/jsdoc/test/specs/tags/globaltag.js delete mode 100644 rsc/scripts/jsdoc/test/specs/tags/ignoretag.js delete mode 100644 rsc/scripts/jsdoc/test/specs/tags/kindtag.js delete mode 100644 rsc/scripts/jsdoc/test/specs/tags/lendstag.js delete mode 100644 rsc/scripts/jsdoc/test/specs/tags/licensetag.js delete mode 100644 rsc/scripts/jsdoc/test/specs/tags/listenstag.js delete mode 100644 rsc/scripts/jsdoc/test/specs/tags/memberoftag.js delete mode 100644 rsc/scripts/jsdoc/test/specs/tags/membertag.js delete mode 100644 rsc/scripts/jsdoc/test/specs/tags/mixestag.js delete mode 100644 rsc/scripts/jsdoc/test/specs/tags/mixintag.js delete mode 100644 rsc/scripts/jsdoc/test/specs/tags/moduletag.js delete mode 100644 rsc/scripts/jsdoc/test/specs/tags/namespacetag.js delete mode 100644 rsc/scripts/jsdoc/test/specs/tags/overviewtag.js delete mode 100644 rsc/scripts/jsdoc/test/specs/tags/paramtag.js delete mode 100644 rsc/scripts/jsdoc/test/specs/tags/privatetag.js delete mode 100644 rsc/scripts/jsdoc/test/specs/tags/propertytag.js delete mode 100644 rsc/scripts/jsdoc/test/specs/tags/readonlytag.js delete mode 100644 rsc/scripts/jsdoc/test/specs/tags/requirestag.js delete mode 100644 rsc/scripts/jsdoc/test/specs/tags/returnstag.js delete mode 100644 rsc/scripts/jsdoc/test/specs/tags/scopetags.js delete mode 100644 rsc/scripts/jsdoc/test/specs/tags/seetag.js delete mode 100644 rsc/scripts/jsdoc/test/specs/tags/sincetag.js delete mode 100644 rsc/scripts/jsdoc/test/specs/tags/summarytag.js delete mode 100644 rsc/scripts/jsdoc/test/specs/tags/thistag.js delete mode 100644 rsc/scripts/jsdoc/test/specs/tags/todotag.js delete mode 100644 rsc/scripts/jsdoc/test/specs/tags/tutorialtag.js delete mode 100644 rsc/scripts/jsdoc/test/specs/tags/typedeftag.js delete mode 100644 rsc/scripts/jsdoc/test/specs/tags/typekind.js delete mode 100644 rsc/scripts/jsdoc/test/specs/tags/typetag.js delete mode 100644 rsc/scripts/jsdoc/test/specs/tags/undocumentedtag.js delete mode 100644 rsc/scripts/jsdoc/test/specs/tags/versiontag.js delete mode 100644 rsc/scripts/jsdoc/test/tutorials/build.sh delete mode 100644 rsc/scripts/jsdoc/test/tutorials/duplicateDefined/asdf.html delete mode 100644 rsc/scripts/jsdoc/test/tutorials/duplicateDefined/asdf.json delete mode 100644 rsc/scripts/jsdoc/test/tutorials/duplicateDefined/index.json delete mode 100644 rsc/scripts/jsdoc/test/tutorials/incomplete/parent.html delete mode 100644 rsc/scripts/jsdoc/test/tutorials/incomplete/parent.json delete mode 100644 rsc/scripts/jsdoc/test/tutorials/src/x.js delete mode 100644 rsc/scripts/jsdoc/test/tutorials/tutorials/constructor.md delete mode 100644 rsc/scripts/jsdoc/test/tutorials/tutorials/multiple.json delete mode 100644 rsc/scripts/jsdoc/test/tutorials/tutorials/test.html delete mode 100644 rsc/scripts/jsdoc/test/tutorials/tutorials/test.json delete mode 100644 rsc/scripts/jsdoc/test/tutorials/tutorials/test2.markdown delete mode 100644 rsc/scripts/jsdoc/test/tutorials/tutorials/test3.htm delete mode 100644 rsc/scripts/jsdoc/test/tutorials/tutorials/test4.md delete mode 100644 rsc/scripts/jsdoc/test/tutorials/tutorials/test5.txt delete mode 100644 rsc/scripts/jsdoc/test/tutorials/tutorials/test6.xml create mode 100644 src/application/language/chinese/index.html create mode 100644 src/application/language/chinese/migration_lang.php create mode 100644 src/application/language/chinese/translations_lang.php create mode 100644 src/application/language/dutch/index.html create mode 100644 src/application/language/dutch/migration_lang.php create mode 100644 src/application/language/dutch/translations_lang.php create mode 100644 src/application/language/french/index.html create mode 100644 src/application/language/french/migration_lang.php create mode 100644 src/application/language/french/translations_lang.php create mode 100644 src/application/language/japanese/index.html create mode 100644 src/application/language/japanese/migration_lang.php create mode 100644 src/application/language/japanese/translations_lang.php create mode 100644 src/application/language/polish/index.html create mode 100644 src/application/language/polish/migration_lang.php create mode 100644 src/application/language/polish/translations_lang.php create mode 100644 src/application/language/spanish/index.html create mode 100644 src/application/language/spanish/migration_lang.php create mode 100644 src/application/language/spanish/translations_lang.php rename src/assets/{images => img}/break.jpg (100%) rename src/assets/{images => img}/custom.jpg (100%) rename src/assets/{images => img}/error.png (100%) rename src/assets/{images => img}/favicon.ico (100%) rename src/assets/{images => img}/glyphicons-halflings-white.png (100%) rename src/assets/{images => img}/glyphicons-halflings.png (100%) rename src/assets/{images => img}/installation-banner.png (100%) rename src/assets/{images => img}/loading.gif (100%) rename src/assets/{images => img}/logo.png (100%) rename src/assets/{images => img}/success.png (100%) rename src/assets/{images => img}/unavailable.jpg (100%) rename src/{read-me.txt => ea-license.txt} (63%) create mode 100644 src/release-notes.txt create mode 100644 src/system/libraries/Cache/drivers/index.html create mode 100644 src/system/libraries/Cache/index.html create mode 100644 src/system/libraries/javascript/index.html diff --git a/.gitignore b/.gitignore new file mode 100644 index 00000000..31a89864 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +src/configuration.php \ No newline at end of file diff --git a/build.bat b/build.bat deleted file mode 100644 index aa68451f..00000000 --- a/build.bat +++ /dev/null @@ -1,12 +0,0 @@ -:: Easy!Appointments -:: -:: This scripts creates a new build for Easy!Appointments. This build -:: can be used for distributing a new version of the project. -TITLE Easy!Appointments -del /s/f/q "build\*.*" -for /f %%f in ('dir /ad /b "build"') do rd /s /q "build%f" -mkdir "build" -copy /y "release-notes.txt" "build\release-notes.txt" -xcopy /s/e/y "src" "build" -xcopy /y "build\configuration-sample.php" "build\configuration.php" -del "build\configuration-sample.php" \ No newline at end of file diff --git a/db/easy_appointments.sql b/db/easy_appointments.sql deleted file mode 100644 index 87057c97..00000000 --- a/db/easy_appointments.sql +++ /dev/null @@ -1,329 +0,0 @@ --- phpMyAdmin SQL Dump --- version 3.5.1 --- http://www.phpmyadmin.net --- --- Φιλοξενητής: localhost --- Χρόνος δημιουργίας: 24 Σεπ 2013 στις 11:03:51 --- Έκδοση διακομιστή: 5.5.24-log --- Έκδοση PHP: 5.4.3 - -SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO"; -SET time_zone = "+00:00"; - - -/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; -/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; -/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; -/*!40101 SET NAMES utf8 */; - --- --- Βάση: `easy_appointments` --- - --- -------------------------------------------------------- - --- --- Δομή πίνακα για τον πίνακα `ea_appointments` --- - -CREATE TABLE IF NOT EXISTS `ea_appointments` ( - `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT, - `book_datetime` datetime DEFAULT NULL, - `start_datetime` datetime DEFAULT NULL, - `end_datetime` datetime DEFAULT NULL, - `notes` text, - `hash` text, - `is_unavailable` tinyint(4) DEFAULT '0', - `id_users_provider` bigint(20) unsigned DEFAULT NULL, - `id_users_customer` bigint(20) unsigned DEFAULT NULL, - `id_services` bigint(20) unsigned DEFAULT NULL, - `id_google_calendar` text, - PRIMARY KEY (`id`), - KEY `id_users_customer` (`id_users_customer`), - KEY `id_services` (`id_services`), - KEY `id_users_provider` (`id_users_provider`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=42 ; - --- --- Άδειασμα δεδομένων του πίνακα `ea_appointments` --- - -INSERT INTO `ea_appointments` (`id`, `book_datetime`, `start_datetime`, `end_datetime`, `notes`, `hash`, `is_unavailable`, `id_users_provider`, `id_users_customer`, `id_services`, `id_google_calendar`) VALUES -(21, '2013-09-13 12:02:18', '2013-09-13 15:00:00', '2013-09-13 17:00:00', '', 'be278cf3c1d617fc372d89d75d5fd26d', 0, 2, 21, 4, 'e2c7abe3eket7ip9c58lllt3c8'), -(37, '2013-09-13 13:47:54', '2013-09-14 11:30:00', '2013-09-14 13:30:00', 'Γυμναστήριο ', '3ace1513fdf92a4983b7ae719a8475b5', 1, 2, NULL, NULL, 'cqm0t14p50d0917ghkirtruuno'), -(38, '2013-09-13 13:47:54', '2013-09-14 15:00:00', '2013-09-14 18:00:00', 'Ε!Α ', '3ace1513fdf92a4983b7ae719a8475b5', 1, 2, NULL, NULL, 'vs0btdvi34t73rvkeubh77ln40'), -(39, '2013-09-13 15:39:44', '2013-09-13 17:00:00', '2013-09-13 17:20:00', 'This is a test appt.', '6fd60f567310511d8f2fb4ff4c787d5e', 0, 2, 22, 3, NULL), -(40, '2013-09-13 15:50:14', '2013-09-14 10:00:00', '2013-09-14 11:00:00', 'heart decease', '39b81301e5bb1a82f77bd23d07ec63ce', 0, 4, 23, 2, NULL), -(41, '2013-09-23 17:04:53', '2013-09-24 09:45:00', '2013-09-24 10:15:00', '', '4c782e7af14a98e03657cc64c9a4fe61', 0, 25, 26, 4, NULL); - --- -------------------------------------------------------- - --- --- Δομή πίνακα για τον πίνακα `ea_roles` --- - -CREATE TABLE IF NOT EXISTS `ea_roles` ( - `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT, - `name` varchar(256) DEFAULT NULL, - `slug` varchar(256) DEFAULT NULL, - `is_admin` tinyint(4) DEFAULT NULL COMMENT '0', - `appointments` int(4) DEFAULT NULL COMMENT '0', - `customers` int(4) DEFAULT NULL COMMENT '0', - `services` int(4) DEFAULT NULL COMMENT '0', - `users` int(4) DEFAULT NULL COMMENT '0', - `system_settings` int(4) DEFAULT NULL COMMENT '0', - `user_settings` int(11) DEFAULT NULL, - PRIMARY KEY (`id`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=5 ; - --- --- Άδειασμα δεδομένων του πίνακα `ea_roles` --- - -INSERT INTO `ea_roles` (`id`, `name`, `slug`, `is_admin`, `appointments`, `customers`, `services`, `users`, `system_settings`, `user_settings`) VALUES -(1, 'Administrator', 'admin', 1, 15, 15, 15, 15, 15, NULL), -(2, 'Provider', 'provider', 0, 15, 15, 0, 0, 0, NULL), -(3, 'Customer', 'customer', 0, 0, 0, 0, 0, 0, NULL), -(4, 'Secretary', 'secretary', 0, 15, 15, 0, 0, 15, NULL); - --- -------------------------------------------------------- - --- --- Δομή πίνακα για τον πίνακα `ea_secretaries_providers` --- - -CREATE TABLE IF NOT EXISTS `ea_secretaries_providers` ( - `id_users_secretary` bigint(20) unsigned NOT NULL, - `id_users_provider` bigint(20) unsigned NOT NULL, - PRIMARY KEY (`id_users_secretary`,`id_users_provider`), - KEY `fk_ea_secretaries_providers_1` (`id_users_secretary`), - KEY `fk_ea_secretaries_providers_2` (`id_users_provider`) -) ENGINE=InnoDB DEFAULT CHARSET=latin1; - --- --- Άδειασμα δεδομένων του πίνακα `ea_secretaries_providers` --- - -INSERT INTO `ea_secretaries_providers` (`id_users_secretary`, `id_users_provider`) VALUES -(20, 2), -(20, 3); - --- -------------------------------------------------------- - --- --- Δομή πίνακα για τον πίνακα `ea_services` --- - -CREATE TABLE IF NOT EXISTS `ea_services` ( - `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT, - `name` varchar(256) DEFAULT NULL, - `duration` int(11) DEFAULT NULL, - `price` decimal(10,2) DEFAULT NULL, - `currency` varchar(32) DEFAULT NULL, - `description` text, - `id_service_categories` bigint(20) unsigned DEFAULT NULL, - PRIMARY KEY (`id`), - KEY `id_service_categories` (`id_service_categories`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=5 ; - --- --- Άδειασμα δεδομένων του πίνακα `ea_services` --- - -INSERT INTO `ea_services` (`id`, `name`, `duration`, `price`, `currency`, `description`, `id_service_categories`) VALUES -(2, 'Heart Examination', 30, '40.00', 'Euro', 'Checkup for heart problems.', NULL), -(3, 'Neurological Examination', 20, '35.00', 'Euro', 'Neurological tests for the patient.', NULL), -(4, 'General Examination', 30, '30.00', 'Euro', 'General patient examination. Includes blood, pressure and eyes tests.', 2); - --- -------------------------------------------------------- - --- --- Δομή πίνακα για τον πίνακα `ea_services_providers` --- - -CREATE TABLE IF NOT EXISTS `ea_services_providers` ( - `id_users` bigint(20) unsigned NOT NULL, - `id_services` bigint(20) unsigned NOT NULL, - PRIMARY KEY (`id_users`,`id_services`), - KEY `id_services` (`id_services`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8; - --- --- Άδειασμα δεδομένων του πίνακα `ea_services_providers` --- - -INSERT INTO `ea_services_providers` (`id_users`, `id_services`) VALUES -(3, 2), -(4, 2), -(2, 3), -(3, 3), -(2, 4), -(25, 4); - --- -------------------------------------------------------- - --- --- Δομή πίνακα για τον πίνακα `ea_service_categories` --- - -CREATE TABLE IF NOT EXISTS `ea_service_categories` ( - `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT, - `name` varchar(256) DEFAULT NULL, - `description` text, - PRIMARY KEY (`id`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=8 ; - --- --- Άδειασμα δεδομένων του πίνακα `ea_service_categories` --- - -INSERT INTO `ea_service_categories` (`id`, `name`, `description`) VALUES -(2, 'General Services', 'Contains the general services of our company.'), -(5, 'test1', 'test1'), -(7, 'test2', 'test2'); - --- -------------------------------------------------------- - --- --- Δομή πίνακα για τον πίνακα `ea_settings` --- - -CREATE TABLE IF NOT EXISTS `ea_settings` ( - `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT, - `name` varchar(512) DEFAULT NULL, - `value` longtext, - PRIMARY KEY (`id`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=16 ; - --- --- Άδειασμα δεδομένων του πίνακα `ea_settings` --- - -INSERT INTO `ea_settings` (`id`, `name`, `value`) VALUES -(1, 'company_name', 'Easy!Appointmnets & Co'), -(2, 'company_working_plan', '{"monday":{"start":"09:00","end":"18:00","breaks":[{"start":"11:20","end":"11:30"},{"start":"14:30","end":"15:00"}]},"tuesday":{"start":"09:00","end":"18:00","breaks":[{"start":"11:20","end":"11:30"},{"start":"14:30","end":"15:00"}]},"wednesday":{"start":"09:00","end":"18:00","breaks":[{"start":"11:20","end":"11:30"},{"start":"14:30","end":"15:00"}]},"thursday":{"start":"09:00","end":"18:00","breaks":[{"start":"11:20","end":"11:30"},{"start":"14:30","end":"15:00"}]},"friday":{"start":"09:00","end":"18:00","breaks":[{"start":"11:20","end":"11:30"},{"start":"14:30","end":"15:00"}]},"saturday":{"start":"09:00","end":"18:00","breaks":[{"start":"11:20","end":"11:30"},{"start":"14:30","end":"15:00"}]},"sunday":{"start":"09:00","end":"18:00","breaks":[{"start":"11:20","end":"11:30"},{"start":"14:30","end":"15:00"}]}}'), -(3, 'company_email', 'info@alextselegidis.com'), -(8, 'company_link', 'http://easyappointments.org'), -(9, 'book_advance_timeout', '30'), -(15, NULL, NULL); - --- -------------------------------------------------------- - --- --- Δομή πίνακα για τον πίνακα `ea_users` --- - -CREATE TABLE IF NOT EXISTS `ea_users` ( - `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT, - `first_name` varchar(256) DEFAULT NULL, - `last_name` varchar(512) DEFAULT NULL, - `email` varchar(512) DEFAULT NULL, - `mobile_number` varchar(128) DEFAULT NULL, - `phone_number` varchar(128) DEFAULT NULL, - `address` varchar(256) DEFAULT NULL, - `city` varchar(256) DEFAULT NULL, - `state` varchar(128) DEFAULT NULL, - `zip_code` varchar(64) DEFAULT NULL, - `notes` text, - `id_roles` bigint(20) unsigned NOT NULL, - PRIMARY KEY (`id`), - KEY `id_roles` (`id_roles`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=27 ; - --- --- Άδειασμα δεδομένων του πίνακα `ea_users` --- - -INSERT INTO `ea_users` (`id`, `first_name`, `last_name`, `email`, `mobile_number`, `phone_number`, `address`, `city`, `state`, `zip_code`, `notes`, `id_roles`) VALUES -(2, 'Ned', 'Janger', 'alextselegidis@gmail.com', '659875666', '785448465', 'Kloesel', 'Berlin', '', '23980', '', 2), -(3, 'Urlich', 'Setzel', 'u.setzel@piorin.com', '23908252398', '20923798723', 'Groundliche Str. 23', 'Munich', 'Bayern', '86895', '', 2), -(4, 'Brandon', 'Clod', 'b.clod@besters.org', '239072439', '858754487', 'Wellin Str 8', 'Plymouth', '', '20940', '', 2), -(18, 'Tod', 'Cliffer', 'info@alextselegidis.com', '987568857', '875986878', 'Yourd Str 98', 'Blackpool', 'MyState', '85874', 'This is a test admin record used for testing the project. All the data are not real.', 1), -(20, 'Sonia', 'Sterling', 's.sterling@reo.com', '584256658', '4265462587', '', '', '', '', '', 4), -(21, 'Alex', 'Tselegidis', 'info@alextselegidis.com', NULL, '98765465712', '', '', NULL, '', '', 3), -(22, 'John', 'Doe', 'john.doe@oizent.com', NULL, '8757595445', 'Orizend 51', 'London', NULL, '56648', 'Test customer record.', 3), -(23, 'James', 'Goern', 'james.goern@softiner.com', NULL, '98654869544', 'Ureklin 09', 'New York', NULL, '56987', NULL, 3), -(24, 'test', 'test', 'test@test.com', '233252325', '234523342', 'test', 'test', '', '', '', 1), -(25, 'Jason', 'Brandon', 'j.brandon@solyell.uk', '7899875789', '7854789897', 'Hilton Str. 52', 'Michigan', '', '87786', 'This is a test provider. All data are fictional.', 2), -(26, 'John', 'Doe', 'j.doe@doens.com', NULL, '897987657', '', '', NULL, '', NULL, 3); - --- -------------------------------------------------------- - --- --- Δομή πίνακα για τον πίνακα `ea_user_settings` --- - -CREATE TABLE IF NOT EXISTS `ea_user_settings` ( - `id_users` bigint(20) unsigned NOT NULL, - `username` varchar(256) DEFAULT NULL, - `password` varchar(512) DEFAULT NULL, - `salt` varchar(512) DEFAULT NULL, - `working_plan` text, - `notifications` tinyint(4) DEFAULT '0', - `google_sync` tinyint(4) DEFAULT '0', - `google_token` text, - `sync_past_days` int(11) DEFAULT '5', - `sync_future_days` int(11) DEFAULT '5', - PRIMARY KEY (`id_users`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8; - --- --- Άδειασμα δεδομένων του πίνακα `ea_user_settings` --- - -INSERT INTO `ea_user_settings` (`id_users`, `username`, `password`, `salt`, `working_plan`, `notifications`, `google_sync`, `google_token`, `sync_past_days`, `sync_future_days`) VALUES -(2, 'ned.janger', '6ad76c5daab92f2aaf9f9d725cb72bc2774fdb4ac2172828a8f1c6aa69e9b0d1', 'edd27f8204a0cc47c60a3cd031fe03211be2561c76b334678e0f982ef582bf6e', '{"monday":{"start":"09:00","end":"18:00","breaks":[{"start":"11:20","end":"11:30"},{"start":"14:30","end":"15:00"}]},"tuesday":{"start":"09:00","end":"18:00","breaks":[{"start":"11:20","end":"11:30"},{"start":"14:30","end":"15:00"}]},"wednesday":{"start":"09:00","end":"18:00","breaks":[{"start":"11:20","end":"11:30"},{"start":"14:30","end":"15:00"}]},"thursday":{"start":"09:00","end":"18:00","breaks":[{"start":"11:20","end":"11:30"},{"start":"14:30","end":"15:00"}]},"friday":{"start":"09:00","end":"18:00","breaks":[{"start":"11:20","end":"11:30"},{"start":"14:30","end":"15:00"}]},"saturday":{"start":"09:00","end":"18:00","breaks":[{"start":"11:20","end":"11:30"},{"start":"14:30","end":"15:00"}]},"sunday":{"start":"09:00","end":"18:00","breaks":[{"start":"11:20","end":"11:30"},{"start":"14:30","end":"15:00"}]}}', 1, 0, NULL, 5, 5), -(3, 'u.setzel', 'f00e1e6f3780859b40645be7ff8e91878ea2679eb62fbc45a8bff1243338b741', '7f8231dd21df341c651522e4091637e6a93d160decb6a7a99bd08a5dc5d947c8', '{"monday":{"start":"09:00","end":"18:00","breaks":[{"start":"11:20","end":"11:30"},{"start":"14:30","end":"15:00"}]},"tuesday":{"start":"09:00","end":"18:00","breaks":[{"start":"11:20","end":"11:30"},{"start":"14:30","end":"15:00"}]},"wednesday":{"start":"09:00","end":"18:00","breaks":[{"start":"11:20","end":"11:30"},{"start":"14:30","end":"15:00"}]},"thursday":{"start":"09:00","end":"18:00","breaks":[{"start":"11:20","end":"11:30"},{"start":"14:30","end":"15:00"}]},"friday":{"start":"09:00","end":"18:00","breaks":[{"start":"11:20","end":"11:30"},{"start":"14:30","end":"15:00"}]},"saturday":{"start":"09:00","end":"18:00","breaks":[{"start":"11:20","end":"11:30"},{"start":"14:30","end":"15:00"}]},"sunday":{"start":"09:00","end":"18:00","breaks":[{"start":"11:20","end":"11:30"},{"start":"14:30","end":"15:00"}]}}', 1, 0, NULL, 5, 5), -(4, 'b.clod', '811acf5c450e0eb2866a17cdc3701a0b1fddb98ea2065e91259e8e6ce9b678b6', 'edd27f8204a0cc47c60a3cd031fe03211be2561c76b334678e0f982ef582bf6e', '{"monday":{"start":"09:00","end":"18:00","breaks":[{"start":"11:20","end":"11:30"},{"start":"14:30","end":"15:00"}]},"tuesday":{"start":"09:00","end":"18:00","breaks":[{"start":"11:20","end":"11:30"},{"start":"14:30","end":"15:00"}]},"wednesday":{"start":"09:00","end":"18:00","breaks":[{"start":"11:20","end":"11:30"},{"start":"14:30","end":"15:00"}]},"thursday":{"start":"09:00","end":"18:00","breaks":[{"start":"11:20","end":"11:30"},{"start":"14:30","end":"15:00"}]},"friday":{"start":"09:00","end":"18:00","breaks":[{"start":"11:20","end":"11:30"},{"start":"14:30","end":"15:00"}]},"saturday":{"start":"09:00","end":"18:00","breaks":[{"start":"11:20","end":"11:30"},{"start":"14:30","end":"15:00"}]},"sunday":{"start":"09:00","end":"18:00","breaks":[{"start":"11:20","end":"11:30"},{"start":"14:30","end":"15:00"}]}}', 0, 0, NULL, 5, 5), -(18, 'admin', '9e81360f0a631fe7e49e9d051b05c581a0f17575ca043a340be4441e166de821', 'd6ac3bfb4e6d9f82ec54e606852a9afbe8697696cddd28f30423eddf98762f41', NULL, 0, 0, NULL, 5, 5), -(20, 's.sterling', '8746aff0a416b63e71046d6a6adc6e2fd9de4a1cf4de0281e5b5f60ba8ae4451', 'edd27f8204a0cc47c60a3cd031fe03211be2561c76b334678e0f982ef582bf6e', NULL, 0, 0, NULL, 5, 5), -(24, 'test', 'd1dce587f7eefdb93adceb4e8903d72036bf97d37482b9c7b1d5f08353d061f3', 'd6ac3bfb4e6d9f82ec54e606852a9afbe8697696cddd28f30423eddf98762f41', NULL, 0, 0, NULL, 5, 5), -(25, 'j.brandon', 'dc93d098ccbcaa871e4adcc2dd770d71f6fca7a24dbd635e00006b5075dc2db1', '7f8231dd21df341c651522e4091637e6a93d160decb6a7a99bd08a5dc5d947c8', '{"monday":{"start":"09:00","end":"18:00","breaks":[{"start":"11:20","end":"11:30"},{"start":"14:30","end":"15:00"}]},"tuesday":{"start":"09:00","end":"18:00","breaks":[{"start":"11:20","end":"11:30"},{"start":"14:30","end":"15:00"}]},"wednesday":{"start":"09:00","end":"18:00","breaks":[{"start":"11:20","end":"11:30"},{"start":"14:30","end":"15:00"}]},"thursday":{"start":"09:00","end":"18:00","breaks":[{"start":"11:20","end":"11:30"},{"start":"14:30","end":"15:00"}]},"friday":{"start":"09:00","end":"18:00","breaks":[{"start":"11:20","end":"11:30"},{"start":"14:30","end":"15:00"}]},"saturday":{"start":"09:00","end":"18:00","breaks":[{"start":"11:20","end":"11:30"},{"start":"14:30","end":"15:00"}]},"sunday":{"start":"09:00","end":"18:00","breaks":[{"start":"11:20","end":"11:30"},{"start":"14:30","end":"15:00"}]}}', 1, 0, NULL, 5, 5); - --- --- Περιορισμοί για άχρηστους πίνακες --- - --- --- Περιορισμοί για πίνακα `ea_appointments` --- -ALTER TABLE `ea_appointments` - ADD CONSTRAINT `ea_appointments_ibfk_2` FOREIGN KEY (`id_users_customer`) REFERENCES `ea_users` (`id`) ON DELETE CASCADE ON UPDATE CASCADE, - ADD CONSTRAINT `ea_appointments_ibfk_3` FOREIGN KEY (`id_services`) REFERENCES `ea_services` (`id`) ON DELETE CASCADE ON UPDATE CASCADE, - ADD CONSTRAINT `ea_appointments_ibfk_4` FOREIGN KEY (`id_users_provider`) REFERENCES `ea_users` (`id`) ON DELETE CASCADE ON UPDATE CASCADE; - --- --- Περιορισμοί για πίνακα `ea_secretaries_providers` --- -ALTER TABLE `ea_secretaries_providers` - ADD CONSTRAINT `fk_ea_secretaries_providers_1` FOREIGN KEY (`id_users_secretary`) REFERENCES `ea_users` (`id`) ON DELETE CASCADE ON UPDATE CASCADE, - ADD CONSTRAINT `fk_ea_secretaries_providers_2` FOREIGN KEY (`id_users_provider`) REFERENCES `ea_users` (`id`) ON DELETE CASCADE ON UPDATE CASCADE; - --- --- Περιορισμοί για πίνακα `ea_services` --- -ALTER TABLE `ea_services` - ADD CONSTRAINT `ea_services_ibfk_1` FOREIGN KEY (`id_service_categories`) REFERENCES `ea_service_categories` (`id`) ON DELETE SET NULL ON UPDATE CASCADE; - --- --- Περιορισμοί για πίνακα `ea_services_providers` --- -ALTER TABLE `ea_services_providers` - ADD CONSTRAINT `ea_services_providers_ibfk_1` FOREIGN KEY (`id_users`) REFERENCES `ea_users` (`id`) ON DELETE CASCADE ON UPDATE CASCADE, - ADD CONSTRAINT `ea_services_providers_ibfk_2` FOREIGN KEY (`id_services`) REFERENCES `ea_services` (`id`) ON DELETE CASCADE ON UPDATE CASCADE; - --- --- Περιορισμοί για πίνακα `ea_users` --- -ALTER TABLE `ea_users` - ADD CONSTRAINT `ea_users_ibfk_1` FOREIGN KEY (`id_roles`) REFERENCES `ea_roles` (`id`) ON DELETE CASCADE ON UPDATE CASCADE; - --- --- Περιορισμοί για πίνακα `ea_user_settings` --- -ALTER TABLE `ea_user_settings` - ADD CONSTRAINT `ea_user_settings_ibfk_1` FOREIGN KEY (`id_users`) REFERENCES `ea_users` (`id`) ON DELETE CASCADE ON UPDATE CASCADE; - -/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; -/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; -/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; diff --git a/doc/E!A UML.zargo b/doc/E!A UML.zargo deleted file mode 100644 index 8da82d34a9a329bff063399899b08272951f37cb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 30532 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