mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-06-02 12:49:27 +00:00
Compare commits
600 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 2904feffdc | |||
| bb3553a7c5 | |||
| a315ecc873 | |||
| deb2fe69c9 | |||
| 808c2a38b3 | |||
| 4f8fceeb1b | |||
| 13d1fb8fa0 | |||
| ad0062fd40 | |||
| ed7c62c648 | |||
| 56d4dd211d | |||
| 00c603f0f5 | |||
| bad13f27f9 | |||
| f2768b1bb4 | |||
| 0bb6e9e535 | |||
| ac6c45dea9 | |||
| 3ad06bed01 | |||
| 4abc9ef67d | |||
| 7e237ba4b3 | |||
| 9c6a8c8b75 | |||
| 68f1821883 | |||
| 90a2a6cda0 | |||
| 6feeab5ced | |||
| 9a31038e10 | |||
| 99cf61076b | |||
| be793a549c | |||
| 5cc359f181 | |||
| cf9ecc01e1 | |||
| 981e9b45a4 | |||
| a1be5f7ff7 | |||
| ee21ab1a9d | |||
| 9b74ddf639 | |||
| 21fe552ec4 | |||
| 9eb6f86405 | |||
| 73e49be88c | |||
| 7b18abb880 | |||
| c1e6c6e5fc | |||
| 0f60a4a34c | |||
| 3b530c284f | |||
| b8ef3b7c4f | |||
| 3ee0dd7377 | |||
| e84d03fd09 | |||
| 655325e627 | |||
| c189a60b49 | |||
| aed912b5f6 | |||
| c9e35a60c6 | |||
| 13a004e784 | |||
| e8dd844856 | |||
| 392fc572bf | |||
| e8ce185c09 | |||
| 6fa972288a | |||
| d73050f43b | |||
| 59d28b701d | |||
| 84e2c8a9f9 | |||
| 2924d85f4e | |||
| 1bbdce28f6 | |||
| 56ba00c984 | |||
| e7575c58f3 | |||
| acf651548b | |||
| e3e5b07999 | |||
| 70b5cd8a37 | |||
| 2c8b77e0fb | |||
| fbd7c6d689 | |||
| 1f9e99221e | |||
| e1ea8652a1 | |||
| 209fd02a90 | |||
| 3a803db31c | |||
| 7fbf3f273f | |||
| 99915459b1 | |||
| d3c970bd84 | |||
| 9694f64f96 | |||
| ef7bb766e1 | |||
| 361649195c | |||
| 2cc11017f2 | |||
| cbb3ee605d | |||
| 30979447cd | |||
| 998ffeb025 | |||
| e33349bd0d | |||
| b98bae2854 | |||
| 4bf36cc493 | |||
| 8b87c188b4 | |||
| a932bdb9c5 | |||
| 0fc7be8d63 | |||
| 7c62a869e5 | |||
| 89dc6d23d5 | |||
| 974a561a5f | |||
| 92482dbf6c | |||
| c914bfbfb3 | |||
| bf449d75a2 | |||
| 44eb475768 | |||
| f5ea13c35b | |||
| 9d76dfc6c6 | |||
| 6d58e8d566 | |||
| e515dd8572 | |||
| ae5ca1b6fc | |||
| 85ca16723f | |||
| c7d4133578 | |||
| 389dfe94dd | |||
| 17f718e829 | |||
| 5af54bc3db | |||
| ceb8c55751 | |||
| 61533035ed | |||
| f812fce994 | |||
| c4df88d567 | |||
| 9daf4f74b5 | |||
| fc871c3976 | |||
| fa3dc7bd68 | |||
| 12721c3eed | |||
| 753176cb23 | |||
| 5c831f2afe | |||
| 9c70aa9e92 | |||
| c5aa9e022b | |||
| f5aa31ea71 | |||
| fd5ba07be6 | |||
| baf8de5e82 | |||
| b6c05b9a9d | |||
| 73fe5b6267 | |||
| 3802770110 | |||
| 9168de99a1 | |||
| 270d6aa465 | |||
| 9eb24e7093 | |||
| 34e0c62e75 | |||
| defde1382e | |||
| c7a17f9945 | |||
| 0b5a7ea7b4 | |||
| cf40d4fb77 | |||
| 729916e983 | |||
| 187367688d | |||
| dca860740e | |||
| 0693b6c74f | |||
| 31f88fa01b | |||
| 71c62f6a95 | |||
| fca6162e39 | |||
| da29d8feae | |||
| 2f15886b96 | |||
| 6de6cf95b1 | |||
| 9042fab9ba | |||
| cbc5edd149 | |||
| 3c3a4878ed | |||
| 387ae1c948 | |||
| 2cea824357 | |||
| 2bf776de46 | |||
| 262dc00efb | |||
| 1eab041a46 | |||
| 14acd6459c | |||
| 2c993d924f | |||
| f77aebbd34 | |||
| d62b9fc853 | |||
| 9a875b0c3d | |||
| 76d94532fa | |||
| 6705e4ff1d | |||
| eb639c1b55 | |||
| 865a0568cf | |||
| 311f914d0b | |||
| c9228c7de0 | |||
| 84a86d3a06 | |||
| 28387ae474 | |||
| a05a8314af | |||
| 67b0ea63de | |||
| 2d2e7475a3 | |||
| c40cf6e785 | |||
| 06165a3ed9 | |||
| 13e94569fc | |||
| 8876866428 | |||
| d5dfd025fd | |||
| a0ef46b4a7 | |||
| d6526bd9f4 | |||
| 8d840203ef | |||
| 0bf1c31d7e | |||
| bb4ab112ea | |||
| 8f45f26503 | |||
| 643db3d24c | |||
| 7b3d7e4c89 | |||
| 0fb322c632 | |||
| baa0e38e57 | |||
| 48168f6143 | |||
| 43da94f3c7 | |||
| 344b3e0cd1 | |||
| 9cb40651a2 | |||
| ebe2bfd6ca | |||
| 19422c3a8c | |||
| 5a63409e75 | |||
| 98e6bfe040 | |||
| 79ba117b9e | |||
| 191ebddbec | |||
| 7b87c8b3e0 | |||
| 8cb0f5814f | |||
| 94b15b5112 | |||
| 8f173d16e0 | |||
| df3491254f | |||
| af7563da4f | |||
| 933dfc3477 | |||
| db451a5618 | |||
| 6f538d7b2c | |||
| 3a7ccfa9a4 | |||
| 152271dfcf | |||
| f40a0eef14 | |||
| 50a4fe4c1e | |||
| 18af0ac7ba | |||
| 8266ae615c | |||
| 613ddc81c9 | |||
| 509ea57374 | |||
| 30de27fb4a | |||
| ad788b3c01 | |||
| a4d652ed2c | |||
| 2d848ba750 | |||
| ca4366861e | |||
| 31e7b9d03a | |||
| 7cfe5f6e6d | |||
| f58e272858 | |||
| 396faa4659 | |||
| 232acc006b | |||
| fc637406a3 | |||
| 04213f4688 | |||
| 709ee27bef | |||
| 0a7f06d410 | |||
| 6011b9d73b | |||
| 328c0a0595 | |||
| 6c937a4a21 | |||
| 9d7373e256 | |||
| b3decd24fe | |||
| 7014e51cde | |||
| 47946fb527 | |||
| cab6d8db3b | |||
| 9d4b444aed | |||
| a7579debd0 | |||
| fd857a7360 | |||
| 7b9fd58226 | |||
| d50ba00fca | |||
| 2cb0135164 | |||
| ea009d8e8d | |||
| d86d2033d4 | |||
| e3e79ff884 | |||
| 78c360280c | |||
| d553305f49 | |||
| 1007ee9aba | |||
| 906daf09e0 | |||
| 2ec1996b0f | |||
| 5c4aa9f4fc | |||
| 7a1ad9f86d | |||
| 21b2b60fc2 | |||
| b8dc17d8c3 | |||
| 9177655889 | |||
| 3c555671c0 | |||
| a338e8b99c | |||
| f15c64f6f1 | |||
| 18415dddf7 | |||
| aff00ea07e | |||
| a732b7a694 | |||
| f9c92cb6d2 | |||
| d112f3602c | |||
| 7c01078573 | |||
| 153f216d3a | |||
| ae0943d23f | |||
| d5210e34ed | |||
| 4a5da20b99 | |||
| 2e0e9f9da2 | |||
| fcb46df765 | |||
| da2c348182 | |||
| cfd0bd3059 | |||
| 3c72d27e5b | |||
| 74ec63ed2c | |||
| d287a9be8c | |||
| 7471efa59a | |||
| e30526e0d6 | |||
| c9ca32b221 | |||
| a2b962d84e | |||
| f389559d69 | |||
| 75606c2d4f | |||
| 717a95258f | |||
| b22300881a | |||
| 903b7a3701 | |||
| 5beb907801 | |||
| 6a38c0001c | |||
| d80f51b446 | |||
| 3a71ff8722 | |||
| 47113b6686 | |||
| 8e0f80e007 | |||
| 1e9b2064f2 | |||
| e38be472cb | |||
| 311ed66622 | |||
| 6a696b7472 | |||
| 273bacb389 | |||
| 5751969fcf | |||
| 9c8ef52229 | |||
| 00453c1e34 | |||
| 9d450a17bd | |||
| f57b99252a | |||
| 80a133b970 | |||
| ae895eb1d6 | |||
| 1e613067f8 | |||
| 1e01800ad3 | |||
| 6aecf82087 | |||
| 2280ca6bbb | |||
| 88ad000d5a | |||
| e7166678c5 | |||
| 0d8e16f644 | |||
| 0f860374e5 | |||
| 1925a52aa2 | |||
| 3906e5711b | |||
| 101067f339 | |||
| f4d9b74196 | |||
| 57b464537a | |||
| 6d78878385 | |||
| b133137b9e | |||
| 503939e2c5 | |||
| ccf7efeaa2 | |||
| db8c1b9b55 | |||
| c742ab7b42 | |||
| 604ea175ec | |||
| 9250f01077 | |||
| ad0a8b88dd | |||
| fb3999c3ba | |||
| 0b1be5ecc5 | |||
| 53b8734b36 | |||
| cee05a2a6a | |||
| a923efdbd5 | |||
| 525bd30b61 | |||
| 4a58d4fe4c | |||
| 528a79678f | |||
| d544aae0d1 | |||
| b25059f933 | |||
| 4453c2cf4c | |||
| fc7383a9e6 | |||
| f5ed1f15e4 | |||
| 35c779775d | |||
| 57a644cf99 | |||
| 9077488560 | |||
| d51cf69035 | |||
| 93473c8db4 | |||
| c14feb7aff | |||
| 9accf9a482 | |||
| 94d73b44f1 | |||
| 0c266ad63d | |||
| 4efa561017 | |||
| 09fcedef53 | |||
| 5eacd9ef81 | |||
| 730a20d373 | |||
| 4b8af48052 | |||
| 2ddefb2e75 | |||
| b6cddb033e | |||
| f0c458d597 | |||
| 0ddaa060a8 | |||
| 7510a78f2c | |||
| f455b28bba | |||
| 8daf023954 | |||
| 34b6a99bbb | |||
| 999f0e528c | |||
| 1869ae4c51 | |||
| c1342af8b5 | |||
| e8bd5e3d62 | |||
| 66cbd52879 | |||
| 77e9ba0c21 | |||
| 4d322b003f | |||
| 59c00f39ee | |||
| 3b04890dea | |||
| 338070128c | |||
| 06f32e4ada | |||
| 69d5fd46d1 | |||
| e479553fc7 | |||
| ae72a86e87 | |||
| f826c2721f | |||
| b0230feb34 | |||
| 4c98f8ff96 | |||
| 7f0b96307a | |||
| 57d0f238e3 | |||
| 38536837e8 | |||
| 3b74768abb | |||
| ac95e958c2 | |||
| 71c35d226a | |||
| 4a9e86a74c | |||
| f505e16dc5 | |||
| e79e19f1cf | |||
| 059a37fb5f | |||
| 124f03cbbc | |||
| 6c7d8ba603 | |||
| a6a98ca0c5 | |||
| 8dee9ae897 | |||
| d5e61a0259 | |||
| 80ea9f6b18 | |||
| e2afff0a0b | |||
| b0fafd2013 | |||
| c742fc1231 | |||
| a172816057 | |||
| 61fac03998 | |||
| 2c5acb74ef | |||
| c50b685705 | |||
| b6be10f7d3 | |||
| 0c81f2a16c | |||
| f3177d6e85 | |||
| b9c0f9ec63 | |||
| f09073c658 | |||
| 6b6cbf682f | |||
| d4f66fb300 | |||
| d1b9d3cc89 | |||
| ec47c2bca0 | |||
| d44633bde8 | |||
| fb3909325a | |||
| 50be41fcfb | |||
| 9c3dcbf382 | |||
| 03aa653ef4 | |||
| 866541de2c | |||
| 53e6395323 | |||
| 7fb8687727 | |||
| 9539a06fa7 | |||
| 79e4ea661d | |||
| 7d2f976699 | |||
| 96388c97a7 | |||
| 86835040e5 | |||
| ec877b7d42 | |||
| bb78764bef | |||
| 07855b59e0 | |||
| 9e88180df4 | |||
| f373ec7a67 | |||
| d3e768575f | |||
| 3ec4fab663 | |||
| 00b2902265 | |||
| fee48d1f6f | |||
| 4950f74c0b | |||
| 80dfb7c62a | |||
| bc289aa68c | |||
| 03c5960c15 | |||
| f056a2b24a | |||
| 79d1989cc0 | |||
| 83daff6876 | |||
| 59aa35d9ac | |||
| da46969eed | |||
| 1ebcb58d54 | |||
| 6102ee59e3 | |||
| 5303a976f8 | |||
| f52eb5ee9c | |||
| 3a0f479cc2 | |||
| adb27735c9 | |||
| d6df024f37 | |||
| 4399564ca6 | |||
| f8ea792281 | |||
| 841f28e33b | |||
| 5d9cd477c2 | |||
| aa7f27802b | |||
| 17a62cadea | |||
| 54c03c33c9 | |||
| 8c7009adb2 | |||
| 800eeb4dfd | |||
| 586bb1fd3f | |||
| a2cc845a77 | |||
| d34fa4fea0 | |||
| 48813b4e41 | |||
| 69fcb0144c | |||
| c37d2852ff | |||
| 81ccf8374a | |||
| d86e1ec4d3 | |||
| 8d7a1134a1 | |||
| 44be65f08e | |||
| b2d2cd109f | |||
| 494861b3d2 | |||
| 1f1a5ca9eb | |||
| b50d4c27d1 | |||
| 9367afebec | |||
| a753ec4d77 | |||
| e1c6e97629 | |||
| e8a7acd2b4 | |||
| c34dc97451 | |||
| 0292f00409 | |||
| f5e700606d | |||
| bda227b9c5 | |||
| d85e9cd335 | |||
| 62e80c7ce2 | |||
| 8463603f4d | |||
| 75ae4df5de | |||
| ab00219a52 | |||
| 42c2696dca | |||
| 61459af880 | |||
| fb32d1e059 | |||
| feb227e336 | |||
| 8512a6a899 | |||
| efaaa56d94 | |||
| ebb1eced99 | |||
| 0cd6d7aca4 | |||
| 63aaa62d84 | |||
| 9aae1085df | |||
| c60df58328 | |||
| 3bf7e7396a | |||
| cad7a714c1 | |||
| e728daf034 | |||
| 31371eab5e | |||
| 47802e2b03 | |||
| ad6cebfa94 | |||
| ab98e6422a | |||
| 04021e36f6 | |||
| 4cc1ff2915 | |||
| dba3e1eae8 | |||
| 597b410582 | |||
| 4ea49a43a0 | |||
| 861482a230 | |||
| 27873b2756 | |||
| 312fe6a887 | |||
| e7956d4bc2 | |||
| f500d1b4ac | |||
| 3a548a9955 | |||
| 06c58d55ef | |||
| e2e022be3c | |||
| 29f2b98877 | |||
| 6ea4218853 | |||
| 16f617b234 | |||
| 50d8cdee07 | |||
| 4ff56af61e | |||
| 43aeb7fe7e | |||
| 95d8967855 | |||
| 5b58fce5de | |||
| a96cabd501 | |||
| ccb21c3127 | |||
| c40fb16fdf | |||
| d284e2b025 | |||
| bc1c27f95e | |||
| 9e57867d08 | |||
| 8b4c82c0e3 | |||
| 61dca94bf2 | |||
| dde1fc6daf | |||
| d13b622268 | |||
| d0a0d0e4d9 | |||
| 1efc856941 | |||
| 399ada5a4a | |||
| fee4706b87 | |||
| 3401f270fa | |||
| 2d1e5c2376 | |||
| e6b7b50a83 | |||
| d604e82338 | |||
| fbf344ee62 | |||
| b416aa467c | |||
| 1316c2a6b5 | |||
| b54aee666e | |||
| f30068c764 | |||
| bc1ad0345d | |||
| 6c3b5403ae | |||
| 6066462044 | |||
| 570bbf7527 | |||
| d504b9f916 | |||
| 2238af4b39 | |||
| 6eb904cb5c | |||
| 7a849184e2 | |||
| a1ddf46f19 | |||
| 12d906d621 | |||
| 5f2efcfccf | |||
| 3b525ad301 | |||
| 63391a5809 | |||
| ef85b10faa | |||
| 0a7930581c | |||
| 04f324187e | |||
| 68b770830c | |||
| 0eff7742bb | |||
| fc0f28e2d5 | |||
| 9ee56e34c1 | |||
| e21a02f38c | |||
| 83f94266ac | |||
| c027308d60 | |||
| f216e96216 | |||
| 60d7305339 | |||
| 0ddfae15ea | |||
| b35f7c25af | |||
| f0def299a3 | |||
| 2ed8771450 | |||
| 2dc8e8a7a6 | |||
| d8cbcd3d45 | |||
| dd4d8de686 | |||
| 78a1d641a5 | |||
| ed8715ebb6 | |||
| 98679cf161 | |||
| 557ce44d70 | |||
| 8f069c435a | |||
| 9d829dd4d2 | |||
| 2e33064b5c | |||
| dd45519c32 | |||
| 52addd5738 | |||
| a4cca5f1e6 | |||
| 41827a3307 | |||
| ede34194aa | |||
| a4b7f8d3ff | |||
| 9cf34d8c2b | |||
| f8208bc072 | |||
| 254ca59c59 | |||
| 0620d55696 | |||
| 9346ddf3cb | |||
| 02be99d9b8 | |||
| 48706ec3a1 | |||
| f1dd6dd7b4 | |||
| daf2cf3ecd | |||
| 965fccb6c5 | |||
| 9a230cd02c | |||
| 7887f7fde8 | |||
| 5f2928c00e | |||
| 199cc69f8e | |||
| 483d719f7d | |||
| fa77c8f51d | |||
| 97fe551309 | |||
| f4dd6c9146 | |||
| e088196ec9 | |||
| a4319c476e | |||
| 3144d7170e | |||
| 0d51193a1a | |||
| 8cc75aa3b9 | |||
| 1d0591da47 |
@@ -1,2 +1,9 @@
|
||||
.htaccess
|
||||
/nbproject/
|
||||
/vendor/*
|
||||
!/vendor/easyui
|
||||
/.idea/
|
||||
documents/
|
||||
.settings
|
||||
.project
|
||||
.buildpath
|
||||
|
||||
@@ -0,0 +1,9 @@
|
||||
[submodule "submodules/tablesorter"]
|
||||
path = submodules/tablesorter
|
||||
url = https://github.com/christianbach/tablesorter.git
|
||||
[submodule "submodules/bootstrap"]
|
||||
path = submodules/bootstrap
|
||||
url = https://github.com/twbs/bootstrap.git
|
||||
[submodule "submodules/pivottable"]
|
||||
path = submodules/pivottable
|
||||
url = https://github.com/nicolaskruchten/pivottable.git
|
||||
@@ -0,0 +1,675 @@
|
||||
GNU GENERAL PUBLIC LICENSE
|
||||
Version 3, 29 June 2007
|
||||
|
||||
Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
|
||||
Everyone is permitted to copy and distribute verbatim copies
|
||||
of this license document, but changing it is not allowed.
|
||||
|
||||
Preamble
|
||||
|
||||
The GNU General Public License is a free, copyleft license for
|
||||
software and other kinds of works.
|
||||
|
||||
The licenses for most software and other practical works are designed
|
||||
to take away your freedom to share and change the works. By contrast,
|
||||
the GNU General Public License is intended to guarantee your freedom to
|
||||
share and change all versions of a program--to make sure it remains free
|
||||
software for all its users. We, the Free Software Foundation, use the
|
||||
GNU General Public License for most of our software; it applies also to
|
||||
any other work released this way by its authors. You can apply it to
|
||||
your programs, too.
|
||||
|
||||
When we speak of free software, we are referring to freedom, not
|
||||
price. Our General Public Licenses are designed to make sure that you
|
||||
have the freedom to distribute copies of free software (and charge for
|
||||
them if you wish), that you receive source code or can get it if you
|
||||
want it, that you can change the software or use pieces of it in new
|
||||
free programs, and that you know you can do these things.
|
||||
|
||||
To protect your rights, we need to prevent others from denying you
|
||||
these rights or asking you to surrender the rights. Therefore, you have
|
||||
certain responsibilities if you distribute copies of the software, or if
|
||||
you modify it: responsibilities to respect the freedom of others.
|
||||
|
||||
For example, if you distribute copies of such a program, whether
|
||||
gratis or for a fee, you must pass on to the recipients the same
|
||||
freedoms that you received. You must make sure that they, too, receive
|
||||
or can get the source code. And you must show them these terms so they
|
||||
know their rights.
|
||||
|
||||
Developers that use the GNU GPL protect your rights with two steps:
|
||||
(1) assert copyright on the software, and (2) offer you this License
|
||||
giving you legal permission to copy, distribute and/or modify it.
|
||||
|
||||
For the developers' and authors' protection, the GPL clearly explains
|
||||
that there is no warranty for this free software. For both users' and
|
||||
authors' sake, the GPL requires that modified versions be marked as
|
||||
changed, so that their problems will not be attributed erroneously to
|
||||
authors of previous versions.
|
||||
|
||||
Some devices are designed to deny users access to install or run
|
||||
modified versions of the software inside them, although the manufacturer
|
||||
can do so. This is fundamentally incompatible with the aim of
|
||||
protecting users' freedom to change the software. The systematic
|
||||
pattern of such abuse occurs in the area of products for individuals to
|
||||
use, which is precisely where it is most unacceptable. Therefore, we
|
||||
have designed this version of the GPL to prohibit the practice for those
|
||||
products. If such problems arise substantially in other domains, we
|
||||
stand ready to extend this provision to those domains in future versions
|
||||
of the GPL, as needed to protect the freedom of users.
|
||||
|
||||
Finally, every program is threatened constantly by software patents.
|
||||
States should not allow patents to restrict development and use of
|
||||
software on general-purpose computers, but in those that do, we wish to
|
||||
avoid the special danger that patents applied to a free program could
|
||||
make it effectively proprietary. To prevent this, the GPL assures that
|
||||
patents cannot be used to render the program non-free.
|
||||
|
||||
The precise terms and conditions for copying, distribution and
|
||||
modification follow.
|
||||
|
||||
TERMS AND CONDITIONS
|
||||
|
||||
0. Definitions.
|
||||
|
||||
"This License" refers to version 3 of the GNU General Public License.
|
||||
|
||||
"Copyright" also means copyright-like laws that apply to other kinds of
|
||||
works, such as semiconductor masks.
|
||||
|
||||
"The Program" refers to any copyrightable work licensed under this
|
||||
License. Each licensee is addressed as "you". "Licensees" and
|
||||
"recipients" may be individuals or organizations.
|
||||
|
||||
To "modify" a work means to copy from or adapt all or part of the work
|
||||
in a fashion requiring copyright permission, other than the making of an
|
||||
exact copy. The resulting work is called a "modified version" of the
|
||||
earlier work or a work "based on" the earlier work.
|
||||
|
||||
A "covered work" means either the unmodified Program or a work based
|
||||
on the Program.
|
||||
|
||||
To "propagate" a work means to do anything with it that, without
|
||||
permission, would make you directly or secondarily liable for
|
||||
infringement under applicable copyright law, except executing it on a
|
||||
computer or modifying a private copy. Propagation includes copying,
|
||||
distribution (with or without modification), making available to the
|
||||
public, and in some countries other activities as well.
|
||||
|
||||
To "convey" a work means any kind of propagation that enables other
|
||||
parties to make or receive copies. Mere interaction with a user through
|
||||
a computer network, with no transfer of a copy, is not conveying.
|
||||
|
||||
An interactive user interface displays "Appropriate Legal Notices"
|
||||
to the extent that it includes a convenient and prominently visible
|
||||
feature that (1) displays an appropriate copyright notice, and (2)
|
||||
tells the user that there is no warranty for the work (except to the
|
||||
extent that warranties are provided), that licensees may convey the
|
||||
work under this License, and how to view a copy of this License. If
|
||||
the interface presents a list of user commands or options, such as a
|
||||
menu, a prominent item in the list meets this criterion.
|
||||
|
||||
1. Source Code.
|
||||
|
||||
The "source code" for a work means the preferred form of the work
|
||||
for making modifications to it. "Object code" means any non-source
|
||||
form of a work.
|
||||
|
||||
A "Standard Interface" means an interface that either is an official
|
||||
standard defined by a recognized standards body, or, in the case of
|
||||
interfaces specified for a particular programming language, one that
|
||||
is widely used among developers working in that language.
|
||||
|
||||
The "System Libraries" of an executable work include anything, other
|
||||
than the work as a whole, that (a) is included in the normal form of
|
||||
packaging a Major Component, but which is not part of that Major
|
||||
Component, and (b) serves only to enable use of the work with that
|
||||
Major Component, or to implement a Standard Interface for which an
|
||||
implementation is available to the public in source code form. A
|
||||
"Major Component", in this context, means a major essential component
|
||||
(kernel, window system, and so on) of the specific operating system
|
||||
(if any) on which the executable work runs, or a compiler used to
|
||||
produce the work, or an object code interpreter used to run it.
|
||||
|
||||
The "Corresponding Source" for a work in object code form means all
|
||||
the source code needed to generate, install, and (for an executable
|
||||
work) run the object code and to modify the work, including scripts to
|
||||
control those activities. However, it does not include the work's
|
||||
System Libraries, or general-purpose tools or generally available free
|
||||
programs which are used unmodified in performing those activities but
|
||||
which are not part of the work. For example, Corresponding Source
|
||||
includes interface definition files associated with source files for
|
||||
the work, and the source code for shared libraries and dynamically
|
||||
linked subprograms that the work is specifically designed to require,
|
||||
such as by intimate data communication or control flow between those
|
||||
subprograms and other parts of the work.
|
||||
|
||||
The Corresponding Source need not include anything that users
|
||||
can regenerate automatically from other parts of the Corresponding
|
||||
Source.
|
||||
|
||||
The Corresponding Source for a work in source code form is that
|
||||
same work.
|
||||
|
||||
2. Basic Permissions.
|
||||
|
||||
All rights granted under this License are granted for the term of
|
||||
copyright on the Program, and are irrevocable provided the stated
|
||||
conditions are met. This License explicitly affirms your unlimited
|
||||
permission to run the unmodified Program. The output from running a
|
||||
covered work is covered by this License only if the output, given its
|
||||
content, constitutes a covered work. This License acknowledges your
|
||||
rights of fair use or other equivalent, as provided by copyright law.
|
||||
|
||||
You may make, run and propagate covered works that you do not
|
||||
convey, without conditions so long as your license otherwise remains
|
||||
in force. You may convey covered works to others for the sole purpose
|
||||
of having them make modifications exclusively for you, or provide you
|
||||
with facilities for running those works, provided that you comply with
|
||||
the terms of this License in conveying all material for which you do
|
||||
not control copyright. Those thus making or running the covered works
|
||||
for you must do so exclusively on your behalf, under your direction
|
||||
and control, on terms that prohibit them from making any copies of
|
||||
your copyrighted material outside their relationship with you.
|
||||
|
||||
Conveying under any other circumstances is permitted solely under
|
||||
the conditions stated below. Sublicensing is not allowed; section 10
|
||||
makes it unnecessary.
|
||||
|
||||
3. Protecting Users' Legal Rights From Anti-Circumvention Law.
|
||||
|
||||
No covered work shall be deemed part of an effective technological
|
||||
measure under any applicable law fulfilling obligations under article
|
||||
11 of the WIPO copyright treaty adopted on 20 December 1996, or
|
||||
similar laws prohibiting or restricting circumvention of such
|
||||
measures.
|
||||
|
||||
When you convey a covered work, you waive any legal power to forbid
|
||||
circumvention of technological measures to the extent such circumvention
|
||||
is effected by exercising rights under this License with respect to
|
||||
the covered work, and you disclaim any intention to limit operation or
|
||||
modification of the work as a means of enforcing, against the work's
|
||||
users, your or third parties' legal rights to forbid circumvention of
|
||||
technological measures.
|
||||
|
||||
4. Conveying Verbatim Copies.
|
||||
|
||||
You may convey verbatim copies of the Program's source code as you
|
||||
receive it, in any medium, provided that you conspicuously and
|
||||
appropriately publish on each copy an appropriate copyright notice;
|
||||
keep intact all notices stating that this License and any
|
||||
non-permissive terms added in accord with section 7 apply to the code;
|
||||
keep intact all notices of the absence of any warranty; and give all
|
||||
recipients a copy of this License along with the Program.
|
||||
|
||||
You may charge any price or no price for each copy that you convey,
|
||||
and you may offer support or warranty protection for a fee.
|
||||
|
||||
5. Conveying Modified Source Versions.
|
||||
|
||||
You may convey a work based on the Program, or the modifications to
|
||||
produce it from the Program, in the form of source code under the
|
||||
terms of section 4, provided that you also meet all of these conditions:
|
||||
|
||||
a) The work must carry prominent notices stating that you modified
|
||||
it, and giving a relevant date.
|
||||
|
||||
b) The work must carry prominent notices stating that it is
|
||||
released under this License and any conditions added under section
|
||||
7. This requirement modifies the requirement in section 4 to
|
||||
"keep intact all notices".
|
||||
|
||||
c) You must license the entire work, as a whole, under this
|
||||
License to anyone who comes into possession of a copy. This
|
||||
License will therefore apply, along with any applicable section 7
|
||||
additional terms, to the whole of the work, and all its parts,
|
||||
regardless of how they are packaged. This License gives no
|
||||
permission to license the work in any other way, but it does not
|
||||
invalidate such permission if you have separately received it.
|
||||
|
||||
d) If the work has interactive user interfaces, each must display
|
||||
Appropriate Legal Notices; however, if the Program has interactive
|
||||
interfaces that do not display Appropriate Legal Notices, your
|
||||
work need not make them do so.
|
||||
|
||||
A compilation of a covered work with other separate and independent
|
||||
works, which are not by their nature extensions of the covered work,
|
||||
and which are not combined with it such as to form a larger program,
|
||||
in or on a volume of a storage or distribution medium, is called an
|
||||
"aggregate" if the compilation and its resulting copyright are not
|
||||
used to limit the access or legal rights of the compilation's users
|
||||
beyond what the individual works permit. Inclusion of a covered work
|
||||
in an aggregate does not cause this License to apply to the other
|
||||
parts of the aggregate.
|
||||
|
||||
6. Conveying Non-Source Forms.
|
||||
|
||||
You may convey a covered work in object code form under the terms
|
||||
of sections 4 and 5, provided that you also convey the
|
||||
machine-readable Corresponding Source under the terms of this License,
|
||||
in one of these ways:
|
||||
|
||||
a) Convey the object code in, or embodied in, a physical product
|
||||
(including a physical distribution medium), accompanied by the
|
||||
Corresponding Source fixed on a durable physical medium
|
||||
customarily used for software interchange.
|
||||
|
||||
b) Convey the object code in, or embodied in, a physical product
|
||||
(including a physical distribution medium), accompanied by a
|
||||
written offer, valid for at least three years and valid for as
|
||||
long as you offer spare parts or customer support for that product
|
||||
model, to give anyone who possesses the object code either (1) a
|
||||
copy of the Corresponding Source for all the software in the
|
||||
product that is covered by this License, on a durable physical
|
||||
medium customarily used for software interchange, for a price no
|
||||
more than your reasonable cost of physically performing this
|
||||
conveying of source, or (2) access to copy the
|
||||
Corresponding Source from a network server at no charge.
|
||||
|
||||
c) Convey individual copies of the object code with a copy of the
|
||||
written offer to provide the Corresponding Source. This
|
||||
alternative is allowed only occasionally and noncommercially, and
|
||||
only if you received the object code with such an offer, in accord
|
||||
with subsection 6b.
|
||||
|
||||
d) Convey the object code by offering access from a designated
|
||||
place (gratis or for a charge), and offer equivalent access to the
|
||||
Corresponding Source in the same way through the same place at no
|
||||
further charge. You need not require recipients to copy the
|
||||
Corresponding Source along with the object code. If the place to
|
||||
copy the object code is a network server, the Corresponding Source
|
||||
may be on a different server (operated by you or a third party)
|
||||
that supports equivalent copying facilities, provided you maintain
|
||||
clear directions next to the object code saying where to find the
|
||||
Corresponding Source. Regardless of what server hosts the
|
||||
Corresponding Source, you remain obligated to ensure that it is
|
||||
available for as long as needed to satisfy these requirements.
|
||||
|
||||
e) Convey the object code using peer-to-peer transmission, provided
|
||||
you inform other peers where the object code and Corresponding
|
||||
Source of the work are being offered to the general public at no
|
||||
charge under subsection 6d.
|
||||
|
||||
A separable portion of the object code, whose source code is excluded
|
||||
from the Corresponding Source as a System Library, need not be
|
||||
included in conveying the object code work.
|
||||
|
||||
A "User Product" is either (1) a "consumer product", which means any
|
||||
tangible personal property which is normally used for personal, family,
|
||||
or household purposes, or (2) anything designed or sold for incorporation
|
||||
into a dwelling. In determining whether a product is a consumer product,
|
||||
doubtful cases shall be resolved in favor of coverage. For a particular
|
||||
product received by a particular user, "normally used" refers to a
|
||||
typical or common use of that class of product, regardless of the status
|
||||
of the particular user or of the way in which the particular user
|
||||
actually uses, or expects or is expected to use, the product. A product
|
||||
is a consumer product regardless of whether the product has substantial
|
||||
commercial, industrial or non-consumer uses, unless such uses represent
|
||||
the only significant mode of use of the product.
|
||||
|
||||
"Installation Information" for a User Product means any methods,
|
||||
procedures, authorization keys, or other information required to install
|
||||
and execute modified versions of a covered work in that User Product from
|
||||
a modified version of its Corresponding Source. The information must
|
||||
suffice to ensure that the continued functioning of the modified object
|
||||
code is in no case prevented or interfered with solely because
|
||||
modification has been made.
|
||||
|
||||
If you convey an object code work under this section in, or with, or
|
||||
specifically for use in, a User Product, and the conveying occurs as
|
||||
part of a transaction in which the right of possession and use of the
|
||||
User Product is transferred to the recipient in perpetuity or for a
|
||||
fixed term (regardless of how the transaction is characterized), the
|
||||
Corresponding Source conveyed under this section must be accompanied
|
||||
by the Installation Information. But this requirement does not apply
|
||||
if neither you nor any third party retains the ability to install
|
||||
modified object code on the User Product (for example, the work has
|
||||
been installed in ROM).
|
||||
|
||||
The requirement to provide Installation Information does not include a
|
||||
requirement to continue to provide support service, warranty, or updates
|
||||
for a work that has been modified or installed by the recipient, or for
|
||||
the User Product in which it has been modified or installed. Access to a
|
||||
network may be denied when the modification itself materially and
|
||||
adversely affects the operation of the network or violates the rules and
|
||||
protocols for communication across the network.
|
||||
|
||||
Corresponding Source conveyed, and Installation Information provided,
|
||||
in accord with this section must be in a format that is publicly
|
||||
documented (and with an implementation available to the public in
|
||||
source code form), and must require no special password or key for
|
||||
unpacking, reading or copying.
|
||||
|
||||
7. Additional Terms.
|
||||
|
||||
"Additional permissions" are terms that supplement the terms of this
|
||||
License by making exceptions from one or more of its conditions.
|
||||
Additional permissions that are applicable to the entire Program shall
|
||||
be treated as though they were included in this License, to the extent
|
||||
that they are valid under applicable law. If additional permissions
|
||||
apply only to part of the Program, that part may be used separately
|
||||
under those permissions, but the entire Program remains governed by
|
||||
this License without regard to the additional permissions.
|
||||
|
||||
When you convey a copy of a covered work, you may at your option
|
||||
remove any additional permissions from that copy, or from any part of
|
||||
it. (Additional permissions may be written to require their own
|
||||
removal in certain cases when you modify the work.) You may place
|
||||
additional permissions on material, added by you to a covered work,
|
||||
for which you have or can give appropriate copyright permission.
|
||||
|
||||
Notwithstanding any other provision of this License, for material you
|
||||
add to a covered work, you may (if authorized by the copyright holders of
|
||||
that material) supplement the terms of this License with terms:
|
||||
|
||||
a) Disclaiming warranty or limiting liability differently from the
|
||||
terms of sections 15 and 16 of this License; or
|
||||
|
||||
b) Requiring preservation of specified reasonable legal notices or
|
||||
author attributions in that material or in the Appropriate Legal
|
||||
Notices displayed by works containing it; or
|
||||
|
||||
c) Prohibiting misrepresentation of the origin of that material, or
|
||||
requiring that modified versions of such material be marked in
|
||||
reasonable ways as different from the original version; or
|
||||
|
||||
d) Limiting the use for publicity purposes of names of licensors or
|
||||
authors of the material; or
|
||||
|
||||
e) Declining to grant rights under trademark law for use of some
|
||||
trade names, trademarks, or service marks; or
|
||||
|
||||
f) Requiring indemnification of licensors and authors of that
|
||||
material by anyone who conveys the material (or modified versions of
|
||||
it) with contractual assumptions of liability to the recipient, for
|
||||
any liability that these contractual assumptions directly impose on
|
||||
those licensors and authors.
|
||||
|
||||
All other non-permissive additional terms are considered "further
|
||||
restrictions" within the meaning of section 10. If the Program as you
|
||||
received it, or any part of it, contains a notice stating that it is
|
||||
governed by this License along with a term that is a further
|
||||
restriction, you may remove that term. If a license document contains
|
||||
a further restriction but permits relicensing or conveying under this
|
||||
License, you may add to a covered work material governed by the terms
|
||||
of that license document, provided that the further restriction does
|
||||
not survive such relicensing or conveying.
|
||||
|
||||
If you add terms to a covered work in accord with this section, you
|
||||
must place, in the relevant source files, a statement of the
|
||||
additional terms that apply to those files, or a notice indicating
|
||||
where to find the applicable terms.
|
||||
|
||||
Additional terms, permissive or non-permissive, may be stated in the
|
||||
form of a separately written license, or stated as exceptions;
|
||||
the above requirements apply either way.
|
||||
|
||||
8. Termination.
|
||||
|
||||
You may not propagate or modify a covered work except as expressly
|
||||
provided under this License. Any attempt otherwise to propagate or
|
||||
modify it is void, and will automatically terminate your rights under
|
||||
this License (including any patent licenses granted under the third
|
||||
paragraph of section 11).
|
||||
|
||||
However, if you cease all violation of this License, then your
|
||||
license from a particular copyright holder is reinstated (a)
|
||||
provisionally, unless and until the copyright holder explicitly and
|
||||
finally terminates your license, and (b) permanently, if the copyright
|
||||
holder fails to notify you of the violation by some reasonable means
|
||||
prior to 60 days after the cessation.
|
||||
|
||||
Moreover, your license from a particular copyright holder is
|
||||
reinstated permanently if the copyright holder notifies you of the
|
||||
violation by some reasonable means, this is the first time you have
|
||||
received notice of violation of this License (for any work) from that
|
||||
copyright holder, and you cure the violation prior to 30 days after
|
||||
your receipt of the notice.
|
||||
|
||||
Termination of your rights under this section does not terminate the
|
||||
licenses of parties who have received copies or rights from you under
|
||||
this License. If your rights have been terminated and not permanently
|
||||
reinstated, you do not qualify to receive new licenses for the same
|
||||
material under section 10.
|
||||
|
||||
9. Acceptance Not Required for Having Copies.
|
||||
|
||||
You are not required to accept this License in order to receive or
|
||||
run a copy of the Program. Ancillary propagation of a covered work
|
||||
occurring solely as a consequence of using peer-to-peer transmission
|
||||
to receive a copy likewise does not require acceptance. However,
|
||||
nothing other than this License grants you permission to propagate or
|
||||
modify any covered work. These actions infringe copyright if you do
|
||||
not accept this License. Therefore, by modifying or propagating a
|
||||
covered work, you indicate your acceptance of this License to do so.
|
||||
|
||||
10. Automatic Licensing of Downstream Recipients.
|
||||
|
||||
Each time you convey a covered work, the recipient automatically
|
||||
receives a license from the original licensors, to run, modify and
|
||||
propagate that work, subject to this License. You are not responsible
|
||||
for enforcing compliance by third parties with this License.
|
||||
|
||||
An "entity transaction" is a transaction transferring control of an
|
||||
organization, or substantially all assets of one, or subdividing an
|
||||
organization, or merging organizations. If propagation of a covered
|
||||
work results from an entity transaction, each party to that
|
||||
transaction who receives a copy of the work also receives whatever
|
||||
licenses to the work the party's predecessor in interest had or could
|
||||
give under the previous paragraph, plus a right to possession of the
|
||||
Corresponding Source of the work from the predecessor in interest, if
|
||||
the predecessor has it or can get it with reasonable efforts.
|
||||
|
||||
You may not impose any further restrictions on the exercise of the
|
||||
rights granted or affirmed under this License. For example, you may
|
||||
not impose a license fee, royalty, or other charge for exercise of
|
||||
rights granted under this License, and you may not initiate litigation
|
||||
(including a cross-claim or counterclaim in a lawsuit) alleging that
|
||||
any patent claim is infringed by making, using, selling, offering for
|
||||
sale, or importing the Program or any portion of it.
|
||||
|
||||
11. Patents.
|
||||
|
||||
A "contributor" is a copyright holder who authorizes use under this
|
||||
License of the Program or a work on which the Program is based. The
|
||||
work thus licensed is called the contributor's "contributor version".
|
||||
|
||||
A contributor's "essential patent claims" are all patent claims
|
||||
owned or controlled by the contributor, whether already acquired or
|
||||
hereafter acquired, that would be infringed by some manner, permitted
|
||||
by this License, of making, using, or selling its contributor version,
|
||||
but do not include claims that would be infringed only as a
|
||||
consequence of further modification of the contributor version. For
|
||||
purposes of this definition, "control" includes the right to grant
|
||||
patent sublicenses in a manner consistent with the requirements of
|
||||
this License.
|
||||
|
||||
Each contributor grants you a non-exclusive, worldwide, royalty-free
|
||||
patent license under the contributor's essential patent claims, to
|
||||
make, use, sell, offer for sale, import and otherwise run, modify and
|
||||
propagate the contents of its contributor version.
|
||||
|
||||
In the following three paragraphs, a "patent license" is any express
|
||||
agreement or commitment, however denominated, not to enforce a patent
|
||||
(such as an express permission to practice a patent or covenant not to
|
||||
sue for patent infringement). To "grant" such a patent license to a
|
||||
party means to make such an agreement or commitment not to enforce a
|
||||
patent against the party.
|
||||
|
||||
If you convey a covered work, knowingly relying on a patent license,
|
||||
and the Corresponding Source of the work is not available for anyone
|
||||
to copy, free of charge and under the terms of this License, through a
|
||||
publicly available network server or other readily accessible means,
|
||||
then you must either (1) cause the Corresponding Source to be so
|
||||
available, or (2) arrange to deprive yourself of the benefit of the
|
||||
patent license for this particular work, or (3) arrange, in a manner
|
||||
consistent with the requirements of this License, to extend the patent
|
||||
license to downstream recipients. "Knowingly relying" means you have
|
||||
actual knowledge that, but for the patent license, your conveying the
|
||||
covered work in a country, or your recipient's use of the covered work
|
||||
in a country, would infringe one or more identifiable patents in that
|
||||
country that you have reason to believe are valid.
|
||||
|
||||
If, pursuant to or in connection with a single transaction or
|
||||
arrangement, you convey, or propagate by procuring conveyance of, a
|
||||
covered work, and grant a patent license to some of the parties
|
||||
receiving the covered work authorizing them to use, propagate, modify
|
||||
or convey a specific copy of the covered work, then the patent license
|
||||
you grant is automatically extended to all recipients of the covered
|
||||
work and works based on it.
|
||||
|
||||
A patent license is "discriminatory" if it does not include within
|
||||
the scope of its coverage, prohibits the exercise of, or is
|
||||
conditioned on the non-exercise of one or more of the rights that are
|
||||
specifically granted under this License. You may not convey a covered
|
||||
work if you are a party to an arrangement with a third party that is
|
||||
in the business of distributing software, under which you make payment
|
||||
to the third party based on the extent of your activity of conveying
|
||||
the work, and under which the third party grants, to any of the
|
||||
parties who would receive the covered work from you, a discriminatory
|
||||
patent license (a) in connection with copies of the covered work
|
||||
conveyed by you (or copies made from those copies), or (b) primarily
|
||||
for and in connection with specific products or compilations that
|
||||
contain the covered work, unless you entered into that arrangement,
|
||||
or that patent license was granted, prior to 28 March 2007.
|
||||
|
||||
Nothing in this License shall be construed as excluding or limiting
|
||||
any implied license or other defenses to infringement that may
|
||||
otherwise be available to you under applicable patent law.
|
||||
|
||||
12. No Surrender of Others' Freedom.
|
||||
|
||||
If conditions are imposed on you (whether by court order, agreement or
|
||||
otherwise) that contradict the conditions of this License, they do not
|
||||
excuse you from the conditions of this License. If you cannot convey a
|
||||
covered work so as to satisfy simultaneously your obligations under this
|
||||
License and any other pertinent obligations, then as a consequence you may
|
||||
not convey it at all. For example, if you agree to terms that obligate you
|
||||
to collect a royalty for further conveying from those to whom you convey
|
||||
the Program, the only way you could satisfy both those terms and this
|
||||
License would be to refrain entirely from conveying the Program.
|
||||
|
||||
13. Use with the GNU Affero General Public License.
|
||||
|
||||
Notwithstanding any other provision of this License, you have
|
||||
permission to link or combine any covered work with a work licensed
|
||||
under version 3 of the GNU Affero General Public License into a single
|
||||
combined work, and to convey the resulting work. The terms of this
|
||||
License will continue to apply to the part which is the covered work,
|
||||
but the special requirements of the GNU Affero General Public License,
|
||||
section 13, concerning interaction through a network will apply to the
|
||||
combination as such.
|
||||
|
||||
14. Revised Versions of this License.
|
||||
|
||||
The Free Software Foundation may publish revised and/or new versions of
|
||||
the GNU General Public License from time to time. Such new versions will
|
||||
be similar in spirit to the present version, but may differ in detail to
|
||||
address new problems or concerns.
|
||||
|
||||
Each version is given a distinguishing version number. If the
|
||||
Program specifies that a certain numbered version of the GNU General
|
||||
Public License "or any later version" applies to it, you have the
|
||||
option of following the terms and conditions either of that numbered
|
||||
version or of any later version published by the Free Software
|
||||
Foundation. If the Program does not specify a version number of the
|
||||
GNU General Public License, you may choose any version ever published
|
||||
by the Free Software Foundation.
|
||||
|
||||
If the Program specifies that a proxy can decide which future
|
||||
versions of the GNU General Public License can be used, that proxy's
|
||||
public statement of acceptance of a version permanently authorizes you
|
||||
to choose that version for the Program.
|
||||
|
||||
Later license versions may give you additional or different
|
||||
permissions. However, no additional obligations are imposed on any
|
||||
author or copyright holder as a result of your choosing to follow a
|
||||
later version.
|
||||
|
||||
15. Disclaimer of Warranty.
|
||||
|
||||
THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
|
||||
APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
|
||||
HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
|
||||
OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
|
||||
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
||||
PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
|
||||
IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
|
||||
ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
|
||||
|
||||
16. Limitation of Liability.
|
||||
|
||||
IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
|
||||
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
|
||||
THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
|
||||
GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
|
||||
USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
|
||||
DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
|
||||
PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),
|
||||
EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
|
||||
SUCH DAMAGES.
|
||||
|
||||
17. Interpretation of Sections 15 and 16.
|
||||
|
||||
If the disclaimer of warranty and limitation of liability provided
|
||||
above cannot be given local legal effect according to their terms,
|
||||
reviewing courts shall apply local law that most closely approximates
|
||||
an absolute waiver of all civil liability in connection with the
|
||||
Program, unless a warranty or assumption of liability accompanies a
|
||||
copy of the Program in return for a fee.
|
||||
|
||||
END OF TERMS AND CONDITIONS
|
||||
|
||||
How to Apply These Terms to Your New Programs
|
||||
|
||||
If you develop a new program, and you want it to be of the greatest
|
||||
possible use to the public, the best way to achieve this is to make it
|
||||
free software which everyone can redistribute and change under these terms.
|
||||
|
||||
To do so, attach the following notices to the program. It is safest
|
||||
to attach them to the start of each source file to most effectively
|
||||
state the exclusion of warranty; and each file should have at least
|
||||
the "copyright" line and a pointer to where the full notice is found.
|
||||
|
||||
{one line to give the program's name and a brief idea of what it does.}
|
||||
Copyright (C) {year} {name of author}
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
Also add information on how to contact you by electronic and paper mail.
|
||||
|
||||
If the program does terminal interaction, make it output a short
|
||||
notice like this when it starts in an interactive mode:
|
||||
|
||||
{project} Copyright (C) {year} {fullname}
|
||||
This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
|
||||
This is free software, and you are welcome to redistribute it
|
||||
under certain conditions; type `show c' for details.
|
||||
|
||||
The hypothetical commands `show w' and `show c' should show the appropriate
|
||||
parts of the General Public License. Of course, your program's commands
|
||||
might be different; for a GUI interface, you would use an "about box".
|
||||
|
||||
You should also get your employer (if you work as a programmer) or school,
|
||||
if any, to sign a "copyright disclaimer" for the program, if necessary.
|
||||
For more information on this, and how to apply and follow the GNU GPL, see
|
||||
<http://www.gnu.org/licenses/>.
|
||||
|
||||
The GNU General Public License does not permit incorporating your program
|
||||
into proprietary programs. If your program is a subroutine library, you
|
||||
may consider it more useful to permit linking proprietary applications with
|
||||
the library. If this is what you want to do, use the GNU Lesser General
|
||||
Public License instead of this License. But first, please read
|
||||
<http://www.gnu.org/philosophy/why-not-lgpl.html>.
|
||||
|
||||
@@ -44,20 +44,20 @@ function generateUID($stgkzl, $jahr, $stgtyp, $matrikelnummer)
|
||||
* @param $nachname Nachname
|
||||
* @param $lektor Boolean true wenn Lektor sonst false
|
||||
*/
|
||||
function generateMitarbeiterUID($vorname, $nachname, $lektor)
|
||||
function generateMitarbeiterUID($vorname, $nachname, $lektor, $fixangestellt=true)
|
||||
{
|
||||
$bn = new benutzer();
|
||||
$uid='';
|
||||
|
||||
// Wenn ein Bindestrich vorhanden ist (Doppelname), dort abschneiden
|
||||
if(mb_strpos($nachname,'-')!==false)
|
||||
if(mb_strpos($nachname,'-')!==false)
|
||||
$nachname = mb_substr($nachname, 0, mb_strpos($nachname,'-'));
|
||||
// Nachname wird so lange verkuerzt bis eine eindeutige UID entsteht die noch nicht vergeben ist
|
||||
for($nn=18;$nn!=0;$nn--)
|
||||
{
|
||||
$uid = mb_substr($vorname,0,1);
|
||||
$uid .= mb_substr($nachname,0,$nn);
|
||||
|
||||
|
||||
$uid = mb_str_replace(' ','',$uid);
|
||||
$uid = mb_str_replace('-','',$uid);
|
||||
|
||||
|
||||
+3
-9
@@ -15,15 +15,9 @@
|
||||
<td class="boxshadow">
|
||||
<table cellspacing="0" cellpadding="0" class="header">
|
||||
<tr>
|
||||
<td valign="top" align="left">
|
||||
<img class="header_logo" src="../skin/images/logo.png" alt="logo">
|
||||
<img class="header_left" src="../skin/images/header_left.png" alt="header_links">
|
||||
<img class="header_right" src="../skin/images/header_right.png" alt="header_rechts">
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="center" valign="middle">
|
||||
<img src="../skin/images/cis_logo_400px.png" height="70" />
|
||||
<td align="center" valign="middle" style="background-image: url(../skin/styles/default/header.png); background-position: top; background-repeat: repeat-x;">
|
||||
<img class="header_logo" src="../skin/styles/default/logo_250x130.png" alt="logo">
|
||||
<img src="../skin/styles/default/cis_logo_text_400x78.png" />
|
||||
<br><br><br>
|
||||
<!--Herzlich Willkommen im Campus Informationssystem (CIS)-->
|
||||
<br>
|
||||
|
||||
+4
-5
@@ -161,17 +161,16 @@ function loadampel()
|
||||
<td class="boxshadow">
|
||||
<table cellspacing="0" cellpadding="0" class="header">
|
||||
<tr>
|
||||
<td valign="top" align="left">
|
||||
<a href="index.php"><img class="header_logo" src="../skin/images/logo.png" alt="logo"></a>
|
||||
<img class="header_left" src="../skin/images/header_left.png" alt="header_links">
|
||||
<img class="header_right" src="../skin/images/header_right.png" alt="header_rechts">
|
||||
<td valign="top" align="left" style="background-image: url(<?php echo APP_ROOT.'skin/styles/'.DEFAULT_STYLE.'/header.png'; ?>); background-position: top; background-repeat: repeat-x;">
|
||||
<a href="index.php"><img class="header_logo" src="<?php echo APP_ROOT.'skin/styles/'.DEFAULT_STYLE.'/logo_250x130.png'; ?>" alt="logo"></a>
|
||||
<!--<img class="header" src="<?php echo APP_ROOT.'skin/styles/'.DEFAULT_STYLE.'/header.png'; ?>" alt="header">-->
|
||||
<table class="header_content" cellpadding="0">
|
||||
<tr>
|
||||
<td width="20%" align="center">
|
||||
</td>
|
||||
<td valign="middle" align="center">
|
||||
<form name="searchform" action="private/tools/suche.php" method="GET" target="content" style="display:inline">
|
||||
<input id="globalsearch" type="search" size="55" name="search" placeholder=" <?php echo $p->t('menu/suchePersonOrtDokumentInhalt');?> ..."/>
|
||||
<input id="globalsearch" type="search" size="55" name="search" placeholder=" <?php echo $p->t('menu/suchePersonOrtDokumentInhalt');?> ..." title="<?php echo $p->t('menu/suchePersonOrtDokumentInhaltLang');?>"/>
|
||||
<img src="../skin/images/search.png" onclick="document.searchform.submit()" class="suchicon"/>
|
||||
</form>
|
||||
</td>
|
||||
|
||||
+87
-54
@@ -41,6 +41,7 @@
|
||||
require_once('../../include/konto.class.php');
|
||||
require_once('../../include/functions.inc.php');
|
||||
require_once('../../include/authentication.class.php');
|
||||
require_once('../../include/addon.class.php');
|
||||
require_once('../../include/'.EXT_FKT_PATH.'/serviceterminal.inc.php');
|
||||
|
||||
if (!$db = new basis_db())
|
||||
@@ -66,6 +67,9 @@
|
||||
// Request Parameter
|
||||
// ------------------------------------------------------------------------------------------
|
||||
$timer=trim((isset($_REQUEST['timer']) ? $_REQUEST['timer']:0));
|
||||
if(!isset($ServiceTerminalDefaultRaumtyp))
|
||||
$ServiceTerminalDefaultRaumtyp='HS';
|
||||
|
||||
// Raumtyp
|
||||
$raumtyp_kurzbz=trim((isset($_REQUEST['raumtyp_kurzbz']) ? $_REQUEST['raumtyp_kurzbz']:$ServiceTerminalDefaultRaumtyp));
|
||||
// Saal - Raum
|
||||
@@ -92,7 +96,7 @@
|
||||
unset($_SESSION[constSESSIONNAME]);
|
||||
$uid='';
|
||||
$work='raumanzeigen';
|
||||
$raumtyp_kurzbz='EDV';
|
||||
$raumtyp_kurzbz=$ServiceTerminalDefaultRaumtyp;
|
||||
}
|
||||
|
||||
|
||||
@@ -107,22 +111,49 @@
|
||||
// Login Prozedure wenn Anmeldung ueber einen Schluessel erfolgte
|
||||
// - Lesen der Betriebsmittel um Anwender zu ermitteln ( es wird hier kein Passwort benoetigt / LDAP )
|
||||
$cardlogin=false;
|
||||
$cardnumber = "";
|
||||
if ($db && !empty($key_input)) // Login
|
||||
{
|
||||
// Pruefen ob es sich um eine HEX Eingabe handelt
|
||||
|
||||
$betriebsmittel = new betriebsmittel();
|
||||
//$key_input = $betriebsmittel->transform_kartennummer($key_input);
|
||||
// Pruefen ob es sich um eine HEX Eingabe handelt
|
||||
$betriebsmittel = new betriebsmittel();
|
||||
//$key_input = $betriebsmittel->transform_kartennummer($key_input);
|
||||
|
||||
// führende nullen entfernen
|
||||
$key_input = preg_replace("/^0*/", "", $key_input);
|
||||
$uidStudent = getUidFromCardNumber($key_input);
|
||||
if($uidStudent != false)
|
||||
// führende nullen entfernen
|
||||
$key_input = preg_replace("/^0*/", "", $key_input);
|
||||
$uidStudent = getUidFromCardNumber($key_input);
|
||||
if($uidStudent != false)
|
||||
{
|
||||
$uid = $uidStudent;
|
||||
$work = "login";
|
||||
$cardlogin = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$addon_externeAusweise = false;
|
||||
$addon = new addon();
|
||||
$addon->loadAddons();
|
||||
foreach($addon->result as $ad)
|
||||
{
|
||||
$uid = $uidStudent;
|
||||
$work = "login";
|
||||
$cardlogin = true;
|
||||
if($ad->kurzbz == "externeAusweise")
|
||||
{
|
||||
$addon_externeAusweise = true;
|
||||
}
|
||||
}
|
||||
|
||||
if($addon_externeAusweise)
|
||||
{
|
||||
require_once (dirname(__FILE__).'/../../addons/externeAusweise/include/idCard.class.php');
|
||||
$idCard = new idCard();
|
||||
if($idCard->loadByCardnumber($key_input))
|
||||
{
|
||||
$uid = "";
|
||||
$cardnumber = $idCard->cardnumber;
|
||||
$work = "verlaengerung";
|
||||
$cardlogin = true;
|
||||
$_SESSION[constSESSIONNAME]["uid"]=$cardnumber;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (mb_strtolower($work)=='login')
|
||||
@@ -168,7 +199,7 @@
|
||||
// ------------------------------------------------------------------------------------------
|
||||
// Linkes Auswahlmenue fuer Raumtypen
|
||||
// ------------------------------------------------------------------------------------------
|
||||
if(!is_null($ServiceTerminalRaumtypen))
|
||||
if(isset($ServiceTerminalRaumtypen) && !is_null($ServiceTerminalRaumtypen))
|
||||
$row_ort = $ServiceTerminalRaumtypen;
|
||||
else
|
||||
{
|
||||
@@ -485,7 +516,7 @@ $refreshtime = ($sdtools?99999:(isset($_SESSION[constSESSIONNAME]["uid"]) && !em
|
||||
echo '<a href="'.htmlspecialchars($_SERVER['PHP_SELF']).'?standort_id='.$standort_id.'">
|
||||
<img alt="Logo" src="../../skin/styles/'.DEFAULT_STYLE.'/logo.png" border="0" style="max-width: 170px; max-height: 150px">
|
||||
</a></td></tr>';
|
||||
if(isset($_SESSION[constSESSIONNAME]["uid"]) && !empty($_SESSION[constSESSIONNAME]["uid"]) )
|
||||
if(isset($_SESSION[constSESSIONNAME]["uid"]) && !empty($_SESSION[constSESSIONNAME]["uid"]) && !empty($_SESSION[constSESSIONNAME]["pwd"]))
|
||||
{
|
||||
//Angemeldeter User - Stundenplan der Woche
|
||||
echo '
|
||||
@@ -506,8 +537,7 @@ $refreshtime = ($sdtools?99999:(isset($_SESSION[constSESSIONNAME]["uid"]) && !em
|
||||
|
||||
// Tabelle der Raumtypen
|
||||
echo html_output_liste_raumtypen($row_ort);
|
||||
|
||||
if(isset($_SESSION[constSESSIONNAME]["uid"]) && !empty($_SESSION[constSESSIONNAME]["uid"]) )
|
||||
if(isset($_SESSION[constSESSIONNAME]["uid"]) && !empty($_SESSION[constSESSIONNAME]["uid"]) && empty($cardnumber))
|
||||
{
|
||||
//Angemeldeter User - Stundenplan der Woche
|
||||
echo '
|
||||
@@ -533,8 +563,10 @@ $refreshtime = ($sdtools?99999:(isset($_SESSION[constSESSIONNAME]["uid"]) && !em
|
||||
else
|
||||
{
|
||||
// Lageplan
|
||||
if(defined('CIS_INFOSCREEN_LAGEPLAN_ANZEIGEN') && CIS_INFOSCREEN_LAGEPLAN_ANZEIGEN)
|
||||
{
|
||||
echo '
|
||||
<tr class="cursor_hand">
|
||||
<tr class="cursor_hand">
|
||||
<td>
|
||||
<a href="'.htmlspecialchars($_SERVER['PHP_SELF']).'?work=lageplan&standort_id='.$standort_id.'">
|
||||
<span class="blau_mitteText">
|
||||
@@ -543,6 +575,7 @@ $refreshtime = ($sdtools?99999:(isset($_SESSION[constSESSIONNAME]["uid"]) && !em
|
||||
</a>
|
||||
</td>
|
||||
</tr>';
|
||||
}
|
||||
}
|
||||
|
||||
echo '<tr><td> </td></tr>';
|
||||
@@ -607,7 +640,7 @@ $refreshtime = ($sdtools?99999:(isset($_SESSION[constSESSIONNAME]["uid"]) && !em
|
||||
}
|
||||
else if (strtolower($work)==strtolower("verlaengerung") && isset($_SESSION[constSESSIONNAME]))
|
||||
{
|
||||
karten_verlaengerung($_SESSION[constSESSIONNAME]["uid"]);
|
||||
karten_verlaengerung($_SESSION[constSESSIONNAME]["uid"],$cardnumber);
|
||||
}
|
||||
else if (mb_strtolower($work)==mb_strtolower("stundenplan") && isset($_SESSION[constSESSIONNAME]["uid"]) && !empty($_SESSION[constSESSIONNAME]["uid"]) )
|
||||
{
|
||||
@@ -749,46 +782,46 @@ function meine_uid_informationen($db,$uid,$user="")
|
||||
* Zeigt die Oberfläche zur Kartenverlängerung an
|
||||
* @param $uid Userkurzzeichen
|
||||
*/
|
||||
function karten_verlaengerung($uid)
|
||||
function karten_verlaengerung($uid, $cardnumber=NULL)
|
||||
{
|
||||
$studienbeitrag = false;
|
||||
|
||||
|
||||
// Mitarbeiter brauchen die Karte nicht verlängern
|
||||
|
||||
$cardPerson = new benutzer();
|
||||
if(!$cardPerson->load($uid))
|
||||
if(is_null($cardnumber))
|
||||
{
|
||||
die('Konnte User nicht laden');
|
||||
$studienbeitrag = false;
|
||||
// Mitarbeiter brauchen die Karte nicht verlängern
|
||||
|
||||
$cardPerson = new benutzer();
|
||||
if(!$cardPerson->load($uid))
|
||||
{
|
||||
die('Konnte User nicht laden');
|
||||
}
|
||||
|
||||
$html_user_daten='';
|
||||
$html_user_daten.='<h1>Verlängerung Studienausweis</h1>';
|
||||
$html_user_daten.='<table>
|
||||
<tr>
|
||||
<td valign="top">
|
||||
<table>
|
||||
<tr>
|
||||
<td><b><font size="+2">'.($cardPerson->titelpre?$cardPerson->titelpre.' ':'').$cardPerson->vorname.' '.$cardPerson->nachname.' '.($cardPerson->titelpost?$cardPerson->titelpost:'').'</font></b> </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td></td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
<td valign="top">
|
||||
<table>
|
||||
<tr><td> </td></tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
</table>';
|
||||
|
||||
echo $html_user_daten;
|
||||
}
|
||||
|
||||
$html_user_daten='';
|
||||
$html_user_daten.='<h1>Verlängerung Studienausweis</h1>';
|
||||
$html_user_daten.='<table>
|
||||
<tr>
|
||||
<td valign="top">
|
||||
<table>
|
||||
<tr>
|
||||
<td><b><font size="+2">'.($cardPerson->titelpre?$cardPerson->titelpre.' ':'').$cardPerson->vorname.' '.$cardPerson->nachname.' '.($cardPerson->titelpost?$cardPerson->titelpost:'').'</font></b> </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td></td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
<td valign="top">
|
||||
<table>
|
||||
<tr><td> </td></tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
</table>';
|
||||
|
||||
echo $html_user_daten;
|
||||
|
||||
// User zur Karte konnte nicht geladen werden
|
||||
|
||||
$data = ServiceTerminalCheckVerlaengerung($uid);
|
||||
$data = ServiceTerminalCheckVerlaengerung($uid, $cardnumber);
|
||||
|
||||
if($data[0]===true)
|
||||
{
|
||||
@@ -1621,7 +1654,7 @@ function stundenplan_raum($db,$ort_kurzbz="",$datum="",$stunde_von,$stunde_bis=0
|
||||
$qry.=' SELECT studiengang_kz,0 as "stundenplan_id",tbl_reservierung.reservierung_id,tbl_reservierung.ort_kurzbz,tbl_reservierung.titel,tbl_reservierung.semester,tbl_reservierung.studiengang_kz,tbl_reservierung.verband, tbl_reservierung.gruppe , to_char(tbl_reservierung.datum, \'YYYYMMDD\') as "datum_jjjjmmtt", to_char(tbl_reservierung.datum, \'IW\') as "datum_woche" , tbl_stunde.beginn, tbl_stunde.ende , to_char(tbl_stunde.beginn, \'HH24:MI\') as "beginn_anzeige" , to_char(tbl_stunde.ende, \'HH24:MI\') as "ende_anzeige" , EXTRACT(EPOCH FROM tbl_reservierung.datum) as "datum_timestamp" ,tbl_stunde.stunde ';
|
||||
$qry.=' FROM campus.tbl_reservierung , lehre.tbl_stunde ';
|
||||
$qry.=" WHERE tbl_stunde.stunde=tbl_reservierung.stunde ";
|
||||
$qry.=" and tbl_reservierung.stunde between ". $db->db_add_param(trim($stunde_von), FHC_STRING) ." and ". $db->db_add_param(trim($stunde_bis, FHC_STRING)) ;
|
||||
$qry.=" and tbl_reservierung.stunde between ". $db->db_add_param(trim($stunde_von), FHC_STRING) ." and ". $db->db_add_param(trim($stunde_bis), FHC_STRING) ;
|
||||
|
||||
$datum_obj = new datum();
|
||||
if (!empty($datum))
|
||||
|
||||
+297
-153
@@ -24,6 +24,7 @@
|
||||
|
||||
// Oberflaeche zum Upload von Bildern
|
||||
|
||||
session_cache_limiter('none'); //muss gesetzt werden damit der upload in chrome und das automatische updaten des profilbildes funktioniert
|
||||
require_once('../../config/cis.config.inc.php');
|
||||
require_once('../../include/functions.inc.php');
|
||||
require_once('../../include/person.class.php');
|
||||
@@ -41,6 +42,14 @@ echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<link href="../../skin/style.css.php" rel="stylesheet" type="text/css">
|
||||
<link rel="stylesheet" type="text/css" href="../../skin/jquery-ui.css">
|
||||
<link rel="stylesheet" type="text/css" href="../../skin/simplecropper.css">'.
|
||||
cropCss().'
|
||||
<script type="text/javascript" src="../../include/js/jquery.js"></script>
|
||||
<script type="text/javascript" src="../../include/js/jquery.min.1.11.1.js"></script>
|
||||
<script type="text/javascript" src="../../include/js/jquery.Jcrop.js"></script>
|
||||
<script type="text/javascript" src="../../include/js/jquery.SimpleCropper.js"></script>
|
||||
<script type="text/javascript" src="../../include/js/cropper.js"></script>
|
||||
<title>'.$p->t('profil/Bildupload').'</title>
|
||||
</head>
|
||||
<body>
|
||||
@@ -48,37 +57,38 @@ echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www
|
||||
|
||||
function resize($filename, $width, $height)
|
||||
{
|
||||
$ext = explode('.',$_FILES['bild']['name']);
|
||||
$ext = strtolower($ext[count($ext)-1]);
|
||||
|
||||
// Hoehe und Breite neu berechnen
|
||||
list($width_orig, $height_orig) = getimagesize($filename);
|
||||
|
||||
if ($width && ($width_orig < $height_orig))
|
||||
{
|
||||
$width = ($height / $height_orig) * $width_orig;
|
||||
}
|
||||
else
|
||||
{
|
||||
$height = ($width / $width_orig) * $height_orig;
|
||||
}
|
||||
$ext = explode('.',$_FILES['bild']['name']);
|
||||
$ext = strtolower($ext[count($ext)-1]);
|
||||
|
||||
$image_p = imagecreatetruecolor($width, $height);
|
||||
// Hoehe und Breite neu berechnen
|
||||
list($width_orig, $height_orig) = getimagesize($filename);
|
||||
|
||||
if ($width && ($width_orig < $height_orig))
|
||||
{
|
||||
$width = ($height / $height_orig) * $width_orig;
|
||||
}
|
||||
else
|
||||
{
|
||||
$height = ($width / $width_orig) * $height_orig;
|
||||
}
|
||||
|
||||
$image_p = imagecreatetruecolor($width, $height);
|
||||
|
||||
$image = imagecreatefromjpeg($filename);
|
||||
|
||||
//Bild nur verkleinern aber nicht vergroessern
|
||||
if($width_orig>$width || $height_orig>$height)
|
||||
imagecopyresampled($image_p, $image, 0, 0, 0, 0, $width, $height, $width_orig, $height_orig);
|
||||
else
|
||||
$image_p = $image;
|
||||
|
||||
$image = imagecreatefromjpeg($filename);
|
||||
|
||||
//Bild nur verkleinern aber nicht vergroessern
|
||||
if($width_orig>$width || $height_orig>$height)
|
||||
imagecopyresampled($image_p, $image, 0, 0, 0, 0, $width, $height, $width_orig, $height_orig);
|
||||
else
|
||||
$image_p = $image;
|
||||
|
||||
imagejpeg($image_p, $filename, 80);
|
||||
|
||||
@imagedestroy($image_p);
|
||||
@imagedestroy($image);
|
||||
imagejpeg($image_p, $filename, 80);
|
||||
|
||||
@imagedestroy($image_p);
|
||||
@imagedestroy($image);
|
||||
}
|
||||
|
||||
|
||||
if(isset($_GET['person_id']))
|
||||
{
|
||||
$benutzer = new benutzer();
|
||||
@@ -94,134 +104,268 @@ if(isset($_GET['person_id']))
|
||||
else
|
||||
die($p->t('global/fehlerBeiDerParameteruebergabe'));
|
||||
|
||||
//Bei Upload des Bildes
|
||||
if(isset($_POST['submitbild']))
|
||||
{
|
||||
if(isset($_FILES['bild']['tmp_name']))
|
||||
{
|
||||
//Extension herausfiltern
|
||||
$ext = explode('.',$_FILES['bild']['name']);
|
||||
$ext = mb_strtolower($ext[count($ext)-1]);
|
||||
|
||||
$width=101;
|
||||
$height=130;
|
||||
|
||||
//--check that it's a jpeg
|
||||
if ($ext=='jpg' || $ext=='jpeg')
|
||||
{
|
||||
$filename = $_FILES['bild']['tmp_name'];
|
||||
|
||||
//groesse auf maximal 827x1063 begrenzen
|
||||
resize($filename, 827, 1063);
|
||||
|
||||
$fp = fopen($filename,'r');
|
||||
//auslesen
|
||||
$content = fread($fp, filesize($filename));
|
||||
fclose($fp);
|
||||
|
||||
$akte = new akte();
|
||||
|
||||
if($akte->getAkten($_GET['person_id'], 'Lichtbil'))
|
||||
{
|
||||
if(count($akte->result)>0)
|
||||
{
|
||||
$akte = $akte->result[0];
|
||||
$akte->new = false;
|
||||
}
|
||||
else
|
||||
$akte->new = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$akte->new = true;
|
||||
}
|
||||
|
||||
$akte->dokument_kurzbz = 'Lichtbil';
|
||||
$akte->person_id = $_GET['person_id'];
|
||||
$akte->inhalt = base64_encode($content);
|
||||
$akte->mimetype = "image/jpg";
|
||||
$akte->erstelltam = date('Y-m-d H:i:s');
|
||||
$akte->gedruckt = false;
|
||||
$akte->titel = "Lichtbild_".$_GET['person_id'].".jpg";
|
||||
$akte->bezeichnung = "Lichtbild gross";
|
||||
$akte->updateamum = date('Y-m-d H:i:s');
|
||||
$akte->updatevon = $user;
|
||||
$akte->insertamum = date('Y-m-d H:i:s');
|
||||
$akte->insertvon = $user;
|
||||
$akte->uid = '';
|
||||
|
||||
if(!$akte->save())
|
||||
{
|
||||
echo "<b>Fehler: $akte->errormsg</b>";
|
||||
}
|
||||
|
||||
//groesse auf maximal 101x130 begrenzen
|
||||
resize($filename, 101, 130);
|
||||
|
||||
//in DB speichern
|
||||
//File oeffnen
|
||||
$fp = fopen($filename,'r');
|
||||
//auslesen
|
||||
$content = fread($fp, filesize($filename));
|
||||
fclose($fp);
|
||||
//in base64-Werte umrechnen
|
||||
$content = base64_encode($content);
|
||||
|
||||
$person = new person();
|
||||
if($person->load($_GET['person_id']))
|
||||
{
|
||||
//base64 Wert in die Datenbank speichern
|
||||
$person->foto = $content;
|
||||
$person->new = false;
|
||||
if($person->save())
|
||||
{
|
||||
$fs = new fotostatus();
|
||||
$fs->person_id=$person->person_id;
|
||||
$fs->fotostatus_kurzbz='hochgeladen';
|
||||
$fs->datum = date('Y-m-d');
|
||||
$fs->insertamum = date('Y-m-d H:i:s');
|
||||
$fs->insertvon = $user;
|
||||
$fs->updateamum = date('Y-m-d H:i:s');
|
||||
$fs->updatevon = $user;
|
||||
if(!$fs->save(true))
|
||||
echo '<span class="error">Fehler beim Setzen des Bildstatus</span>';
|
||||
else
|
||||
{
|
||||
|
||||
echo "<b>Bild wurde erfolgreich gespeichert</b>
|
||||
<script language='Javascript'>
|
||||
if(typeof(opener.StudentAuswahl) == 'function')
|
||||
opener.StudentAuswahl();
|
||||
if(typeof(opener.MitarbeiterAuswahl) == 'function')
|
||||
opener.MitarbeiterAuswahl();
|
||||
if(typeof(opener.RefreshImage) == 'function' ||
|
||||
typeof(opener.RefreshImage) == 'object')
|
||||
{
|
||||
opener.RefreshImage();
|
||||
}
|
||||
window.close();
|
||||
</script><br />";
|
||||
}
|
||||
}
|
||||
else
|
||||
echo '<b>'.$person->errormsg.'</b><br />';
|
||||
}
|
||||
else
|
||||
echo '<b>'.$person->errormsg.'</b><br />';
|
||||
}
|
||||
else
|
||||
echo '<b>'.$p->t('profil/nurJPGBilder').'</b><br />';
|
||||
}
|
||||
}
|
||||
|
||||
echo '<br>';
|
||||
echo $p->t('profil/BilduploadInfotext',array($p->t('dms_link/bildRichtlinien'))).'<br><br>
|
||||
<form accept-charset="UTF-8" method="POST" enctype="multipart/form-data" action="'.$_SERVER['PHP_SELF'].'?person_id='.$_GET['person_id'].'">
|
||||
'.$p->t('profil/Bild').': <input type="file" name="bild" />
|
||||
<input type="submit" name="submitbild" value="Upload" />
|
||||
</form>
|
||||
</td></tr>';
|
||||
echo $p->t('profil/BilduploadInfotext',array($p->t('dms_link/bildRichtlinien'))).'<br><br>';
|
||||
echo '<div class="simple-cropper-images">
|
||||
'.$p->t('profil/fotoAuswählen').'
|
||||
<div class="cropme" id="croppingdiv" style="width: 300px; height: 400px; background-image:url(../../skin/images/photoupload.png); margin:10px; cursor:pointer;"></div>
|
||||
<script>
|
||||
// Init Simple Cropper
|
||||
$(".cropme").simpleCropper();
|
||||
</script>
|
||||
</div>
|
||||
<input type="button" name="submitbild" id="saveimgbutton" value="'.$p->t('profil/bildSpeichern').'" style="margin-left:90px;"/>
|
||||
<input type="hidden" id="person_id" value="'.$_GET['person_id'].'" />';
|
||||
|
||||
if (isset($_POST['src'])) {
|
||||
$src = $_POST['src'];
|
||||
echo $src;
|
||||
}
|
||||
|
||||
function cropCss() {
|
||||
return '
|
||||
<style type="text/css">
|
||||
/* jquery.Jcrop.css v0.9.12 - MIT License */
|
||||
/*
|
||||
The outer-most container in a typical Jcrop instance
|
||||
If you are having difficulty with formatting related to styles
|
||||
on a parent element, place any fixes here or in a like selector
|
||||
|
||||
You can also style this element if you want to add a border, etc
|
||||
A better method for styling can be seen below with .jcrop-light
|
||||
(Add a class to the holder and style elements for that extended class)
|
||||
*/
|
||||
.jcrop-holder {
|
||||
direction: ltr;
|
||||
text-align: left;
|
||||
}
|
||||
/* Selection Border */
|
||||
.jcrop-vline,
|
||||
.jcrop-hline {
|
||||
background: #ffffff url("../images/Jcrop.gif");
|
||||
font-size: 0;
|
||||
position: absolute;
|
||||
}
|
||||
.jcrop-vline {
|
||||
height: 100%;
|
||||
width: 1px !important;
|
||||
}
|
||||
.jcrop-vline.right {
|
||||
right: 0;
|
||||
}
|
||||
.jcrop-hline {
|
||||
height: 1px !important;
|
||||
width: 100%;
|
||||
}
|
||||
.jcrop-hline.bottom {
|
||||
bottom: 0;
|
||||
}
|
||||
/* Invisible click targets */
|
||||
.jcrop-tracker {
|
||||
height: 100%;
|
||||
width: 100%;
|
||||
/* "turn off" link highlight */
|
||||
-webkit-tap-highlight-color: transparent;
|
||||
/* disable callout, image save panel */
|
||||
-webkit-touch-callout: none;
|
||||
/* disable cut copy paste */
|
||||
-webkit-user-select: none;
|
||||
}
|
||||
/* Selection Handles */
|
||||
.jcrop-handle {
|
||||
background-color: #333333;
|
||||
border: 1px #eeeeee solid;
|
||||
width: 14px;
|
||||
height: 14px;
|
||||
font-size: 1px;
|
||||
}
|
||||
.jcrop-handle.ord-n {
|
||||
left: 50%;
|
||||
margin-left: -4px;
|
||||
margin-top: -4px;
|
||||
top: 0;
|
||||
}
|
||||
.jcrop-handle.ord-s {
|
||||
bottom: 0;
|
||||
left: 50%;
|
||||
margin-bottom: -4px;
|
||||
margin-left: -4px;
|
||||
}
|
||||
.jcrop-handle.ord-e {
|
||||
margin-right: -4px;
|
||||
margin-top: -4px;
|
||||
right: 0;
|
||||
top: 50%;
|
||||
}
|
||||
.jcrop-handle.ord-w {
|
||||
left: 0;
|
||||
margin-left: -4px;
|
||||
margin-top: -4px;
|
||||
top: 50%;
|
||||
}
|
||||
.jcrop-handle.ord-nw {
|
||||
left: 0;
|
||||
margin-left: -4px;
|
||||
margin-top: -4px;
|
||||
top: 0;
|
||||
}
|
||||
.jcrop-handle.ord-ne {
|
||||
margin-right: -4px;
|
||||
margin-top: -4px;
|
||||
right: 0;
|
||||
top: 0;
|
||||
}
|
||||
.jcrop-handle.ord-se {
|
||||
bottom: 0;
|
||||
margin-bottom: -4px;
|
||||
margin-right: -4px;
|
||||
right: 0;
|
||||
}
|
||||
.jcrop-handle.ord-sw {
|
||||
bottom: 0;
|
||||
left: 0;
|
||||
margin-bottom: -4px;
|
||||
margin-left: -4px;
|
||||
}
|
||||
/* Dragbars */
|
||||
.jcrop-dragbar.ord-n,
|
||||
.jcrop-dragbar.ord-s {
|
||||
height: 7px;
|
||||
width: 100%;
|
||||
}
|
||||
.jcrop-dragbar.ord-e,
|
||||
.jcrop-dragbar.ord-w {
|
||||
height: 100%;
|
||||
width: 7px;
|
||||
}
|
||||
.jcrop-dragbar.ord-n {
|
||||
margin-top: -4px;
|
||||
}
|
||||
.jcrop-dragbar.ord-s {
|
||||
bottom: 0;
|
||||
margin-bottom: -4px;
|
||||
}
|
||||
.jcrop-dragbar.ord-e {
|
||||
margin-right: -4px;
|
||||
right: 0;
|
||||
}
|
||||
.jcrop-dragbar.ord-w {
|
||||
margin-left: -4px;
|
||||
}
|
||||
/* The "jcrop-light" class/extension */
|
||||
.jcrop-light .jcrop-vline,
|
||||
.jcrop-light .jcrop-hline {
|
||||
background: #ffffff;
|
||||
filter: alpha(opacity=70) !important;
|
||||
opacity: .70!important;
|
||||
}
|
||||
.jcrop-light .jcrop-handle {
|
||||
-moz-border-radius: 3px;
|
||||
-webkit-border-radius: 3px;
|
||||
background-color: #000000;
|
||||
border-color: #ffffff;
|
||||
border-radius: 3px;
|
||||
}
|
||||
/* The "jcrop-dark" class/extension */
|
||||
.jcrop-dark .jcrop-vline,
|
||||
.jcrop-dark .jcrop-hline {
|
||||
background: #000000;
|
||||
filter: alpha(opacity=70) !important;
|
||||
opacity: 0.7 !important;
|
||||
}
|
||||
.jcrop-dark .jcrop-handle {
|
||||
-moz-border-radius: 3px;
|
||||
-webkit-border-radius: 3px;
|
||||
background-color: #ffffff;
|
||||
border-color: #000000;
|
||||
border-radius: 3px;
|
||||
}
|
||||
/* Simple macro to turn off the antlines */
|
||||
.solid-line .jcrop-vline,
|
||||
.solid-line .jcrop-hline {
|
||||
background: #ffffff;
|
||||
}
|
||||
/* Fix for twitter bootstrap et al. */
|
||||
.jcrop-holder img,
|
||||
img.jcrop-preview {
|
||||
max-width: none;
|
||||
}
|
||||
.clear{
|
||||
font-size: 0px;
|
||||
line-height: 0px;
|
||||
overflow: hidden;
|
||||
width: 0px;
|
||||
height: 0px;
|
||||
clear: both;
|
||||
}
|
||||
.simple-cropper-images{
|
||||
width: 820px;
|
||||
margin: 0 auto 20px;
|
||||
|
||||
}
|
||||
|
||||
.cropme{
|
||||
background-image: url(../../skin/images/photoupload.png);
|
||||
}
|
||||
|
||||
.cropme:hover{
|
||||
|
||||
}
|
||||
|
||||
.text{
|
||||
font-family: arial;
|
||||
font-size: 14px;
|
||||
color: #4e4e4e;
|
||||
margin-bottom: 20px;
|
||||
}
|
||||
|
||||
.code{
|
||||
font-family: arial;
|
||||
font-size: 14px;
|
||||
color: #4e4e4e;
|
||||
margin-bottom: 20px;
|
||||
background-color: #f1f1f1;
|
||||
padding: 10px;
|
||||
}
|
||||
#fileInput{
|
||||
width:0;
|
||||
height:0;
|
||||
overflow:hidden;
|
||||
}
|
||||
|
||||
#modal{
|
||||
z-index: 10;
|
||||
position: fixed;
|
||||
top: 0px;
|
||||
left: 0px;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
background-color: #5F5F5F;
|
||||
opacity: 0.95;
|
||||
display: none;
|
||||
}
|
||||
|
||||
#preview{
|
||||
z-index: 11;
|
||||
position: fixed;
|
||||
top: 0px;
|
||||
left: 0px;
|
||||
display: none;
|
||||
border: 4px solid #A5A2A2;
|
||||
border-radius: 4px;
|
||||
float: left;
|
||||
font-size: 0px;
|
||||
line-height: 0px;
|
||||
}
|
||||
|
||||
#preview .buttons{
|
||||
width: 36px;
|
||||
position: absolute;
|
||||
bottom:0px;
|
||||
right: -44px;
|
||||
}
|
||||
</style>';
|
||||
}
|
||||
?>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -0,0 +1,162 @@
|
||||
<?php
|
||||
|
||||
require_once('../../config/cis.config.inc.php');
|
||||
require_once('../../include/functions.inc.php');
|
||||
require_once('../../include/person.class.php');
|
||||
require_once('../../include/benutzer.class.php');
|
||||
require_once('../../include/akte.class.php');
|
||||
require_once('../../include/phrasen.class.php');
|
||||
require_once('../../include/fotostatus.class.php');
|
||||
|
||||
$src = $_POST['src'];
|
||||
$user = get_uid();
|
||||
|
||||
//kopiert von bildupload.php
|
||||
function resize($filename, $width, $height)
|
||||
{
|
||||
$ext = 'jpg';
|
||||
|
||||
// Hoehe und Breite neu berechnen
|
||||
list($width_orig, $height_orig) = getimagesize($filename);
|
||||
|
||||
if ($width && ($width_orig < $height_orig))
|
||||
{
|
||||
$width = ($height / $height_orig) * $width_orig;
|
||||
}
|
||||
else
|
||||
{
|
||||
$height = ($width / $width_orig) * $height_orig;
|
||||
}
|
||||
|
||||
$image_p = imagecreatetruecolor($width, $height);
|
||||
$image = imagecreatefromjpeg($filename);
|
||||
|
||||
//Bild nur verkleinern aber nicht vergroessern
|
||||
if($width_orig>$width || $height_orig>$height)
|
||||
imagecopyresampled($image_p, $image, 0, 0, 0, 0, $width, $height, $width_orig, $height_orig);
|
||||
else
|
||||
$image_p = $image;
|
||||
|
||||
imagejpeg($image_p, $filename, 80);
|
||||
|
||||
@imagedestroy($image_p);
|
||||
@imagedestroy($image);
|
||||
}
|
||||
|
||||
if(isset($_POST['person_idValue']))
|
||||
{
|
||||
$benutzer = new benutzer();
|
||||
$benutzer->load($user);
|
||||
|
||||
if($benutzer->person_id!=$_POST['person_idValue'])
|
||||
die($p->t('global/keineBerechtigungFuerDieseSeite'));
|
||||
|
||||
$fs = new fotostatus();
|
||||
if($fs->akzeptiert($benutzer->person_id))
|
||||
die($p->t('profil/profilfotoUploadGesperrt'));
|
||||
}
|
||||
else
|
||||
die($p->t('global/fehlerBeiDerParameteruebergabe'));
|
||||
|
||||
//file als png und jpg abspeichern
|
||||
$tmpfname = tempnam(sys_get_temp_dir(), 'FHC');
|
||||
file_put_contents($tmpfname, base64_decode(preg_replace('#^data:image/\w+;base64,#i', '', $src)));
|
||||
$imageTmp=imagecreatefrompng($tmpfname);
|
||||
imagejpeg($imageTmp, $tmpfname, 100);
|
||||
|
||||
$person_id = $_POST['person_idValue'];
|
||||
|
||||
//profilbild speichern
|
||||
if(file_exists($tmpfname))
|
||||
{
|
||||
$width=101;
|
||||
$height=130;
|
||||
|
||||
//groesse auf maximal 827x1063 begrenzen
|
||||
resize($tmpfname, 827, 1063);
|
||||
|
||||
$fp = fopen($tmpfname,'r');
|
||||
//auslesen
|
||||
$content = fread($fp, filesize($tmpfname));
|
||||
fclose($fp);
|
||||
|
||||
$akte = new akte();
|
||||
|
||||
if($akte->getAkten($person_id, 'Lichtbil'))
|
||||
{
|
||||
if(count($akte->result)>0)
|
||||
{
|
||||
$akte = $akte->result[0];
|
||||
$akte->new = false;
|
||||
}
|
||||
else
|
||||
$akte->new = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$akte->new = true;
|
||||
}
|
||||
|
||||
$akte->dokument_kurzbz = 'Lichtbil';
|
||||
$akte->person_id = $person_id;
|
||||
$akte->inhalt = base64_encode($content);
|
||||
$akte->mimetype = "image/jpg";
|
||||
$akte->erstelltam = date('Y-m-d H:i:s');
|
||||
$akte->gedruckt = false;
|
||||
$akte->titel = "Lichtbild_".$person_id.".jpg";
|
||||
$akte->bezeichnung = "Lichtbild gross";
|
||||
$akte->updateamum = date('Y-m-d H:i:s');
|
||||
$akte->updatevon = $user;
|
||||
$akte->insertamum = date('Y-m-d H:i:s');
|
||||
$akte->insertvon = $user;
|
||||
$akte->uid = '';
|
||||
|
||||
if(!$akte->save())
|
||||
{
|
||||
echo "<b>Fehler: $akte->errormsg</b>";
|
||||
}
|
||||
|
||||
//groesse auf maximal 101x130 begrenzen
|
||||
resize($tmpfname, 101, 130);
|
||||
|
||||
//in DB speichern
|
||||
//File oeffnen
|
||||
$fp = fopen($tmpfname,'r');
|
||||
//auslesen
|
||||
$content = fread($fp, filesize($tmpfname));
|
||||
fclose($fp);
|
||||
//in base64-Werte umrechnen
|
||||
$content = base64_encode($content);
|
||||
|
||||
$person = new person();
|
||||
if($person->load($person_id))
|
||||
{
|
||||
//base64 Wert in die Datenbank speichern
|
||||
$person->foto = $content;
|
||||
$person->new = false;
|
||||
if($person->save())
|
||||
{
|
||||
$fs = new fotostatus();
|
||||
$fs->person_id=$person->person_id;
|
||||
$fs->fotostatus_kurzbz='hochgeladen';
|
||||
$fs->datum = date('Y-m-d');
|
||||
$fs->insertamum = date('Y-m-d H:i:s');
|
||||
$fs->insertvon = $user;
|
||||
$fs->updateamum = date('Y-m-d H:i:s');
|
||||
$fs->updatevon = $user;
|
||||
if(!$fs->save(true))
|
||||
echo '<span class="error">Fehler beim Setzen des Bildstatus</span>';
|
||||
else
|
||||
{
|
||||
|
||||
echo "<b>Bild wurde erfolgreich gespeichert</b>";
|
||||
}
|
||||
}
|
||||
else
|
||||
echo '<b>'.$person->errormsg.'</b><br />';
|
||||
}
|
||||
}
|
||||
|
||||
//temporäre files löschen
|
||||
unlink($tmpfname);
|
||||
?>
|
||||
@@ -76,7 +76,8 @@ echo '<SELECT name="oe_kurzbz">
|
||||
<OPTION value="">-- '.$p->t("global/alle").' --</OPTION>';
|
||||
|
||||
$oe = new organisationseinheit();
|
||||
$oe->getAll();
|
||||
//$oe->getAll();
|
||||
$oe->loadArray($oe->getChilds('Infrastruktur'),'bezeichnung');
|
||||
foreach($oe->result as $row)
|
||||
{
|
||||
if($row->oe_kurzbz==$oe_kurzbz)
|
||||
@@ -93,9 +94,9 @@ echo '</SELECT>
|
||||
if($oe_kurzbz!='')
|
||||
{
|
||||
// Wenn der OE keine Services zugeteilt sind, dann die Services der untergeordneten OE laden
|
||||
if($service->getServicesOrganisationseinheit($oe_kurzbz))
|
||||
if($service->getServicesOrganisationseinheit($oe_kurzbz, true))
|
||||
if (empty($service->result))
|
||||
if(!$service->getSubServicesOrganisationseinheit($oe_kurzbz))
|
||||
if(!$service->getSubServicesOrganisationseinheit($oe_kurzbz,'oe_kurzbz,bezeichnung',true))
|
||||
die($service->errormsg);
|
||||
}
|
||||
else
|
||||
@@ -116,12 +117,15 @@ echo '<table class="tablesorter" id="myTable">
|
||||
|
||||
foreach($service->result as $row)
|
||||
{
|
||||
echo '<tr>';
|
||||
echo '<td>',$row->oe_kurzbz,'</td>';
|
||||
echo '<td>'.($row->content_id!=''?'<a href="../../../cms/content.php?content_id='.$row->content_id.'">'.$row->bezeichnung.'</a>':$row->bezeichnung).'</td>';
|
||||
echo '<td>',$row->beschreibung,'</td>';
|
||||
echo '<td>'.($row->content_id!=''?'<a href="../../../cms/content.php?content_id='.$row->content_id.'">Details</a>':'').'</td>';
|
||||
echo '</tr>';
|
||||
if ($row->content_id!='')
|
||||
{
|
||||
echo '<tr>';
|
||||
echo '<td>',$row->oe_kurzbz,'</td>';
|
||||
echo '<td>'.($row->content_id!=''?'<a href="../../../cms/content.php?content_id='.$row->content_id.'">'.$row->bezeichnung.'</a>':$row->bezeichnung).'</td>';
|
||||
echo '<td>',$row->beschreibung,'</td>';
|
||||
echo '<td>'.($row->content_id!=''?'<a href="../../../cms/content.php?content_id='.$row->content_id.'">Details</a>':'').'</td>';
|
||||
echo '</tr>';
|
||||
}
|
||||
}
|
||||
echo '</tbody>
|
||||
</table>
|
||||
|
||||
@@ -206,23 +206,21 @@
|
||||
|
||||
if(defined('CIS_ANWESENHEITSLISTE_NOTENLISTE_ANZEIGEN') && !CIS_ANWESENHEITSLISTE_NOTENLISTE_ANZEIGEN)
|
||||
$nt_content='';
|
||||
if(defined('CIS_ANWESENHEITSLISTE_ANWESENHEITSLISTE_ANZEIGEN') && !CIS_ANWESENHEITSLISTE_ANWESENHEITSLISTE_ANZEIGEN)
|
||||
$aw_content='';
|
||||
|
||||
echo "<table cellpadding='0' cellspacing='0'>
|
||||
|
||||
<tr>
|
||||
<td>$aw_content</td>
|
||||
<td width='15'> </td>
|
||||
<td>$nt_content</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td> </td>
|
||||
<td> </td>
|
||||
<td></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>$awbild_content</td>
|
||||
<td> </td>
|
||||
<td></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>$nt_content</td>
|
||||
</tr>
|
||||
|
||||
</table>";
|
||||
}
|
||||
}
|
||||
|
||||
@@ -20,14 +20,8 @@
|
||||
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
|
||||
*/
|
||||
|
||||
require_once('../../../../config/cis.config.inc.php');
|
||||
// ------------------------------------------------------------------------------------------
|
||||
// Datenbankanbindung
|
||||
// ------------------------------------------------------------------------------------------
|
||||
require_once('../../../../include/basis_db.class.php');
|
||||
if (!$db = new basis_db())
|
||||
die('Fehler beim Herstellen der Datenbankverbindung');
|
||||
|
||||
require_once('../../../../config/cis.config.inc.php');
|
||||
require_once('../../../../include/basis_db.class.php');
|
||||
require_once('../../../../include/functions.inc.php');
|
||||
require_once('../../../../include/lehrveranstaltung.class.php');
|
||||
require_once('../../../../include/studiengang.class.php');
|
||||
@@ -37,19 +31,10 @@ require_once('../../../../include/benutzerberechtigung.class.php');
|
||||
require_once('../../../../include/uebung.class.php');
|
||||
require_once('../../../../include/beispiel.class.php');
|
||||
require_once('../../../../include/datum.class.php');
|
||||
include_once('../../../../include/Excel/excel.php');
|
||||
|
||||
//Excel includes
|
||||
include_once('../../../../include/Excel/PEAR.php');
|
||||
include_once('../../../../include/Excel/BIFFwriter.php');
|
||||
include_once('../../../../include/Excel/Workbook.php');
|
||||
include_once('../../../../include/Excel/Format.php');
|
||||
include_once('../../../../include/Excel/Worksheet.php');
|
||||
include_once('../../../../include/Excel/Parser.php');
|
||||
include_once('../../../../include/Excel/OLE.php');
|
||||
include_once('../../../../include/Excel/PPS.php');
|
||||
include_once('../../../../include/Excel/Root.php');
|
||||
include_once('../../../../include/Excel/File.php');
|
||||
include_once('../../../../include/Excel/Writer.php');
|
||||
if (!$db = new basis_db())
|
||||
die('Fehler beim Herstellen der Datenbankverbindung');
|
||||
|
||||
$user = get_uid();
|
||||
|
||||
@@ -66,7 +51,6 @@ if(isset($_GET['uebung_id']) && is_numeric($_GET['uebung_id']))
|
||||
$uebung_id = $_GET['uebung_id'];
|
||||
$uebung_obj = new uebung($uebung_id);
|
||||
$lehreinheit_obj = new lehreinheit($uebung_obj->lehreinheit_id);
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -93,14 +77,14 @@ if (isset($_GET["download_abgabe"])){
|
||||
readfile($filename);
|
||||
exit;
|
||||
}
|
||||
|
||||
/*
|
||||
$qry = "SELECT * FROM lehre.tbl_lehreinheit JOIN lehre.tbl_lehreinheitmitarbeiter USING(lehreinheit_id) WHERE
|
||||
tbl_lehreinheit.lehreinheit_id='$lehreinheit_obj->lehreinheit_id' AND
|
||||
mitarbeiter_uid='$user'";
|
||||
|
||||
tbl_lehreinheit.lehreinheit_id=".$db->db_add_param($lehreinheit_obj->lehreinheit_id, FHC_INTEGER)." AND
|
||||
mitarbeiter_uid=".$db->db_add_param($user);
|
||||
*/
|
||||
$qry = "SELECT * FROM lehre.tbl_lehreinheit JOIN lehre.tbl_lehreinheitmitarbeiter USING(lehreinheit_id) WHERE
|
||||
tbl_lehreinheit.lehrveranstaltung_id in(Select lehrveranstaltung_id from lehre.tbl_lehreinheit where lehreinheit_id='$lehreinheit_obj->lehreinheit_id') AND
|
||||
mitarbeiter_uid='$user'";
|
||||
tbl_lehreinheit.lehrveranstaltung_id in(Select lehrveranstaltung_id from lehre.tbl_lehreinheit where lehreinheit_id=".$db->db_add_param($lehreinheit_obj->lehreinheit_id, FHC_INTEGER).") AND
|
||||
mitarbeiter_uid=".$db->db_add_param($user);
|
||||
|
||||
if(!$result = $db->db_query($qry))
|
||||
die('Fehler beim laden der Berechtigung');
|
||||
@@ -110,7 +94,27 @@ $rechte->getBerechtigungen($user);
|
||||
|
||||
if(!($db->db_num_rows($result)>0 || $rechte->isBerechtigt('admin',0) || $rechte->isBerechtigt('admin',$lehreinheit_obj->studiengang_kz) || $rechte->isBerechtigt('lehre',$lehreinheit_obj->studiengang_kz)))
|
||||
die('Sie haben keine Berechtigung für diesen Bereich');
|
||||
|
||||
|
||||
// Beteiligte Gruppen laden
|
||||
$gruppen = '';
|
||||
$qry_gruppen = "SELECT * FROM lehre.tbl_lehreinheitgruppe WHERE lehreinheit_id=".$db->db_add_param($lehreinheit_obj->lehreinheit_id, FHC_INTEGER);
|
||||
if($result_gruppen = $db->db_query($qry_gruppen))
|
||||
{
|
||||
$i=0;
|
||||
while($row_gruppen = $db->db_fetch_object($result_gruppen))
|
||||
{
|
||||
if($row_gruppen->gruppe_kurzbz=='')
|
||||
$gruppen.=$row_gruppen->semester.$row_gruppen->verband.$row_gruppen->gruppe;
|
||||
else
|
||||
$gruppen.=$row_gruppen->gruppe_kurzbz;
|
||||
$i++;
|
||||
if($i<$db->db_num_rows($result_gruppen))
|
||||
$gruppen.=', ';
|
||||
else
|
||||
$gruppen.=' ';
|
||||
}
|
||||
}
|
||||
|
||||
if(isset($_GET['output']) && $_GET['output']=='xls')
|
||||
{
|
||||
if(isset($_GET['all']))
|
||||
@@ -124,12 +128,13 @@ if(isset($_GET['output']) && $_GET['output']=='xls')
|
||||
|
||||
// Creating a workbook
|
||||
$workbook = new Spreadsheet_Excel_Writer();
|
||||
|
||||
$workbook->setVersion(8);
|
||||
// sending HTTP headers
|
||||
$workbook->send("Kreuzerlliste_Gesamt_".$lv_obj->lehreverzeichnis. "_" . date("d_m_Y") . ".xls");
|
||||
|
||||
// Creating a worksheet
|
||||
$worksheet =& $workbook->addWorksheet("Kreuzerltool");
|
||||
$worksheet->setInputEncoding('utf-8');
|
||||
|
||||
$format_bold =& $workbook->addFormat();
|
||||
$format_bold->setBold();
|
||||
@@ -173,7 +178,7 @@ if(isset($_GET['output']) && $_GET['output']=='xls')
|
||||
if(isset($_GET['gruppe']) && $_GET['gruppe']!='')
|
||||
{
|
||||
$gruppe = $_GET['gruppe'];
|
||||
$qry = "SELECT * FROM lehre.tbl_lehreinheitgruppe WHERE lehreinheitgruppe_id='$gruppe'";
|
||||
$qry = "SELECT * FROM lehre.tbl_lehreinheitgruppe WHERE lehreinheitgruppe_id=".$db->db_add_param($gruppe);
|
||||
if($result = $db->db_query($qry))
|
||||
{
|
||||
if($row = $db->db_fetch_object($result))
|
||||
@@ -181,16 +186,16 @@ if(isset($_GET['output']) && $_GET['output']=='xls')
|
||||
if($row->gruppe_kurzbz!='')
|
||||
{
|
||||
$gruppe_bez = 'Gruppe '.$row->gruppe_kurzbz;
|
||||
$qry_stud = "SELECT uid, vorname, nachname, matrikelnr FROM campus.vw_student JOIN public.tbl_benutzergruppe USING(uid) WHERE gruppe_kurzbz='".addslashes($row->gruppe_kurzbz)."' AND studiensemester_kurzbz = '".$stsem."' ORDER BY nachname, vorname";
|
||||
$qry_stud = "SELECT uid, vorname, nachname, matrikelnr FROM campus.vw_student JOIN public.tbl_benutzergruppe USING(uid) WHERE gruppe_kurzbz=".$db->db_add_param($row->gruppe_kurzbz)." AND studiensemester_kurzbz = ".$db->db_add_param($stsem)." ORDER BY nachname, vorname";
|
||||
}
|
||||
else
|
||||
{
|
||||
$gruppe_bez = 'Gruppe '.$row->verband.$row->gruppe;
|
||||
$qry_stud = "SELECT uid, vorname, nachname, matrikelnr FROM campus.vw_student
|
||||
WHERE studiengang_kz='$row->studiengang_kz'
|
||||
AND semester='$row->semester' ".
|
||||
($row->verband!=''?" AND verband='$row->verband'":'').
|
||||
($row->gruppe!=''?" AND gruppe='$row->gruppe'":'').
|
||||
WHERE studiengang_kz=".$db->db_add_param($row->studiengang_kz)."
|
||||
AND semester=".$db->db_add_param($row->semester).
|
||||
($row->verband!=''?" AND verband=".$db->db_add_param($row->verband):'').
|
||||
($row->gruppe!=''?" AND gruppe=".$db->db_add_param($row->gruppe):'').
|
||||
" ORDER BY nachname, vorname";
|
||||
}
|
||||
|
||||
@@ -215,7 +220,7 @@ if(isset($_GET['output']) && $_GET['output']=='xls')
|
||||
campus.vw_student, public.tbl_benutzergruppe, lehre.tbl_lehreinheitgruppe,
|
||||
public.tbl_studentlehrverband, lehre.tbl_lehreinheit
|
||||
WHERE
|
||||
tbl_lehreinheitgruppe.lehreinheit_id='$lehreinheit_id' AND
|
||||
tbl_lehreinheitgruppe.lehreinheit_id=".$db->db_add_param($lehreinheit_id)." AND
|
||||
tbl_lehreinheit.lehreinheit_id=tbl_lehreinheitgruppe.lehreinheit_id AND
|
||||
vw_student.uid = tbl_benutzergruppe.uid AND
|
||||
tbl_benutzergruppe.gruppe_kurzbz = tbl_lehreinheitgruppe.gruppe_kurzbz AND
|
||||
@@ -228,7 +233,7 @@ if(isset($_GET['output']) && $_GET['output']=='xls')
|
||||
FROM
|
||||
campus.vw_student, lehre.tbl_lehreinheitgruppe, public.tbl_studentlehrverband, lehre.tbl_lehreinheit
|
||||
WHERE
|
||||
tbl_lehreinheitgruppe.lehreinheit_id='$lehreinheit_id' AND
|
||||
tbl_lehreinheitgruppe.lehreinheit_id=".$db->db_add_param($lehreinheit_id)." AND
|
||||
tbl_lehreinheitgruppe.studiengang_kz=tbl_studentlehrverband.studiengang_kz AND
|
||||
tbl_lehreinheitgruppe.semester = tbl_studentlehrverband.semester AND
|
||||
tbl_studentlehrverband.student_uid=vw_student.uid AND
|
||||
@@ -278,7 +283,8 @@ if(isset($_GET['output']) && $_GET['output']=='xls')
|
||||
|
||||
foreach($ueb_obj->uebungen as $row_ueb)
|
||||
{
|
||||
$qry = "SELECT sum(punkte) as punkte FROM campus.tbl_studentbeispiel JOIN campus.tbl_beispiel USING(beispiel_id) WHERE uebung_id='$row_ueb->uebung_id' AND student_uid='$row_stud->uid' AND vorbereitet=true";
|
||||
$qry = "SELECT sum(punkte) as punkte FROM campus.tbl_studentbeispiel JOIN campus.tbl_beispiel USING(beispiel_id)
|
||||
WHERE uebung_id=".$db->db_add_param($row_ueb->uebung_id)." AND student_uid=".$db->db_add_param($row_stud->uid)." AND vorbereitet=true";
|
||||
if($result = $db->db_query($qry))
|
||||
{
|
||||
if($row = $db->db_fetch_object($result))
|
||||
@@ -299,7 +305,8 @@ if(isset($_GET['output']) && $_GET['output']=='xls')
|
||||
$worksheet->write($zeile,++$spalte,$summe);
|
||||
|
||||
//mitarbeit
|
||||
$qry = "SELECT sum(mitarbeitspunkte) as mitarbeit FROM campus.tbl_studentuebung JOIN campus.tbl_uebung USING(uebung_id) WHERE lehreinheit_id='$lehreinheit_id' AND student_uid='$row_stud->uid'";
|
||||
$qry = "SELECT sum(mitarbeitspunkte) as mitarbeit FROM campus.tbl_studentuebung JOIN campus.tbl_uebung USING(uebung_id)
|
||||
WHERE lehreinheit_id=".$db->db_add_param($lehreinheit_id, FHC_INTEGER)." AND student_uid=".$db->db_add_param($row_stud->uid);
|
||||
if($result = $db->db_query($qry))
|
||||
if($row = $db->db_fetch_object($result))
|
||||
$mitarbeit=$row->mitarbeit;
|
||||
@@ -329,12 +336,14 @@ if(isset($_GET['output']) && $_GET['output']=='xls')
|
||||
|
||||
// Creating a workbook
|
||||
$workbook = new Spreadsheet_Excel_Writer();
|
||||
$workbook->setVersion(8);
|
||||
|
||||
// sending HTTP headers
|
||||
$workbook->send("Kreuzerltool". "_" . date("d_m_Y") . ".xls");
|
||||
|
||||
// Creating a worksheet
|
||||
$worksheet =& $workbook->addWorksheet("Kreuzerltool");
|
||||
$worksheet->setInputEncoding('utf-8');
|
||||
|
||||
$format_bold =& $workbook->addFormat();
|
||||
$format_bold->setBold();
|
||||
@@ -344,7 +353,7 @@ if(isset($_GET['output']) && $_GET['output']=='xls')
|
||||
// let's merge
|
||||
$format_title->setAlign('merge');
|
||||
|
||||
$worksheet->write(0,0,$uebung_obj->bezeichnung.' am '.date('d.m.Y'), $format_bold);
|
||||
$worksheet->write(0,0,$uebung_obj->bezeichnung.' am '.date('d.m.Y').' '.$gruppen, $format_bold);
|
||||
$maxlength = array();
|
||||
//Ueberschrift
|
||||
$i=0;
|
||||
@@ -354,8 +363,8 @@ if(isset($_GET['output']) && $_GET['output']=='xls')
|
||||
$maxlength[$i]=strlen('Nachname');
|
||||
$worksheet->write(1,++$i,"Matrikelnr", $format_title);
|
||||
$maxlength[$i]=strlen('Matrikelnr');
|
||||
$worksheet->write(1,++$i,"Gruppe", $format_title);
|
||||
$maxlength[$i]=strlen('Gruppe');
|
||||
//$worksheet->write(1,++$i,"Gruppe", $format_title);
|
||||
//$maxlength[$i]=strlen('Gruppe');
|
||||
$beispiel_obj = new beispiel();
|
||||
$beispiel_obj->load_beispiel($uebung_id);
|
||||
foreach($beispiel_obj->beispiele as $row_bsp)
|
||||
@@ -377,7 +386,7 @@ if(isset($_GET['output']) && $_GET['output']=='xls')
|
||||
if(isset($_GET['gruppe']) && $_GET['gruppe']!='')
|
||||
{
|
||||
$gruppe = $_GET['gruppe'];
|
||||
$qry = "SELECT * FROM lehre.tbl_lehreinheitgruppe WHERE lehreinheitgruppe_id='$gruppe'";
|
||||
$qry = "SELECT * FROM lehre.tbl_lehreinheitgruppe WHERE lehreinheitgruppe_id=".$db->db_add_param($gruppe);
|
||||
if($result = $db->db_query($qry))
|
||||
{
|
||||
if($row = $db->db_fetch_object($result))
|
||||
@@ -385,16 +394,18 @@ if(isset($_GET['output']) && $_GET['output']=='xls')
|
||||
if($row->gruppe_kurzbz!='')
|
||||
{
|
||||
$gruppe_bez = 'Gruppe '.$row->gruppe_kurzbz;
|
||||
$qry_stud = "SELECT uid, vorname, nachname, matrikelnr, vw_student.semester, vw_student.verband, vw_student.gruppe FROM campus.vw_student JOIN public.tbl_benutzergruppe USING(uid) WHERE gruppe_kurzbz='".addslashes($row->gruppe_kurzbz)."' AND studiensemester_kurzbz = '".$stsem."' ORDER BY nachname, vorname";
|
||||
$qry_stud = "SELECT uid, vorname, nachname, matrikelnr, vw_student.semester, vw_student.verband, vw_student.gruppe
|
||||
FROM campus.vw_student JOIN public.tbl_benutzergruppe USING(uid)
|
||||
WHERE gruppe_kurzbz=".$db->db_add_param($row->gruppe_kurzbz)." AND studiensemester_kurzbz=".$db->db_add_param($stsem)." ORDER BY nachname, vorname";
|
||||
}
|
||||
else
|
||||
{
|
||||
$gruppe_bez = 'Gruppe '.$row->verband.$row->gruppe;
|
||||
$qry_stud = "SELECT uid, vorname, nachname, matrikelnr, vw_student.semester, vw_student.verband, vw_student.gruppe FROM campus.vw_student
|
||||
WHERE studiengang_kz='$row->studiengang_kz'
|
||||
AND semester='$row->semester' ".
|
||||
($row->verband!=''?" AND verband='$row->verband'":'').
|
||||
($row->gruppe!=''?" AND gruppe='$row->gruppe'":'').
|
||||
WHERE studiengang_kz=".$db->db_add_param($row->studiengang_kz)."
|
||||
AND semester=".$db->db_add_param($row->semester).
|
||||
($row->verband!=''?" AND verband=".$db->db_add_param($row->verband):'').
|
||||
($row->gruppe!=''?" AND gruppe=".$db->db_add_param($row->gruppe):'').
|
||||
" ORDER BY nachname, vorname";
|
||||
}
|
||||
|
||||
@@ -414,14 +425,21 @@ if(isset($_GET['output']) && $_GET['output']=='xls')
|
||||
{
|
||||
$lehreinheit_id = $_GET['lehreinheit_id'];
|
||||
$gruppe_bez = 'Alle Studienrende';
|
||||
|
||||
$qry_stud = "SELECT uid, vorname, nachname, matrikelnr FROM campus.vw_student_lehrveranstaltung JOIN campus.vw_student using(uid)
|
||||
WHERE studiensemester_kurzbz = ".$db->db_add_param($stsem)." AND lehreinheit_id=".$db->db_add_param($lehreinheit_id, FHC_INTEGER)." ORDER BY nachname, vorname";
|
||||
|
||||
//Alle Studenten die dieser Lehreinheit zugeordnet sind
|
||||
$qry_stud = "SELECT vw_student.uid, vorname, nachname, matrikelnr, vw_student.semester, vw_student.verband, vw_student.gruppe FROM campus.vw_student, public.tbl_benutzergruppe, lehre.tbl_lehreinheitgruppe
|
||||
WHERE tbl_lehreinheitgruppe.lehreinheit_id='$lehreinheit_id' AND
|
||||
/*
|
||||
$qry_stud = "SELECT vw_student.uid, vorname, nachname, matrikelnr, vw_student.semester, vw_student.verband, vw_student.gruppe
|
||||
FROM campus.vw_student, public.tbl_benutzergruppe, lehre.tbl_lehreinheitgruppe
|
||||
WHERE tbl_lehreinheitgruppe.lehreinheit_id=".$db->db_add_param($lehreinheit_id, FHC_INTEGER)." AND
|
||||
vw_student.uid = tbl_benutzergruppe.uid AND
|
||||
tbl_benutzergruppe.gruppe_kurzbz = tbl_lehreinheitgruppe.gruppe_kurzbz
|
||||
UNION
|
||||
SELECT vw_student.uid, vorname, nachname, matrikelnr, vw_student.semester, vw_student.verband, vw_student.gruppe FROM campus.vw_student, lehre.tbl_lehreinheitgruppe WHERE
|
||||
tbl_lehreinheitgruppe.lehreinheit_id='$lehreinheit_id' AND
|
||||
SELECT vw_student.uid, vorname, nachname, matrikelnr, vw_student.semester, vw_student.verband, vw_student.gruppe
|
||||
FROM campus.vw_student, lehre.tbl_lehreinheitgruppe WHERE
|
||||
tbl_lehreinheitgruppe.lehreinheit_id=".$db->db_add_param($lehreinheit_id)." AND
|
||||
tbl_lehreinheitgruppe.studiengang_kz=vw_student.studiengang_kz AND
|
||||
tbl_lehreinheitgruppe.semester = vw_student.semester AND
|
||||
((tbl_lehreinheitgruppe.verband<>'' AND
|
||||
@@ -435,12 +453,13 @@ if(isset($_GET['output']) && $_GET['output']=='xls')
|
||||
OR (tbl_lehreinheitgruppe.verband is null AND tbl_lehreinheitgruppe.gruppe is null)
|
||||
)
|
||||
ORDER BY nachname, vorname";
|
||||
*/
|
||||
}
|
||||
else
|
||||
die('Fehler bei der Parameteruebergabe');
|
||||
$gruppe='';
|
||||
}
|
||||
|
||||
|
||||
if($result_stud = $db->db_query($qry_stud))
|
||||
{
|
||||
$zeile=3;
|
||||
@@ -463,10 +482,11 @@ if(isset($_GET['output']) && $_GET['output']=='xls')
|
||||
$maxlength[$spalte]=strlen($row_stud->matrikelnr);
|
||||
|
||||
//Gruppe
|
||||
/*
|
||||
$worksheet->write($zeile,++$spalte,$row_stud->semester.$row_stud->verband.$row_stud->gruppe);
|
||||
if(strlen($row_stud->semester.$row_stud->verband.$row_stud->gruppe)>$maxlength[$spalte])
|
||||
$maxlength[$spalte]=strlen($row_stud->semester.$row_stud->verband.$row_stud->gruppe);
|
||||
|
||||
*/
|
||||
foreach($beispiel_obj->beispiele as $row_bsp)
|
||||
{
|
||||
$studentbeispiel_obj = new beispiel();
|
||||
@@ -484,7 +504,8 @@ if(isset($_GET['output']) && $_GET['output']=='xls')
|
||||
$worksheet->write($zeile,++$spalte,$punkte_heute);
|
||||
|
||||
//mitarbeit heute
|
||||
$qry = "SELECT sum(mitarbeitspunkte) as mitarbeit_heute FROM campus.tbl_studentuebung WHERE uebung_id='$uebung_id' AND student_uid='$row_stud->uid'";
|
||||
$qry = "SELECT sum(mitarbeitspunkte) as mitarbeit_heute FROM campus.tbl_studentuebung
|
||||
WHERE uebung_id=".$db->db_add_param($uebung_id, FHC_INTEGER)." AND student_uid=".$db->db_add_param($row_stud->uid);
|
||||
if($result = $db->db_query($qry))
|
||||
if($row = $db->db_fetch_object($result))
|
||||
$worksheet->write($zeile,++$spalte,($row->mitarbeit_heute!=''?$row->mitarbeit_heute:'0'));
|
||||
@@ -495,9 +516,9 @@ if(isset($_GET['output']) && $_GET['output']=='xls')
|
||||
|
||||
//punkte insgesamt
|
||||
$qry = "SELECT sum(tbl_beispiel.punkte) AS gesamt_ohne_mitarbeit FROM campus.tbl_uebung, campus.tbl_beispiel, campus.tbl_studentbeispiel WHERE
|
||||
tbl_studentbeispiel.student_uid='$row_stud->uid' AND
|
||||
tbl_studentbeispiel.student_uid=".$db->db_add_param($row_stud->uid)." AND
|
||||
tbl_studentbeispiel.vorbereitet=true AND
|
||||
tbl_uebung.lehreinheit_id='$uebung_obj->lehreinheit_id' AND
|
||||
tbl_uebung.lehreinheit_id=".$db->db_add_param($uebung_obj->lehreinheit_id, FHC_INTEGER)." AND
|
||||
tbl_uebung.uebung_id=tbl_beispiel.uebung_id AND
|
||||
tbl_beispiel.beispiel_id=tbl_studentbeispiel.beispiel_id
|
||||
";
|
||||
@@ -510,7 +531,8 @@ if(isset($_GET['output']) && $_GET['output']=='xls')
|
||||
$worksheet->write($zeile,++$spalte,'failed');
|
||||
|
||||
//mitarbeit insgesamt
|
||||
$qry = "SELECT sum(mitarbeitspunkte) as mitarbeit_heute FROM campus.tbl_studentuebung JOIN campus.tbl_uebung USING(uebung_id) WHERE student_uid='$row_stud->uid' AND lehreinheit_id='$lehreinheit_id'";
|
||||
$qry = "SELECT sum(mitarbeitspunkte) as mitarbeit_heute FROM campus.tbl_studentuebung JOIN campus.tbl_uebung USING(uebung_id)
|
||||
WHERE student_uid=".$db->db_add_param($row_stud->uid)." AND lehreinheit_id=".$db->db_add_param($lehreinheit_id, FHC_INTEGER);
|
||||
if($result = $db->db_query($qry))
|
||||
if($row = $db->db_fetch_object($result))
|
||||
$worksheet->write($zeile,++$spalte,($row->mitarbeit_heute!=''?$row->mitarbeit_heute:'0'));
|
||||
@@ -655,7 +677,7 @@ function addUser(student_uid)
|
||||
if(isset($_GET['gruppe']) && $_GET['gruppe']!='')
|
||||
{
|
||||
$gruppe = $_GET['gruppe'];
|
||||
$qry = "SELECT * FROM lehre.tbl_lehreinheitgruppe WHERE lehreinheitgruppe_id='$gruppe'";
|
||||
$qry = "SELECT * FROM lehre.tbl_lehreinheitgruppe WHERE lehreinheitgruppe_id=".$db->db_add_param($gruppe);
|
||||
if($result = $db->db_query($qry))
|
||||
{
|
||||
if($row = $db->db_fetch_object($result))
|
||||
@@ -663,16 +685,18 @@ function addUser(student_uid)
|
||||
if($row->gruppe_kurzbz!='')
|
||||
{
|
||||
$gruppe_bez = 'Gruppe '.$row->gruppe_kurzbz;
|
||||
$qry_stud = "SELECT uid, vorname, nachname FROM campus.vw_student JOIN public.tbl_benutzergruppe USING(uid) WHERE gruppe_kurzbz='".addslashes($row->gruppe_kurzbz)."' AND studiensemester_kurzbz = '".$stsem."' ORDER BY nachname, vorname";
|
||||
$qry_stud = "SELECT uid, vorname, nachname FROM campus.vw_student JOIN public.tbl_benutzergruppe USING(uid)
|
||||
WHERE gruppe_kurzbz=".$db->db_add_param($row->gruppe_kurzbz)." AND studiensemester_kurzbz = ".$db->db_add_param($stsem)."
|
||||
ORDER BY nachname, vorname";
|
||||
}
|
||||
else
|
||||
{
|
||||
$gruppe_bez = 'Gruppe '.$row->verband.$row->gruppe;
|
||||
$qry_stud = "SELECT uid, vorname, nachname FROM campus.vw_student
|
||||
WHERE studiengang_kz='$row->studiengang_kz'
|
||||
AND semester='$row->semester' ".
|
||||
($row->verband!=''?" AND verband='$row->verband'":'').
|
||||
($row->gruppe!=''?" AND gruppe='$row->gruppe'":'').
|
||||
WHERE studiengang_kz=".$db->db_add_param($row->studiengang_kz)."
|
||||
AND semester=".$db->db_add_param($row->semester).
|
||||
($row->verband!=''?" AND verband=".$db->db_add_param($row->verband):'').
|
||||
($row->gruppe!=''?" AND gruppe=".$db->db_add_param($row->gruppe):'').
|
||||
" ORDER BY nachname, vorname";
|
||||
}
|
||||
|
||||
@@ -689,10 +713,11 @@ function addUser(student_uid)
|
||||
if(isset($_GET['lehreinheit_id']) && $_GET['lehreinheit_id']!='')
|
||||
{
|
||||
$lehreinheit_id = $_GET['lehreinheit_id'];
|
||||
$gruppe_bez = 'Alle Studienrende';
|
||||
$gruppe_bez = 'Alle Studierende';
|
||||
//Alle Studenten die dieser lehreinheit zugeordnet sind
|
||||
// studentenquery
|
||||
$qry_stud = "SELECT uid, vorname, nachname, matrikelnr FROM campus.vw_student_lehrveranstaltung JOIN campus.vw_student using(uid) WHERE studiensemester_kurzbz = '".$stsem."' and lehreinheit_id = '".$lehreinheit_id."' ORDER BY nachname, vorname";
|
||||
$qry_stud = "SELECT uid, vorname, nachname, matrikelnr FROM campus.vw_student_lehrveranstaltung JOIN campus.vw_student using(uid)
|
||||
WHERE studiensemester_kurzbz = ".$db->db_add_param($stsem)." AND lehreinheit_id=".$db->db_add_param($lehreinheit_id, FHC_INTEGER)." ORDER BY nachname, vorname";
|
||||
/*
|
||||
$qry_stud = "SELECT vw_student.uid, vorname, nachname FROM campus.vw_student, public.tbl_benutzergruppe, lehre.tbl_lehreinheitgruppe
|
||||
WHERE tbl_lehreinheitgruppe.lehreinheit_id='$lehreinheit_id' AND
|
||||
@@ -732,7 +757,7 @@ function addUser(student_uid)
|
||||
<table width='100%'>
|
||||
<tr>
|
||||
<td><font class='headline'>$lehrveranstaltung_obj->semester.Semester</font></td>
|
||||
<td align='center'><font class='headline'>$stg_obj->kuerzel - $lehrveranstaltung_obj->bezeichnung - $uebung_obj->bezeichnung - $gruppe_bez</font></td>
|
||||
<td align='center'><font class='headline'>$stg_obj->kuerzel - $lehrveranstaltung_obj->bezeichnung - $uebung_obj->bezeichnung - $gruppe_bez - $gruppen</font></td>
|
||||
<td align='right'><font class='headline'>".date('d.m.Y')."</font></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
@@ -376,7 +376,7 @@ echo "<h3><u>$uebung_obj->bezeichnung</u></h3>";
|
||||
echo '<table width="100%"><tr><td>';
|
||||
echo "<ul><li><a href='anwesenheitsliste.php?output=html&uebung_id=$uebung_id&lehreinheit_id=$lehreinheit_id&stsem=$stsem' target='_blank'>".$p->t('benotungstool/alleStudierenden')."</a> ";
|
||||
if ($show_excel_link)
|
||||
echo "<a href='anwesenheitsliste.php?output=xls&uebung_id=$uebung_id&lehreinheit_id=$lehreinheit_id'><img src='../../../../skin/images/excel.gif' width=16 height=16></a>";
|
||||
echo "<a href='anwesenheitsliste.php?output=xls&uebung_id=$uebung_id&lehreinheit_id=$lehreinheit_id&stsem=$stsem'><img src='../../../../skin/images/excel.gif' width=16 height=16></a>";
|
||||
echo "</li>";
|
||||
echo '</ul>';
|
||||
echo "</td><!--<td valign='top'>
|
||||
|
||||
@@ -0,0 +1,48 @@
|
||||
<?php
|
||||
/* Copyright (C) 2014 fhcomplete.org
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of the
|
||||
* License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* Authors: Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at> and
|
||||
*/
|
||||
/**
|
||||
*
|
||||
*/
|
||||
require_once('../../../../config/cis.config.inc.php');
|
||||
require_once('../../../../include/functions.inc.php');
|
||||
require_once('../../../../include/notenschluessel.class.php');
|
||||
|
||||
$uid = get_uid();
|
||||
|
||||
if(!check_lektor($uid))
|
||||
die('Sie haben keine Berechtigung fuer diese Seite');
|
||||
|
||||
if(!isset($_POST['work']))
|
||||
die('Fehlerhafte Parameteruebergabe');
|
||||
|
||||
$lehrveranstaltung_id = $_POST['lehrveranstaltung_id'];
|
||||
$punkte = $_POST['punkte'];
|
||||
$studiensemester_kurzbz = $_POST['studiensemester_kurzbz'];
|
||||
$work = $_POST['work'];
|
||||
|
||||
switch($work)
|
||||
{
|
||||
case 'getGradeFromPoints':
|
||||
$notenschluessel = new notenschluessel();
|
||||
$note = $notenschluessel->getNote($punkte, $lehrveranstaltung_id, $studiensemester_kurzbz);
|
||||
echo $note;
|
||||
exit;
|
||||
}
|
||||
?>
|
||||
@@ -21,7 +21,7 @@
|
||||
*/
|
||||
|
||||
require_once('../../../../config/cis.config.inc.php');
|
||||
require_once('../../../../include/basis_db.class.php');
|
||||
require_once('../../../../include/basis_db.class.php');
|
||||
require_once('../../../../include/functions.inc.php');
|
||||
require_once('../../../../include/lehrveranstaltung.class.php');
|
||||
require_once('../../../../include/studiengang.class.php');
|
||||
@@ -40,10 +40,12 @@ require_once('../../../../include/benutzer.class.php');
|
||||
require_once('../../../../include/student.class.php');
|
||||
require_once('../../../../include/phrasen.class.php');
|
||||
require_once('../../../../include/zeugnisnote.class.php');
|
||||
require_once('../../../../include/notenschluessel.class.php');
|
||||
require_once('../../../../include/note.class.php');
|
||||
|
||||
if (!$db = new basis_db())
|
||||
die($p->t('global/fehlerBeimOeffnenDerDatenbankverbindung'));
|
||||
|
||||
|
||||
$user = get_uid();
|
||||
|
||||
$sprache = getSprache();
|
||||
@@ -79,8 +81,11 @@ $response='';
|
||||
$uebung_id = (isset($_GET['uebung_id'])?$_GET['uebung_id']:'');
|
||||
$uid = (isset($_GET['uid'])?$_GET['uid']:'');
|
||||
|
||||
//Kopfzeile
|
||||
|
||||
$noten_anmerkung=array();
|
||||
$note_obj = new note();
|
||||
$note_obj->getAll();
|
||||
foreach($note_obj->result as $row)
|
||||
$noten_anmerkung[$row->anmerkung]=$row->note;
|
||||
|
||||
//Studiensemester laden
|
||||
$stsem_obj = new studiensemester();
|
||||
@@ -94,7 +99,7 @@ if(!$rechte->isBerechtigt('admin',0) &&
|
||||
!$rechte->isBerechtigt('lehre',$lv_obj->studiengang_kz))
|
||||
{
|
||||
$qry = "SELECT lehreinheit_id FROM lehre.tbl_lehrveranstaltung JOIN lehre.tbl_lehreinheit USING(lehrveranstaltung_id)
|
||||
JOIN lehre.tbl_lehreinheitmitarbeiter USING(lehreinheit_id)
|
||||
JOIN lehre.tbl_lehreinheitmitarbeiter USING(lehreinheit_id)
|
||||
WHERE tbl_lehrveranstaltung.lehrveranstaltung_id=".$db->db_add_param($lvid, FHC_INTEGER)." AND
|
||||
tbl_lehreinheit.studiensemester_kurzbz=".$db->db_add_param($stsem)." AND tbl_lehreinheitmitarbeiter.mitarbeiter_uid=".$db->db_add_param($user);
|
||||
if($result = $db->db_query($qry))
|
||||
@@ -102,26 +107,52 @@ if(!$rechte->isBerechtigt('admin',0) &&
|
||||
if($db->db_num_rows($result)==0)
|
||||
die($p->t('global/keineBerechtigungFuerDieseSeite'));
|
||||
}
|
||||
else
|
||||
else
|
||||
{
|
||||
die('Fehler beim Pruefen der Rechte');
|
||||
}
|
||||
}
|
||||
|
||||
function savenote($db,$lvid, $student_uid, $note)
|
||||
function savenote($db,$lvid, $student_uid, $note, $punkte=null)
|
||||
{
|
||||
global $stsem, $user, $p;
|
||||
global $stsem, $user, $p, $noten_anmerkung;
|
||||
$jetzt = date("Y-m-d H:i:s");
|
||||
//Ermitteln ob der Student diesem Kurs zugeteilt ist
|
||||
$qry = "SELECT 1 FROM campus.vw_student_lehrveranstaltung WHERE uid=".$db->db_add_param($student_uid)." AND lehrveranstaltung_id=".$db->db_add_param($lvid, FHC_INTEGER);
|
||||
if($result = $db->db_query($qry))
|
||||
{
|
||||
if($db->db_num_rows($result)==0)
|
||||
{
|
||||
$student = new student();
|
||||
$student->load($student_uid);
|
||||
return $p->t('benotungstool/studentIstLvNichtZugeordnet', array($student->nachname, $student->vorname, trim($student->matrikelnr)))."\n";
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
// Wenn punkte vorhanden sind, dann die note dazu ermitteln
|
||||
if($punkte!='' && $note=='')
|
||||
{
|
||||
if(is_numeric($punkte))
|
||||
{
|
||||
$notenschluessel = new notenschluessel();
|
||||
$note = $notenschluessel->getNote($punkte, $lvid, $stsem);
|
||||
}
|
||||
else
|
||||
{
|
||||
// Wenn Punkte nicht numerisch ist, dann kann es eine der Spezailnoten sein (ar, met, ...)
|
||||
$note = $punkte;
|
||||
$punkte='';
|
||||
}
|
||||
}
|
||||
|
||||
if(!is_numeric($note))
|
||||
{
|
||||
// Wenn die Note keine Nummer ist wird anhand der Anmerkung gesucht ob eine passende Note gefunden
|
||||
// wird damit hier die Noten nb, met, etc auch importiert werden koennen
|
||||
if(isset($noten_anmerkung[$note]))
|
||||
$note = $noten_anmerkung[$note];
|
||||
}
|
||||
|
||||
$lvgesamtnote = new lvgesamtnote();
|
||||
if (!$lvgesamtnote->load($lvid, $student_uid, $stsem))
|
||||
{
|
||||
@@ -138,24 +169,26 @@ function savenote($db,$lvid, $student_uid, $note)
|
||||
$lvgesamtnote->updatevon = null;
|
||||
$lvgesamtnote->insertamum = $jetzt;
|
||||
$lvgesamtnote->insertvon = $user;
|
||||
$lvgesamtnote->punkte = $punkte;
|
||||
$new = true;
|
||||
$response = "neu";
|
||||
}
|
||||
else
|
||||
{
|
||||
$lvgesamtnote->note = trim($note);
|
||||
$lvgesamtnote->punkte = $punkte;
|
||||
$lvgesamtnote->benotungsdatum = $jetzt;
|
||||
$lvgesamtnote->updateamum = $jetzt;
|
||||
$lvgesamtnote->updatevon = $user;
|
||||
$new = false;
|
||||
if ($lvgesamtnote->freigabedatum)
|
||||
if ($lvgesamtnote->freigabedatum)
|
||||
$response = "update_f";
|
||||
else
|
||||
$response = "update";
|
||||
}
|
||||
if (!$lvgesamtnote->save($new))
|
||||
return "<span class='error'>".$lvgesamtnote->errormsg."</span>";
|
||||
else
|
||||
return $lvgesamtnote->errormsg;
|
||||
else
|
||||
return $response;
|
||||
}
|
||||
|
||||
@@ -167,26 +200,34 @@ if (isset($_REQUEST["submit"]))
|
||||
{
|
||||
$student_uid = $_REQUEST["student_uid"];
|
||||
$note = $_REQUEST["note"];
|
||||
|
||||
//if((($note>0) && ($note < 6)) || ($note == 7) || ($note==16) || ($note==10) || ($note==14))
|
||||
$response = savenote($db,$lvid, $student_uid, $note);
|
||||
/*else
|
||||
$response = $p->t('benotungstool/noteEingeben')."!";
|
||||
*/
|
||||
$punkte = (isset($_REQUEST["punkte"])?$_REQUEST["punkte"]:'');
|
||||
|
||||
$response = savenote($db,$lvid, $student_uid, $note, $punkte);
|
||||
echo $response;
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
foreach ($_POST as $row=>$val)
|
||||
{
|
||||
if(mb_strstr(mb_strtolower($row), 'matrikelnr_'))
|
||||
{
|
||||
$id=mb_substr($row, mb_strlen('matrikelnr_'));
|
||||
if(isset($_POST['matrikelnr_'.$id]) && isset($_POST['note_'.$id]))
|
||||
if(isset($_POST['matrikelnr_'.$id]) && (isset($_POST['note_'.$id]) || isset($_POST['punkte_'.$id])))
|
||||
{
|
||||
$matrikelnummer = $_POST['matrikelnr_'.$id];
|
||||
$note = $_POST['note_'.$id];
|
||||
|
||||
$note=null;
|
||||
$punkte=null;
|
||||
if(isset($_POST['note_'.$id]))
|
||||
$note = $_POST['note_'.$id];
|
||||
elseif(isset($_POST['punkte_'.$id]))
|
||||
$punkte = $_POST['punkte_'.$id];
|
||||
else
|
||||
{
|
||||
$response.="\nNote oder Punkte fehlen";
|
||||
continue;
|
||||
}
|
||||
$punkte=str_replace(',','.', $punkte);
|
||||
//UID ermitteln
|
||||
$student = new student();
|
||||
if(!$student_uid = $student->getUidFromMatrikelnummer($matrikelnummer))
|
||||
@@ -194,36 +235,25 @@ if (isset($_REQUEST["submit"]))
|
||||
$response.="\n".$p->t('benotungstool/studentMitMatrikelnummerExistiertNicht',array($matrikelnummer));
|
||||
continue;
|
||||
}
|
||||
|
||||
|
||||
// Hole Zeugnisnote wenn schon eine eingetragen ist
|
||||
/*
|
||||
if ($zeugnisnote = new zeugnisnote($lvid, $student_uid, $stsem))
|
||||
$znote = $zeugnisnote->note;
|
||||
else
|
||||
$znote = null;
|
||||
|
||||
/*if(((($note>0) && ($note < 6)) || ($note == 7) || ($note==16) || ($note==10) || ($note==14)))
|
||||
{*/
|
||||
$val=savenote($db,$lvid, $student_uid, $note);
|
||||
if($val!='neu' && $val!='update' && $val!='update_f')
|
||||
$response.=$val;
|
||||
/*}
|
||||
else
|
||||
{
|
||||
// Wenn Zeugnisnote schon 6 ist -> keine Fehlermeldung mehr
|
||||
if($znote != 6)
|
||||
{
|
||||
$student->load($student_uid);
|
||||
$response .= "\n".$p->t('benotungstool/fehlerhafteNoteBeiStudent', array($student->vorname, $student->nachname))." ".$p->t('benotungstool/noteEingeben');
|
||||
}
|
||||
}*/
|
||||
$znote = null;
|
||||
*/
|
||||
$val=savenote($db,$lvid, $student_uid, $note, $punkte);
|
||||
if($val!='neu' && $val!='update' && $val!='update_f')
|
||||
$response.=$val;
|
||||
}
|
||||
else
|
||||
else
|
||||
{
|
||||
$response.="\n".$p->t('global/fehlerBeiDerParameteruebergabe');
|
||||
$response.="\n".$p->t('global/fehlerBeiDerParameteruebergabe');
|
||||
}
|
||||
}
|
||||
}
|
||||
echo $response;
|
||||
}
|
||||
}
|
||||
}
|
||||
?>
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -59,8 +59,6 @@ else
|
||||
|
||||
if(isset($_GET['lehreinheit_id']) && is_numeric($_GET['lehreinheit_id'])) //Lehreinheit_id
|
||||
$lehreinheit_id = $_GET['lehreinheit_id'];
|
||||
//else
|
||||
// die('Fehlerhafte Parameteruebergabe');
|
||||
|
||||
if(isset($_GET['lehreinheit_id_pr']) && is_numeric($_GET['lehreinheit_id_pr'])) //Lehreinheit_id der pruefung
|
||||
$lehreinheit_id = $_GET['lehreinheit_id_pr'];
|
||||
@@ -87,14 +85,9 @@ if(isset($_GET['stsem']))
|
||||
else
|
||||
$stsem = '';
|
||||
|
||||
//Vars
|
||||
|
||||
$uebung_id = (isset($_GET['uebung_id'])?$_GET['uebung_id']:'');
|
||||
$uid = (isset($_GET['uid'])?$_GET['uid']:'');
|
||||
|
||||
//Kopfzeile
|
||||
|
||||
|
||||
//Studiensemester laden
|
||||
$stsem_obj = new studiensemester();
|
||||
if($stsem=='')
|
||||
@@ -102,78 +95,93 @@ if($stsem=='')
|
||||
|
||||
$student_uid = $_REQUEST["student_uid"];
|
||||
|
||||
|
||||
//if($lehreinheit_id=='')
|
||||
// die('Es wurde keine passende Lehreinheit in diesem Studiensemester gefunden');
|
||||
|
||||
$note = $_REQUEST["note"];
|
||||
if ( (($note>0) && ($note < 6)) || ($note == 7) || ($note==16) || ($note==10) || ($note==14))
|
||||
$note = $_REQUEST["note"];
|
||||
if(isset($_REQUEST['punkte']))
|
||||
$punkte = $_REQUEST['punkte'];
|
||||
else
|
||||
$punkte = '';
|
||||
|
||||
if($note=='')
|
||||
$note = 9;
|
||||
|
||||
$old_note = $note;
|
||||
|
||||
// lvgesamtnote für studenten speichern
|
||||
if (isset($_REQUEST["submit"]) && ($_REQUEST["student_uid"] != '') ){
|
||||
|
||||
// lehreinheiten holen, in denen der student ist
|
||||
$le_arr = array();
|
||||
$qry_stud = "SELECT DISTINCT lehreinheit_id, lehrform_kurzbz FROM campus.vw_student_lehrveranstaltung JOIN campus.vw_student using(uid) WHERE studiensemester_kurzbz = '".$stsem."' and lehrveranstaltung_id = '".$lvid."' and uid='".$student_uid."' ORDER BY lehrform_kurzbz DESC";
|
||||
if($result_stud = $db->db_query($qry_stud))
|
||||
{
|
||||
$i=1;
|
||||
while($row_stud = $db->db_fetch_object($result_stud))
|
||||
{
|
||||
$le_arr[] = $row_stud->lehreinheit_id;
|
||||
}
|
||||
}
|
||||
if (isset($_REQUEST["submit"]) && ($_REQUEST["student_uid"] != '') )
|
||||
{
|
||||
// Die Pruefung muss einer Lehreinheit zugeordnet werden
|
||||
// deshalb wird hier versucht eine passende Lehreinheit zu ermitteln.
|
||||
$le_arr = array();
|
||||
$qry_stud = "SELECT DISTINCT lehreinheit_id, lehrform_kurzbz
|
||||
FROM
|
||||
campus.vw_student_lehrveranstaltung
|
||||
JOIN campus.vw_student using(uid)
|
||||
WHERE
|
||||
studiensemester_kurzbz = ".$db->db_add_param($stsem)."
|
||||
AND lehrveranstaltung_id = ".$db->db_add_param($lvid, FHC_INTEGER)."
|
||||
AND uid=".$db->db_add_param($student_uid)."
|
||||
ORDER BY lehrform_kurzbz DESC";
|
||||
|
||||
if (!in_array($lehreinheit_id,$le_arr))
|
||||
$lehreinheit_id = $le_arr[0];
|
||||
if($result_stud = $db->db_query($qry_stud))
|
||||
{
|
||||
$i=1;
|
||||
while($row_stud = $db->db_fetch_object($result_stud))
|
||||
{
|
||||
$le_arr[] = $row_stud->lehreinheit_id;
|
||||
}
|
||||
}
|
||||
|
||||
if (!in_array($lehreinheit_id,$le_arr))
|
||||
$lehreinheit_id = $le_arr[0];
|
||||
|
||||
$jetzt = date("Y-m-d H:i:s");
|
||||
|
||||
$pr = new Pruefung();
|
||||
|
||||
// Wenn eine Pruefung angelegt wird, wird zuerst eine Pruefung mit 1. Termin angelegt
|
||||
// und dort die Zeugnisnote gespeichert
|
||||
if($pr->getPruefungen($student_uid, "Termin1", $lvid, $stsem))
|
||||
{
|
||||
if ($pr->result)
|
||||
$termin1 = 1;
|
||||
else
|
||||
{
|
||||
$lvnote = new lvgesamtnote();
|
||||
if ($lvnote->load($lvid, $student_uid, $stsem))
|
||||
{
|
||||
$lvnote = new lvgesamtnote();
|
||||
if ($lvnote->load($lvid, $student_uid, $stsem))
|
||||
{
|
||||
$pr_note = $lvnote->note;
|
||||
$benotungsdatum = $lvnote->benotungsdatum;
|
||||
}
|
||||
else
|
||||
{
|
||||
$pr_note = 9;
|
||||
$benotungsdatum = $jetzt;
|
||||
}
|
||||
$pr_1 = new Pruefung();
|
||||
$pr_1->lehreinheit_id = $lehreinheit_id;
|
||||
$pr_1->student_uid = $student_uid;
|
||||
$pr_1->mitarbeiter_uid = $user;
|
||||
$pr_1->note = $pr_note;
|
||||
$pr_1->pruefungstyp_kurzbz = "Termin1";
|
||||
$pr_1->datum = $benotungsdatum;
|
||||
$pr_1->anmerkung = "";
|
||||
$pr_1->insertamum = $jetzt;
|
||||
$pr_1->insertvon = $user;
|
||||
$pr_1->updateamum = Null;
|
||||
$pr_1->updatevon = Null;
|
||||
$pr_1->ext_id = Null;
|
||||
$pr_1->new = 1;
|
||||
$pr_1->save();
|
||||
$pr_note = $lvnote->note;
|
||||
$pr_punkte = $lvnote->punkte;
|
||||
$benotungsdatum = $lvnote->benotungsdatum;
|
||||
}
|
||||
else
|
||||
{
|
||||
$pr_note = 9;
|
||||
$benotungsdatum = $jetzt;
|
||||
}
|
||||
|
||||
$pr_1 = new Pruefung();
|
||||
$pr_1->lehreinheit_id = $lehreinheit_id;
|
||||
$pr_1->student_uid = $student_uid;
|
||||
$pr_1->mitarbeiter_uid = $user;
|
||||
$pr_1->note = $pr_note;
|
||||
$pr_1->punkte = $pr_punkte;
|
||||
$pr_1->pruefungstyp_kurzbz = "Termin1";
|
||||
$pr_1->datum = $benotungsdatum;
|
||||
$pr_1->anmerkung = "";
|
||||
$pr_1->insertamum = $jetzt;
|
||||
$pr_1->insertvon = $user;
|
||||
$pr_1->updateamum = null;
|
||||
$pr_1->updatevon = null;
|
||||
$pr_1->ext_id = null;
|
||||
$pr_1->new = true;
|
||||
$pr_1->save();
|
||||
}
|
||||
}
|
||||
|
||||
$prTermin2 = new Pruefung();
|
||||
$pr_2 = new Pruefung();
|
||||
|
||||
// Die Pruefung wird als Termin2 eingetragen
|
||||
if ($prTermin2->getPruefungen($student_uid, "Termin2", $lvid, $stsem))
|
||||
{
|
||||
if ($prTermin2->result)
|
||||
@@ -184,6 +192,7 @@ if (isset($_REQUEST["submit"]) && ($_REQUEST["student_uid"] != '') ){
|
||||
$pr_2->updatevon = $user;
|
||||
$old_note = $pr_2->note;
|
||||
$pr_2->note = $note;
|
||||
$pr_2->punkte = $punkte;
|
||||
$pr_2->datum = $datum;
|
||||
$pr_2->anmerkung = "";
|
||||
}
|
||||
@@ -193,125 +202,65 @@ if (isset($_REQUEST["submit"]) && ($_REQUEST["student_uid"] != '') ){
|
||||
$pr_2->student_uid = $student_uid;
|
||||
$pr_2->mitarbeiter_uid = $user;
|
||||
$pr_2->note = $note;
|
||||
$pr_2->punkte = $punkte;
|
||||
$pr_2->pruefungstyp_kurzbz = "Termin2";
|
||||
$pr_2->datum = $datum;
|
||||
$pr_2->anmerkung = "";
|
||||
$pr_2->insertamum = $jetzt;
|
||||
$pr_2->insertvon = $user;
|
||||
$pr_2->updateamum = Null;
|
||||
$pr_2->updatevon = Null;
|
||||
$pr_2->ext_id = Null;
|
||||
$pr_2->new = 1;
|
||||
$pr_2->updateamum = null;
|
||||
$pr_2->updatevon = null;
|
||||
$pr_2->ext_id = null;
|
||||
$pr_2->new = true;
|
||||
$old_note = -1;
|
||||
}
|
||||
$pr_2->save();
|
||||
}
|
||||
|
||||
|
||||
if ( (($note>0) && ($note < 6)) || ($note == 7) || ($note==16) || ($note==10) || ($note==14))
|
||||
{
|
||||
// Wenn eine Pruefung eingetragen wird, wird danach die LV-Note korrigiert
|
||||
$jetzt = date("Y-m-d H:i:s");
|
||||
|
||||
$jetzt = date("Y-m-d H:i:s");
|
||||
|
||||
$lvid = $_REQUEST["lvid"];
|
||||
$lvgesamtnote = new lvgesamtnote();
|
||||
if (!$lvgesamtnote->load($lvid, $student_uid, $stsem))
|
||||
{
|
||||
$lvgesamtnote->student_uid = $student_uid;
|
||||
$lvgesamtnote->lehrveranstaltung_id = $lvid;
|
||||
$lvgesamtnote->studiensemester_kurzbz = $stsem;
|
||||
$lvgesamtnote->note = $_REQUEST["note"];
|
||||
$lvgesamtnote->mitarbeiter_uid = $user;
|
||||
$lvgesamtnote->benotungsdatum = $jetzt;
|
||||
$lvgesamtnote->freigabedatum = null;
|
||||
$lvgesamtnote->freigabevon_uid = null;
|
||||
$lvgesamtnote->bemerkung = null;
|
||||
$lvgesamtnote->updateamum = null;
|
||||
$lvgesamtnote->updatevon = null;
|
||||
$lvgesamtnote->insertamum = $jetzt;
|
||||
$lvgesamtnote->insertvon = $user;
|
||||
$new = true;
|
||||
$response = "neu";
|
||||
}
|
||||
else
|
||||
{
|
||||
$lvgesamtnote->note = $_REQUEST["note"];
|
||||
$lvgesamtnote->benotungsdatum = $jetzt;
|
||||
$lvgesamtnote->updateamum = $jetzt;
|
||||
$lvgesamtnote->updatevon = $user;
|
||||
$new = false;
|
||||
if ($lvgesamtnote->freigabedatum)
|
||||
$response = "update_f";
|
||||
else
|
||||
$response = "update";
|
||||
}
|
||||
if (!$lvgesamtnote->save($new))
|
||||
echo "<span class='error'>".$lvgesamtnote->errormsg."</span>";
|
||||
else
|
||||
echo $response;
|
||||
$lvid = $_REQUEST["lvid"];
|
||||
$lvgesamtnote = new lvgesamtnote();
|
||||
if (!$lvgesamtnote->load($lvid, $student_uid, $stsem))
|
||||
{
|
||||
$lvgesamtnote->student_uid = $student_uid;
|
||||
$lvgesamtnote->lehrveranstaltung_id = $lvid;
|
||||
$lvgesamtnote->studiensemester_kurzbz = $stsem;
|
||||
$lvgesamtnote->note = $note;
|
||||
$lvgesamtnote->punkte = $punkte;
|
||||
$lvgesamtnote->mitarbeiter_uid = $user;
|
||||
$lvgesamtnote->benotungsdatum = $jetzt;
|
||||
$lvgesamtnote->freigabedatum = null;
|
||||
$lvgesamtnote->freigabevon_uid = null;
|
||||
$lvgesamtnote->bemerkung = null;
|
||||
$lvgesamtnote->updateamum = null;
|
||||
$lvgesamtnote->updatevon = null;
|
||||
$lvgesamtnote->insertamum = $jetzt;
|
||||
$lvgesamtnote->insertvon = $user;
|
||||
$new = true;
|
||||
$response = "neu";
|
||||
}
|
||||
else
|
||||
{
|
||||
$lvgesamtnote->note = $note;
|
||||
$lvgesamtnote->punkte = $punkte;
|
||||
$lvgesamtnote->benotungsdatum = $jetzt;
|
||||
$lvgesamtnote->updateamum = $jetzt;
|
||||
$lvgesamtnote->updatevon = $user;
|
||||
$new = false;
|
||||
if ($lvgesamtnote->freigabedatum)
|
||||
$response = "update_f";
|
||||
else
|
||||
$response = "update";
|
||||
}
|
||||
else
|
||||
echo "update_pr";
|
||||
if (!$lvgesamtnote->save($new))
|
||||
echo "<span class='error'>".$lvgesamtnote->errormsg."</span>";
|
||||
else
|
||||
echo $response;
|
||||
}
|
||||
else
|
||||
echo "Fehler beim Eintragen der Prüfungen";
|
||||
|
||||
/*
|
||||
Beim Eintragen von Nachpruefungen wird ein Mail an die Assistenz geschickt.
|
||||
|
||||
17.06.2010 auf Wunsch der Assistenz werden keine Mails mehr versendet
|
||||
|
||||
if ($old_note != $note)
|
||||
{
|
||||
$qry = "SELECT distinct on(uid) vorname, nachname, tbl_benutzer.uid as uid, oe_kurzbz
|
||||
FROM lehre.tbl_lehreinheit
|
||||
JOIN lehre.tbl_lehreinheitmitarbeiter USING (lehreinheit_id)
|
||||
JOIN public.tbl_benutzer ON (uid=mitarbeiter_uid)
|
||||
JOIN public.tbl_person USING (person_id)
|
||||
JOIN lehre.tbl_lehrveranstaltung USING (lehrveranstaltung_id)
|
||||
JOIN public.tbl_studiengang USING (studiengang_kz)
|
||||
WHERE
|
||||
lehrveranstaltung_id='$lvid' AND
|
||||
tbl_lehreinheitmitarbeiter.mitarbeiter_uid NOT like '_Dummy%' AND
|
||||
tbl_benutzer.aktiv=true AND tbl_person.aktiv=true AND
|
||||
studiensemester_kurzbz='$stsem'";
|
||||
|
||||
$mailto = '';
|
||||
if(($result = $db->db_query($qry)) != FALSE)
|
||||
{
|
||||
if ($db->db_num_rows($result) > 0)
|
||||
{
|
||||
$row_lector = $db->db_fetch_object($result);
|
||||
$oe_kurzbz = $row_lector->oe_kurzbz;
|
||||
$mailto = $row_lector->uid.'@'.DOMAIN;
|
||||
while (($row_lector = $db->db_fetch_object($result)) != FALSE)
|
||||
$mailto .= ','.$row_lector->uid.'@'.DOMAIN;
|
||||
}
|
||||
}
|
||||
|
||||
$ass = new benutzerfunktion();
|
||||
if ($ass->getBenutzerFunktionen("ass",$oe_kurzbz))
|
||||
foreach ($ass->result as $res) $mailto .= (empty($mailto) ? "" : ",").$res->uid.'@'.DOMAIN;
|
||||
|
||||
if($mailto != '')
|
||||
{
|
||||
$culprit = new benutzer($user);
|
||||
$victim = new student($student_uid);
|
||||
|
||||
$mail = new mail( $mailto,
|
||||
'CIS-System@do.not.reply',
|
||||
'[CIS-System] Note der Nachprüfung wurde '.($old_note < 0 ? 'eingetragen' : 'geändert'),
|
||||
"Automatische Benachrichtigung:\n\nDie Nachprüfungsnote von\n\n$victim->vorname $victim->nachname ($student_uid)\n\nwurde im Studiensemester $stsem von $culprit->vorname $culprit->nachname ($user)\n\n".
|
||||
($old_note < 0
|
||||
? "mit '$note' eingetragen."
|
||||
: "von '$old_note' auf '$note' geändert.").
|
||||
"\n");
|
||||
if (!$mail->send())
|
||||
{
|
||||
sleep(3);
|
||||
$mail->send(); // Desperate second attempt.
|
||||
}
|
||||
}
|
||||
}
|
||||
*/
|
||||
?>
|
||||
|
||||
@@ -0,0 +1,82 @@
|
||||
<?php
|
||||
/* Copyright (C) 2015 fhcomplete.org
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of the
|
||||
* License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* Authors: Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at> and
|
||||
*/
|
||||
require_once('../../../../config/cis.config.inc.php');
|
||||
require_once('../../../../config/global.config.inc.php');
|
||||
require_once('../../../../include/functions.inc.php');
|
||||
require_once('../../../../include/notenschluessel.class.php');
|
||||
require_once('../../../../include/phrasen.class.php');
|
||||
|
||||
$uid = get_uid();
|
||||
|
||||
$sprache = getSprache();
|
||||
$p = new phrasen($sprache);
|
||||
|
||||
if(isset($_GET['lehrveranstaltung_id']))
|
||||
$lehrveranstaltung_id = $_GET['lehrveranstaltung_id'];
|
||||
else
|
||||
die('Fehlerhafte Parameteruebergabe');
|
||||
|
||||
if(isset($_GET['stsem']))
|
||||
$studiensemester_kurzbz = $_GET['stsem'];
|
||||
else
|
||||
die('Fehlerhafte Parameteruebergabe');
|
||||
|
||||
|
||||
echo '<!DOCTYPE HTML>
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<link href="../../../../skin/style.css.php" rel="stylesheet" type="text/css">
|
||||
<link href="../../../../skin/jquery.css" rel="stylesheet" type="text/css"/>
|
||||
<link href="../../../../skin/tablesort.css" rel="stylesheet" type="text/css"/>
|
||||
<link href="../../../../skin/jquery-ui-1.9.2.custom.min.css" rel="stylesheet" type="text/css">
|
||||
<script src="../../../../include/js/jquery1.9.min.js" type="text/javascript"></script>
|
||||
<title>Grade</title>
|
||||
</head>
|
||||
<body>';
|
||||
$notenschluessel = new notenschluessel();
|
||||
if($kurzbz = $notenschluessel->getNotenschluessel($lehrveranstaltung_id, $studiensemester_kurzbz))
|
||||
{
|
||||
if($notenschluessel->loadAufteilung($kurzbz))
|
||||
{
|
||||
echo '<table id="t1" class="tablesorter">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>'.$p->t('benotungstool/note').'</th>
|
||||
<th>'.$p->t('benotungstool/punkte').'</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>';
|
||||
foreach($notenschluessel->result as $row)
|
||||
{
|
||||
echo '<tr>';
|
||||
echo '<td>'.$row->notenbezeichnung.'</td>';
|
||||
echo '<td>'.$row->punkte.'</td>';
|
||||
echo '</tr>';
|
||||
}
|
||||
echo '</tbody></table>';
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
echo $p->t('gesamtnote/keinNotenschluesselvorhanden');
|
||||
}
|
||||
echo '</body></html>';
|
||||
?>
|
||||
@@ -347,7 +347,7 @@ if($result = $db->db_query($qry))
|
||||
$gruppen.=' ';
|
||||
}
|
||||
}
|
||||
echo "<OPTION value='studentenansicht.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$row->lehreinheit_id' $selected>$row->kurzbz - $gruppen $lektoren</OPTION>\n";
|
||||
echo "<OPTION value='studentenansicht.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$row->lehreinheit_id".(isset($uid) && $uid!=''?'&uid='.$uid:'')."' $selected>$row->kurzbz - $gruppen $lektoren</OPTION>\n";
|
||||
}
|
||||
echo '</SELECT> ';
|
||||
}
|
||||
@@ -917,7 +917,7 @@ if (!isset($_GET["notenuebersicht"]))
|
||||
</tr>';
|
||||
}
|
||||
echo "</table>";
|
||||
echo "<br><br>".$p->t('bentotungstool/esHabenStudentenEingetragen',array($gesamt));
|
||||
echo "<br><br>".$p->t('benotungstool/esHabenStudentenEingetragen',array($gesamt));
|
||||
}
|
||||
}
|
||||
else
|
||||
|
||||
@@ -25,56 +25,61 @@
|
||||
* @create 20-03-2006
|
||||
* Aufruf: zipdownload.php?stg=255&sem=1$short=eng
|
||||
*/
|
||||
require_once('../../../../config/cis.config.inc.php');
|
||||
require_once('../../../../include/functions.inc.php');
|
||||
|
||||
require_once('../../../../config/cis.config.inc.php');
|
||||
require_once('../../../../include/functions.inc.php');
|
||||
$user = get_uid();
|
||||
$user = get_uid();
|
||||
|
||||
//Gueltigkeit der Parameter pruefen
|
||||
if(!isset($_GET['uebung_id']) || !is_numeric($_GET['uebung_id']))
|
||||
{
|
||||
die('Fehler bei der Parameteruebergabe');
|
||||
}
|
||||
if(!isset($_GET['lehreinheit_id']) || !is_numeric($_GET['lehreinheit_id']))
|
||||
{
|
||||
die('Fehler bei der Parameteruebergabe');
|
||||
}
|
||||
if(!isset($_GET['stsem']))
|
||||
{
|
||||
die('Fehler bei der Parameteruebergabe');
|
||||
}
|
||||
if(!isset($_GET['downloadname']))
|
||||
{
|
||||
die('Fehler bei der Parameteruebergabe');
|
||||
}
|
||||
if(!check_lektor($user))
|
||||
die('Sie haben keine Berechtigung fuer diese Seite');
|
||||
|
||||
|
||||
$uebung_id = $_GET['uebung_id'];
|
||||
$lehreinheit_id = $_GET['lehreinheit_id'];
|
||||
$stsem = $_GET['stsem'];
|
||||
$downloadname = $_GET['downloadname'];
|
||||
|
||||
//Gueltigkeit der Parameter pruefen
|
||||
if(!isset($_GET['uebung_id']) || !is_numeric($_GET['uebung_id']))
|
||||
{
|
||||
die('Fehler bei der Parameteruebergabe');
|
||||
}
|
||||
if(!isset($_GET['lehreinheit_id']) || !is_numeric($_GET['lehreinheit_id']))
|
||||
{
|
||||
die('Fehler bei der Parameteruebergabe');
|
||||
}
|
||||
if(!isset($_GET['stsem']))
|
||||
{
|
||||
die('Fehler bei der Parameteruebergabe');
|
||||
}
|
||||
if(!isset($_GET['downloadname']))
|
||||
{
|
||||
die('Fehler bei der Parameteruebergabe');
|
||||
}
|
||||
|
||||
//Pfade bauen
|
||||
$pfad = BENOTUNGSTOOL_PATH.'abgabe/';
|
||||
$filename = 'download_'.$user.'_'.$downloadname.'.zip';
|
||||
|
||||
|
||||
//Pfad wechseln
|
||||
chdir($pfad);
|
||||
|
||||
|
||||
//File loeschen falls es existiert
|
||||
//if(file_exists("download_".$user."*"))
|
||||
exec("rm download_".$user."*");
|
||||
|
||||
//Zip File erstellen
|
||||
exec("zip -r ".$filename." *_[WS]S[0-9][0-9][0-9][0-9]_".$uebung_id."_*");
|
||||
$uebung_id = $_GET['uebung_id'];
|
||||
$lehreinheit_id = $_GET['lehreinheit_id'];
|
||||
$stsem = $_GET['stsem'];
|
||||
$downloadname = $_GET['downloadname'];
|
||||
|
||||
//Auf Zip File Verweisen
|
||||
//header("Location: $pfad$filename");
|
||||
header('Content-Type: application/octet-stream');
|
||||
header('Content-disposition: attachment; filename="'.$filename.'"');
|
||||
readfile($filename);
|
||||
unlink($filename);
|
||||
?>
|
||||
if(mb_strstr($downloadname,'..'))
|
||||
die('Ungueltiger Parameter gefunden');
|
||||
|
||||
//Pfade bauen
|
||||
$pfad = BENOTUNGSTOOL_PATH.'abgabe/';
|
||||
$filename = 'download_'.$user.'_'.$downloadname.'.zip';
|
||||
|
||||
if(!check_filename($filename))
|
||||
die('Ungueltiger Parameter gefunden');
|
||||
|
||||
//Pfad wechseln
|
||||
chdir($pfad);
|
||||
|
||||
//File loeschen falls es existiert
|
||||
//if(file_exists("download_".$user."*"))
|
||||
exec('rm download_'.$user.'*');
|
||||
|
||||
//Zip File erstellen
|
||||
exec("zip -r ".escapeshellarg($filename).' *_[WS]S[0-9][0-9][0-9][0-9]_'.$uebung_id.'_*');
|
||||
|
||||
//Auf Zip File Verweisen
|
||||
//header("Location: $pfad$filename");
|
||||
header('Content-Type: application/octet-stream');
|
||||
header('Content-disposition: attachment; filename="'.$filename.'"');
|
||||
readfile($filename);
|
||||
unlink($filename);
|
||||
?>
|
||||
|
||||
+164
-134
@@ -16,18 +16,18 @@
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* Authors: Christian Paminger <christian.paminger@technikum-wien.at>,
|
||||
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at>
|
||||
* Rudolf Hangl < rudolf.hangl@technikum-wien.at >
|
||||
* Gerald Simane-Sequens < gerald.simane-sequens@technikum-wien.at >
|
||||
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at>
|
||||
* Rudolf Hangl < rudolf.hangl@technikum-wien.at >
|
||||
* Gerald Simane-Sequens < gerald.simane-sequens@technikum-wien.at >
|
||||
*/
|
||||
|
||||
/*
|
||||
@author Andres Oesterreicher
|
||||
@author Andres Oesterreicher
|
||||
@date 20.10.2005
|
||||
@brief Formular zum Freigeben der LV Informationen aus der tabelle tbl_lvinfo
|
||||
|
||||
@edit 08-11-2006 Versionierung entfernt. Studiensemester = WS2007
|
||||
03-01-2006 Anpassung an neue DB
|
||||
03-01-2006 Anpassung an neue DB
|
||||
*/
|
||||
|
||||
require_once('../../../../config/cis.config.inc.php');
|
||||
@@ -36,6 +36,7 @@ require_once('../../../../include/functions.inc.php');
|
||||
require_once('../../../../include/studiensemester.class.php');
|
||||
require_once('../../../../include/lvinfo.class.php');
|
||||
require_once('../../../../include/phrasen.class.php');
|
||||
require_once('../../../../include/benutzerberechtigung.class.php');
|
||||
|
||||
$sprache = getSprache();
|
||||
$p = new phrasen($sprache);
|
||||
@@ -43,15 +44,19 @@ $p = new phrasen($sprache);
|
||||
if (!$db = new basis_db())
|
||||
die($p->t('global/fehlerBeimOeffnenDerDatenbankverbindung'));
|
||||
$user = get_uid();
|
||||
if(!check_lektor($user))
|
||||
die('<center>'.$p->t('global/keineBerechtigungFuerDieseSeite').'</center>');
|
||||
|
||||
$rechte = new benutzerberechtigung();
|
||||
$rechte->getBerechtigungen($user);
|
||||
|
||||
//if(!check_lektor($user))
|
||||
// die('<center>'.$p->t('global/keineBerechtigungFuerDieseSeite').'</center>');
|
||||
|
||||
/* WriteLog($qry,$uid)
|
||||
* @brief Schreib die Querys im format: uid - datum - qry ins LogFile
|
||||
* @param $qry Query anweisung
|
||||
* $uid Username
|
||||
* @return true wenn ok false wenn fehler beim oeffnen
|
||||
*/
|
||||
* @brief Schreib die Querys im format: uid - datum - qry ins LogFile
|
||||
* @param $qry Query anweisung
|
||||
* $uid Username
|
||||
* @return true wenn ok false wenn fehler beim oeffnen
|
||||
*/
|
||||
function WriteLog($qry,$uid)
|
||||
{
|
||||
if($fp=fopen(LOG_PATH.'lvinfo.log',"a"))
|
||||
@@ -68,10 +73,13 @@ if(!check_lektor($user))
|
||||
|
||||
$lv=trim((isset($_REQUEST['lv']) ? $_REQUEST['lv']:''));
|
||||
|
||||
//Studiengang der Angezeigt werden soll
|
||||
//Studiengang der Angezeigt werden soll
|
||||
$stg=trim((isset($_REQUEST['stg']) ? $_REQUEST['stg']:''));
|
||||
//Semester das angezeigt werden soll
|
||||
$sem=trim((isset($_REQUEST['sem']) ? $_REQUEST['sem']:''));
|
||||
|
||||
if (!$rechte->isBerechtigt('lehre/lvinfo_freigabe',$stg))
|
||||
die ($rechte->errormsg);
|
||||
|
||||
if(isset($_GET["lv"])) //Id des DS der freigegeben/nicht freigegeben werden soll
|
||||
$id=$_GET["lv"];
|
||||
@@ -146,164 +154,186 @@ if(!check_lektor($user))
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<link href="../../../../skin/style.css.php" rel="stylesheet" type="text/css">
|
||||
<link rel="stylesheet" href="../../../../skin/jquery.css" type="text/css"/>
|
||||
<link rel="stylesheet" href="../../../../skin/tablesort.css" type="text/css"/>
|
||||
<script type="text/javascript" src="../../../../include/js/jquery.js"></script>
|
||||
<title><?php echo $p->t('courseInformation/ectsLvInfo');?></title>
|
||||
<script language="JavaScript" type="text/javascript">
|
||||
function ask() {
|
||||
return confirm("<?php echo $p->t('global/warnungWirklichLoeschen');?>");
|
||||
}
|
||||
$(document).ready(function()
|
||||
{
|
||||
$("#myTable").tablesorter(
|
||||
{
|
||||
sortList: [[1,0]],
|
||||
widgets: ["zebra"],
|
||||
headers : {0:{sorter: false}}
|
||||
});
|
||||
});
|
||||
</script>
|
||||
</head>
|
||||
<body style="padding:10px">
|
||||
<h1><?php echo $p->t('courseInformation/lvInfoFreigabe');?></h1>
|
||||
|
||||
<table class="tabcontent">
|
||||
<tr>
|
||||
<td width="85%">
|
||||
|
||||
</td>
|
||||
|
||||
<table class="tabcontent">
|
||||
<tr>
|
||||
<td width="85%">
|
||||
|
||||
</td>
|
||||
<td>
|
||||
<ul>
|
||||
<li> <a href='index.php?<?php echo "stg=$stg&sem=".(isset($sem)?$sem:'')."&lv=$lv"?>'><font size='3'><?php echo $p->t('global/bearbeiten');?></font></a></li>
|
||||
<li> <a href='index.php?<?php echo "stg=$stg&sem=".(isset($sem)?$sem:'')."&lvid=$lv"?>'><font size='3'><?php echo $p->t('global/bearbeiten');?></font></a></li>
|
||||
<li> <a href='freigabe.php?<?php echo "stg=$stg&sem=".(isset($sem)?$sem:'')."&lv=$lv"?>'><font size='3'><?php echo $p->t('courseInformation/freigabe');?></font></a></li>
|
||||
<li> <a href='beispiele.php'><font size='3'><?php echo $p->t('global/beispiele');?></font></a></li>
|
||||
<li> <a href='terminologie.php'><font size='3'><?php echo $p->t('courseInformation/terminologie');?></font></a></li>
|
||||
</ul>
|
||||
<!--<li> <a href='terminologie.php'><font size='3'><?php echo $p->t('courseInformation/terminologie');?></font></a></li>-->
|
||||
</ul>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
|
||||
<?php
|
||||
//DropDown Menues zur Auswahl von Studiengang und Semester anzeigen
|
||||
<?php
|
||||
//DropDown Menues zur Auswahl von Studiengang und Semester anzeigen
|
||||
|
||||
echo "<form name='auswFrm' action='".$_SERVER['PHP_SELF']."' method='POST'>";
|
||||
echo "<input type='hidden' name='status' value='a'>";
|
||||
echo "<input type='hidden' name='lv' value='$lv'>";
|
||||
//stg Drop Down
|
||||
$qry = "SELECT distinct tbl_studiengang.studiengang_kz, UPPER(tbl_studiengang.typ::varchar(1) || tbl_studiengang.kurzbz) as kurzbzlang FROM campus.tbl_lvinfo, lehre.tbl_lehrveranstaltung, public.tbl_studiengang
|
||||
WHERE tbl_lvinfo.aktiv=true
|
||||
AND tbl_lvinfo.lehrveranstaltung_id=tbl_lehrveranstaltung.lehrveranstaltung_id
|
||||
AND tbl_lehrveranstaltung.studiengang_kz=tbl_studiengang.studiengang_kz
|
||||
ORDER by kurzbzlang";
|
||||
if(!$result=$db->db_query($qry))
|
||||
die ('<center>'.$p->t('global/fehlerBeimLesenAusDatenbank').'</center>');
|
||||
echo "<form name='auswFrm' action='".$_SERVER['PHP_SELF']."' method='POST'>";
|
||||
echo "<input type='hidden' name='status' value='a'>";
|
||||
echo "<input type='hidden' name='lv' value='$lv'>";
|
||||
//stg Drop Down
|
||||
$qry = "SELECT distinct tbl_studiengang.studiengang_kz, UPPER(tbl_studiengang.typ::varchar(1) || tbl_studiengang.kurzbz) as kurzbzlang FROM campus.tbl_lvinfo, lehre.tbl_lehrveranstaltung, public.tbl_studiengang
|
||||
WHERE tbl_lvinfo.aktiv=true
|
||||
AND tbl_lvinfo.lehrveranstaltung_id=tbl_lehrveranstaltung.lehrveranstaltung_id
|
||||
AND tbl_lehrveranstaltung.studiengang_kz=tbl_studiengang.studiengang_kz
|
||||
ORDER by kurzbzlang";
|
||||
if(!$result=$db->db_query($qry))
|
||||
die ('<center>'.$p->t('global/fehlerBeimLesenAusDatenbank').'</center>');
|
||||
|
||||
echo $p->t('global/studiengang')." <SELECT name='stg' onChange='javascript:window.document.auswFrm.status.value=\"changestg\";window.document.auswFrm.submit();'>";
|
||||
//$firststg;
|
||||
$vorhanden=false;
|
||||
echo $p->t('global/studiengang')." <SELECT name='stg' onChange='javascript:window.document.auswFrm.status.value=\"changestg\";window.document.auswFrm.submit();'>";
|
||||
//$firststg;
|
||||
$vorhanden=false;
|
||||
|
||||
while($row=$db->db_fetch_object($result))
|
||||
{
|
||||
if(!isset($firststg))
|
||||
$firststg=$row->studiengang_kz;
|
||||
if(!isset($stg))
|
||||
$stg=$row->studiengang_kz;
|
||||
if($stg==$row->studiengang_kz)
|
||||
{
|
||||
echo "<option value='$row->studiengang_kz' selected>$row->kurzbzlang</option>";
|
||||
$vorhanden=true;
|
||||
}
|
||||
else
|
||||
echo "<option value='$row->studiengang_kz'>$row->kurzbzlang</option>";
|
||||
}
|
||||
echo "</SELECT>";
|
||||
while($row=$db->db_fetch_object($result))
|
||||
{
|
||||
if ($rechte->isBerechtigt('lehre/lvinfo_freigabe',$row->studiengang_kz))
|
||||
{
|
||||
if(!isset($firststg))
|
||||
$firststg=$row->studiengang_kz;
|
||||
if(!isset($stg))
|
||||
$stg=$row->studiengang_kz;
|
||||
if($stg==$row->studiengang_kz)
|
||||
{
|
||||
echo "<option value='$row->studiengang_kz' selected>$row->kurzbzlang</option>";
|
||||
$vorhanden=true;
|
||||
}
|
||||
else
|
||||
echo "<option value='$row->studiengang_kz'>$row->kurzbzlang</option>";
|
||||
}
|
||||
}
|
||||
echo "</SELECT>";
|
||||
|
||||
if(!$vorhanden) //Wenn $stg einen Wert enthaelt der nicht in der Liste vorkommt wird der erste Eintrag der Liste ausgewaehlt
|
||||
$stg=$firststg;
|
||||
if(!$vorhanden) //Wenn $stg einen Wert enthaelt der nicht in der Liste vorkommt wird der erste Eintrag der Liste ausgewaehlt
|
||||
$stg=$firststg;
|
||||
|
||||
//Semester Drop Down
|
||||
$qry = "SELECT distinct semester FROM campus.tbl_lvinfo, lehre.tbl_lehrveranstaltung
|
||||
WHERE tbl_lvinfo.aktiv=true
|
||||
AND tbl_lvinfo.lehrveranstaltung_id=tbl_lehrveranstaltung.lehrveranstaltung_id
|
||||
AND tbl_lehrveranstaltung.studiengang_kz='$stg'
|
||||
ORDER by semester";
|
||||
if(!$result=$db->db_query($qry))
|
||||
die ("<center>".$p->t('global/fehleraufgetreten')."</center>");
|
||||
//Semester Drop Down
|
||||
$qry = "SELECT distinct semester FROM campus.tbl_lvinfo, lehre.tbl_lehrveranstaltung
|
||||
WHERE tbl_lvinfo.aktiv=true
|
||||
AND tbl_lvinfo.lehrveranstaltung_id=tbl_lehrveranstaltung.lehrveranstaltung_id
|
||||
AND tbl_lehrveranstaltung.studiengang_kz='$stg'
|
||||
ORDER by semester";
|
||||
if(!$result=$db->db_query($qry))
|
||||
die ("<center>".$p->t('global/fehleraufgetreten')."</center>");
|
||||
|
||||
echo " ".$p->t('global/semester')." <SELECT name='sem' onChange='javascript:window.document.auswFrm.submit();'>";
|
||||
echo " ".$p->t('global/semester')." <SELECT name='sem' onChange='javascript:window.document.auswFrm.submit();'>";
|
||||
|
||||
//$firstsem;
|
||||
$vorhanden=false;
|
||||
//$firstsem;
|
||||
$vorhanden=false;
|
||||
|
||||
while($row=$db->db_fetch_object($result))
|
||||
{
|
||||
if(!isset($firstsem))
|
||||
$firstsem = $row->semester;
|
||||
while($row=$db->db_fetch_object($result))
|
||||
{
|
||||
if(!isset($firstsem))
|
||||
$firstsem = $row->semester;
|
||||
|
||||
if(!isset($sem))
|
||||
$sem=$row->semester;
|
||||
if(!isset($sem))
|
||||
$sem=$row->semester;
|
||||
|
||||
if($sem==$row->semester)
|
||||
{
|
||||
echo "<option value='$row->semester' selected>$row->semester</option>";
|
||||
$vorhanden=true;
|
||||
}
|
||||
else
|
||||
echo "<option value='$row->semester'>$row->semester</option>";
|
||||
}
|
||||
echo "</SELECT>";
|
||||
if(!$vorhanden) //Wenn $sem einen Wert enthaelt der nicht in der Liste vorkommt wird der erste Eintrag der Liste ausgewaehlt
|
||||
$sem=$firstsem;
|
||||
if($sem==$row->semester)
|
||||
{
|
||||
echo "<option value='$row->semester' selected>$row->semester</option>";
|
||||
$vorhanden=true;
|
||||
}
|
||||
else
|
||||
echo "<option value='$row->semester'>$row->semester</option>";
|
||||
}
|
||||
echo "</SELECT>";
|
||||
if(!$vorhanden) //Wenn $sem einen Wert enthaelt der nicht in der Liste vorkommt wird der erste Eintrag der Liste ausgewaehlt
|
||||
$sem=$firstsem;
|
||||
|
||||
//Anzeigen der Liste mit den LV - Informationen
|
||||
?>
|
||||
<br><br>
|
||||
<table width="900" class="tabcontent2" style="border: 1px solid black">
|
||||
<tr>
|
||||
<td>
|
||||
<table class="tabcontent">
|
||||
<tr class='liste'>
|
||||
<th>x</th>
|
||||
<th><?php echo $p->t('lvaliste/lehrfach');?></th>
|
||||
<th><?php echo $p->t('courseInformation/bearbeitetVon');?></th>
|
||||
<th><?php echo $p->t('courseInformation/updateAm');?></th>
|
||||
<th><?php echo $p->t('global/anzeigen');?></th>
|
||||
<th><?php echo $p->t('courseInformation/online');?><br>de en</th>
|
||||
</tr>
|
||||
//Anzeigen der Liste mit den LV - Informationen
|
||||
?>
|
||||
<br><br>
|
||||
<table>
|
||||
<tr>
|
||||
<td>
|
||||
<table id="myTable" class="tablesorter">
|
||||
<thead>
|
||||
<tr class='liste'>
|
||||
<th></th>
|
||||
<th><?php echo $p->t('global/lehrveranstaltung');?></th>
|
||||
<th><?php echo $p->t('courseInformation/bearbeitetVon');?></th>
|
||||
<th><?php echo $p->t('courseInformation/updateAm');?></th>
|
||||
<th><?php echo $p->t('global/anzeigen');?></th>
|
||||
<th><?php echo $p->t('courseInformation/freigeben');?></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
|
||||
<?php
|
||||
$qry="SELECT *, tbl_lehrveranstaltung.bezeichnung as bezeichnung, to_char(tbl_lvinfo.updateamum,'DD-MM-YYYY HH24:MI') as amum,tbl_lvinfo.updateamum as updateamum, tbl_lvinfo.updatevon as updatevon FROM campus.tbl_lvinfo JOIN lehre.tbl_lehrveranstaltung USING(lehrveranstaltung_id) WHERE studiengang_kz=$stg AND semester=$sem AND tbl_lvinfo.aktiv=true AND tbl_lvinfo.sprache='".ATTR_SPRACHE_DE."' ORDER BY tbl_lehrveranstaltung.bezeichnung ASC";
|
||||
<?php
|
||||
$qry="SELECT *, tbl_lehrveranstaltung.bezeichnung as bezeichnung, to_char(tbl_lvinfo.updateamum,'DD.MM.YYYY HH24:MI') as amum,tbl_lvinfo.updateamum as updateamum, tbl_lvinfo.updatevon as updatevon FROM campus.tbl_lvinfo JOIN lehre.tbl_lehrveranstaltung USING(lehrveranstaltung_id) WHERE studiengang_kz=$stg AND semester=$sem AND tbl_lvinfo.aktiv=true AND tbl_lvinfo.sprache='".ATTR_SPRACHE_DE."' ORDER BY tbl_lehrveranstaltung.bezeichnung ASC";
|
||||
|
||||
if(!$result=$db->db_query($qry))
|
||||
die("<center>Fehler bei einer Datenbankabfrage</center>");
|
||||
if(!$result=$db->db_query($qry))
|
||||
die("<center>Fehler bei einer Datenbankabfrage</center>");
|
||||
|
||||
$i=-1;
|
||||
while($row=$db->db_fetch_object($result))
|
||||
{
|
||||
$i=-1;
|
||||
while($row=$db->db_fetch_object($result))
|
||||
{
|
||||
$i++;
|
||||
$qry1="SELECT *, tbl_lehrveranstaltung.bezeichnung as bezeichnung, tbl_lvinfo.updatevon as updatevon FROM campus.tbl_lvinfo JOIN lehre.tbl_lehrveranstaltung USING(lehrveranstaltung_id) WHERE tbl_lvinfo.sprache='".ATTR_SPRACHE_EN."' AND lehrveranstaltung_id='$row->lehrveranstaltung_id'";
|
||||
|
||||
if(!$result1=$db->db_query($qry1))
|
||||
die("<center>Fehler bei einer Datenbankabfrage</center>");
|
||||
|
||||
if(!$row1=$db->db_fetch_object($result1))
|
||||
if(!$result1=$db->db_query($qry1))
|
||||
die("<center>Fehler bei einer Datenbankabfrage</center>");
|
||||
|
||||
$qry2="SELECT vorname, nachname FROM campus.vw_mitarbeiter WHERE uid='$row->updatevon'";
|
||||
if(!$row1=$db->db_fetch_object($result1))
|
||||
die("<center>Fehler bei einer Datenbankabfrage</center>");
|
||||
|
||||
$bearbeitet=$row->updatevon;
|
||||
if($result2=$db->db_query($qry2))
|
||||
if($row2=$db->db_fetch_object($result2))
|
||||
$bearbeitet=$row2->vorname.' '.$row2->nachname;
|
||||
echo "\n";
|
||||
echo "<tr class='liste".($i%2)."'>"."\n";
|
||||
echo "<td align='center'><a href='".$_SERVER['PHP_SELF']."?del=1&stg=$stg&sem=$sem&lv=$row->lehrveranstaltung_id' onClick='return ask();'>Delete</a></td>"."\n";
|
||||
echo "<td align='center'>$row->bezeichnung</td>"."\n";
|
||||
//echo "<td align='center'>$row->studiensemester_kurzbz</td>"."\n";
|
||||
echo "<td align='center'>$bearbeitet</td>"."\n";
|
||||
echo "<td align='center'>".$row->amum."</td>"."\n";
|
||||
echo "<td align='center'><a href='#' onClick='javascript:window.open(\"preview.php?lv=$row->lehrveranstaltung_id&language=de\",\"Preview\",\"width=700,height=750,resizable=yes,menuebar=no,toolbar=no,status=yes,scrollbars=yes\");'><img src='../../../../skin/images/flagge-aut.gif' border=0 width=30 ></a> ";
|
||||
echo "<a href='#' onClick='javascript:window.open(\"preview.php?lv=$row1->lehrveranstaltung_id&language=en\",\"Preview\",\"width=700,height=750,resizable=yes,menuebar=no,toolbar=no,status=yes,scrollbars=yes\");'><img src='../../../../skin/images/flagge-eng.gif' border=0 width=30 ></a></td>"."\n";
|
||||
echo "<td align='center'><input type='checkbox' onClick='javascript:window.location.href=\"".$_SERVER['PHP_SELF']."?changestat=1&stg=$stg&sem=$sem&lv=$row->lehrveranstaltung_id&lang=de\";' ".($row->genehmigt=='t'?'checked':'').">"."\n";
|
||||
echo "<input type='checkbox' onClick='javascript:window.location.href=\"".$_SERVER['PHP_SELF']."?changestat=1&stg=$stg&sem=$sem&lv=$row->lehrveranstaltung_id&lang=en\";' ".($row1->genehmigt=='t'?'checked':'')."></td>"."\n";
|
||||
echo "</tr>";
|
||||
}
|
||||
?>
|
||||
$qry2="SELECT vorname, nachname FROM campus.vw_mitarbeiter WHERE uid='$row->updatevon'";
|
||||
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
$style='';
|
||||
if ($lv==$row->lehrveranstaltung_id)
|
||||
$style='style="background-color: #AAA; border-top: 1px solid black; border-bottom: 1px solid black"';
|
||||
|
||||
$bearbeitet=$row->updatevon;
|
||||
if($result2=$db->db_query($qry2))
|
||||
if($row2=$db->db_fetch_object($result2))
|
||||
$bearbeitet=$row2->vorname.' '.$row2->nachname;
|
||||
echo "\n";
|
||||
echo "<tr class='liste".($i%2)."'>"."\n";
|
||||
echo "<td $style align='center'><a href='".$_SERVER['PHP_SELF']."?del=1&stg=$stg&sem=$sem&lv=$row->lehrveranstaltung_id' onClick='return ask();'>Delete</a></td>"."\n";
|
||||
echo "<td $style>$row->bezeichnung</td>"."\n";
|
||||
//echo "<td align='center'>$row->studiensemester_kurzbz</td>"."\n";
|
||||
echo "<td $style>$bearbeitet</td>"."\n";
|
||||
echo "<td $style>".$row->amum."</td>"."\n";
|
||||
echo "<td $style align='center'><a href='#' onClick='javascript:window.open(\"preview.php?lv=$row->lehrveranstaltung_id&language=de\",\"Preview\",\"width=700,height=750,resizable=yes,menuebar=no,toolbar=no,status=yes,scrollbars=yes\");'>German</a> ";
|
||||
echo "<a href='#' onClick='javascript:window.open(\"preview.php?lv=$row1->lehrveranstaltung_id&language=en\",\"Preview\",\"width=700,height=750,resizable=yes,menuebar=no,toolbar=no,status=yes,scrollbars=yes\");'>English</a></td>"."\n";
|
||||
echo "<td $style align='center'>DE <input type='checkbox' onClick='javascript:window.location.href=\"".$_SERVER['PHP_SELF']."?changestat=1&stg=$stg&sem=$sem&lv=$row->lehrveranstaltung_id&lang=de\";' ".($row->genehmigt=='t'?'checked':'').">"."\n";
|
||||
echo "<input type='checkbox' onClick='javascript:window.location.href=\"".$_SERVER['PHP_SELF']."?changestat=1&stg=$stg&sem=$sem&lv=$row->lehrveranstaltung_id&lang=en\";' ".($row1->genehmigt=='t'?'checked':'')."> EN</td>"."\n";
|
||||
echo "</tr>";
|
||||
}
|
||||
?>
|
||||
</tbody>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
+413
-195
@@ -16,20 +16,21 @@
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* Authors: Christian Paminger <christian.paminger@technikum-wien.at>,
|
||||
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at>
|
||||
* Rudolf Hangl < rudolf.hangl@technikum-wien.at >
|
||||
* Gerald Simane-Sequens < gerald.simane-sequens@technikum-wien.at >
|
||||
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at>
|
||||
* Rudolf Hangl < rudolf.hangl@technikum-wien.at >
|
||||
* Gerald Simane-Sequens < gerald.simane-sequens@technikum-wien.at >
|
||||
*/
|
||||
|
||||
/* @author Andres Oesterreicher
|
||||
@date 20.10.2005
|
||||
@brief Formular zum eintragen der ECTS Information auf Deutsch und Englisch
|
||||
Die Informationen werden in der Tabelle tbl_lvinfo gespeichert.
|
||||
Die Informationen werden in der Tabelle tbl_lvinfo gespeichert.
|
||||
|
||||
@edit 08-11-2006 Versionierung entfernt: Studiensemester=WS2007
|
||||
02-01-2007 Umstellung auf die neue DB
|
||||
*/
|
||||
require_once('../../../../config/cis.config.inc.php');
|
||||
require_once('../../../../config/global.config.inc.php');
|
||||
require_once('../../../../include/basis_db.class.php');
|
||||
require_once('../../../../include/functions.inc.php');
|
||||
require_once('../../../../include/studiengang.class.php');
|
||||
@@ -38,6 +39,15 @@ require_once('../../../../include/lvinfo.class.php');
|
||||
require_once('../../../../include/studiensemester.class.php');
|
||||
require_once('../../../../include/phrasen.class.php');
|
||||
require_once('../../../../include/safehtml/safehtml.class.php');
|
||||
require_once('../../../../include/benutzerberechtigung.class.php');
|
||||
require_once('../../../../include/lehreinheitmitarbeiter.class.php');
|
||||
require_once('../../../../include/mail.class.php');
|
||||
require_once('../../../../include/benutzer.class.php');
|
||||
|
||||
$user = get_uid();
|
||||
|
||||
$rechte = new benutzerberechtigung();
|
||||
$rechte->getBerechtigungen($user);
|
||||
|
||||
$sprache1 = getSprache();
|
||||
$p=new phrasen($sprache1);
|
||||
@@ -48,6 +58,9 @@ if (!$db = new basis_db())
|
||||
$output = '';
|
||||
$errormsg = '';
|
||||
$okmsg='';
|
||||
|
||||
$lv = '';
|
||||
|
||||
?>
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
@@ -55,9 +68,13 @@ if (!$db = new basis_db())
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<link href="../../../../skin/style.css.php" rel="stylesheet" type="text/css">
|
||||
<title><?php echo $p->t('courseInformation/ectsInformation')?></title>
|
||||
|
||||
<style type="text/css">
|
||||
textarea
|
||||
{
|
||||
font-size: 13px;
|
||||
}
|
||||
</style>
|
||||
<script language="JavaScript" type="text/javascript">
|
||||
<!--
|
||||
function save()
|
||||
{
|
||||
window.document.editFrm.status.value="save";
|
||||
@@ -65,7 +82,13 @@ if (!$db = new basis_db())
|
||||
window.document.editFrm.target="_self";
|
||||
window.document.editFrm.submit();
|
||||
}
|
||||
-->
|
||||
function freigeben()
|
||||
{
|
||||
window.document.editFrm.status.value="freigeben";
|
||||
window.document.editFrm.action="<?php echo $_SERVER['PHP_SELF']; ?>";
|
||||
window.document.editFrm.target="_self";
|
||||
window.document.editFrm.submit();
|
||||
}
|
||||
</script>
|
||||
</head>
|
||||
<body style="padding: 10px">
|
||||
@@ -78,17 +101,17 @@ if (!$db = new basis_db())
|
||||
return $string;
|
||||
}
|
||||
|
||||
$user = get_uid();
|
||||
//Berechtigung ueberpruefen
|
||||
if(!check_lektor($user))
|
||||
die("<br><center>".$p->t('global/keineBerechtigungFuerDieseSeite')."</center>");
|
||||
|
||||
if(isset($_GET['lvid']))
|
||||
$lv=$_GET['lvid'];
|
||||
if(isset($_GET['lvid']))
|
||||
$lv=$_GET['lvid'];
|
||||
|
||||
//Variablenuebernahme
|
||||
if(isset($_POST['lv'])) //LehrveranstaltungsID
|
||||
{
|
||||
$lv = $_POST['lv'];
|
||||
$lv_obj = new lehrveranstaltung();
|
||||
$lv_obj->load($lv);
|
||||
$oe_kurzbz = $lv_obj->oe_kurzbz;
|
||||
}
|
||||
|
||||
if(isset($_GET['lvid']))
|
||||
{
|
||||
@@ -96,13 +119,29 @@ if (!$db = new basis_db())
|
||||
$lv_obj->load($lv);
|
||||
|
||||
if(!isset($stg))
|
||||
{
|
||||
$stg = $lv_obj->studiengang_kz;
|
||||
$oe_kurzbz = $lv_obj->oe_kurzbz;
|
||||
}
|
||||
if(!isset($sem))
|
||||
$sem = $lv_obj->semester;
|
||||
}
|
||||
else
|
||||
{
|
||||
$stg = '';
|
||||
}
|
||||
|
||||
if(!isset($stg) && isset($_POST['stg']))
|
||||
if(isset($_POST['stg']))
|
||||
{
|
||||
$stg = $_POST['stg'];
|
||||
if(!isset($oe_kurzbz))
|
||||
{
|
||||
$oe = new studiengang();
|
||||
$oe->load($stg);
|
||||
$oe_kurzbz = $oe->oe_kurzbz;
|
||||
}
|
||||
}
|
||||
|
||||
if(!isset($sem) && isset($_POST['sem']))
|
||||
$sem = $_POST['sem'];
|
||||
|
||||
@@ -113,11 +152,30 @@ if (!$db = new basis_db())
|
||||
if(isset($_POST['status']))
|
||||
$status = $_POST['status'];
|
||||
|
||||
// if(isset($_POST["freigeben"])) //Wird auf 'ja' gesetzt wenn gleich freigegebenwerden soll nach dem Speichern
|
||||
// $freigeben = $_POST["freigeben"];
|
||||
// if(isset($_POST["freigeben"])) //Wird auf 'ja' gesetzt wenn gleich freigegebenwerden soll nach dem Speichern
|
||||
// $freigeben = $_POST["freigeben"];
|
||||
|
||||
if(isset($_POST['sprache'])) //Sprache fuer dieses Lehrfach
|
||||
$sprache = $_POST['sprache'];
|
||||
|
||||
// Berechtigungen ueberpruefen
|
||||
$lektor_der_lv = false;
|
||||
$lektor = new lehreinheitmitarbeiter();
|
||||
$lektor_der_lv = $lektor->existsLV($lv, null, $user);
|
||||
|
||||
// Bearbeiten nur moeglich, wenn Lektor der LV und bearbeiten fuer Lektoren aktiviert ist
|
||||
// Oder Berechtigung zum Bearbeiten eingetragen ist
|
||||
$berechtigt = true;
|
||||
if(!(
|
||||
(!defined('CIS_LEHRVERANSTALTUNG_LVINFO_LEKTOR_EDIT') && $lektor_der_lv)
|
||||
|| (defined('CIS_LEHRVERANSTALTUNG_LVINFO_LEKTOR_EDIT') && CIS_LEHRVERANSTALTUNG_LVINFO_LEKTOR_EDIT==true && $lektor_der_lv)
|
||||
|| $rechte->isBerechtigt('lehre/lvinfo',$oe_kurzbz)
|
||||
|| $rechte->isBerechtigt('lehre/lvinfo',$stg)
|
||||
)
|
||||
)
|
||||
{
|
||||
$berechtigt = false;
|
||||
}
|
||||
|
||||
//Variablen fuer das Formular
|
||||
$lehrziele_de = (isset($_POST['lehrziele_de'])?$_POST['lehrziele_de']:'');
|
||||
@@ -127,10 +185,11 @@ if (!$db = new basis_db())
|
||||
$pruefungsordnung_de = (isset($_POST['pruefungsordnung_de'])?$_POST['pruefungsordnung_de']:'');
|
||||
$anmerkungen_de = (isset($_POST['anmerkungen_de'])?$_POST['anmerkungen_de']:'');
|
||||
$kurzbeschreibung_de = (isset($_POST['kurzbeschreibung_de'])?$_POST['kurzbeschreibung_de']:'');
|
||||
$freig_de = (isset($_POST['freig_de'])?($_POST['freig_de']=='on'?true:false):'');
|
||||
$anwesenheit_de = (isset($_POST['anwesenheit_de'])?$_POST['anwesenheit_de']:'');
|
||||
$freig_de = (isset($_POST['freig_de'])?($_POST['freig_de']=='on' && ($rechte->isBerechtigt('lehre/lvinfo_freigabe',$oe_kurzbz) || $rechte->isBerechtigt('lehre/lvinfo_freigabe',$stg))?true:false):'');
|
||||
$methodik_de = (isset($_POST['methodik_de'])?$_POST['methodik_de']:'');
|
||||
//$titel_de = (isset($_POST['titel_de'])?$_POST['titel_de']:'');
|
||||
|
||||
|
||||
$parser = new SafeHTML();
|
||||
$lehrziele_de = $parser->parse($lehrziele_de);
|
||||
$parser = new SafeHTML();
|
||||
@@ -146,6 +205,8 @@ if (!$db = new basis_db())
|
||||
$parser = new SafeHTML();
|
||||
$kurzbeschreibung_de = $parser->parse($kurzbeschreibung_de);
|
||||
$parser = new SafeHTML();
|
||||
$anwesenheit_de = $parser->parse($anwesenheit_de);
|
||||
$parser = new SafeHTML();
|
||||
$freig_de = $parser->parse($freig_de);
|
||||
$parser = new SafeHTML();
|
||||
$methodik_de = $parser->parse($methodik_de);
|
||||
@@ -157,7 +218,8 @@ if (!$db = new basis_db())
|
||||
$pruefungsordnung_en = (isset($_POST['pruefungsordnung_en'])?$_POST['pruefungsordnung_en']:'');
|
||||
$anmerkungen_en = (isset($_POST['anmerkungen_en'])?$_POST['anmerkungen_en']:'');
|
||||
$kurzbeschreibung_en = (isset($_POST['kurzbeschreibung_en'])?$_POST['kurzbeschreibung_en']:'');
|
||||
$freig_en = (isset($_POST['freig_en'])?($_POST['freig_en']=='on'?true:false):'');
|
||||
$anwesenheit_en = (isset($_POST['anwesenheit_en'])?$_POST['anwesenheit_en']:'');
|
||||
$freig_en = (isset($_POST['freig_en'])?($_POST['freig_en']=='on' && ($rechte->isBerechtigt('lehre/lvinfo_freigabe',$oe_kurzbz) || $rechte->isBerechtigt('lehre/lvinfo_freigabe',$stg))?true:false):'');
|
||||
$methodik_en = (isset($_POST['methodik_en'])?$_POST['methodik_en']:'');
|
||||
//$titel_en = (isset($_POST['titel_en'])?$_POST['titel_en']:'');
|
||||
|
||||
@@ -176,6 +238,8 @@ if (!$db = new basis_db())
|
||||
$parser = new SafeHTML();
|
||||
$kurzbeschreibung_en = $parser->parse($kurzbeschreibung_en);
|
||||
$parser = new SafeHTML();
|
||||
$anwesenheit_en = $parser->parse($anwesenheit_en);
|
||||
$parser = new SafeHTML();
|
||||
$freig_en = $parser->parse($freig_en);
|
||||
$parser = new SafeHTML();
|
||||
$methodik_en = $parser->parse($methodik_en);
|
||||
@@ -183,7 +247,7 @@ if (!$db = new basis_db())
|
||||
/* WriteLog($qry,$uid)
|
||||
* @brief Schreib die Querys im format: uid - datum - qry ins LogFile
|
||||
* @param $qry Query anweisung
|
||||
* $uid Username
|
||||
* $uid Username
|
||||
* @return true wenn ok false wenn fehler beim oeffnen
|
||||
*/
|
||||
function WriteLog($qry,$uid)
|
||||
@@ -205,6 +269,8 @@ if (!$db = new basis_db())
|
||||
|
||||
if($status=='save') // Beim druecken auf "Speichern"
|
||||
{
|
||||
if ($berechtigt==false)
|
||||
die($p->t('global/keineBerechtigungFuerDieseSeite'));
|
||||
//Speichert die aenderungen in der Datenbank (de und en)
|
||||
$lv_obj_sav= new lvinfo();
|
||||
$save_error=false;
|
||||
@@ -217,8 +283,9 @@ if (!$db = new basis_db())
|
||||
$lv_obj_sav->pruefungsordnung=mb_eregi_replace("\r\n", "<br>", $pruefungsordnung_de);
|
||||
$lv_obj_sav->anmerkungen=mb_eregi_replace("\r\n", "<br>", $anmerkungen_de);
|
||||
$lv_obj_sav->kurzbeschreibung=mb_eregi_replace("\r\n", "<br>", $kurzbeschreibung_de);
|
||||
$lv_obj_sav->anwesenheit=mb_eregi_replace("\r\n", "<br>", $anwesenheit_de);
|
||||
|
||||
$lv_obj_sav->genehmigt = ($freig_de?true:false);
|
||||
$lv_obj_sav->genehmigt = ($freig_de==true && ($rechte->isBerechtigt('lehre/lvinfo_freigabe',$oe_kurzbz) || $rechte->isBerechtigt('lehre/lvinfo_freigabe',$stg))?true:false);
|
||||
$lv_obj_sav->updateamum=date('Y-m-d H:i:s');
|
||||
$lv_obj_sav->updatevon=$user;
|
||||
$lv_obj_sav->aktiv=true;
|
||||
@@ -231,7 +298,7 @@ if (!$db = new basis_db())
|
||||
$vorhanden=$lv_obj1->exists($lv, ATTR_SPRACHE_DE);
|
||||
|
||||
if(!$vorhanden)
|
||||
$lv_obj_sav->new=true;
|
||||
$lv_obj_sav->new=true;
|
||||
else
|
||||
$lv_obj_sav->new=false;
|
||||
|
||||
@@ -249,7 +316,8 @@ if (!$db = new basis_db())
|
||||
$lv_obj_sav->pruefungsordnung=mb_eregi_replace("\r\n", "<br>", $pruefungsordnung_en);
|
||||
$lv_obj_sav->anmerkungen=mb_eregi_replace("\r\n", "<br>", $anmerkungen_en);
|
||||
$lv_obj_sav->kurzbeschreibung=mb_eregi_replace("\r\n", "<br>", $kurzbeschreibung_en);
|
||||
$lv_obj_sav->genehmigt = ($freig_en?true:false);
|
||||
$lv_obj_sav->anwesenheit=mb_eregi_replace("\r\n", "<br>", $anwesenheit_en);
|
||||
$lv_obj_sav->genehmigt = ($freig_en==true && ($rechte->isBerechtigt('lehre/lvinfo_freigabe',$oe_kurzbz) || $rechte->isBerechtigt('lehre/lvinfo_freigabe',$stg))?true:false);
|
||||
$lv_obj_sav->aktiv=true;
|
||||
$lv_obj_sav->updateamum=date('Y-m-d H:i:s');
|
||||
$lv_obj_sav->updatevon=$user;
|
||||
@@ -280,6 +348,135 @@ if (!$db = new basis_db())
|
||||
if($save_log_error)
|
||||
$errormsg.= $p->t('courseInformation/fehlerLogFile');
|
||||
}
|
||||
if($status=='freigeben') // Beim druecken auf "Zur Freigabe abschicken"
|
||||
{
|
||||
if ($berechtigt==false)
|
||||
die($p->t('global/keineBerechtigungFuerDieseSeite'));
|
||||
|
||||
//Speichert die aenderungen in der Datenbank (de und en)
|
||||
$lv_obj_sav= new lvinfo();
|
||||
$save_error=false;
|
||||
$save_log_error=false;
|
||||
//Deutsch
|
||||
$lv_obj_sav->lehrziele=mb_eregi_replace("\r\n", "<br>", $lehrziele_de);
|
||||
$lv_obj_sav->lehrinhalte=mb_eregi_replace("\r\n", "<br>", $lehrinhalte_de);
|
||||
$lv_obj_sav->voraussetzungen=mb_eregi_replace("\r\n", "<br>", $voraussetzungen_de);
|
||||
$lv_obj_sav->unterlagen=mb_eregi_replace("\r\n", "<br>", $unterlagen_de);
|
||||
$lv_obj_sav->pruefungsordnung=mb_eregi_replace("\r\n", "<br>", $pruefungsordnung_de);
|
||||
$lv_obj_sav->anmerkungen=mb_eregi_replace("\r\n", "<br>", $anmerkungen_de);
|
||||
$lv_obj_sav->kurzbeschreibung=mb_eregi_replace("\r\n", "<br>", $kurzbeschreibung_de);
|
||||
$lv_obj_sav->anwesenheit=mb_eregi_replace("\r\n", "<br>", $anwesenheit_de);
|
||||
|
||||
$lv_obj_sav->genehmigt = ($freig_de==true && ($rechte->isBerechtigt('lehre/lvinfo_freigabe',$oe_kurzbz) || $rechte->isBerechtigt('lehre/lvinfo_freigabe',$stg))?true:false);
|
||||
$lv_obj_sav->updateamum=date('Y-m-d H:i:s');
|
||||
$lv_obj_sav->updatevon=$user;
|
||||
$lv_obj_sav->aktiv=true;
|
||||
$lv_obj_sav->sprache=ATTR_SPRACHE_DE;
|
||||
$lv_obj_sav->lehrveranstaltung_id=$lv;
|
||||
$lv_obj_sav->methodik = mb_eregi_replace("\r\n", "<br>", $methodik_de);
|
||||
//$lv_obj_sav->titel = mb_eregi_replace("\r\n", "<br>", $titel_de);
|
||||
|
||||
$lv_obj1 = new lvinfo();
|
||||
$vorhanden=$lv_obj1->exists($lv, ATTR_SPRACHE_DE);
|
||||
|
||||
if(!$vorhanden)
|
||||
$lv_obj_sav->new=true;
|
||||
else
|
||||
$lv_obj_sav->new=false;
|
||||
|
||||
if(!$lv_obj_sav->save())
|
||||
$save_error=true;
|
||||
else
|
||||
if(!WriteLog($lv_obj_sav->lastqry,$user))
|
||||
$save_log_error=true;
|
||||
|
||||
//Englisch
|
||||
$lv_obj_sav->lehrziele=mb_eregi_replace("\r\n", "<br>", $lehrziele_en);
|
||||
$lv_obj_sav->lehrinhalte=mb_eregi_replace("\r\n", "<br>", $lehrinhalte_en);
|
||||
$lv_obj_sav->voraussetzungen=mb_eregi_replace("\r\n", "<br>", $voraussetzungen_en);
|
||||
$lv_obj_sav->unterlagen=mb_eregi_replace("\r\n", "<br>", $unterlagen_en);
|
||||
$lv_obj_sav->pruefungsordnung=mb_eregi_replace("\r\n", "<br>", $pruefungsordnung_en);
|
||||
$lv_obj_sav->anmerkungen=mb_eregi_replace("\r\n", "<br>", $anmerkungen_en);
|
||||
$lv_obj_sav->kurzbeschreibung=mb_eregi_replace("\r\n", "<br>", $kurzbeschreibung_en);
|
||||
$lv_obj_sav->anwesenheit=mb_eregi_replace("\r\n", "<br>", $anwesenheit_en);
|
||||
$lv_obj_sav->genehmigt = ($freig_en==true && ($rechte->isBerechtigt('lehre/lvinfo_freigabe',$oe_kurzbz) || $rechte->isBerechtigt('lehre/lvinfo_freigabe',$stg))?true:false);
|
||||
$lv_obj_sav->aktiv=true;
|
||||
$lv_obj_sav->updateamum=date('Y-m-d H:i:s');
|
||||
$lv_obj_sav->updatevon=$user;
|
||||
$lv_obj_sav->sprache=ATTR_SPRACHE_EN;
|
||||
$lv_obj_sav->lehrveranstaltung_id=$lv;
|
||||
$lv_obj_sav->methodik = mb_eregi_replace("\r\n", "<br>", $methodik_en);
|
||||
//$lv_obj_sav->titel = mb_eregi_replace("\r\n", "<br>", $titel_en);
|
||||
|
||||
$lv_obj1 = new lvinfo();
|
||||
$vorhanden = $lv_obj1->exists($lv, ATTR_SPRACHE_EN);
|
||||
|
||||
if(!$vorhanden)
|
||||
$lv_obj_sav->new=true;
|
||||
else
|
||||
$lv_obj_sav->new=false;
|
||||
|
||||
if(!$lv_obj_sav->save())
|
||||
$save_error=true;
|
||||
else
|
||||
if(!WriteLog($lv_obj_sav->lastqry,$user))
|
||||
$save_log_error=true;
|
||||
|
||||
if($save_error)
|
||||
$errormsg.= $p->t('courseInformation/achtungFehlerBeimSpeichern');
|
||||
else
|
||||
$okmsg.= $p->t('global/erfolgreichgespeichert');
|
||||
|
||||
if($save_log_error)
|
||||
$errormsg.= $p->t('courseInformation/fehlerLogFile');
|
||||
|
||||
//Mail an Studiengangsleiter
|
||||
$studiengangsleiter = new studiengang();
|
||||
$stgleiter = $studiengangsleiter->getLeitung($stg);
|
||||
|
||||
if($stgleiter)
|
||||
{
|
||||
$to='';
|
||||
foreach($stgleiter as $leiter)
|
||||
{
|
||||
if($to!='')
|
||||
{
|
||||
$to.=', '.$leiter.'@'.DOMAIN;
|
||||
}
|
||||
else
|
||||
{
|
||||
$to.=$leiter.'@'.DOMAIN;
|
||||
}
|
||||
}
|
||||
|
||||
$benutzer = new benutzer();
|
||||
$benutzer->load($user);
|
||||
|
||||
$bezeichnung = new lehrveranstaltung();
|
||||
$bezeichnung->load($lv);
|
||||
|
||||
$message = $p->t('courseInformation/diesIstEineAutomatischeMail').".\n".
|
||||
$p->t('courseInformation/lvinfoWurdeUeberarbeitet',array($benutzer->nachname.' '.$benutzer->vorname,$bezeichnung->bezeichnung)).":\n";
|
||||
|
||||
$message.="\n".$p->t('courseInformation/sieKoennenDieseUnterFolgenderAdresseFreigeben').":\n".
|
||||
APP_ROOT."cis/private/lehre/ects/freigabe.php?stg=".$stg."&sem=".$sem."&lv=".$lv;
|
||||
|
||||
$mail = new mail($to, 'vilesci@'.DOMAIN,$p->t('courseInformation/freigabeLvinfo'), $message);
|
||||
if($mail->send())
|
||||
{
|
||||
$okmsg.="<br><span style='color:green;'>".$p->t('courseInformation/freigabemailWurdeVersandt',array($to))."</span>";
|
||||
}
|
||||
else
|
||||
{
|
||||
$okmsg.="<br><span class='error'>".$p->t('courseInformation/fehlerBeimSendenAufgetreten',array($to))."!</span>";
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$okmsg.="<br><span class='error'>".$p->t('courseInformation/konnteKeinFreigabemailVersendetWerden')."</span>";
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
$output .= "\n";
|
||||
@@ -326,6 +523,8 @@ if (!$db = new basis_db())
|
||||
{
|
||||
$errormsg .= "$stg_obj->errormsg";
|
||||
}
|
||||
|
||||
|
||||
|
||||
//Anzeigen des DropDown Menues mit Semester
|
||||
if(isset($changed) && $changed=='stg')
|
||||
@@ -376,33 +575,33 @@ if (!$db = new basis_db())
|
||||
|
||||
//Anzeigen des DropDown Menues mit Lehrveranstaltungen
|
||||
$lv_obj = new lehrveranstaltung();
|
||||
if($lv_obj->load_lva($stg,$sem,null,true))
|
||||
if($lv_obj->load_lva($stg,$sem,null,true,null,'orgform_kurzbz,semester, bezeichnung'))
|
||||
{
|
||||
$output .= $p->t('global/lehrveranstaltung')." <SELECT name='lv' onChange='javascript:window.document.auswahlFrm.changed.value=\"lv\";window.document.auswahlFrm.submit();'>";
|
||||
$vorhanden=false;
|
||||
unset($firstlv);
|
||||
$output .= $p->t('global/lehrveranstaltung')." <SELECT name='lv' onChange='javascript:window.document.auswahlFrm.changed.value=\"lv\";window.document.auswahlFrm.submit();'>";
|
||||
$vorhanden=false;
|
||||
unset($firstlv);
|
||||
|
||||
foreach($lv_obj->lehrveranstaltungen as $erg)
|
||||
{
|
||||
if(!isset($lv) || (isset($changed) && $changed=='sem') || (isset($changed) && $changed=='stg'))
|
||||
{
|
||||
$lv = $erg->lehrveranstaltung_id;
|
||||
$changed='';
|
||||
}
|
||||
if(!isset($firstlv))
|
||||
$firstlv=$erg->lehrveranstaltung_id;
|
||||
foreach($lv_obj->lehrveranstaltungen as $erg)
|
||||
{
|
||||
if(!isset($lv) || (isset($changed) && $changed=='sem') || (isset($changed) && $changed=='stg'))
|
||||
{
|
||||
$lv = $erg->lehrveranstaltung_id;
|
||||
$changed='';
|
||||
}
|
||||
if(!isset($firstlv))
|
||||
$firstlv=$erg->lehrveranstaltung_id;
|
||||
|
||||
if($lv == $erg->lehrveranstaltung_id)
|
||||
{
|
||||
$output .= "<option value='$erg->lehrveranstaltung_id' selected>".Cut($erg->bezeichnung)."</option>";
|
||||
$vorhanden=true;
|
||||
}
|
||||
else
|
||||
$output .= "<option value='$erg->lehrveranstaltung_id'>".Cut($erg->bezeichnung)."</option>";
|
||||
}
|
||||
$output .= "</SELECT>";
|
||||
if(!$vorhanden)
|
||||
$lv=$firstlv;
|
||||
if($lv == $erg->lehrveranstaltung_id)
|
||||
{
|
||||
$output .= "<option value='$erg->lehrveranstaltung_id' selected>".($erg->orgform_kurzbz!=''?$erg->orgform_kurzbz." - ":"").Cut($erg->bezeichnung)."</option>";
|
||||
$vorhanden=true;
|
||||
}
|
||||
else
|
||||
$output .= "<option value='$erg->lehrveranstaltung_id'>".($erg->orgform_kurzbz!=''?$erg->orgform_kurzbz." - ":"").Cut($erg->bezeichnung)."</option>";
|
||||
}
|
||||
$output .= "</SELECT>";
|
||||
if(!$vorhanden)
|
||||
$lv=$firstlv;
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -418,10 +617,11 @@ if (!$db = new basis_db())
|
||||
//Menue ausgeben
|
||||
$output .= "\n";
|
||||
$output .= "<ul>";
|
||||
$output .= "<li> <a class='Item' href='index.php?stg=$stg&sem=$sem&lv=$lv'><font size='3'>".$p->t('global/bearbeiten')."</font></a></li>";
|
||||
$output .= "<li> <a class='Item' href='freigabe.php?stg=$stg&sem=$sem&lv=$lv'><font size='3'>".$p->t('courseInformation/freigabe')."</font></a></li>";
|
||||
$output .= "<li> <a class='Item' href='index.php?stg=$stg&sem=$sem&lvid=$lv'><font size='3'>".$p->t('global/bearbeiten')."</font></a></li>";
|
||||
if ($rechte->isBerechtigt('lehre/lvinfo_freigabe',$stg))
|
||||
$output .= "<li> <a class='Item' href='freigabe.php?stg=$stg&sem=$sem&lv=$lv'><font size='3'>".$p->t('courseInformation/freigabe')."</font></a></li>";
|
||||
$output .= "<li> <a class='Item' href='beispiele.php'><font size='3'>".$p->t('global/beispiele')."</font></a></li>";
|
||||
$output .= "<li> <a class='Item' href='terminologie.php'><font size='3'>".$p->t('courseInformation/terminologie')."</font></a></li>";
|
||||
//$output .= "<li> <a class='Item' href='terminologie.php'><font size='3'>".$p->t('courseInformation/terminologie')."</font></a></li>";
|
||||
$output .= "</ul>";
|
||||
$output .= "</td></tr></table>";
|
||||
|
||||
@@ -430,6 +630,9 @@ if (!$db = new basis_db())
|
||||
//Kopfzeile hinausschreiben und $output ausgeben
|
||||
echo "<h1> ".$p->t('courseInformation/lvInfoSemester',array($stg_obj->kuerzel, $sem))."</h1>";
|
||||
echo $output;
|
||||
|
||||
if ($berechtigt==false)
|
||||
die($p->t('global/keineBerechtigungFuerDieseSeite'));
|
||||
|
||||
if(isset($lv) && isset($stg) && isset($sem)) // Wenn oben alles Ausgewaehlt wurde
|
||||
{
|
||||
@@ -460,9 +663,14 @@ if (!$db = new basis_db())
|
||||
$pruefungsordnung_de = $lv_de->pruefungsordnung;
|
||||
$anmerkungen_de = $lv_de->anmerkungen;
|
||||
$kurzbeschreibung_de = $lv_de->kurzbeschreibung;
|
||||
$anwesenheit_de = $lv_de->anwesenheit;
|
||||
$freig_de = $lv_de->genehmigt;
|
||||
$titel_de = $lv_de->titel;
|
||||
$methodik_de = $lv_de->methodik;
|
||||
|
||||
//Fuegt den Satz "Nach erfolgreichem Abschluss sind die Studierenden in der Lage, " vor den Lehrzielen ein, falls noch nicht vorhanden
|
||||
if (substr_count($lehrziele_de, 'Nach erfolgreichem Abschluss sind die Studierenden in der Lage')==0)
|
||||
$lehrziele_de = 'Nach erfolgreichem Abschluss sind die Studierenden in der Lage, '.$lehrziele_de;
|
||||
}
|
||||
|
||||
if(!isset($_POST['lehrziele_en']) && isset($lv_en))
|
||||
@@ -474,17 +682,22 @@ if (!$db = new basis_db())
|
||||
$pruefungsordnung_en = $lv_en->pruefungsordnung;
|
||||
$anmerkungen_en = $lv_en->anmerkungen;
|
||||
$kurzbeschreibung_en = $lv_en->kurzbeschreibung;
|
||||
$anwesenheit_en = $lv_en->anwesenheit;
|
||||
$freig_en = $lv_en->genehmigt;
|
||||
$titel_en = $lv_en->titel;
|
||||
$methodik_en = $lv_en->methodik;
|
||||
|
||||
//Fuegt den Satz "Nach erfolgreichem Abschluss sind die Studierenden in der Lage, " vor den Lehrzielen ein, falls noch nicht vorhanden
|
||||
if (substr_count($lehrziele_en, 'After passing this course successfully students are able to')==0)
|
||||
$lehrziele_en = 'After passing this course successfully students are able to '.$lehrziele_en;
|
||||
}
|
||||
|
||||
$lv_obj = new lehrveranstaltung();
|
||||
$lv_obj->load($lv);
|
||||
echo "<Form name='editFrm' action='".$_SERVER['PHP_SELF']."' method='POST'>";
|
||||
|
||||
echo "<table class='tabcontent'>";
|
||||
echo "<tr><td><b>".$p->t('courseInformation/ectsCredits')."</b></td><td> </td><td width='400'>".($lv_obj->ects!=''?number_format($lv_obj->ects,1,'.',''):'')."</td><td width='100%'></td></tr>";
|
||||
echo "<table>";
|
||||
echo "<tr><td><b>".$p->t('courseInformation/ectsCredits')."</b></td><td width='100%'>".($lv_obj->ects!=''?number_format($lv_obj->ects,1,'.',''):'')."</td></tr>";
|
||||
|
||||
$stsem_obj = new studiensemester();
|
||||
$stsem = $stsem_obj->getaktorNext();
|
||||
@@ -499,7 +712,7 @@ if (!$db = new basis_db())
|
||||
AND studiensemester_kurzbz=(SELECT studiensemester_kurzbz FROM lehre.tbl_lehreinheit JOIN public.tbl_studiensemester USING(studiensemester_kurzbz) WHERE lehrveranstaltung_id=".$db->db_add_param($lv)." ORDER BY ende DESC LIMIT 1)
|
||||
AND mitarbeiter_uid=uid";
|
||||
|
||||
echo "<tr><td class='tdvertical' nowrap><b>".$p->t('courseInformation/lehrendeLautLehrauftrag')."</b></td><td> </td><td nowrap>";
|
||||
echo "<tr><td class='tdvertical' nowrap><b>".$p->t('courseInformation/lehrendeLautLehrauftrag')."</b></td><td nowrap>";
|
||||
$helparray = array();
|
||||
if($result=$db->db_query($qry))
|
||||
{
|
||||
@@ -511,19 +724,19 @@ if (!$db = new basis_db())
|
||||
}
|
||||
|
||||
foreach($helparray as $elem)
|
||||
echo $elem."<br>";
|
||||
echo $elem."<br>";
|
||||
echo "</td></tr>";
|
||||
|
||||
//FB Leiter auslesen
|
||||
$qry = " SELECT
|
||||
distinct titelpre, titelpost, vorname, nachname
|
||||
FROM
|
||||
public.tbl_benutzerfunktion JOIN campus.vw_mitarbeiter USING(uid)
|
||||
WHERE
|
||||
funktion_kurzbz='Leitung' AND
|
||||
(tbl_benutzerfunktion.datum_von is null OR tbl_benutzerfunktion.datum_von<=now()) AND
|
||||
//FB Leiter auslesen
|
||||
$qry = " SELECT
|
||||
distinct titelpre, titelpost, vorname, nachname
|
||||
FROM
|
||||
public.tbl_benutzerfunktion JOIN campus.vw_mitarbeiter USING(uid)
|
||||
WHERE
|
||||
funktion_kurzbz='Leitung' AND
|
||||
(tbl_benutzerfunktion.datum_von is null OR tbl_benutzerfunktion.datum_von<=now()) AND
|
||||
(tbl_benutzerfunktion.datum_bis is null OR tbl_benutzerfunktion.datum_bis>=now()) AND
|
||||
oe_kurzbz in (SELECT distinct lehrfach.oe_kurzbz
|
||||
oe_kurzbz in (SELECT distinct lehrfach.oe_kurzbz
|
||||
FROM
|
||||
lehre.tbl_lehreinheit
|
||||
JOIN lehre.tbl_lehrveranstaltung as lehrfach ON(tbl_lehreinheit.lehrfach_id=lehrfach.lehrveranstaltung_id)
|
||||
@@ -533,23 +746,23 @@ if (!$db = new basis_db())
|
||||
FROM lehre.tbl_lehreinheit JOIN public.tbl_studiensemester USING(studiensemester_kurzbz)
|
||||
WHERE tbl_lehreinheit.lehrveranstaltung_id=".$db->db_add_param($lv, FHC_INTEGER)."
|
||||
ORDER BY ende DESC LIMIT 1
|
||||
)
|
||||
)";
|
||||
|
||||
echo "<tr><td class='tdvertical'><b>".$p->t('courseInformation/institutsleiter')."</b></td><td> </td><td>";
|
||||
if($result=$db->db_query($qry))
|
||||
{
|
||||
while($row=$db->db_fetch_object($result))
|
||||
{
|
||||
echo "$row->titelpre $row->vorname $row->nachname $row->titelpost<br>";
|
||||
}
|
||||
}
|
||||
)
|
||||
)";
|
||||
|
||||
echo "<tr><td class='tdvertical'><b>".$p->t('courseInformation/institutsleiter')."</b></td><td>";
|
||||
if($result=$db->db_query($qry))
|
||||
{
|
||||
while($row=$db->db_fetch_object($result))
|
||||
{
|
||||
echo "$row->titelpre $row->vorname $row->nachname $row->titelpost<br>";
|
||||
}
|
||||
}
|
||||
|
||||
echo "</td></tr>";
|
||||
echo "</td></tr>";
|
||||
|
||||
//FB Koordinator auslesen
|
||||
//FB Koordinator auslesen
|
||||
//$qry = "SELECT distinct vorname, nachname FROM public.tbl_benutzerfunktion JOIN campus.vw_mitarbeiter USING(uid) WHERE funktion_kurzbz='fbk' AND studiengang_kz='$stg' AND fachbereich_kurzbz in (SELECT fachbereich_kurzbz FROM lehre.tbl_lehrfach, lehre.tbl_lehreinheit WHERE lehrveranstaltung_id='$lv' AND tbl_lehrfach.lehrfach_id=tbl_lehreinheit.lehrfach_id AND tbl_lehreinheit.studiensemester_kurzbz=(SELECT studiensemester_kurzbz FROM lehre.tbl_lehreinheit JOIN public.tbl_studiensemester USING(studiensemester_kurzbz) WHERE tbl_lehreinheit.lehrveranstaltung_id='$lv' ORDER BY ende DESC LIMIT 1))";
|
||||
$qry = "SELECT
|
||||
$qry = "SELECT
|
||||
distinct titelpre, titelpost, vorname, nachname, tbl_fachbereich.fachbereich_kurzbz
|
||||
FROM
|
||||
lehre.tbl_lehrveranstaltung, lehre.tbl_lehreinheit, lehre.tbl_lehrveranstaltung as lehrfach, public.tbl_benutzerfunktion, campus.vw_mitarbeiter, public.tbl_fachbereich
|
||||
@@ -564,131 +777,136 @@ if (!$db = new basis_db())
|
||||
(tbl_benutzerfunktion.datum_bis is null OR tbl_benutzerfunktion.datum_bis>=now()) AND
|
||||
vw_mitarbeiter.uid=COALESCE(tbl_lehrveranstaltung.koordinator, tbl_benutzerfunktion.uid) AND
|
||||
tbl_lehrveranstaltung.studiengang_kz=(SELECT studiengang_kz FROM public.tbl_studiengang WHERE oe_kurzbz=tbl_benutzerfunktion.oe_kurzbz LIMIT 1)";
|
||||
|
||||
echo "<tr><td class='tdvertical'><b>".$p->t('courseInformation/institutskoordinator')."</b></td><td> </td><td>";
|
||||
if($result=$db->db_query($qry))
|
||||
{
|
||||
while($row=$db->db_fetch_object($result))
|
||||
{
|
||||
echo "$row->titelpre $row->vorname $row->nachname $row->titelpost<br>";
|
||||
}
|
||||
}
|
||||
|
||||
echo "</td></tr>";
|
||||
|
||||
//echo "</table>";
|
||||
echo "<tr><td>";
|
||||
|
||||
|
||||
echo "<input type='hidden' name='stg' value='$stg'>";
|
||||
echo "<input type='hidden' name='sem' value='$sem'>";
|
||||
echo "<input type='hidden' name='lv' value='$lv'>";
|
||||
echo "<input type='hidden' name='status' value=''>";
|
||||
|
||||
echo "</td></tr>";
|
||||
//Sprache ausgeben
|
||||
echo "<tr><td><b>".$p->t('courseInformation/unterrichtssprache')."</b></td><td> </td><td>$lv_obj->sprache";
|
||||
echo "</td></tr>";
|
||||
|
||||
//Anz. Incoming ausgeben
|
||||
|
||||
if ($lv_obj->incoming > -1)
|
||||
|
||||
echo "<tr><td class='tdvertical'><b>".$p->t('courseInformation/institutskoordinator')."</b></td><td>";
|
||||
if($result=$db->db_query($qry))
|
||||
{
|
||||
while($row=$db->db_fetch_object($result))
|
||||
{
|
||||
echo "<tr><td valign='top'><b>".$p->t('courseInformation/incomingplaetze')."</b></td><td> </td><td valign='top'>$lv_obj->incoming";
|
||||
echo "$row->titelpre $row->vorname $row->nachname $row->titelpost<br>";
|
||||
}
|
||||
}
|
||||
|
||||
echo "</td></tr>";
|
||||
|
||||
//echo "</table>";
|
||||
echo "<tr><td>";
|
||||
|
||||
|
||||
echo "<input type='hidden' name='stg' value='$stg'>";
|
||||
echo "<input type='hidden' name='sem' value='$sem'>";
|
||||
echo "<input type='hidden' name='lv' value='$lv'>";
|
||||
echo "<input type='hidden' name='status' value=''>";
|
||||
|
||||
echo "</td></tr>";
|
||||
//Sprache ausgeben
|
||||
echo "<tr><td><b>".$p->t('courseInformation/unterrichtssprache')."</b></td><td>$lv_obj->sprache";
|
||||
echo "</td></tr>";
|
||||
|
||||
//Anz. Incoming ausgeben
|
||||
|
||||
if ($lv_obj->incoming > -1)
|
||||
{
|
||||
echo "<tr><td valign='top'><b>".$p->t('courseInformation/incomingplaetze')."</b></td><td valign='top'>$lv_obj->incoming";
|
||||
}
|
||||
else echo "<tr><td valign='top'><b>".$p->t('courseInformation/incomingplaetze')."</b></td><td>0";
|
||||
echo "</td></tr><tr><td colspan='4'><font style='font-size:smaller'>".$p->t('courseInformation/beiFehlernInDenFixfeldern',array($stg_obj1->email))."</font></td></tr>";
|
||||
echo "<tr><td align='left' colspan='4'><br/><br/><font style='color:black'>".$p->t('courseInformation/pflichtfelderWerdenAufDerExternenSeiteAngezeigt',array($stg_obj1->email))."</font>.</td></tr>";
|
||||
echo "</td></tr><tr><td colspan='2'><font style='font-size:smaller'>".$p->t('courseInformation/beiFehlernInDenFixfeldern',array($stg_obj1->email))."</font></td></tr>";
|
||||
echo "<tr><td align='left' colspan='2'><br/><br/><font style='color:black'>".$p->t('courseInformation/pflichtfelderWerdenAufDerExternenSeiteAngezeigt',array($stg_obj1->email))."</font>.</td></tr>";
|
||||
//echo "<tr><td align='left' colspan='4'><font style='color:black'>".$p->t('courseInformation/fallsSieAufzaehlungslistenVerwenden',array($stg_obj1->email))."</font></td></tr>"; --> Es sollten keine HTML-Tags gespeichert werden koennen. Hier muss eine andere Loesung gefunde werden.
|
||||
echo "</table><br><br>";
|
||||
|
||||
//Eingabefelder anzeigen
|
||||
echo "<table width='100%' border='0' cellspacing='0' cellpadding='0'>";
|
||||
//Eingabefelder anzeigen
|
||||
echo "<table width='100%' border='0' cellspacing='0' cellpadding='0'>";
|
||||
|
||||
|
||||
echo '<tr>
|
||||
<td colspan="2"><b><u>DEUTSCH</u></b></td>
|
||||
<td rowspan="12" width="20"> </td>
|
||||
<td colspan="2"><b><u>ENGLISH</u></b></td>
|
||||
</tr>
|
||||
|
||||
';
|
||||
/* 28.01.2008 - Titel kommt jetzt aus tbl_lehrveranstaltung
|
||||
<tr class="liste1">
|
||||
<td><i>Lehrveranstaltungstitel</i> </td>
|
||||
<td align="right"><textarea rows="5" cols="40" name="titel_de">'. (isset($titel_de)?stripslashes(mb_eregi_replace("<br>","\r\n", $titel_de)):'').'</textarea></td>
|
||||
<td><i>Course Title</i> </td>
|
||||
<td align="right"><textarea rows="5" cols="40" name="titel_en">'. (isset($titel_en)?stripslashes(mb_eregi_replace("<br>","\r\n",$titel_en)):'').'</textarea></td>
|
||||
</tr>
|
||||
*/
|
||||
echo '
|
||||
<tr class="liste0">
|
||||
<td><i>Kurzbeschreibung <font style="color:black">(Pflichtfeld)</font></i> </td>
|
||||
<td align="right"><textarea rows="5" cols="40" name="kurzbeschreibung_de">'. (isset($kurzbeschreibung_de)?stripslashes(mb_eregi_replace("<br>","\r\n",$kurzbeschreibung_de)):'').'</textarea></td>
|
||||
<td><i>Course Description <font style="color:black">(Required)</font></i> </td>
|
||||
<td align="right"><textarea rows="5" cols="40" name="kurzbeschreibung_en">'. (isset($kurzbeschreibung_en)?stripslashes(mb_eregi_replace("<br>","\r\n",$kurzbeschreibung_en)):'').'</textarea></td>
|
||||
</tr>
|
||||
<tr class="liste1">
|
||||
<td><i>Methodik / Didaktik <font style="color:black">(Pflichtfeld)</font></i> </td>
|
||||
<td align="right"><textarea rows="5" cols="40" name="methodik_de">'. (isset($methodik_de)?stripslashes(mb_eregi_replace("<br>","\r\n", $methodik_de)):'').'</textarea></td>
|
||||
<td><i>Teaching Methods <font style="color:black">(Required)</font></i> </td>
|
||||
<td align="right"><textarea rows="5" cols="40" name="methodik_en">'. (isset($methodik_en)?stripslashes(mb_eregi_replace("<br>","\r\n",$methodik_en)):'').'</textarea></td>
|
||||
</tr>';
|
||||
echo '<tr class="liste0">
|
||||
<td><i>Kompetenzerwerb <font style="color:black">(Pflichtfeld)</font></i></td>
|
||||
<td align="right"><textarea rows="5" cols="40" name="lehrziele_de">'. (isset($lehrziele_de)?stripslashes(mb_eregi_replace("<br>","\r\n",$lehrziele_de)):'').'</textarea></td>
|
||||
<td><i>Learning outcome <font style="color:black">(Required)</font></i> </td>
|
||||
<td align="right"><textarea rows="5" cols="40" name="lehrziele_en">'. (isset($lehrziele_en)?stripslashes(mb_eregi_replace("<br>","\r\n",$lehrziele_en)):'').'</textarea></td>
|
||||
</tr>
|
||||
<tr class="liste1">
|
||||
<td><i>Lehrinhalte <font style="color:black">(Pflichtfeld)</font></i></td>
|
||||
<td align="right"><textarea rows="5" cols="40" name="lehrinhalte_de">'. (isset($lehrinhalte_de)?stripslashes(mb_eregi_replace("<br>","\r\n",$lehrinhalte_de)):'').'</textarea></td>
|
||||
<td><i>Course Contents <font style="color:black">(Required)</font></i> </td>
|
||||
<td align="right"><textarea rows="5" cols="40" name="lehrinhalte_en">'. (isset($lehrinhalte_en)?stripslashes(mb_eregi_replace("<br>","\r\n",$lehrinhalte_en)):'').'</textarea></td>
|
||||
</tr>
|
||||
<tr class="liste0">
|
||||
<td><i>Vorkenntnisse <font style="color:black">(Pflichtfeld)</font></i> </td>
|
||||
<td align="right"><textarea rows="5" cols="40" name="voraussetzungen_de">'. (isset($voraussetzungen_de)?stripslashes(mb_eregi_replace("<br>","\r\n",$voraussetzungen_de)):'').'</textarea></td>
|
||||
<td><i>Prerequisites <font style="color:black">(Required)</font></i></td>
|
||||
<td align="right"><textarea rows="5" cols="40" name="voraussetzungen_en">'. (isset($voraussetzungen_en)?stripslashes(mb_eregi_replace("<br>","\r\n",$voraussetzungen_en)):'').'</textarea></td>
|
||||
</tr>';
|
||||
echo '<tr class="liste1">
|
||||
<td><i>Literatur</i> </td>
|
||||
<td align="right"><textarea rows="5" cols="40" name="unterlagen_de">'. (isset($unterlagen_de)?stripslashes(mb_eregi_replace("<br>","\r\n",$unterlagen_de)):'').'</textarea></td>
|
||||
<td><i>Recommended Reading and Material</i></td>
|
||||
<td align="right"><textarea rows="5" cols="40" name="unterlagen_en">'. (isset($unterlagen_en)?stripslashes(mb_eregi_replace("<br>","\r\n",$unterlagen_en)):'').'</textarea></td>
|
||||
</tr>
|
||||
<tr class="liste0">
|
||||
<td><i>Leistungsbeurteilung</i></td>
|
||||
<td align="right"><textarea rows="5" cols="40" name="pruefungsordnung_de">'. (isset($pruefungsordnung_de)?stripslashes(mb_eregi_replace("<br>","\r\n",$pruefungsordnung_de)):'').'</textarea></td>
|
||||
<td><i>Assessment Methods</i> </td>
|
||||
<td align="right"><textarea rows="5" cols="40" name="pruefungsordnung_en">'. (isset($pruefungsordnung_en)?stripslashes(mb_eregi_replace("<br>","\r\n",$pruefungsordnung_en)):'').'</textarea></td>
|
||||
</tr>
|
||||
<tr class="liste1">
|
||||
<td><i>Anmerkungen</i></td>
|
||||
<td align="right"><textarea rows="5" cols="40" name="anmerkungen_de">'. (isset($anmerkungen_de)?stripslashes(mb_eregi_replace("<br>","\r\n",$anmerkungen_de)):'').'</textarea></td>
|
||||
<td><i>Comments
|
||||
|
||||
</i></td>
|
||||
<td align="right">
|
||||
<textarea rows="5" cols="40" name="anmerkungen_en">'. (isset($anmerkungen_en)?stripslashes(mb_eregi_replace("<br>","\r\n",$anmerkungen_en)):'').'</textarea>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="liste0">
|
||||
<td align=center colspan=2><br><input type="checkbox" name="freig_de" '. (isset($freig_de) && ($freig_de==true || $freig_de=='1')?'checked':'').'/><i>'.$p->t('courseInformation/freigeben').'</i><br><br></td>
|
||||
|
||||
|
||||
<td align=center colspan=2><input type="checkbox" name="freig_en" '. (isset($freig_en) && ($freig_en==true || $freig_en=='1')?'checked':'').'/><i>'.$p->t('courseInformation/freigeben').'</i> </td>
|
||||
<td ></td>
|
||||
</tr>';
|
||||
echo "</table><br>";
|
||||
echo "<div align='right'>";
|
||||
echo "<input type='button' value='".$p->t('global/speichern')."' onClick='save();'>";
|
||||
echo "<input type='button' value='".$p->t('courseInformation/voransicht')."' onClick='javascript:window.document.editFrm.action=\"preview.php\";window.document.editFrm.target=\"_blank\";window.document.editFrm.submit();'>";
|
||||
echo "</div>";
|
||||
if(isset($error) && $error!='')
|
||||
echo $error;
|
||||
}
|
||||
echo '<tr>
|
||||
<td colspan="2" align="center"><h2>DEUTSCH</h2></td>
|
||||
<td rowspan="14" width="20"> </td>
|
||||
<td colspan="2" align="center"><h2>ENGLISH</h2></td>
|
||||
</tr>';
|
||||
echo '<tr>
|
||||
<td colspan="2" align="center">'.($lv_de->genehmigt==false?'<span style="color:red">'.$p->t('courseInformation/nochNichtFreigegeben').'</span>':$p->t('courseInformation/freigegeben')).'</td>
|
||||
<td colspan="2" align="center">'.($lv_en->genehmigt==false?'<span style="color:red">'.$p->t('courseInformation/nochNichtFreigegeben').'</span>':$p->t('courseInformation/freigegeben')).'</td>
|
||||
</tr>';
|
||||
echo '<tr>
|
||||
<td colspan="5"> </td>
|
||||
</tr>';
|
||||
|
||||
echo '
|
||||
<tr class="liste0">
|
||||
<td><i>'.$p->t('lvinfo/kurzbeschreibung').' <font style="color:black">(Pflichtfeld)</font></i> </td>
|
||||
<td align="right"><textarea rows="5" cols="50" name="kurzbeschreibung_de">'. (isset($kurzbeschreibung_de)?stripslashes(mb_eregi_replace("<br>","\r\n",$kurzbeschreibung_de)):'').'</textarea></td>
|
||||
<td><i>'.$p->t('lvinfo/kurzbeschreibungEN').' <font style="color:black">(Required)</font></i> </td>
|
||||
<td align="right"><textarea rows="5" cols="50" name="kurzbeschreibung_en">'. (isset($kurzbeschreibung_en)?stripslashes(mb_eregi_replace("<br>","\r\n",$kurzbeschreibung_en)):'').'</textarea></td>
|
||||
</tr>
|
||||
<tr class="liste1">
|
||||
<td><i>'.$p->t('lvinfo/methodik').' <font style="color:black">(Pflichtfeld)</font></i> </td>
|
||||
<td align="right"><textarea rows="5" cols="50" name="methodik_de">'. (isset($methodik_de)?stripslashes(mb_eregi_replace("<br>","\r\n", $methodik_de)):'').'</textarea></td>
|
||||
<td><i>'.$p->t('lvinfo/methodikEN').' <font style="color:black">(Required)</font></i> </td>
|
||||
<td align="right"><textarea rows="5" cols="50" name="methodik_en">'. (isset($methodik_en)?stripslashes(mb_eregi_replace("<br>","\r\n",$methodik_en)):'').'</textarea></td>
|
||||
</tr>';
|
||||
echo '<tr class="liste0">
|
||||
<td><i>'.$p->t('lvinfo/lernergebnisse').' <font style="color:black">(Pflichtfeld)</font></i></td>
|
||||
<td align="right"><textarea rows="5" cols="50" name="lehrziele_de">'. (isset($lehrziele_de)?stripslashes(mb_eregi_replace("<br>","\r\n",$lehrziele_de)):'Nach erfolgreichem Abschluss sind die Studierenden in der Lage, ').'</textarea></td>
|
||||
<td><i>'.$p->t('lvinfo/lernergebnisseEN').' <font style="color:black">(Required)</font></i> </td>
|
||||
<td align="right"><textarea rows="5" cols="50" name="lehrziele_en">'. (isset($lehrziele_en)?stripslashes(mb_eregi_replace("<br>","\r\n",$lehrziele_en)):'').'</textarea></td>
|
||||
</tr>
|
||||
<tr class="liste1">
|
||||
<td><i>'.$p->t('lvinfo/lehrinhalte').' <font style="color:black">(Pflichtfeld)</font></i></td>
|
||||
<td align="right"><textarea rows="5" cols="50" name="lehrinhalte_de">'. (isset($lehrinhalte_de)?stripslashes(mb_eregi_replace("<br>","\r\n",$lehrinhalte_de)):'').'</textarea></td>
|
||||
<td><i>'.$p->t('lvinfo/lehrinhalteEN').' <font style="color:black">(Required)</font></i> </td>
|
||||
<td align="right"><textarea rows="5" cols="50" name="lehrinhalte_en">'. (isset($lehrinhalte_en)?stripslashes(mb_eregi_replace("<br>","\r\n",$lehrinhalte_en)):'').'</textarea></td>
|
||||
</tr>
|
||||
<tr class="liste0">
|
||||
<td><i>'.$p->t('lvinfo/vorkenntnisse').' <font style="color:black">(Pflichtfeld)</font></i> </td>
|
||||
<td align="right"><textarea rows="5" cols="50" name="voraussetzungen_de">'. (isset($voraussetzungen_de)?stripslashes(mb_eregi_replace("<br>","\r\n",$voraussetzungen_de)):'').'</textarea></td>
|
||||
<td><i>'.$p->t('lvinfo/vorkenntnisseEN').' <font style="color:black">(Required)</font></i></td>
|
||||
<td align="right"><textarea rows="5" cols="50" name="voraussetzungen_en">'. (isset($voraussetzungen_en)?stripslashes(mb_eregi_replace("<br>","\r\n",$voraussetzungen_en)):'').'</textarea></td>
|
||||
</tr>';
|
||||
echo '<tr class="liste1">
|
||||
<td><i>'.$p->t('lvinfo/literatur').'</i> </td>
|
||||
<td align="right"><textarea rows="5" cols="50" name="unterlagen_de">'. (isset($unterlagen_de)?stripslashes(mb_eregi_replace("<br>","\r\n",$unterlagen_de)):'').'</textarea></td>
|
||||
<td><i>'.$p->t('lvinfo/literaturEN').'</i></td>
|
||||
<td align="right"><textarea rows="5" cols="50" name="unterlagen_en">'. (isset($unterlagen_en)?stripslashes(mb_eregi_replace("<br>","\r\n",$unterlagen_en)):'').'</textarea></td>
|
||||
</tr>
|
||||
<tr class="liste0">
|
||||
<td><i>'.$p->t('lvinfo/leistungsbeurteilung').'</i></td>
|
||||
<td align="right"><textarea rows="5" cols="50" name="pruefungsordnung_de">'. (isset($pruefungsordnung_de)?stripslashes(mb_eregi_replace("<br>","\r\n",$pruefungsordnung_de)):'').'</textarea></td>
|
||||
<td><i>'.$p->t('lvinfo/leistungsbeurteilungEN').'</i> </td>
|
||||
<td align="right"><textarea rows="5" cols="50" name="pruefungsordnung_en">'. (isset($pruefungsordnung_en)?stripslashes(mb_eregi_replace("<br>","\r\n",$pruefungsordnung_en)):'').'</textarea></td>
|
||||
</tr>
|
||||
<tr class="liste1">
|
||||
<td><i>'.$p->t('lvinfo/anwesenheit').'</i></td>
|
||||
<td align="right"><textarea rows="5" cols="50" name="anwesenheit_de">'. (isset($anwesenheit_de)?stripslashes(mb_eregi_replace("<br>","\r\n",$anwesenheit_de)):'').'</textarea></td>
|
||||
<td><i>'.$p->t('lvinfo/anwesenheitEN').'</i></td>
|
||||
<td align="right"><textarea rows="5" cols="50" name="anwesenheit_en">'. (isset($anwesenheit_en)?stripslashes(mb_eregi_replace("<br>","\r\n",$anwesenheit_en)):'').'</textarea></td>
|
||||
</tr>
|
||||
<tr class="liste0">
|
||||
<td><i>'.$p->t('lvinfo/anmerkungen').'</i></td>
|
||||
<td align="right"><textarea rows="5" cols="50" name="anmerkungen_de">'. (isset($anmerkungen_de)?stripslashes(mb_eregi_replace("<br>","\r\n",$anmerkungen_de)):'').'</textarea></td>
|
||||
<td><i>'.$p->t('lvinfo/anmerkungenEN').'</i></td>
|
||||
<td align="right"><textarea rows="5" cols="50" name="anmerkungen_en">'. (isset($anmerkungen_en)?stripslashes(mb_eregi_replace("<br>","\r\n",$anmerkungen_en)):'').'</textarea></td>
|
||||
</tr>';
|
||||
if ($rechte->isBerechtigt('lehre/lvinfo_freigabe',$oe_kurzbz) || $rechte->isBerechtigt('lehre/lvinfo_freigabe',$stg))
|
||||
echo ' <tr class="liste0">
|
||||
<td align=center colspan=2><br><input type="checkbox" name="freig_de" '. (isset($freig_de) && ($freig_de==true || $freig_de=='1')?'checked':'').'/><i>'.$p->t('courseInformation/deutschFreigeben').'</i><br><br></td>
|
||||
<td align=center colspan=2><input type="checkbox" name="freig_en" '. (isset($freig_en) && ($freig_en==true || $freig_en=='1')?'checked':'').'/><i>'.$p->t('courseInformation/englischFreigeben').'</i> </td>
|
||||
<td ></td>
|
||||
</tr>';
|
||||
|
||||
echo "</table><br>";
|
||||
echo "<div align='left'>";
|
||||
echo "<input type='button' value='".$p->t('global/speichern')."' onClick='save();'>";
|
||||
echo "<input type='button' value='".$p->t('courseInformation/voransicht')."' onClick='javascript:window.document.editFrm.action=\"preview.php\";window.document.editFrm.target=\"_blank\";window.document.editFrm.submit();'>";
|
||||
echo "<br><br>";
|
||||
if (!$berechtigt)
|
||||
echo "<input type='button' value='".$p->t('courseInformation/zurFreigabeAbschicken')."' onClick='freigeben();'>";
|
||||
echo "</div>";
|
||||
echo "</form>";
|
||||
echo "<br><br><br><br><br><br><br><br><br><br><br><br>";
|
||||
if(isset($error) && $error!='')
|
||||
echo $error;
|
||||
}
|
||||
?>
|
||||
<td></tr></table>
|
||||
</body>
|
||||
|
||||
@@ -29,6 +29,7 @@
|
||||
*/
|
||||
|
||||
require_once('../../../../config/cis.config.inc.php');
|
||||
require_once('../../../../config/global.config.inc.php');
|
||||
require_once('../../../../include/studiensemester.class.php');
|
||||
require_once('../../../../include/lehrveranstaltung.class.php');
|
||||
require_once('../../../../include/lvinfo.class.php');
|
||||
@@ -71,6 +72,29 @@ function getLastStundeByDatum(Array $array, $filterDatum)
|
||||
};
|
||||
return array_filter($array,$callback);
|
||||
}
|
||||
|
||||
$titel_de = '';
|
||||
$methodik_de = '';
|
||||
$kurzbeschreibung_de = '';
|
||||
$anwesenheit_de = '';
|
||||
$lehrziele_de = '';
|
||||
$lehrinhalte_de = '';
|
||||
$voraussetzungen_de = '';
|
||||
$unterlagen_de = '';
|
||||
$pruefungsordnung_de = '';
|
||||
$anmerkungen_de = '';
|
||||
|
||||
$titel_en = '';
|
||||
$methodik_en = '';
|
||||
$kurzbeschreibung_en = '';
|
||||
$anwesenheit_en = '';
|
||||
$lehrziele_en = '';
|
||||
$lehrinhalte_en = '';
|
||||
$voraussetzungen_en = '';
|
||||
$unterlagen_en = '';
|
||||
$pruefungsordnung_en = '';
|
||||
$anmerkungen_en = '';
|
||||
|
||||
?>
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html>
|
||||
@@ -78,11 +102,8 @@ function getLastStundeByDatum(Array $array, $filterDatum)
|
||||
<title>ECTS - European Course Credit Transfer Systems (ECTS)</title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<link href="../../../../skin/style.css.php" type="text/css" rel="stylesheet" />
|
||||
<script type="text/javascript" src="../../../../include/js/flexcroll.js"></script>
|
||||
<link href="../../../../skin/flexcrollstyles.css" rel="stylesheet" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<div class="flexcroll" style="outline: none;">
|
||||
<table align="right">
|
||||
<tr>
|
||||
<td>
|
||||
@@ -123,6 +144,7 @@ function getLastStundeByDatum(Array $array, $filterDatum)
|
||||
//$titel_de = mb_eregi_replace("\r\n","<br>",stripslashes($_POST['titel_de']));
|
||||
$methodik_de = mb_eregi_replace("\r\n","<br>",stripslashes($_POST['methodik_de']));
|
||||
$kurzbeschreibung_de = mb_eregi_replace("\r\n","<br>",stripslashes($_POST['kurzbeschreibung_de']));
|
||||
$anwesenheit_de = mb_eregi_replace("\r\n","<br>",stripslashes($_POST['anwesenheit_de']));
|
||||
$lehrziele_de = mb_eregi_replace("\r\n","<br>",stripslashes($_POST['lehrziele_de']));
|
||||
$lehrinhalte_de = mb_eregi_replace("\r\n","<br>",stripslashes($_POST['lehrinhalte_de']));
|
||||
$voraussetzungen_de = mb_eregi_replace("\r\n","<br>",stripslashes($_POST['voraussetzungen_de']));
|
||||
@@ -145,12 +167,15 @@ function getLastStundeByDatum(Array $array, $filterDatum)
|
||||
$parser = new SafeHTML();
|
||||
$kurzbeschreibung_de = $parser->parse($kurzbeschreibung_de);
|
||||
$parser = new SafeHTML();
|
||||
$anwesenheit_de = $parser->parse($anwesenheit_de);
|
||||
$parser = new SafeHTML();
|
||||
$methodik_de = $parser->parse($methodik_de);
|
||||
|
||||
// Englisch content variables
|
||||
//$titel_en = mb_eregi_replace("\r\n","<br>",stripslashes($_POST['titel_en']));
|
||||
$methodik_en = mb_eregi_replace("\r\n","<br>",stripslashes($_POST['methodik_en']));
|
||||
$kurzbeschreibung_en = mb_eregi_replace("\r\n","<br>",stripslashes($_POST['kurzbeschreibung_en']));
|
||||
$anwesenheit_en = mb_eregi_replace("\r\n","<br>",stripslashes($_POST['anwesenheit_en']));
|
||||
$lehrziele_en = mb_eregi_replace("\r\n","<br>",stripslashes($_POST['lehrziele_en']));
|
||||
$lehrinhalte_en = mb_eregi_replace("\r\n","<br>",stripslashes($_POST['lehrinhalte_en']));
|
||||
$voraussetzungen_en = mb_eregi_replace("\r\n","<br>",stripslashes($_POST['voraussetzungen_en']));
|
||||
@@ -173,6 +198,8 @@ function getLastStundeByDatum(Array $array, $filterDatum)
|
||||
$parser = new SafeHTML();
|
||||
$kurzbeschreibung_en = $parser->parse($kurzbeschreibung_en);
|
||||
$parser = new SafeHTML();
|
||||
$anwesenheit_en = $parser->parse($anwesenheit_en);
|
||||
$parser = new SafeHTML();
|
||||
$methodik_en = $parser->parse($methodik_en);
|
||||
}
|
||||
elseif(isset($_GET['lv'])) //LV Id wird uebergeben (zB bei Ansicht fuer alle von lesson.php)
|
||||
@@ -189,6 +216,7 @@ function getLastStundeByDatum(Array $array, $filterDatum)
|
||||
//$titel_de = $lvinfo_obj->titel;
|
||||
$methodik_de = $lvinfo_obj->methodik;
|
||||
$kurzbeschreibung_de = $lvinfo_obj->kurzbeschreibung;
|
||||
$anwesenheit_de = $lvinfo_obj->anwesenheit;
|
||||
$lehrziele_de = $lvinfo_obj->lehrziele;
|
||||
$lehrinhalte_de = $lvinfo_obj->lehrinhalte;
|
||||
$voraussetzungen_de = $lvinfo_obj->voraussetzungen;
|
||||
@@ -203,6 +231,7 @@ function getLastStundeByDatum(Array $array, $filterDatum)
|
||||
//$titel_en = $lvinfo_obj->titel;
|
||||
$methodik_en = $lvinfo_obj->methodik;
|
||||
$kurzbeschreibung_en = $lvinfo_obj->kurzbeschreibung;
|
||||
$anwesenheit_en = $lvinfo_obj->anwesenheit;
|
||||
$lehrziele_en = $lvinfo_obj->lehrziele;
|
||||
$lehrinhalte_en = $lvinfo_obj->lehrinhalte;
|
||||
$voraussetzungen_en = $lvinfo_obj->voraussetzungen;
|
||||
@@ -438,49 +467,55 @@ function getLastStundeByDatum(Array $array, $filterDatum)
|
||||
|
||||
if ($kurzbeschreibung_de)
|
||||
{
|
||||
echo "<tr><td align='left' valign='top'><h2>Kurzbeschreibung</h2></td></tr>";
|
||||
echo "<tr><td align='left' valign='top'><h2>".$phrasen->t('lvinfo/kurzbeschreibung')."</h2></td></tr>";
|
||||
echo "<tr><td>".stripslashes($kurzbeschreibung_de)."<br /><br /></td></tr>";
|
||||
}
|
||||
|
||||
if ($lehrziele_de)
|
||||
{
|
||||
echo "<tr><td align='left' valign='top'><h2>Kompetenzerwerb</h2></td></tr>";
|
||||
echo "<tr><td align='left' valign='top'><h2>".$phrasen->t('lvinfo/lernergebnisse')."</h2></td></tr>";
|
||||
echo "<tr><td>".stripslashes($lehrziele_de)."<br /><br /></td></tr>";
|
||||
}
|
||||
|
||||
if ($lehrinhalte_de)
|
||||
{
|
||||
echo "<tr><td align='left' valign='top'><h2>Lehrinhalte</h2></td></tr>";
|
||||
echo "<tr><td align='left' valign='top'><h2>".$phrasen->t('lvinfo/lehrinhalte')."</h2></td></tr>";
|
||||
echo "<tr><td>".stripslashes($lehrinhalte_de)."<br /><br /></td></tr>";
|
||||
}
|
||||
|
||||
if ($voraussetzungen_de)
|
||||
{
|
||||
echo "<tr><td align='left' valign='top'><h2>Vorkenntnisse</h2></td></tr>";
|
||||
echo "<tr><td align='left' valign='top'><h2>".$phrasen->t('lvinfo/vorkenntnisse')."</h2></td></tr>";
|
||||
echo "<tr><td>".stripslashes($voraussetzungen_de)."<br><br /></td></tr>";
|
||||
}
|
||||
|
||||
if ($methodik_de)
|
||||
{
|
||||
echo "<tr><td align='left' valign='top'><h2>Methodik / Didaktik</h2></td></tr>";
|
||||
echo "<tr><td align='left' valign='top'><h2>".$phrasen->t('lvinfo/methodik')."</h2></td></tr>";
|
||||
echo "<tr><td>".stripslashes($methodik_de)."<br><br /></td></tr>";
|
||||
}
|
||||
|
||||
if ($pruefungsordnung_de)
|
||||
{
|
||||
echo "<tr><td align='left' valign='top'><h2>Leistungsbeurteilung</h2></td></tr>";
|
||||
echo "<tr><td align='left' valign='top'><h2>".$phrasen->t('lvinfo/leistungsbeurteilung')."</h2></td></tr>";
|
||||
echo "<tr><td>".stripslashes($pruefungsordnung_de)."<br /><br /></td></tr>";
|
||||
}
|
||||
|
||||
if ($unterlagen_de)
|
||||
{
|
||||
echo "<tr><td align='left' valign='top'><h2>Literatur</h2></td></tr>";
|
||||
echo "<tr><td align='left' valign='top'><h2>".$phrasen->t('lvinfo/literatur')."</h2></td></tr>";
|
||||
echo "<tr><td>".stripslashes($unterlagen_de)."<br /><br /></td></tr>";
|
||||
}
|
||||
|
||||
if ($anwesenheit_de)
|
||||
{
|
||||
echo "<tr><td align='left' valign='top'><h2>".$phrasen->t('lvinfo/anwesenheit')."</h2></td></tr>";
|
||||
echo "<tr><td>".stripslashes($anwesenheit_de)."<br /><br /></td></tr>";
|
||||
}
|
||||
|
||||
if ($anmerkungen_de)
|
||||
{
|
||||
echo "<tr><td align='left' valign='top'><h2>Anmerkungen</h2></td></tr>";
|
||||
echo "<tr><td align='left' valign='top'><h2>".$phrasen->t('lvinfo/anmerkungen')."</h2></td></tr>";
|
||||
echo "<tr><td>".stripslashes($anmerkungen_de)." <br /><br /></td></tr>";
|
||||
}
|
||||
|
||||
@@ -585,49 +620,55 @@ function getLastStundeByDatum(Array $array, $filterDatum)
|
||||
|
||||
if ($kurzbeschreibung_en)
|
||||
{
|
||||
echo "<tr><td align='left' valign='top'><h2>Course Description</h2></td></tr>";
|
||||
echo "<tr><td align='left' valign='top'><h2>".$phrasen->t('lvinfo/kurzbeschreibungEN')."</h2></td></tr>";
|
||||
echo "<tr><td>".stripslashes($kurzbeschreibung_en)."<br /><br /></td></tr>";
|
||||
}
|
||||
|
||||
if ($lehrziele_en)
|
||||
{
|
||||
echo "<tr><td align='left' valign='top'><h2>Learning outcome</h2></td></tr>";
|
||||
echo "<tr><td align='left' valign='top'><h2>".$phrasen->t('lvinfo/lernergebnisseEN')."</h2></td></tr>";
|
||||
echo "<tr><td>".stripslashes($lehrziele_en)."<br /><br /></td></tr>";
|
||||
}
|
||||
|
||||
if ($lehrinhalte_en)
|
||||
{
|
||||
echo "<tr><td align='left' valign='top'><h2>Course Contents</h2></td></tr>";
|
||||
echo "<tr><td align='left' valign='top'><h2>".$phrasen->t('lvinfo/lehrinhalteEN')."</h2></td></tr>";
|
||||
echo "<tr><td>".stripslashes($lehrinhalte_en)."<br /><br /></td></tr>";
|
||||
}
|
||||
|
||||
if ($voraussetzungen_en)
|
||||
{
|
||||
echo "<tr><td align='left' valign='top'><h2>Prerequisites</h2></td></tr>";
|
||||
echo "<tr><td align='left' valign='top'><h2>".$phrasen->t('lvinfo/vorkenntnisseEN')."</h2></td></tr>";
|
||||
echo "<tr><td>".stripslashes($voraussetzungen_en)."<br /><br /></td></tr>";
|
||||
}
|
||||
|
||||
if ($methodik_en)
|
||||
{
|
||||
echo "<tr><td align='left' valign='top'><h2>Teaching Methods</h2></td></tr>";
|
||||
echo "<tr><td align='left' valign='top'><h2>".$phrasen->t('lvinfo/methodikEN')."</h2></td></tr>";
|
||||
echo "<tr><td>".stripslashes($methodik_en)."<br><br /></td></tr>";
|
||||
}
|
||||
|
||||
if ($pruefungsordnung_en)
|
||||
{
|
||||
echo "<tr><td align='left' valign='top'><h2>Assessment Methods</h2></td></tr>";
|
||||
echo "<tr><td align='left' valign='top'><h2>".$phrasen->t('lvinfo/leistungsbeurteilungEN')."</h2></td></tr>";
|
||||
echo "<tr><td>".stripslashes($pruefungsordnung_en)."<br /><br /></td></tr>";
|
||||
}
|
||||
|
||||
if ($unterlagen_en)
|
||||
{
|
||||
echo "<tr><td align='left' valign='top'><h2>Recommended Reading and Material</h2></td></tr>";
|
||||
echo "<tr><td align='left' valign='top'><h2>".$phrasen->t('lvinfo/literaturEN')."</h2></td></tr>";
|
||||
echo "<tr><td>".stripslashes($unterlagen_en)."<br /><br /></td></tr>";
|
||||
}
|
||||
|
||||
if ($anwesenheit_en)
|
||||
{
|
||||
echo "<tr><td align='left' valign='top'><h2>".$phrasen->t('lvinfo/anwesenheitEN')."</h2></td></tr>";
|
||||
echo "<tr><td>".stripslashes($anwesenheit_en)."<br /><br /></td></tr>";
|
||||
}
|
||||
|
||||
if ($anmerkungen_en)
|
||||
{
|
||||
echo "<tr><td align='left' valign='top'><h2>Comments</h2></td></tr>";
|
||||
echo "<tr><td align='left' valign='top'><h2>".$phrasen->t('lvinfo/anmerkungenEN')."</h2></td></tr>";
|
||||
echo "<tr><td>".stripslashes($anmerkungen_en)." <br /></td></tr>";
|
||||
}
|
||||
}
|
||||
@@ -636,54 +677,62 @@ function getLastStundeByDatum(Array $array, $filterDatum)
|
||||
|
||||
$lehreinheit = new lehreinheit();
|
||||
$studiensemester = new studiensemester();
|
||||
|
||||
$lehreinheit->load_lehreinheiten($lv, $studiensemester->getaktorNext());
|
||||
if(!empty($lehreinheit->lehreinheiten))
|
||||
|
||||
if (CIS_LVINFO_TERMINE_ANZEIGEN == true)
|
||||
{
|
||||
$lehrstunde = new lehrstunde();
|
||||
$lehrstunde->load_lehrstunden_le($lehreinheit->lehreinheiten[0]->lehreinheit_id);
|
||||
$i = 1;
|
||||
echo "<h2>Termine</h2><table><tr><td><ul>";
|
||||
|
||||
$result = $lehrstunde->lehrstunden;
|
||||
$last = "";
|
||||
$bis = "";
|
||||
usort($result, "cmp");
|
||||
$datum = new datum();
|
||||
$std_von = new stunde();
|
||||
$std_bis = new stunde();
|
||||
foreach($result as $key=>$stunde)
|
||||
{
|
||||
if($last !== $stunde->datum)
|
||||
if(!empty($lehreinheit->lehreinheiten))
|
||||
{
|
||||
$temp = array_values(getLastStundeByDatum($result, $stunde->datum));
|
||||
$size = count($temp);
|
||||
if($size != 0)
|
||||
{
|
||||
$std_von->load($temp[0]->stunde);
|
||||
$std_bis->load($temp[$size-1]->stunde);
|
||||
echo "<li>".$datum->formatDatum($temp[0]->datum,"d.m.Y")." von ".mb_substr($std_von->beginn,0,5)." bis ".mb_substr($std_bis->ende,0,5)."</li>";
|
||||
}
|
||||
$i++;
|
||||
echo "<h2>Termine</h2><table>";
|
||||
foreach($lehreinheit->lehreinheiten as $lehreinheit_temp)
|
||||
{
|
||||
$lehrstunde = new lehrstunde();
|
||||
$lehrstunde->load_lehrstunden_le($lehreinheit_temp->lehreinheit_id);
|
||||
$i = 1;
|
||||
echo "<tr><td><ul>";
|
||||
|
||||
$result = $lehrstunde->lehrstunden;
|
||||
$last = "";
|
||||
$bis = "";
|
||||
usort($result, "cmp");
|
||||
$datum = new datum();
|
||||
$std_von = new stunde();
|
||||
$std_bis = new stunde();
|
||||
foreach($result as $key=>$stunde)
|
||||
{
|
||||
if($last !== $stunde->datum)
|
||||
{
|
||||
$temp = array_values(getLastStundeByDatum($result, $stunde->datum));
|
||||
$size = count($temp);
|
||||
if($size != 0)
|
||||
{
|
||||
$std_von->load($temp[0]->stunde);
|
||||
$std_bis->load($temp[$size-1]->stunde);
|
||||
echo "<li>".$datum->formatDatum($temp[0]->datum,"d.m.Y")." von ".mb_substr($std_von->beginn,0,5)." bis ".mb_substr($std_bis->ende,0,5)."</li>";
|
||||
}
|
||||
$i++;
|
||||
}
|
||||
elseif($last == "")
|
||||
{
|
||||
$temp = getLastStundeByDatum($result, $stunde->datum);
|
||||
var_dump($temp);
|
||||
}
|
||||
else
|
||||
{
|
||||
$bis = $stunde->stunde;
|
||||
}
|
||||
|
||||
if($i % 5 === 0)
|
||||
{
|
||||
// echo "</ul></td><td><ul>";
|
||||
// $i++;
|
||||
}
|
||||
$last = $stunde->datum;
|
||||
}
|
||||
echo "</ul></td></tr>";
|
||||
}
|
||||
echo "</table>";
|
||||
}
|
||||
elseif($last == "")
|
||||
{
|
||||
$temp = getLastStundeByDatum($result, $stunde->datum);
|
||||
var_dump($temp);
|
||||
}
|
||||
else
|
||||
{
|
||||
$bis = $stunde->stunde;
|
||||
}
|
||||
|
||||
if($i % 5 === 0)
|
||||
{
|
||||
// echo "</ul></td><td><ul>";
|
||||
// $i++;
|
||||
}
|
||||
$last = $stunde->datum;
|
||||
}
|
||||
echo "</ul></td></tr></table>";
|
||||
}
|
||||
|
||||
//Ein paar Zeilenumbrueche damit er beim Sprung zum Anker weit genug nach unten springt
|
||||
@@ -694,5 +743,4 @@ function getLastStundeByDatum(Array $array, $filterDatum)
|
||||
<td width="3%"> </td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
</body></html>
|
||||
|
||||
@@ -20,39 +20,29 @@
|
||||
* Rudolf Hangl < rudolf.hangl@technikum-wien.at >
|
||||
* Gerald Simane-Sequens < gerald.simane-sequens@technikum-wien.at >
|
||||
*/
|
||||
/* @date 27.10.2005
|
||||
@brief Zeigt die Daten aus der tbl_lvinfo an
|
||||
|
||||
@edit 08-11-2006 Versionierung wurde entfernt. Alle eintraege werden jetzt im WS2007
|
||||
abgespeichert
|
||||
03-02-2006 Anpassung an die neue Datenbank
|
||||
/*
|
||||
* Lehrveranstaltungsfeedback
|
||||
*/
|
||||
require_once('../../../config/cis.config.inc.php');
|
||||
require_once('../../../include/basis_db.class.php');
|
||||
require_once('../../../include/functions.inc.php');
|
||||
require_once('../../../include/studiensemester.class.php');
|
||||
require_once('../../../include/lehrveranstaltung.class.php');
|
||||
require_once('../../../include/feedback.class.php');
|
||||
require_once('../../../include/phrasen.class.php');
|
||||
|
||||
require_once('../../../config/cis.config.inc.php');
|
||||
// ------------------------------------------------------------------------------------------
|
||||
// Datenbankanbindung
|
||||
// ------------------------------------------------------------------------------------------
|
||||
require_once('../../../include/basis_db.class.php');
|
||||
if (!$db = new basis_db())
|
||||
die('Fehler beim Herstellen der Datenbankverbindung');
|
||||
|
||||
require_once('../../../include/functions.inc.php');
|
||||
require_once('../../../include/studiensemester.class.php');
|
||||
require_once('../../../include/lehrveranstaltung.class.php');
|
||||
require_once('../../../include/feedback.class.php');
|
||||
require_once('../../../include/phrasen.class.php');
|
||||
if (!$db = new basis_db())
|
||||
die('Fehler beim Herstellen der Datenbankverbindung');
|
||||
|
||||
$sprache = getSprache();
|
||||
$p = new phrasen($sprache);
|
||||
|
||||
$user = get_uid();
|
||||
if(check_lektor($user))
|
||||
$is_lector=true;
|
||||
if(!isset($_GET['lvid']) || !is_numeric($_GET['lvid']))
|
||||
die($p->t('global/fehlerBeiDerParameteruebergabe'));
|
||||
$sprache = getSprache();
|
||||
$p = new phrasen($sprache);
|
||||
|
||||
$user = get_uid();
|
||||
|
||||
if(!isset($_GET['lvid']) || !is_numeric($_GET['lvid']))
|
||||
die($p->t('global/fehlerBeiDerParameteruebergabe'));
|
||||
?>
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||
"http://www.w3.org/TR/html4/loose.dtd">
|
||||
<!DOCTYPE HTML>
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
@@ -68,14 +58,13 @@
|
||||
$feedback_message=$_POST['feedback_message'];
|
||||
if(isset($_POST['feedback_subject']))
|
||||
$feedback_subject=$_POST['feedback_subject'];
|
||||
|
||||
echo '<form accept-charset="UTF-8" method="POST" action="feedback.php?lvid='.$db->convert_html_chars($lvid).'" enctype="multipart/form-data">';
|
||||
?>
|
||||
|
||||
<table class="tabcontent">
|
||||
<tr>
|
||||
<td width="3%"> </td>
|
||||
<?php
|
||||
echo '<form accept-charset="UTF-8" method="POST" action="feedback.php?lvid='.$lvid.'" enctype="multipart/form-data">';
|
||||
?>
|
||||
<td width="97%">
|
||||
<table class="tabcontent">
|
||||
<tr>
|
||||
@@ -86,13 +75,23 @@
|
||||
else
|
||||
die($lv_obj->errormsg);
|
||||
?>
|
||||
<td class='ContentHeader'><font class='ContentHeader'> <?php echo $short_name; ?> - Feedback
|
||||
<td class='ContentHeader'><font class='ContentHeader'> <?php echo $db->convert_html_chars($short_name); ?> - Feedback
|
||||
an:
|
||||
<?php
|
||||
$qry = "SELECT studiensemester_kurzbz FROM lehre.tbl_lehreinheit JOIN public.tbl_studiensemester USING(studiensemester_kurzbz) WHERE lehrveranstaltung_id='$lvid' ORDER BY ende DESC LIMIT 1";
|
||||
$qry = "SELECT
|
||||
studiensemester_kurzbz
|
||||
FROM lehre.tbl_lehreinheit
|
||||
JOIN public.tbl_studiensemester USING(studiensemester_kurzbz)
|
||||
WHERE lehrveranstaltung_id=".$db->db_add_param($lvid, FHC_INTEGER)." ORDER BY ende DESC LIMIT 1";
|
||||
|
||||
$result = $db->db_query($qry);
|
||||
$row = $db->db_fetch_object($result);
|
||||
$qry = "SELECT distinct vorname, nachname, uid FROM campus.vw_mitarbeiter, lehre.tbl_lehreinheit, lehre.tbl_lehreinheitmitarbeiter WHERE uid=mitarbeiter_uid AND tbl_lehreinheit.lehreinheit_id=tbl_lehreinheitmitarbeiter.lehreinheit_id AND lehrveranstaltung_id='$lvid' AND studiensemester_kurzbz='$row->studiensemester_kurzbz'";
|
||||
$qry = "SELECT distinct vorname, nachname, uid
|
||||
FROM campus.vw_mitarbeiter, lehre.tbl_lehreinheit, lehre.tbl_lehreinheitmitarbeiter
|
||||
WHERE uid=mitarbeiter_uid AND tbl_lehreinheit.lehreinheit_id=tbl_lehreinheitmitarbeiter.lehreinheit_id
|
||||
AND lehrveranstaltung_id=".$db->db_add_param($lvid)."
|
||||
AND studiensemester_kurzbz=".$db->db_add_param($row->studiensemester_kurzbz);
|
||||
|
||||
if(!$result=$db->db_query($qry))
|
||||
die('Fehler beim Auslesen der Lektoren');
|
||||
$rows = $db->db_num_rows($result);
|
||||
@@ -113,25 +112,9 @@
|
||||
<br>
|
||||
<p><b><?php echo $p->t('global/betreff');?>: </b>
|
||||
<?php
|
||||
if(isset($edit_id) && $edit_id != "" && !isset($edit_break))
|
||||
{
|
||||
$fb_obj = new feedback();
|
||||
if($fb_obj->load($edit_id))
|
||||
{
|
||||
echo '<input type="text" name="feedback_subject" value="'.$fb_obj->betreff.'" size="54"><br>';
|
||||
echo '<textarea rows="7" name="feedback_message" cols="47">'.$fb_obj->text.'</textarea><br>';
|
||||
echo '<input type="submit" value="'.$p->t('global/aendern').'" name="edit_feedback"> ';
|
||||
echo '<input type="submit" value="'.$p->t('global/abbrechen').'" name="edit_break">';
|
||||
}
|
||||
else
|
||||
echo $fb_obj->errormsg.'<br>';
|
||||
}
|
||||
else
|
||||
{
|
||||
echo '<input type="text" name="feedback_subject" size="54"><br>';
|
||||
echo '<textarea rows="7" name="feedback_message" cols="47"></textarea><br>';
|
||||
echo '<input type="submit" value="'.$p->t('global/abschicken').'" name="send_feedback">';
|
||||
}
|
||||
echo '<input type="text" name="feedback_subject" size="54"><br>';
|
||||
echo '<textarea rows="7" name="feedback_message" cols="47"></textarea><br>';
|
||||
echo '<input type="submit" value="'.$p->t('global/abschicken').'" name="send_feedback">';
|
||||
?>
|
||||
|
||||
<input type="reset" value="<?php echo $p->t('global/zuruecksetzen');?>" name="reset_message">
|
||||
@@ -139,38 +122,18 @@
|
||||
<?php
|
||||
if(isset($feedback_message) && $feedback_message != "")
|
||||
{
|
||||
if(isset($edit_feedback))
|
||||
{
|
||||
$fb_obj = new feedback();
|
||||
$fb_obj->betreff = $feedback_subject;
|
||||
$fb_obj->text = $feedback_message;
|
||||
$fb_obj->feedback_id = $edit_id;
|
||||
$fb_obj->datum = date('Y-m-d');
|
||||
$fb_obj->uid = $user;
|
||||
$fb_obj->lehrveranstaltung_id = $lvid;
|
||||
$fb_obj->new = false;
|
||||
$fb_obj = new feedback();
|
||||
$fb_obj->betreff = $feedback_subject;
|
||||
$fb_obj->text = $feedback_message;
|
||||
$fb_obj->datum = date('Y-m-d');
|
||||
$fb_obj->uid = $user;
|
||||
$fb_obj->lehrveranstaltung_id = $lvid;
|
||||
$fb_obj->new = true;
|
||||
|
||||
if($fb_obj->save())
|
||||
echo "<script language=\"JavaScript\">document.location = document.location + \"&message_sent=true\"</script>";
|
||||
else
|
||||
echo $fb_obj->errormsg."<br>";
|
||||
}
|
||||
|
||||
if(!isset($edit_id) && !isset($edit_break) && !isset($edit_feedback))
|
||||
{
|
||||
$fb_obj = new feedback();
|
||||
$fb_obj->betreff = $feedback_subject;
|
||||
$fb_obj->text = $feedback_message;
|
||||
$fb_obj->datum = date('Y-m-d');
|
||||
$fb_obj->uid = $user;
|
||||
$fb_obj->lehrveranstaltung_id = $lvid;
|
||||
$fb_obj->new = true;
|
||||
|
||||
if($fb_obj->save())
|
||||
echo "<script language=\"JavaScript\">document.location = document.location + \"&message_sent=true\"</script>";
|
||||
else
|
||||
echo $fb_obj->errormsg." save<br>";
|
||||
}
|
||||
if($fb_obj->save())
|
||||
echo "<script language=\"JavaScript\">document.location = document.location + \"&message_sent=true\"</script>";
|
||||
else
|
||||
echo $fb_obj->errormsg." save<br>";
|
||||
}
|
||||
|
||||
if(isset($message_sent) && $message_sent == true)
|
||||
@@ -185,7 +148,7 @@
|
||||
|
||||
foreach($fb_obj->result as $row)
|
||||
{
|
||||
$sql_query = "SELECT vorname, nachname FROM campus.vw_benutzer WHERE uid='$row->uid'";
|
||||
$sql_query = "SELECT vorname, nachname FROM campus.vw_benutzer WHERE uid=".$db->db_add_param($row->uid);
|
||||
|
||||
if($result_person = $db->db_query($sql_query))
|
||||
{
|
||||
@@ -193,16 +156,12 @@
|
||||
{
|
||||
|
||||
echo '<tr>';
|
||||
echo ' <td class="ContentHeader" width="90%"><font class="ContentHeader"><strong> '.$row->betreff.'</font></td>';
|
||||
//echo ' <td class="ContentHeader" width="30%"><font class="ContentHeader"> </font></td>'; //'.$row_pers->vorname.' '.$row_pers->nachname.'
|
||||
echo ' <td class="ContentHeader" align="right"><font class="ContentHeader">'.$row->datum.'</font></td>';
|
||||
echo ' <td class="ContentHeader" width="90%"><font class="ContentHeader"><strong> '.$db->convert_html_chars($row->betreff).'</strong></font></td>';
|
||||
echo ' <td class="ContentHeader" align="right"><font class="ContentHeader">'.$db->convert_html_chars($row->datum).'</font></td>';
|
||||
|
||||
echo '</tr>';
|
||||
echo '<tr>';
|
||||
echo ' <td class="MarkLine" colspan=2>'.nl2br($row->text).'</td>';
|
||||
//echo ' <td class="MarkLine"> </td>';
|
||||
//echo ' <td class="MarkLine" colspan=2> </td>';
|
||||
//echo ' <td class="MarkLine"> </td>';
|
||||
echo ' <td class="MarkLine" colspan=2>'.nl2br($db->convert_html_chars($row->text)).'</td>';
|
||||
echo '</tr>';
|
||||
echo '<tr>';
|
||||
echo ' <td> </td>';
|
||||
@@ -216,9 +175,8 @@
|
||||
echo $p->t('global/fehleraufgetreten').' '.$fb_obj->errormsg;
|
||||
?>
|
||||
</td>
|
||||
</form>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
</form>
|
||||
</body>
|
||||
</html>
|
||||
</html>
|
||||
|
||||
+121
-57
@@ -32,6 +32,8 @@ require_once('../../../include/phrasen.class.php');
|
||||
require_once('../../../include/lehre_tools.class.php');
|
||||
require_once('../../../include/lvangebot.class.php');
|
||||
require_once('../../../include/benutzergruppe.class.php');
|
||||
require_once('../../../include/lehreinheit.class.php');
|
||||
require_once('../../../include/variable.class.php');
|
||||
|
||||
$sprache = getSprache();
|
||||
$p = new phrasen($sprache);
|
||||
@@ -44,18 +46,19 @@ if (!$user=get_uid())
|
||||
|
||||
// Init
|
||||
$user_is_allowed_to_upload=false;
|
||||
$lektor_der_lv=false;
|
||||
|
||||
// Plausib
|
||||
if(check_lektor($user))
|
||||
$is_lector=true;
|
||||
else
|
||||
$is_lector=false;
|
||||
|
||||
|
||||
if(isset($_GET['lvid']) && is_numeric($_GET['lvid']))
|
||||
$lvid = $_GET['lvid'];
|
||||
else
|
||||
die('Fehlerhafte Parameteruebergabe');
|
||||
|
||||
|
||||
$lv_obj = new lehrveranstaltung();
|
||||
$lv_obj->load($lvid);
|
||||
$lv=$lv_obj;
|
||||
@@ -92,11 +95,79 @@ if (isset($_GET["handbuch"])){
|
||||
readfile($filename);
|
||||
exit;
|
||||
}
|
||||
?><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
?><!DOCTYPE HTML>
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<link href="../../../skin/style.css.php" rel="stylesheet" type="text/css">
|
||||
<link href="../../../skin/jquery.css" rel="stylesheet" type="text/css"/>
|
||||
<script src="../../../include/js/jquery1.9.min.js" type="text/javascript" ></script>
|
||||
|
||||
<?php
|
||||
// Angezeigtes Studiensemester ermitteln
|
||||
// Wenn ein Studiensemester uebergeben wird, wird das uebergebene angezeigt
|
||||
$stsem = new studiensemester();
|
||||
if($studiensemester_kurzbz!='')
|
||||
$angezeigtes_stsem=$studiensemester_kurzbz;
|
||||
else
|
||||
{
|
||||
if($lv->studiengang_kz==0 || (defined('CIS_LEHRVERANSTALTUNG_AKTUELLES_STUDIENSEMESTER_ANZEIGEN') && CIS_LEHRVERANSTALTUNG_AKTUELLES_STUDIENSEMESTER_ANZEIGEN))
|
||||
$angezeigtes_stsem = $stsem->getNearest();
|
||||
else
|
||||
{
|
||||
// wenn im nahegelegensten/aktuellen Studiensemester eine Lehreinheit angelegt ist dann diese anzeigen
|
||||
$lehreinheit = new lehreinheit();
|
||||
if($lehreinheit->load_lehreinheiten($lvid, $stsem->getNearest()) && count($lehreinheit->lehreinheiten)>0)
|
||||
{
|
||||
$lehreinheit_found=false;
|
||||
foreach($lehreinheit->lehreinheiten as $row_lehreinheit)
|
||||
{
|
||||
if($row_lehreinheit->lehre)
|
||||
{
|
||||
$angezeigtes_stsem = $stsem->getNearest();
|
||||
$lehreinheit_found=true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if($lehreinheit_found==false)
|
||||
{
|
||||
$angezeigtes_stsem = $stsem->getNearest($semester);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
// fuer ungerade semester das naeheste WS fuer gerade semester das naeheste SS anzeigen
|
||||
$angezeigtes_stsem = $stsem->getNearest($semester);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// ADDONS laden
|
||||
$addon_obj = new addon();
|
||||
$addon_obj->loadAddons();
|
||||
foreach($addon_obj->result as $addon)
|
||||
{
|
||||
if(file_exists('../../../addons/'.$addon->kurzbz.'/cis/init.js.php'))
|
||||
echo '<script type="application/x-javascript" src="../../../addons/'.$addon->kurzbz.'/cis/init.js.php" ></script>';
|
||||
}
|
||||
|
||||
// Wenn Seite fertig geladen ist Addons aufrufen
|
||||
echo '
|
||||
<script>
|
||||
$( document ).ready(function()
|
||||
{
|
||||
if(typeof addon !== \'undefined\')
|
||||
{
|
||||
for(i in addon)
|
||||
{
|
||||
addon[i].init("cis/private/lehre/lesson.php", {uid:\''.$user.'\',lvid:\''.$lvid.'\',studiensemester_kurzbz:\''.$angezeigtes_stsem.'\'});
|
||||
}
|
||||
}
|
||||
});
|
||||
</script>
|
||||
';
|
||||
|
||||
?>
|
||||
<style type="text/css">
|
||||
.transparent {
|
||||
filter:alpha(opacity=90);
|
||||
@@ -104,7 +175,7 @@ if (isset($_GET["handbuch"])){
|
||||
-khtml-opacity: 0.9;
|
||||
opacity: 0.9;
|
||||
}
|
||||
</style>
|
||||
</style>
|
||||
|
||||
<script language="JavaScript">
|
||||
function showSemPlanHelp(){
|
||||
@@ -114,7 +185,7 @@ if (isset($_GET["handbuch"])){
|
||||
document.getElementById("semplanhelp").style.visibility = "hidden";
|
||||
}
|
||||
|
||||
</script>
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
<div id="semplanhelp" style="position:absolute; top:200px; left:200px; width:500px; height:250px; background-color:#cccccc; visibility:hidden; border-style:solid; border-width:1px; border-color:#333333;" class="transparent">
|
||||
@@ -139,17 +210,7 @@ if (isset($_GET["handbuch"])){
|
||||
<tr>
|
||||
<td class="tdwidth10"> </td>
|
||||
<td style="vertical-align:top; height: 10px"><h1 style="white-space:normal;">
|
||||
<?php
|
||||
$stsem = new studiensemester();
|
||||
if($studiensemester_kurzbz!='')
|
||||
$angezeigtes_stsem=$studiensemester_kurzbz;
|
||||
else
|
||||
{
|
||||
if($lv->studiengang_kz==0 || (defined('CIS_LEHRVERANSTALTUNG_AKTUELLES_STUDIENSEMESTER_ANZEIGEN') && CIS_LEHRVERANSTALTUNG_AKTUELLES_STUDIENSEMESTER_ANZEIGEN))
|
||||
$angezeigtes_stsem = $stsem->getNearest();
|
||||
else
|
||||
$angezeigtes_stsem = $stsem->getNearest($semester);
|
||||
}
|
||||
<?php
|
||||
$lehrfach_id='';
|
||||
if(defined('CIS_LEHRVERANSTALTUNG_LEHRFACH_ANZEIGEN') && CIS_LEHRVERANSTALTUNG_LEHRFACH_ANZEIGEN)
|
||||
{
|
||||
@@ -157,9 +218,9 @@ if (isset($_GET["handbuch"])){
|
||||
// wird zusätzlich das Lehrfach der Lehreinheit angezeigt.
|
||||
if($is_lector)
|
||||
{
|
||||
$qry = "SELECT
|
||||
distinct lehrfach_id
|
||||
FROM
|
||||
$qry = "SELECT
|
||||
distinct lehrfach_id
|
||||
FROM
|
||||
lehre.tbl_lehreinheit
|
||||
JOIN lehre.tbl_lehreinheitmitarbeiter USING(lehreinheit_id)
|
||||
WHERE
|
||||
@@ -170,14 +231,14 @@ if (isset($_GET["handbuch"])){
|
||||
else
|
||||
{
|
||||
$qry = "SELECT distinct lehrfach_id
|
||||
FROM
|
||||
FROM
|
||||
campus.vw_student_lehrveranstaltung
|
||||
WHERE
|
||||
lehrveranstaltung_id=".$db->db_add_param($lvid, FHC_INTEGER)."
|
||||
WHERE
|
||||
lehrveranstaltung_id=".$db->db_add_param($lvid, FHC_INTEGER)."
|
||||
AND studiensemester_kurzbz=".$db->db_add_param($angezeigtes_stsem)."
|
||||
AND uid=".$db->db_add_param($user);
|
||||
}
|
||||
|
||||
|
||||
if($result = $db->db_query($qry))
|
||||
{
|
||||
// Wenn die LV mehrere verschiedenen Lehrfaecher hat, und der User zu mehreren davon zugeteilt ist
|
||||
@@ -192,7 +253,7 @@ if (isset($_GET["handbuch"])){
|
||||
if($lehrfach->bezeichnung_arr[$sprache]==$lv_obj->bezeichnung_arr[$sprache])
|
||||
echo $lv_obj->bezeichnung_arr[$sprache];
|
||||
else
|
||||
echo $lehrfach->bezeichnung_arr[$sprache].' - '.$lv_obj->bezeichnung_arr[$sprache];
|
||||
echo $lehrfach->bezeichnung_arr[$sprache].' - '.$lv_obj->bezeichnung_arr[$sprache];
|
||||
}
|
||||
}
|
||||
else
|
||||
@@ -201,14 +262,14 @@ if (isset($_GET["handbuch"])){
|
||||
}
|
||||
else
|
||||
echo $lv_obj->bezeichnung_arr[$sprache];
|
||||
|
||||
|
||||
echo ' '.$lv_obj->lehrform_kurzbz;
|
||||
|
||||
if(!defined('CIS_LEHRVERANSTALTUNG_SEMESTERINFO_ANZEIGEN') || CIS_LEHRVERANSTALTUNG_SEMESTERINFO_ANZEIGEN)
|
||||
echo ' / '.$kurzbz.'-'.$semester.' '.$lv_obj->orgform_kurzbz;
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
echo " ($angezeigtes_stsem)";
|
||||
echo '</h1></td>
|
||||
</tr>
|
||||
@@ -216,19 +277,19 @@ if (isset($_GET["handbuch"])){
|
||||
<td> </td>
|
||||
<td style="vertical-align:top; height: 10px">';
|
||||
|
||||
$qry = "SELECT * FROM (SELECT distinct on(uid) vorname, nachname, tbl_benutzer.uid as uid,
|
||||
CASE WHEN lehrfunktion_kurzbz='LV-Leitung' THEN true ELSE false END as lvleiter
|
||||
FROM lehre.tbl_lehreinheit, lehre.tbl_lehreinheitmitarbeiter, public.tbl_benutzer, public.tbl_person
|
||||
WHERE
|
||||
tbl_lehreinheit.lehreinheit_id=tbl_lehreinheitmitarbeiter.lehreinheit_id AND
|
||||
tbl_lehreinheitmitarbeiter.mitarbeiter_uid=tbl_benutzer.uid AND
|
||||
tbl_person.person_id=tbl_benutzer.person_id AND
|
||||
lehrveranstaltung_id=".$db->db_add_param($lvid, FHC_INTEGER)." AND
|
||||
tbl_lehreinheitmitarbeiter.mitarbeiter_uid NOT like '_Dummy%' AND
|
||||
tbl_benutzer.aktiv=true AND tbl_person.aktiv=true AND
|
||||
$qry = "SELECT * FROM (SELECT distinct on(uid) vorname, nachname, tbl_benutzer.uid as uid,
|
||||
CASE WHEN lehrfunktion_kurzbz='LV-Leitung' THEN true ELSE false END as lvleiter
|
||||
FROM lehre.tbl_lehreinheit, lehre.tbl_lehreinheitmitarbeiter, public.tbl_benutzer, public.tbl_person
|
||||
WHERE
|
||||
tbl_lehreinheit.lehreinheit_id=tbl_lehreinheitmitarbeiter.lehreinheit_id AND
|
||||
tbl_lehreinheitmitarbeiter.mitarbeiter_uid=tbl_benutzer.uid AND
|
||||
tbl_person.person_id=tbl_benutzer.person_id AND
|
||||
lehrveranstaltung_id=".$db->db_add_param($lvid, FHC_INTEGER)." AND
|
||||
tbl_lehreinheitmitarbeiter.mitarbeiter_uid NOT like '_Dummy%' AND
|
||||
tbl_benutzer.aktiv=true AND tbl_person.aktiv=true AND
|
||||
studiensemester_kurzbz=".$db->db_add_param($angezeigtes_stsem);
|
||||
|
||||
// Wenn das Lehrfach angezeigt werden nur die Lektoren angezeigt die dieser
|
||||
// Wenn das Lehrfach angezeigt werden nur die Lektoren angezeigt die dieser
|
||||
// Lehreinheit / Lehrfach zugeordnet sind
|
||||
if($lehrfach_id!='')
|
||||
$qry.=" AND tbl_lehreinheit.lehrfach_id=".$db->db_add_param($lehrfach_id);
|
||||
@@ -254,11 +315,14 @@ if (isset($_GET["handbuch"])){
|
||||
{
|
||||
$i++;
|
||||
if($user==$row_lector->uid)
|
||||
{
|
||||
$lektor_der_lv=true;
|
||||
$user_is_allowed_to_upload=true;
|
||||
}
|
||||
|
||||
if($row_lector->lvleiter=='t')
|
||||
$style='style="font-weight: bold"';
|
||||
else
|
||||
else
|
||||
$style='';
|
||||
echo '<a href="mailto:'.$row_lector->uid.'@'.DOMAIN.'" '.$style.'>'.$row_lector->vorname.' '.$row_lector->nachname.'</a>';
|
||||
if($i!=$num_rows_result)
|
||||
@@ -267,27 +331,27 @@ if (isset($_GET["handbuch"])){
|
||||
}
|
||||
}
|
||||
|
||||
//Berechtigungen auf Fachbereichsebene
|
||||
$qry = "SELECT
|
||||
distinct fachbereich_kurzbz, tbl_lehrveranstaltung.studiengang_kz, tbl_fachbereich.oe_kurzbz
|
||||
FROM
|
||||
lehre.tbl_lehrveranstaltung
|
||||
JOIN lehre.tbl_lehreinheit USING(lehrveranstaltung_id)
|
||||
//Berechtigungen auf Fachbereichsebene
|
||||
$qry = "SELECT
|
||||
distinct lehrfach.oe_kurzbz
|
||||
FROM
|
||||
lehre.tbl_lehrveranstaltung
|
||||
JOIN lehre.tbl_lehreinheit USING(lehrveranstaltung_id)
|
||||
JOIN lehre.tbl_lehrveranstaltung as lehrfach ON(tbl_lehreinheit.lehrfach_id=lehrfach.lehrveranstaltung_id)
|
||||
JOIN public.tbl_fachbereich ON(tbl_fachbereich.oe_kurzbz=lehrfach.oe_kurzbz)
|
||||
WHERE tbl_lehrveranstaltung.lehrveranstaltung_id=".$db->db_add_param($lvid, FHC_INTEGER);
|
||||
|
||||
if(isset($angezeigtes_stsem) && $angezeigtes_stsem!='')
|
||||
$qry .= " AND studiensemester_kurzbz=".$db->db_add_param($angezeigtes_stsem);
|
||||
|
||||
if($result = $db->db_query($qry))
|
||||
{
|
||||
while($row = $db->db_fetch_object($result))
|
||||
{
|
||||
if($rechte->isBerechtigt('lehre',$row->oe_kurzbz) || $rechte->isBerechtigt('assistenz',$stg_obj->oe_kurzbz))
|
||||
$user_is_allowed_to_upload=true;
|
||||
}
|
||||
}
|
||||
if(isset($angezeigtes_stsem) && $angezeigtes_stsem!='')
|
||||
$qry .= " AND studiensemester_kurzbz=".$db->db_add_param($angezeigtes_stsem);
|
||||
$lehrfach_oe_kurzbz_arr = array();
|
||||
if($result = $db->db_query($qry))
|
||||
{
|
||||
while($row = $db->db_fetch_object($result))
|
||||
{
|
||||
$lehrfach_oe_kurzbz_arr[]=$row->oe_kurzbz;
|
||||
if($rechte->isBerechtigt('lehre',$row->oe_kurzbz) || $rechte->isBerechtigt('assistenz',$stg_obj->oe_kurzbz))
|
||||
$user_is_allowed_to_upload=true;
|
||||
}
|
||||
}
|
||||
?></td>
|
||||
</tr>
|
||||
<tr>
|
||||
|
||||
@@ -25,6 +25,7 @@
|
||||
* das betreffende Studiensemester kann ausgewaehlt werden
|
||||
*/
|
||||
require_once('../../../config/cis.config.inc.php');
|
||||
require_once('../../../config/global.config.inc.php');
|
||||
require_once('../../../include/functions.inc.php');
|
||||
require_once('../../../include/studiensemester.class.php');
|
||||
require_once('../../../include/datum.class.php');
|
||||
@@ -32,6 +33,8 @@ require_once('../../../include/note.class.php');
|
||||
require_once('../../../include/phrasen.class.php');
|
||||
require_once('../../../include/studiengang.class.php');
|
||||
require_once('../../../include/lehrveranstaltung.class.php');
|
||||
require_once('../../../include/pruefung.class.php');
|
||||
require_once('../../../include/benutzerberechtigung.class.php');
|
||||
|
||||
$sprache = getSprache();
|
||||
$p = new phrasen($sprache);
|
||||
@@ -44,6 +47,8 @@ echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<link href="../../../skin/style.css.php" rel="stylesheet" type="text/css">
|
||||
<script type="text/javascript" src="../../../include/js/jquery.js"></script>
|
||||
<link rel="stylesheet" href="../../../skin/tablesort.css" type="text/css"/>
|
||||
<title>'.$p->t('tools/leistungsbeurteilung').'</title>
|
||||
|
||||
<script language="JavaScript" type="text/javascript">
|
||||
@@ -56,6 +61,15 @@ echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www
|
||||
selObj.selectedIndex = 0;
|
||||
}
|
||||
}
|
||||
|
||||
$(document).ready(function()
|
||||
{
|
||||
$("#notenliste").tablesorter(
|
||||
{
|
||||
sortList: [[3,1]],
|
||||
widgets: ["zebra"]
|
||||
});
|
||||
});
|
||||
</script>
|
||||
</head>
|
||||
|
||||
@@ -69,6 +83,23 @@ else
|
||||
$stsem = '';
|
||||
|
||||
$user = get_uid();
|
||||
|
||||
if(isset($_GET['uid']))
|
||||
{
|
||||
// Administratoren duerfen die UID als Parameter uebergeben um die Notenliste
|
||||
// von anderen Personen anzuzeigen
|
||||
|
||||
$rechte = new benutzerberechtigung();
|
||||
$rechte->getBerechtigungen($user);
|
||||
if($rechte->isBerechtigt('admin'))
|
||||
{
|
||||
$user = $_GET['uid'];
|
||||
$getParam = "&uid=" . $user;
|
||||
}
|
||||
else
|
||||
$getParam = "";
|
||||
}
|
||||
|
||||
$datum_obj = new datum();
|
||||
|
||||
$error = '';
|
||||
@@ -96,6 +127,12 @@ else
|
||||
$stg_obj->load($row->studiengang_kz);
|
||||
$stg_name = $stg_obj->bezeichnung_arr[$sprache];
|
||||
}
|
||||
|
||||
$notenarr=array();
|
||||
$note = new note();
|
||||
$note->getAll();
|
||||
foreach($note->result as $row)
|
||||
$notenarr[$row->note]=$row->bezeichnung;
|
||||
|
||||
//Aktuelles Studiensemester ermitteln
|
||||
|
||||
@@ -110,12 +147,13 @@ else
|
||||
echo "<b>".$p->t('global/name').":</b> $vorname $nachname<br />";
|
||||
echo "<b>".$p->t('global/studiengang').":</b> $stg_name<br />";
|
||||
echo "<b>".$p->t('global/studiensemester')."</b> <SELECT name='stsem' onChange=\"MM_jumpMenu('self',this,0)\">";
|
||||
echo "<OPTION value='notenliste.php?stsem=alle".$getParam."'>alle Semester</OPTION>";
|
||||
foreach ($stsem_obj->studiensemester as $semrow)
|
||||
{
|
||||
if($stsem == $semrow->studiensemester_kurzbz)
|
||||
echo "<OPTION value='notenliste.php?stsem=$semrow->studiensemester_kurzbz' selected>$semrow->studiensemester_kurzbz</OPTION>";
|
||||
echo "<OPTION value='notenliste.php?stsem=".$semrow->studiensemester_kurzbz.$getParam."' selected>$semrow->studiensemester_kurzbz</OPTION>";
|
||||
else
|
||||
echo "<OPTION value='notenliste.php?stsem=$semrow->studiensemester_kurzbz'>$semrow->studiensemester_kurzbz</OPTION>";
|
||||
echo "<OPTION value='notenliste.php?stsem=".$semrow->studiensemester_kurzbz.$getParam."'>$semrow->studiensemester_kurzbz</OPTION>";
|
||||
}
|
||||
echo "</SELECT><br />";
|
||||
|
||||
@@ -123,24 +161,51 @@ else
|
||||
echo "<br />";
|
||||
|
||||
//Lehrveranstaltungen und Noten holen
|
||||
$qry = "SELECT
|
||||
tbl_lehrveranstaltung.lehrveranstaltung_id, tbl_zeugnisnote.note, tbl_lvgesamtnote.note as lvnote, tbl_zeugnisnote.benotungsdatum, tbl_lvgesamtnote.freigabedatum, tbl_lvgesamtnote.benotungsdatum as lvbenotungsdatum
|
||||
if($stsem != "alle")
|
||||
{
|
||||
$sqlFilter = " AND tbl_zeugnisnote.studiensemester_kurzbz = ".$db->db_add_param($stsem)."
|
||||
AND (tbl_lvgesamtnote.studiensemester_kurzbz = ".$db->db_add_param($stsem)." OR tbl_lvgesamtnote.studiensemester_kurzbz is null) ";
|
||||
}
|
||||
else
|
||||
$sqlFilter = "";
|
||||
|
||||
$qry = "SELECT
|
||||
tbl_lehrveranstaltung.lehrveranstaltung_id, tbl_zeugnisnote.note, tbl_zeugnisnote.punkte,
|
||||
tbl_lvgesamtnote.note as lvnote, tbl_lvgesamtnote.punkte as lvpunkte,
|
||||
tbl_zeugnisnote.benotungsdatum, tbl_lvgesamtnote.freigabedatum,
|
||||
tbl_lvgesamtnote.benotungsdatum as lvbenotungsdatum
|
||||
FROM
|
||||
lehre.tbl_lehrveranstaltung, lehre.tbl_zeugnisnote
|
||||
LEFT OUTER JOIN
|
||||
campus.tbl_lvgesamtnote
|
||||
USING (lehrveranstaltung_id, student_uid, studiensemester_kurzbz)
|
||||
WHERE
|
||||
tbl_zeugnisnote.student_uid = ".$db->db_add_param($user)."
|
||||
AND tbl_zeugnisnote.studiensemester_kurzbz = ".$db->db_add_param($stsem)."
|
||||
AND (tbl_lvgesamtnote.studiensemester_kurzbz = ".$db->db_add_param($stsem)." OR tbl_lvgesamtnote.studiensemester_kurzbz is null)
|
||||
tbl_zeugnisnote.student_uid = ".$db->db_add_param($user)
|
||||
.$sqlFilter."
|
||||
AND tbl_lehrveranstaltung.lehrveranstaltung_id = tbl_zeugnisnote.lehrveranstaltung_id
|
||||
ORDER BY bezeichnung";
|
||||
|
||||
if($result=$db->db_query($qry))
|
||||
{
|
||||
//Tabelle anzeigen
|
||||
$tbl= "<table><tr class='liste'><th>".$p->t('global/lehrveranstaltung')."</th><th>".$p->t('benotungstool/lvNote')."</th><th>".$p->t('benotungstool/zeugnisnote')."</th><th>".$p->t('tools/benotungsdatumDerZeugnisnote')."</th></tr>";
|
||||
$tbl= "<table class='tablesorter' id='notenliste' style='width: auto;'>
|
||||
<thead>
|
||||
<tr class='liste'>
|
||||
<th>".$p->t('global/lehrveranstaltung')."</th>
|
||||
<th>".$p->t('benotungstool/lvNote')."</th>";
|
||||
if(defined('CIS_GESAMTNOTE_PUNKTE') && CIS_GESAMTNOTE_PUNKTE)
|
||||
$tbl.="<th>".$p->t('benotungstool/punkte')."</th>";
|
||||
|
||||
$tbl.=" <th>".$p->t('benotungstool/zeugnisnote')."</th>";
|
||||
if(defined('CIS_GESAMTNOTE_PUNKTE') && CIS_GESAMTNOTE_PUNKTE)
|
||||
$tbl.="<th>".$p->t('benotungstool/punkte')."</th>";
|
||||
|
||||
$tbl.="
|
||||
<th>".$p->t('tools/benotungsdatumDerZeugnisnote')."</th>
|
||||
<th>".$p->t('benotungstool/pruefung')."</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>";
|
||||
$i=0;
|
||||
while($row=$db->db_fetch_object($result))
|
||||
{
|
||||
@@ -148,39 +213,79 @@ else
|
||||
$lv_obj->load($row->lehrveranstaltung_id);
|
||||
|
||||
$i++;
|
||||
$tbl.= "<tr class='liste".($i%2)."'><td>".$lv_obj->bezeichnung_arr[$sprache].' '.$lv_obj->lehrform_kurzbz."</td>";
|
||||
$tbl.= "<tr class='liste".($i%2)."'><td>".$lv_obj->bezeichnung_arr[$sprache]." (".$lv_obj->lehrform_kurzbz.")</td>";
|
||||
$tbl.= "<td>";
|
||||
|
||||
//Nur freigegebene Noten anzeigen
|
||||
if($row->freigabedatum>=$row->lvbenotungsdatum)
|
||||
{
|
||||
$note = new note();
|
||||
if($note->load($row->lvnote))
|
||||
$tbl.=$note->bezeichnung;
|
||||
if(isset($notenarr[$row->lvnote]))
|
||||
$tbl.=$notenarr[$row->lvnote];
|
||||
else
|
||||
$tbl.=$row->lvnote;
|
||||
}
|
||||
|
||||
$tbl.= "</td>";
|
||||
|
||||
// LV Gesamtnote Punkte
|
||||
if(defined('CIS_GESAMTNOTE_PUNKTE') && CIS_GESAMTNOTE_PUNKTE)
|
||||
{
|
||||
$lvpunkte = ($row->lvpunkte!=''?(float)$row->lvpunkte:'');
|
||||
$tbl.="<td>".$lvpunkte."</td>";
|
||||
}
|
||||
|
||||
if ($row->note != $row->lvnote && $row->lvnote != NULL)
|
||||
$markier = " style='border: 1px solid red;'";
|
||||
else
|
||||
$markier = "";
|
||||
$tbl .= "<td".$markier.">";
|
||||
|
||||
$note = new note();
|
||||
if($note->load($row->note))
|
||||
$tbl.=$note->bezeichnung;
|
||||
if(isset($notenarr[$row->note]))
|
||||
$tbl.=$notenarr[$row->note];
|
||||
else
|
||||
$tbl.=$row->note;
|
||||
|
||||
|
||||
$tbl .= "</td>";
|
||||
|
||||
if(defined('CIS_GESAMTNOTE_PUNKTE') && CIS_GESAMTNOTE_PUNKTE)
|
||||
{
|
||||
$punkte = ($row->punkte!=''?((float)$row->punkte):'');
|
||||
$tbl.="<td>".$punkte."</td>";
|
||||
}
|
||||
|
||||
$tbl .= '<td>'.$datum_obj->formatDatum($row->benotungsdatum,'d.m.Y').'</td>';
|
||||
|
||||
$pruefung = new pruefung();
|
||||
$pruefung->getPruefungen($user, null,$row->lehrveranstaltung_id,$stsem);
|
||||
|
||||
if(count($pruefung->result)>0)
|
||||
{
|
||||
$tbl.='<td>';
|
||||
foreach($pruefung->result as $row)
|
||||
{
|
||||
if(isset($notenarr[$row->note]))
|
||||
$note=$notenarr[$row->note];
|
||||
else
|
||||
$note=$row->note;
|
||||
|
||||
if($row->punkte!='')
|
||||
$punkte = ' ('.(float)$row->punkte.')';
|
||||
else
|
||||
$punkte='';
|
||||
|
||||
$tbl.= $row->pruefungstyp_beschreibung.' '.$datum_obj->formatDatum($row->datum,'d.m.Y').' '.$note.$punkte.'<br>';
|
||||
|
||||
}
|
||||
$tbl.='</td>';
|
||||
}
|
||||
else
|
||||
$tbl.='<td></td>';
|
||||
|
||||
$tbl .= "</tr>";
|
||||
}
|
||||
|
||||
|
||||
$tbl.= "</table>";
|
||||
$tbl.= "</tbody></table>";
|
||||
if($i==0)
|
||||
echo $p->t('tools/nochKeineBeurteilungEingetragen');
|
||||
else
|
||||
|
||||
@@ -20,92 +20,86 @@
|
||||
* Rudolf Hangl < rudolf.hangl@technikum-wien.at >
|
||||
* Gerald Simane-Sequens < gerald.simane-sequens@technikum-wien.at >
|
||||
*/
|
||||
|
||||
|
||||
|
||||
/*
|
||||
* Erstellt Notenliste im Excel Format
|
||||
*/
|
||||
require_once('../../../config/cis.config.inc.php');
|
||||
require_once('../../../config/global.config.inc.php');
|
||||
require_once('../../../include/basis_db.class.php');
|
||||
require_once('../../../include/functions.inc.php');
|
||||
require_once('../../../include/lehrveranstaltung.class.php');
|
||||
require_once('../../../include/studiengang.class.php');
|
||||
require_once('../../../include/studiensemester.class.php');
|
||||
require_once('../../../include/note.class.php');
|
||||
require_once('../../../include/notenschluessel.class.php');
|
||||
require_once('../../../include/Excel/excel.php');
|
||||
require_once('../../../include/phrasen.class.php');
|
||||
|
||||
require_once('../../../config/cis.config.inc.php');
|
||||
// ------------------------------------------------------------------------------------------
|
||||
// Datenbankanbindung
|
||||
// ------------------------------------------------------------------------------------------
|
||||
require_once('../../../include/basis_db.class.php');
|
||||
if (!$db = new basis_db())
|
||||
die('Fehler beim Herstellen der Datenbankverbindung');
|
||||
|
||||
require_once('../../../include/lehrveranstaltung.class.php');
|
||||
require_once('../../../include/studiengang.class.php');
|
||||
require_once('../../../include/studiensemester.class.php');
|
||||
require_once('../../../include/Excel/excel.php');
|
||||
$uid = get_uid();
|
||||
|
||||
$sprache = getSprache();
|
||||
$p = new phrasen($sprache);
|
||||
|
||||
if(!check_lektor($uid))
|
||||
die('Sie haben keine Berechtigung fuer diese Seite');
|
||||
|
||||
if (!$db = new basis_db())
|
||||
die('Fehler beim Herstellen der Datenbankverbindung');
|
||||
|
||||
# require_once('../../../include/Excel/PEAR.php');
|
||||
# require_once('../../../include/Excel/BIFFwriter.php');
|
||||
# require_once('../../../include/Excel/Workbook.php');
|
||||
# require_once('../../../include/Excel/Format.php');
|
||||
# require_once('../../../include/Excel/Worksheet.php');
|
||||
# require_once('../../../include/Excel/Parser.php');
|
||||
# require_once('../../../include/Excel/OLE.php');
|
||||
# require_once('../../../include/Excel/PPS.php');
|
||||
# require_once('../../../include/Excel/Root.php');
|
||||
# require_once('../../../include/Excel/File.php');
|
||||
# require_once('../../../include/Excel/Writer.php');
|
||||
|
||||
if(isset($_GET['lvid']) && is_numeric($_GET['lvid']))
|
||||
$lvid=$_GET['lvid'];
|
||||
else
|
||||
die("Fehlerhafte Parameteruebergabe");
|
||||
if(isset($_GET['lvid']) && is_numeric($_GET['lvid']))
|
||||
$lvid=$_GET['lvid'];
|
||||
else
|
||||
die("Fehlerhafte Parameteruebergabe");
|
||||
|
||||
if(isset($_GET['stg']) && is_numeric($_GET['stg']))
|
||||
$stg=$_GET['stg'];
|
||||
else
|
||||
die("Fehlerhafte Parameteruebergabe");
|
||||
if(isset($_GET['stg']) && is_numeric($_GET['stg']))
|
||||
$stg=$_GET['stg'];
|
||||
else
|
||||
die("Fehlerhafte Parameteruebergabe");
|
||||
|
||||
if(isset($_GET['gruppe_kurzbz']))
|
||||
$gruppe_kurzbz = $_GET['gruppe_kurzbz'];
|
||||
else
|
||||
$gruppe_kurzbz = '';
|
||||
if(isset($_GET['gruppe_kurzbz']))
|
||||
$gruppe_kurzbz = $_GET['gruppe_kurzbz'];
|
||||
else
|
||||
$gruppe_kurzbz = '';
|
||||
|
||||
if(isset($_GET['sem']) && is_numeric($_GET['sem']))
|
||||
$sem = $_GET['sem'];
|
||||
else
|
||||
$sem = '';
|
||||
if(isset($_GET['sem']) && is_numeric($_GET['sem']))
|
||||
$sem = $_GET['sem'];
|
||||
else
|
||||
$sem = '';
|
||||
|
||||
if(isset($_GET['verband']))
|
||||
$verband = $_GET['verband'];
|
||||
else
|
||||
$verband = '';
|
||||
if(isset($_GET['verband']))
|
||||
$verband = $_GET['verband'];
|
||||
else
|
||||
$verband = '';
|
||||
|
||||
if(isset($_GET['gruppe']) && is_numeric($_GET['gruppe']))
|
||||
$gruppe = $_GET['gruppe'];
|
||||
else
|
||||
$gruppe = '';
|
||||
if(isset($_GET['gruppe']) && is_numeric($_GET['gruppe']))
|
||||
$gruppe = $_GET['gruppe'];
|
||||
else
|
||||
$gruppe = '';
|
||||
|
||||
if(isset($_GET['stsem']))
|
||||
$stsem = $_GET['stsem'];
|
||||
else
|
||||
die('Studiensemester muss uebergeben werden');
|
||||
if(isset($_GET['stsem']))
|
||||
$stsem = $_GET['stsem'];
|
||||
else
|
||||
die('Studiensemester muss uebergeben werden');
|
||||
|
||||
if(isset($_GET['lehreinheit_id']))
|
||||
$lehreinheit_id = $_GET['lehreinheit_id'];
|
||||
else
|
||||
$lehreinheit_id = '';
|
||||
if(isset($_GET['lehreinheit_id']))
|
||||
$lehreinheit_id = $_GET['lehreinheit_id'];
|
||||
else
|
||||
$lehreinheit_id = '';
|
||||
|
||||
/*
|
||||
* Create Excel File
|
||||
*/
|
||||
/*
|
||||
* Create Excel File
|
||||
*/
|
||||
|
||||
// Creating a workbook
|
||||
$workbook = new Spreadsheet_Excel_Writer();
|
||||
$workbook->setVersion(8);
|
||||
|
||||
// sending HTTP headers
|
||||
$workbook->send("Notenliste". "_" . date("d_m_Y") . ".xls");
|
||||
$workbook->send($p->t('anwesenheitsliste/notenliste'). "_" . date("d_m_Y") . ".xls");
|
||||
$workbook->setCustomColor (15,192,192,192); //Setzen der HG-Farbe Hellgrau
|
||||
|
||||
// Creating a worksheet
|
||||
$worksheet =& $workbook->addWorksheet("Notenliste");
|
||||
$worksheet =& $workbook->addWorksheet($p->t('anwesenheitsliste/notenliste'));
|
||||
// Neu - UTF-8 Excel
|
||||
$worksheet->setInputEncoding('utf-8');
|
||||
|
||||
@@ -131,14 +125,20 @@
|
||||
|
||||
$lvobj = new lehrveranstaltung($lvid);
|
||||
|
||||
$worksheet->write(0,0,"Notenliste ".$lvobj->bezeichnung,$format_bold);
|
||||
$worksheet->write(0,0,$p->t('anwesenheitsliste/notenliste')." ".($sprache=='English'?$lvobj->bezeichnung_english:$lvobj->bezeichnung),$format_bold);
|
||||
|
||||
$stg_obj = new studiengang($stg);
|
||||
|
||||
$qry = "SELECT distinct on(kuerzel, semester, verband, gruppe, gruppe_kurzbz) UPPER(stg_typ::varchar(1) || stg_kurzbz) as kuerzel, semester, verband, gruppe, gruppe_kurzbz from campus.vw_lehreinheit WHERE lehrveranstaltung_id='".addslashes($lvid)."' AND studiensemester_kurzbz='".addslashes($stsem)."'";
|
||||
$qry = "SELECT
|
||||
distinct on(kuerzel, semester, verband, gruppe, gruppe_kurzbz) UPPER(stg_typ::varchar(1) || stg_kurzbz) as kuerzel,
|
||||
semester, verband, gruppe, gruppe_kurzbz
|
||||
FROM
|
||||
campus.vw_lehreinheit
|
||||
WHERE
|
||||
lehrveranstaltung_id=".$db->db_add_param($lvid, FHC_INTEGER)." AND studiensemester_kurzbz=".$db->db_add_param($stsem);
|
||||
if($lehreinheit_id!='')
|
||||
$qry.=" AND lehreinheit_id='".addslashes($lehreinheit_id)."'";
|
||||
|
||||
$qry.=" AND lehreinheit_id=".$db->db_add_param($lehreinheit_id, FHC_INTEGER);
|
||||
|
||||
$gruppen='';
|
||||
if($result = $db->db_query($qry))
|
||||
{
|
||||
@@ -153,7 +153,7 @@
|
||||
}
|
||||
}
|
||||
|
||||
$worksheet->write(1,0,"Studiengang: $stg_obj->bezeichnung $gruppen");
|
||||
$worksheet->write(1,0,$p->t('global/studiengang').": $stg_obj->bezeichnung $gruppen");
|
||||
$lines=2;
|
||||
//Lektoren ermitteln
|
||||
|
||||
@@ -164,11 +164,11 @@
|
||||
WHERE
|
||||
uid=mitarbeiter_uid AND
|
||||
tbl_lehreinheit.lehreinheit_id=tbl_lehreinheitmitarbeiter.lehreinheit_id AND
|
||||
lehrveranstaltung_id='".addslashes($lvid)."' AND
|
||||
studiensemester_kurzbz='".addslashes($stsem)."'";
|
||||
lehrveranstaltung_id=".$db->db_add_param($lvid, FHC_INTEGER)." AND
|
||||
studiensemester_kurzbz=".$db->db_add_param($stsem);
|
||||
|
||||
if($lehreinheit_id!='')
|
||||
$qry.=" AND tbl_lehreinheit.lehreinheit_id='".addslashes($lehreinheit_id)."'";
|
||||
$qry.=" AND tbl_lehreinheit.lehreinheit_id=".$db->db_add_param($lehreinheit_id, FHC_INTEGER);
|
||||
|
||||
$qry.=' ORDER BY nachname, vorname';
|
||||
|
||||
@@ -183,17 +183,22 @@
|
||||
|
||||
//Studenten holen
|
||||
$lines++;
|
||||
$worksheet->write($lines,1,"Familiennname",$format_border_bottom);
|
||||
$worksheet->write($lines,2,"Vorname",$format_border_bottom);
|
||||
$worksheet->write($lines,3,"Gruppe",$format_border_bottom);
|
||||
$worksheet->write($lines,4,"Kennzeichen",$format_border_bottom);
|
||||
$worksheet->write($lines,5,"Note",$format_border_bottom);
|
||||
$stsem_obj = new studiensemester();
|
||||
$stsem_obj->load($stsem);
|
||||
$stsemdatumvon = $stsem_obj->start;
|
||||
$stsemdatumbis = $stsem_obj->ende;
|
||||
$worksheet->write($lines,1,$p->t('global/nachname'),$format_border_bottom);
|
||||
$worksheet->write($lines,2,$p->t('global/vorname'),$format_border_bottom);
|
||||
$worksheet->write($lines,3,$p->t('global/gruppe'),$format_border_bottom);
|
||||
$worksheet->write($lines,4,$p->t('global/personenkennzeichen'),$format_border_bottom);
|
||||
|
||||
if(defined('CIS_GESAMTNOTE_PUNKTE') && CIS_GESAMTNOTE_PUNKTE)
|
||||
$worksheet->write($lines,5,$p->t('benotungstool/punkte'),$format_border_bottom);
|
||||
else
|
||||
$worksheet->write($lines,5,$p->t('benotungstool/note'),$format_border_bottom);
|
||||
|
||||
$stsem_obj = new studiensemester();
|
||||
$stsem_obj->load($stsem);
|
||||
$stsemdatumvon = $stsem_obj->start;
|
||||
$stsemdatumbis = $stsem_obj->ende;
|
||||
|
||||
$qry = "SELECT
|
||||
$qry = "SELECT
|
||||
distinct on(nachname, vorname, person_id) vorname, nachname, matrikelnr, person_id, tbl_student.student_uid as uid,
|
||||
tbl_studentlehrverband.semester, tbl_studentlehrverband.verband, tbl_studentlehrverband.gruppe,
|
||||
(SELECT status_kurzbz FROM public.tbl_prestudentstatus WHERE prestudent_id=tbl_student.prestudent_id ORDER BY datum DESC, insertamum DESC, ext_id DESC LIMIT 1) as status,
|
||||
@@ -206,11 +211,11 @@ $qry = "SELECT
|
||||
LEFT JOIN lehre.tbl_zeugnisnote on(vw_student_lehrveranstaltung.lehrveranstaltung_id=tbl_zeugnisnote.lehrveranstaltung_id AND tbl_zeugnisnote.student_uid=tbl_student.student_uid AND tbl_zeugnisnote.studiensemester_kurzbz=tbl_studentlehrverband.studiensemester_kurzbz)
|
||||
LEFT JOIN bis.tbl_bisio ON(uid=tbl_bisio.student_uid)
|
||||
WHERE
|
||||
vw_student_lehrveranstaltung.lehrveranstaltung_id='".addslashes($lvid)."' AND
|
||||
vw_student_lehrveranstaltung.studiensemester_kurzbz='".addslashes($stsem)."'";
|
||||
vw_student_lehrveranstaltung.lehrveranstaltung_id=".$db->db_add_param($lvid, FHC_INTEGER)." AND
|
||||
vw_student_lehrveranstaltung.studiensemester_kurzbz=".$db->db_add_param($stsem);
|
||||
|
||||
if($lehreinheit_id!='')
|
||||
$qry.=" AND vw_student_lehrveranstaltung.lehreinheit_id='".addslashes($lehreinheit_id)."'";
|
||||
$qry.=" AND vw_student_lehrveranstaltung.lehreinheit_id=".$db->db_add_param($lehreinheit_id, FHC_INTEGER);
|
||||
|
||||
$qry.=' ORDER BY nachname, vorname, person_id, tbl_bisio.bis DESC';
|
||||
|
||||
@@ -235,13 +240,13 @@ $qry = "SELECT
|
||||
if($elem->note==6) //angerechnet
|
||||
{
|
||||
$inc.=' (ar)';
|
||||
$note='6';
|
||||
$note='ar';
|
||||
}
|
||||
else
|
||||
$note='';
|
||||
$worksheet->write($lines,1,$elem->nachname.$inc);
|
||||
$worksheet->write($lines,2,$elem->vorname);
|
||||
$worksheet->write($lines,3,$elem->semester.$elem->verband.$elem->gruppe);
|
||||
$worksheet->write($lines,3,'="'.$elem->semester.$elem->verband.$elem->gruppe.'"');
|
||||
$worksheet->write($lines,4,'="'.trim($elem->matrikelnr).'"',$format_highlight);
|
||||
$worksheet->write($lines,5,$note,$format_highlight);
|
||||
$i++;
|
||||
@@ -251,24 +256,48 @@ $qry = "SELECT
|
||||
}
|
||||
}
|
||||
|
||||
//Notenschluessel
|
||||
$worksheet->write(++$lines,0,'Notenschlüssel: 1 (Sehr Gut), 2 (Gut), 3 (Befriedigend), 4 (Genügend),');
|
||||
$worksheet->write(++$lines,0,'5 (Nicht Genügend), 7 (nicht beurteilt), 10 (bestanden)');
|
||||
//$worksheet->write(++$lines,0,'8-teilgenommen, 9-noch nicht eingetragen, 10-bestanden,');
|
||||
$worksheet->write(++$lines,0,'14 (nicht bestanden), 16 (Mit Erfolg teilgenommen)');
|
||||
//Noten
|
||||
$note = new note();
|
||||
$note->getAll();
|
||||
|
||||
$notenschluessel = new notenschluessel();
|
||||
$schluessel = $notenschluessel->getNotenschluessel($lvid, $stsem);
|
||||
$notenschluessel->loadAufteilung($schluessel);
|
||||
|
||||
$aufteilung = array();
|
||||
foreach($notenschluessel->result as $row)
|
||||
$aufteilung[$row->note]=$row->punkte;
|
||||
|
||||
$worksheet->write(++$lines,0,$p->t('benotungstool/note').":");
|
||||
foreach($note->result as $row)
|
||||
{
|
||||
if($row->aktiv && $row->lehre)
|
||||
{
|
||||
if(CIS_GESAMTNOTE_PUNKTE)
|
||||
{
|
||||
if(isset($aufteilung[$row->note]))
|
||||
$punkte = '>='.(float)$aufteilung[$row->note].' '.$p->t("benotungstool/punkte").' - ';
|
||||
else
|
||||
$punkte='';
|
||||
$worksheet->write(++$lines,0,$punkte.$row->bezeichnung.' ('.$row->anmerkung.')');
|
||||
}
|
||||
else
|
||||
$worksheet->write(++$lines,0,$row->bezeichnung.' ('.$row->anmerkung.')');
|
||||
}
|
||||
}
|
||||
|
||||
$worksheet->writeBlank(++$lines,0,0);
|
||||
$worksheet->writeBlank(++$lines,0,$format_highlight);
|
||||
$worksheet->write($lines,1,'...Kopieren Sie diese Zellen in den Zwischenspeicher, um damit die Import-Spalte des Gesamtnotenformulars zu befüllen');
|
||||
$worksheet->write($lines,1,'...'.$p->t('anwesenheitsliste/anleitungImportFunktion'));
|
||||
$lines++;
|
||||
$worksheet->write(++$lines,0,'(i) ... Incoming');
|
||||
$worksheet->write(++$lines,0,'(o) ... Outgoing');
|
||||
$worksheet->write(++$lines,0,'(ar) ... angerechnet');
|
||||
$worksheet->write(++$lines,0,'(ar) ... '.$p->t('anwesenheitsliste/angerechnet'));
|
||||
|
||||
$worksheet->setColumn(0, 0, 5);
|
||||
$worksheet->setColumn(1, 1, 25);
|
||||
$worksheet->setColumn(2, 2, 25);
|
||||
$worksheet->setColumn(3, 3, 7);
|
||||
$worksheet->setColumn(4, 4, 13);
|
||||
$worksheet->setColumn(4, 4, 21);
|
||||
$workbook->close();
|
||||
|
||||
?>
|
||||
|
||||
@@ -425,6 +425,27 @@ function openDialog(lehrveranstaltung_id, termin_id, lvBezeichnung, terminVon, t
|
||||
$("#terminHidden").val(termin_id);
|
||||
$("#lehrveranstaltung").html(lvBezeichnung);
|
||||
|
||||
$.ajax({
|
||||
dataType: 'json',
|
||||
url: "./pruefungsanmeldung.json.php",
|
||||
type: "POST",
|
||||
data: {
|
||||
method: "getLvKompatibel",
|
||||
lehrveranstaltung_id: lehrveranstaltung_id
|
||||
},
|
||||
error: loadError
|
||||
}).success(function(data){
|
||||
var html = "";
|
||||
data.result.forEach(function(v, i){
|
||||
console.log(i);
|
||||
console.log(v);
|
||||
html += '<option id="'+v.lehrveranstaltung_id+'" value="'+v.lehrveranstaltung_id+'">';
|
||||
html += v.bezeichnung;
|
||||
html += "</option>";
|
||||
});
|
||||
$("#studienverpflichtung").html(html);
|
||||
});
|
||||
|
||||
var start = terminVon;
|
||||
var ende = terminBis;
|
||||
start = start.split(' ');
|
||||
@@ -453,9 +474,17 @@ function openDialog(lehrveranstaltung_id, termin_id, lvBezeichnung, terminVon, t
|
||||
*/
|
||||
function saveAnmeldung(lehrveranstaltung_id, termin_id)
|
||||
{
|
||||
var lehrveranstaltung_id = $("#lehrveranstaltungHidden").val();
|
||||
var termin_id = $("#terminHidden").val();
|
||||
var uid = $("#anmeldung_hinzufuegen_uid").val();
|
||||
if(lehrveranstaltung_id === undefined)
|
||||
lehrveranstaltung_id = $("#lehrveranstaltungHidden").val();
|
||||
if(termin_id === undefined)
|
||||
termin_id = $("#terminHidden").val();
|
||||
var bemerkungen = $("#anmeldungBemerkung").val();
|
||||
if(bemerkungen === undefined)
|
||||
bemerkungen = "von Lektor hinzugefügt";
|
||||
|
||||
var studienverpflichtung_id = $("#studienverpflichtung option:selected").val();
|
||||
console.log(studienverpflichtung_id);
|
||||
|
||||
$.ajax({
|
||||
dataType: 'json',
|
||||
@@ -465,7 +494,9 @@ function saveAnmeldung(lehrveranstaltung_id, termin_id)
|
||||
method: "saveAnmeldung",
|
||||
termin_id: termin_id,
|
||||
lehrveranstaltung_id: lehrveranstaltung_id,
|
||||
bemerkung: bemerkungen
|
||||
bemerkung: bemerkungen,
|
||||
uid: uid,
|
||||
studienverpflichtung_id: studienverpflichtung_id
|
||||
},
|
||||
error: loadError
|
||||
}).success(function(data){
|
||||
@@ -480,7 +511,17 @@ function saveAnmeldung(lehrveranstaltung_id, termin_id)
|
||||
resetForm();
|
||||
}).complete(function(event, xhr, settings){
|
||||
$("#saveDialog").dialog("close");
|
||||
refresh();
|
||||
|
||||
if(uid === undefined)
|
||||
{
|
||||
//Wenn Anmeldung durch Student
|
||||
refresh();
|
||||
}
|
||||
else
|
||||
{
|
||||
//Wenn Anmeldung durch Lektor
|
||||
showAnmeldungen(termin_id, lehrveranstaltung_id);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@@ -653,6 +694,7 @@ function writeAnmeldungen(data)
|
||||
var ort_kurzbz = data.result.ort_kurzbz;
|
||||
var liste = "<ul id='sortable'>";
|
||||
var count = 0;
|
||||
var studiensemester = $("#filter_studiensemester option:selected").val();
|
||||
data.result.anmeldungen.forEach(function(d){
|
||||
count++;
|
||||
var vorname = d.student.vorname !== "null" ? d.student.vorname : "";
|
||||
@@ -683,8 +725,10 @@ function writeAnmeldungen(data)
|
||||
|
||||
});
|
||||
liste += "</ul>";
|
||||
$("#anmeldung_hinzufuegen").html("<input id='anmeldung_hinzufuegen_uid' type='text' placeholder='StudentIn-UID' /><input type='button' value='hinzufügen' onclick='saveAnmeldung(\""+lehrveranstaltung_id+"\",\""+terminId+"\");'/>");
|
||||
$("#reihungSpeichernButton").html("<input type='button' value='Reihung speichern' onclick='saveReihung(\""+terminId+"\", \""+lehrveranstaltung_id+"\");'>");
|
||||
$("#anmeldeDaten").html(liste);
|
||||
$("#listeDrucken").html("<a href='./pruefungsanmeldungen_liste.php?termin_id="+terminId+"&lehrveranstaltung_id="+lehrveranstaltung_id+"&studiensemester="+studiensemester+"' target='_blank'>Liste drucken</a>");
|
||||
if(ort_kurzbz !== null)
|
||||
{
|
||||
$("#raumLink").html("<span>Prüfungsraum: </span>"+ort_kurzbz);
|
||||
@@ -829,11 +873,12 @@ function loadStudiengaenge()
|
||||
$("#stgListe").empty();
|
||||
if(data.error === 'false')
|
||||
{
|
||||
var liste = "";
|
||||
var liste = "<select id='select_studiengang' onchange='loadPruefungStudiengang();'><option>Studiengang auswählen</option>";
|
||||
data.result.forEach(function(e){
|
||||
var kuerzel = e.typ+e.kurzbz
|
||||
liste += "<li id='stg"+e.studiengang_kz+"'><span class='studiengang'><a href='#' onclick='loadPruefungStudiengang(\""+e.studiengang_kz+"\");'>"+e.bezeichnung+" ("+kuerzel.toUpperCase()+")</a></span></li>";
|
||||
liste += "<option id='stg"+e.studiengang_kz+"' value='"+e.studiengang_kz+"'>"+e.bezeichnung+" ("+kuerzel.toUpperCase()+")</option>";
|
||||
});
|
||||
liste += "</select>";
|
||||
$("#stgListe").append(liste);
|
||||
}
|
||||
else
|
||||
@@ -848,15 +893,22 @@ function loadStudiengaenge()
|
||||
* @param {type} studiengang_kz Studiengangskennzahl
|
||||
* @returns {undefined}
|
||||
*/
|
||||
function loadPruefungStudiengang(studiengang_kz)
|
||||
function loadPruefungStudiengang(studiengang_kz, studiensemester)
|
||||
{
|
||||
if(studiengang_kz === undefined)
|
||||
studiengang_kz = $("#select_studiengang option:selected").val();
|
||||
|
||||
if(studiensemester === undefined)
|
||||
studiensemester = $("#filter_studiensemester option:selected").val();
|
||||
|
||||
$.ajax({
|
||||
dataType: 'json',
|
||||
url: "./pruefungsanmeldung.json.php",
|
||||
type: "POST",
|
||||
data: {
|
||||
method: "getPruefungenStudiengang",
|
||||
studiengang_kz: studiengang_kz
|
||||
studiengang_kz: studiengang_kz,
|
||||
studiensemester: studiensemester
|
||||
},
|
||||
error: loadError
|
||||
}).success(function(data){
|
||||
@@ -1641,6 +1693,10 @@ function deleteLehrveranstaltungFromPruefung(lvId, pruefung_id)
|
||||
{
|
||||
messageBox("message", "Lehrveranstaltung erfolgreich entfernt", "green", "highlight", 1000);
|
||||
}
|
||||
else
|
||||
{
|
||||
messageBox("message", data.errormsg, "red", "highlight", 1000);
|
||||
}
|
||||
}).complete(function(){
|
||||
loadPruefungsDetails(pruefung_id);
|
||||
});
|
||||
@@ -1668,6 +1724,10 @@ function stornoPruefung(pruefung_id)
|
||||
{
|
||||
messageBox("message", "Prüfung storniert", "green", "highlight", 1000);
|
||||
}
|
||||
else
|
||||
{
|
||||
messageBox("message", data.errormsg, "red", "highlight", 1000);
|
||||
}
|
||||
}).complete(function(){
|
||||
loadAllPruefungen();
|
||||
resetPruefungsverwaltung();
|
||||
@@ -1724,33 +1784,39 @@ function loadAllPruefungen()
|
||||
},
|
||||
error: loadError
|
||||
}).success(function(data){
|
||||
$("#prfTable tbody").first().html("");
|
||||
var tableRow = "";
|
||||
data.result.forEach(function(e){
|
||||
if(e.storniert === false)
|
||||
{
|
||||
tableRow = "<tr><td><a href='#' onclick='loadPruefungsDetails(\""+e.pruefung_id+"\")'>"+e.titel+"</a></td>";
|
||||
tableRow += "<td>"+e.studiensemester_kurzbz+"</td>";
|
||||
tableRow += "<td>";
|
||||
e.lehrveranstaltungen.forEach(function(f){
|
||||
tableRow += f.bezeichnung+"<br/>";
|
||||
});
|
||||
tableRow+="</td>";
|
||||
tableRow+="<td>";
|
||||
e.termine.forEach(function(f){
|
||||
tableRow += convertDateTime(f.von, "date")+" von "+convertDateTime(f.von, "time")+" bis "+convertDateTime(f.bis, "time")+"<br/>";
|
||||
});
|
||||
tableRow+="</td>";
|
||||
tableRow += "<td>"+e.methode+"</td>";
|
||||
tableRow += "<td>"+e.pruefungstyp_kurzbz+"</td>";
|
||||
tableRow += "<td>"+e.einzeln+"</td>";
|
||||
tableRow += "<td>"+e.mitarbeiter_uid+"</td>";
|
||||
tableRow += "<td>"+e.storniert+"</td>";
|
||||
tableRow += "</tr>";
|
||||
$("#prfTable tbody").first().append(tableRow);
|
||||
}
|
||||
|
||||
});
|
||||
if(data.error != 'true')
|
||||
{
|
||||
$("#prfTable tbody").first().html("");
|
||||
var tableRow = "";
|
||||
data.result.forEach(function(e){
|
||||
if(e.storniert === false)
|
||||
{
|
||||
tableRow = "<tr><td><a href='#' onclick='loadPruefungsDetails(\""+e.pruefung_id+"\")'>"+e.titel+"</a></td>";
|
||||
tableRow += "<td>"+e.studiensemester_kurzbz+"</td>";
|
||||
tableRow += "<td>";
|
||||
e.lehrveranstaltungen.forEach(function(f){
|
||||
tableRow += f.bezeichnung+"<br/>";
|
||||
});
|
||||
tableRow+="</td>";
|
||||
tableRow+="<td>";
|
||||
e.termine.forEach(function(f){
|
||||
tableRow += convertDateTime(f.von, "date")+" von "+convertDateTime(f.von, "time")+" bis "+convertDateTime(f.bis, "time")+"<br/>";
|
||||
});
|
||||
tableRow+="</td>";
|
||||
tableRow += "<td>"+e.methode+"</td>";
|
||||
tableRow += "<td>"+e.pruefungstyp_kurzbz+"</td>";
|
||||
tableRow += "<td>"+e.einzeln+"</td>";
|
||||
tableRow += "<td>"+e.mitarbeiter_uid+"</td>";
|
||||
tableRow += "<td>"+e.storniert+"</td>";
|
||||
tableRow += "</tr>";
|
||||
$("#prfTable tbody").first().append(tableRow);
|
||||
}
|
||||
});
|
||||
}
|
||||
else
|
||||
{
|
||||
messageBox("message", data.errormsg, "red", "highlight", 1000);
|
||||
}
|
||||
}).complete(function(event, xhr, settings){
|
||||
if($("#prfTable")[0].hasInitialized !== true)
|
||||
{
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -32,6 +32,7 @@ require_once('../../../../include/student.class.php');
|
||||
|
||||
|
||||
$uid = get_uid();
|
||||
|
||||
$db = new basis_db();
|
||||
$rechte = new benutzerberechtigung();
|
||||
$rechte->getBerechtigungen($uid);
|
||||
@@ -142,7 +143,7 @@ $studiensemester->getAll();
|
||||
$("#saveDialog").dialog({
|
||||
modal: true,
|
||||
autoOpen: false,
|
||||
width: "400px"
|
||||
width: "auto"
|
||||
});
|
||||
$("#dialog").dialog({ autoOpen: false });
|
||||
|
||||
@@ -284,6 +285,12 @@ $studiensemester->getAll();
|
||||
<span type="text" id="terminBis" disabled="true"></span>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="vertical-align: top; font-weight: bold;">Studienverpflichtung:* </td>
|
||||
<td>
|
||||
<select id="studienverpflichtung"></select>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="vertical-align: top; font-weight: bold;">Bemerkung: </td>
|
||||
<td>
|
||||
|
||||
@@ -0,0 +1,264 @@
|
||||
<!DOCTYPE html>
|
||||
<?php
|
||||
/*
|
||||
* Copyright 2014 fhcomplete.org
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
|
||||
* MA 02110-1301, USA.
|
||||
*
|
||||
*
|
||||
* Authors: Stefan Puraner <puraner@technikum-wien.at>
|
||||
*/
|
||||
|
||||
require_once('../../../../config/cis.config.inc.php');
|
||||
require_once('../../../../include/functions.inc.php');
|
||||
require_once('../../../../include/benutzerberechtigung.class.php');
|
||||
require_once('../../../../include/pruefungsanmeldung.class.php');
|
||||
require_once('../../../../include/pruefungCis.class.php');
|
||||
require_once('../../../../include/pruefungstermin.class.php');
|
||||
require_once('../../../../include/studiensemester.class.php');
|
||||
require_once('../../../../include/lehrveranstaltung.class.php');
|
||||
require_once('../../../../include/mitarbeiter.class.php');
|
||||
require_once('../../../../include/student.class.php');
|
||||
require_once('../../../../include/datum.class.php');
|
||||
|
||||
$uid = get_uid();
|
||||
$rechte = new benutzerberechtigung();
|
||||
$rechte->getBerechtigungen($uid);
|
||||
?>
|
||||
<html moznomarginboxes="">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<script src="../../../../include/js/jquery1.9.min.js"></script>
|
||||
<style type="text/css">
|
||||
body {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
* {
|
||||
box-sizing: border-box;
|
||||
-moz-box-sizing: border-box;
|
||||
}
|
||||
|
||||
#page {
|
||||
width: 210mm;
|
||||
min-height: 297mm;
|
||||
padding: 20mm;
|
||||
margin: 10mm auto;
|
||||
border: 1px #D3D3D3 solid;
|
||||
border-radius: 5px;
|
||||
background: white;
|
||||
box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
|
||||
font-family: Arial, Helvetica;
|
||||
}
|
||||
|
||||
#subpage {
|
||||
padding: 10mm;
|
||||
border: 1px black solid;
|
||||
height: 256mm;
|
||||
outline: 20mm
|
||||
}
|
||||
|
||||
#liste {
|
||||
border: 1px solid black;
|
||||
border-collapse: collapse;
|
||||
width: 100%;
|
||||
margin-top: 5mm;
|
||||
font-size: 11pt;
|
||||
}
|
||||
|
||||
h1 {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.bold {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
td {
|
||||
border: 1px solid black;
|
||||
padding: 1mm;
|
||||
}
|
||||
|
||||
th {
|
||||
border: 1px solid black;
|
||||
}
|
||||
|
||||
thead > tr {
|
||||
background-color: white !important;
|
||||
}
|
||||
|
||||
tr:nth-child(odd){
|
||||
background-color: lightgrey;
|
||||
}
|
||||
|
||||
span {
|
||||
line-height: 16pt;
|
||||
font-size: 12pt;
|
||||
}
|
||||
|
||||
@page {
|
||||
size: A4;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
@media print {
|
||||
html, body {
|
||||
width: 210mm;
|
||||
height: 250mm;
|
||||
}
|
||||
#page {
|
||||
margin: 0;
|
||||
border: initial;
|
||||
border-radius: initial;
|
||||
width: initial;
|
||||
min-height: initial;
|
||||
box-shadow: initial;
|
||||
background: initial;
|
||||
page-break-after: auto;
|
||||
}
|
||||
|
||||
/*
|
||||
* Workaround um beim Drucken jede zweite Zeile der Tabelle
|
||||
* grau darzustellen. Standardmäßig werden von Browsern keine
|
||||
* Hintergrundfarben gedruckt.
|
||||
*/
|
||||
tr:nth-child(odd) > td{
|
||||
box-shadow: inset 0 0 0 1000px lightgrey;
|
||||
}
|
||||
|
||||
//Veranlasst Chrome Hintergrundfarben zu drucken
|
||||
body{
|
||||
-webkit-print-color-adjust:exact;
|
||||
background-color: #FFFFFF;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
//Anweisungen nur für Firefox
|
||||
@-moz-document url-prefix() {
|
||||
html, body {
|
||||
height: 280mm;
|
||||
}
|
||||
}
|
||||
@-moz-document url-prefix() {
|
||||
#page {
|
||||
padding: 15mm 25mm 25mm 15mm !important;
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<script>
|
||||
$(document).ready(function(){
|
||||
window.print();
|
||||
});
|
||||
</script>
|
||||
<div id="page">
|
||||
<div id="subpage">
|
||||
<h1>Anmeldungsliste</h1>
|
||||
<?php
|
||||
if(empty($pruefung->result) && !$rechte->isBerechtigt('lehre/pruefungsanmeldungAdmin'))
|
||||
die('Sie haben keine Berechtigung für diese Seite');
|
||||
|
||||
$termin_id = filter_input(INPUT_GET,"termin_id");
|
||||
$lehrveranstaltung_id = filter_input(INPUT_GET,"lehrveranstaltung_id");
|
||||
$studiensemester = filter_input(INPUT_GET, "studiensemester");
|
||||
|
||||
if(is_null($lehrveranstaltung_id))
|
||||
{
|
||||
die('Fehlender Parameter lehrveranstaltung_id');
|
||||
}
|
||||
else if(is_null($termin_id))
|
||||
{
|
||||
die('Fehlender Parameter termin_id');
|
||||
}
|
||||
else if(is_null($studiensemester))
|
||||
{
|
||||
die('Fehlender Parameter studiensemester');
|
||||
}
|
||||
else
|
||||
{
|
||||
$datum = new datum();
|
||||
$stdsem = new studiensemester($studiensemester);
|
||||
$pruefungsanmeldung = new pruefungsanmeldung();
|
||||
$anmeldungen = $pruefungsanmeldung->getAnmeldungenByTermin($termin_id, $lehrveranstaltung_id, $studiensemester, "bestaetigt");
|
||||
$lehrveranstaltung = new lehrveranstaltung($lehrveranstaltung_id);
|
||||
$einzeln = FALSE;
|
||||
if(!empty($anmeldungen))
|
||||
{
|
||||
$pruefung = new pruefungCis($anmeldungen[0]->pruefung_id);
|
||||
$pruefungstermin = new pruefungstermin($anmeldungen[0]->pruefungstermin_id);
|
||||
$mitarbeiter = new mitarbeiter($pruefung->mitarbeiter_uid);
|
||||
if($pruefung->einzeln)
|
||||
{
|
||||
$einzeln = TRUE;
|
||||
$pruefungsintervall = $pruefung->pruefungsintervall;
|
||||
}
|
||||
}
|
||||
?>
|
||||
<span class="bold">Lehrveranstaltung: </span><span><?=$lehrveranstaltung->bezeichnung?></span><br/>
|
||||
<span class="bold">Studiensemester: </span><span><?=$stdsem->bezeichnung?></span><br/>
|
||||
<span class="bold">Prüfer: </span><span><?=$mitarbeiter->getFullName(FALSE)?></span><br/>
|
||||
<table id="liste">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>#</th>
|
||||
<th>Vorname</th>
|
||||
<th>Nachname</th>
|
||||
<th>Matrikelnummer</th>
|
||||
<th>Datum</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<?php
|
||||
$count = 0;
|
||||
/*@var $anmeldung pruefungsanmeldung */
|
||||
foreach($anmeldungen as $anmeldung)
|
||||
{
|
||||
$student = new student($anmeldung->uid);
|
||||
$prfTermin = new pruefungstermin($anmeldung->pruefungstermin_id);
|
||||
|
||||
if($einzeln)
|
||||
{
|
||||
$date = $datum->formatDatum($prfTermin->von, "Y-m-d H:i:s");
|
||||
$date = strtotime($date);
|
||||
$date = $date+(60*$pruefungsintervall*($count));
|
||||
$date = $datum->formatDatum($prfTermin->von,"d.m.Y").' - '.date("h:i",$date);
|
||||
$count++;
|
||||
}
|
||||
else
|
||||
{
|
||||
$date = $datum->formatDatum($prfTermin->von,"d.m.Y - H:i");
|
||||
}
|
||||
echo '<tr>';
|
||||
echo '<td>'.$anmeldung->reihung.'</td>';
|
||||
echo '<td>'.$student->vorname.'</td>';
|
||||
echo '<td>'.$student->nachname.'</td>';
|
||||
echo '<td>'.$student->matrikelnr.'</td>';
|
||||
echo '<td>'.$date.'</td>';
|
||||
echo '</tr>';
|
||||
}
|
||||
?>
|
||||
</tbody>
|
||||
<?php
|
||||
}
|
||||
?>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,269 +1,306 @@
|
||||
<!DOCTYPE html>
|
||||
<?php
|
||||
/*
|
||||
* Copyright 2014 fhcomplete.org
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
|
||||
* MA 02110-1301, USA.
|
||||
*
|
||||
*
|
||||
* Authors: Stefan Puraner <puraner@technikum-wien.at>
|
||||
*/
|
||||
|
||||
require_once('../../../../config/cis.config.inc.php');
|
||||
require_once('../../../../include/functions.inc.php');
|
||||
require_once('../../../../include/benutzerberechtigung.class.php');
|
||||
require_once('../../../../include/pruefungCis.class.php');
|
||||
require_once('../../../../include/studiensemester.class.php');
|
||||
|
||||
$uid = get_uid();
|
||||
$db = new basis_db();
|
||||
$rechte = new benutzerberechtigung();
|
||||
$rechte->getBerechtigungen($uid);
|
||||
|
||||
$studiensemester = new studiensemester();
|
||||
$pruefung = new pruefungCis();
|
||||
$pruefung->getPruefungByMitarbeiter($uid, $studiensemester->getaktorNext());
|
||||
if(empty($pruefung->result) && !$rechte->isBerechtigt('lehre/pruefungsanmeldungAdmin'))
|
||||
die('Sie haben keine Berechtigung für diese Seite');
|
||||
|
||||
?>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<title>Prüfungsanmeldung Verwaltung</title>
|
||||
<script src="../../../../include/js/datecheck.js"></script>
|
||||
<script src="../../../../include/js/jquery1.9.min.js"></script>
|
||||
<script src="../../../../include/js/jquery.tablesorter.min.js"></script>
|
||||
<script src="./pruefung.js"></script>
|
||||
<link rel="stylesheet" href="../../../../skin/jquery-ui-1.9.2.custom.min.css">
|
||||
<link rel="stylesheet" href="../../../../skin/fhcomplete.css">
|
||||
<link rel="stylesheet" href="../../../../skin/style.css.php">
|
||||
<link rel="stylesheet" href="../../../../skin/tablesort.css">
|
||||
<link rel="stylesheet" href="//code.jquery.com/ui/1.10.4/themes/smoothness/jquery-ui.css">
|
||||
<style type="text/css">
|
||||
body {
|
||||
padding: 10px 0 0 10px;
|
||||
}
|
||||
|
||||
#stgWrapper {
|
||||
position: absolute;
|
||||
height: 80%;
|
||||
width: 450px;
|
||||
padding: 1.8em 1.5em 1.8em 1em;
|
||||
border-radius: 25px;
|
||||
/*border: 1px solid black;*/
|
||||
box-shadow: 0em 0em 2em 0.5em #888888 inset;
|
||||
}
|
||||
|
||||
#studiengaenge {
|
||||
/*border: 1px solid black;*/
|
||||
width: 94%;
|
||||
position: relative;
|
||||
float: left;
|
||||
padding: 0 1em 0em 1em;
|
||||
height: 100%;
|
||||
overflow: auto;
|
||||
overflow-x: hidden;
|
||||
}
|
||||
|
||||
|
||||
#prfWrapper {
|
||||
position: absolute;
|
||||
height: 80%;
|
||||
width: 200px;
|
||||
left: 510px;
|
||||
padding: 1.8em 1.5em 1.8em 1em;
|
||||
border-radius: 25px;
|
||||
/*border: 1px solid black;*/
|
||||
box-shadow: 0em 0em 2em 0.5em #888888 inset;
|
||||
}
|
||||
|
||||
#pruefungen {
|
||||
/*border: 1px solid black;*/
|
||||
width: 94%;
|
||||
position: relative;
|
||||
float: left;
|
||||
padding: 0 1em 0em 1em;
|
||||
height: 100%;
|
||||
overflow: auto;
|
||||
overflow-x: hidden;
|
||||
}
|
||||
|
||||
#anmWrapper {
|
||||
position: absolute;
|
||||
/*top: 45px;*/
|
||||
left: 760px;
|
||||
width: 400px;
|
||||
height: 80%;
|
||||
padding: 1.8em 1.5em 1.8em 1em;
|
||||
border-radius: 25px;
|
||||
/*border: 1px solid black;*/
|
||||
box-shadow: 0em 0em 2em 0.5em #888888 inset;
|
||||
}
|
||||
|
||||
#anmeldungen {
|
||||
height: 100%;
|
||||
overflow: auto;
|
||||
overflow-x: hidden;
|
||||
}
|
||||
|
||||
#anmeldungen > * {
|
||||
padding: 0.5em;
|
||||
}
|
||||
|
||||
#raum > * {
|
||||
margin-bottom: 0.5em;
|
||||
}
|
||||
|
||||
#message {
|
||||
position: fixed;
|
||||
bottom: 0px;
|
||||
width: 100%;
|
||||
height: 2em;
|
||||
font-size: 1.5em;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
#sortable {
|
||||
list-style-type: none;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
width: 100%;
|
||||
}
|
||||
#sortable li {
|
||||
margin: 0 3px 3px 3px;
|
||||
padding: 0.2em 0.4em 0.4em;
|
||||
padding-left: 1.5em;
|
||||
font-size: 1.4em;
|
||||
height: 18px;
|
||||
list-style-image: none;
|
||||
display: block;
|
||||
}
|
||||
#sortable li span {
|
||||
/*position: absolute;*/
|
||||
margin-left: -1.3em;
|
||||
float:left;
|
||||
}
|
||||
|
||||
.resultOK {
|
||||
color: green;
|
||||
}
|
||||
|
||||
.resultNotOK {
|
||||
color: red;
|
||||
}
|
||||
|
||||
#sortable li a {
|
||||
float: left;
|
||||
}
|
||||
|
||||
#sortable li div {
|
||||
float: right;
|
||||
margin-left: 5px;
|
||||
font-size: 0.8em;
|
||||
}
|
||||
|
||||
.anmerkungInfo {
|
||||
text-align: right;
|
||||
width: 10%;
|
||||
}
|
||||
|
||||
#progressbar {
|
||||
position: fixed;
|
||||
width: 300px;
|
||||
top: 30%;
|
||||
left: 50%;
|
||||
margin-left: -150px;
|
||||
z-index: 100;
|
||||
background: '#9CFF29';
|
||||
}
|
||||
.modalOverlay {
|
||||
position: fixed;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
top: 0px;
|
||||
left: 0px;
|
||||
background-color: rgba(0,0,0,0.3); /* black semi-transparent */
|
||||
}
|
||||
|
||||
.studiengang {
|
||||
font-size: 1em;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<script>
|
||||
$(document).ready(function(){
|
||||
loadStudiengaenge();
|
||||
$("#raumDialog").dialog({
|
||||
modal: true,
|
||||
autoOpen: false,
|
||||
width: "400px"
|
||||
});
|
||||
});
|
||||
</script>
|
||||
<h1>Anmeldungen Verwalten</h1>
|
||||
<div id='stgWrapper'>
|
||||
<div id='studiengaenge'>
|
||||
<h2>Studiengänge</h2>
|
||||
<ul id='stgListe'>
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
<div id='prfWrapper'>
|
||||
<div id='pruefungen'>
|
||||
<h2>Prüfungen</h2>
|
||||
<ul id="pruefungenListe">
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
<div id='anmWrapper'>
|
||||
<div id="anmeldungen">
|
||||
<h2>Anmeldungen</h2>
|
||||
<div id="anmeldeDaten">
|
||||
|
||||
</div>
|
||||
<div id="reihungSpeichernButton">
|
||||
|
||||
</div>
|
||||
<div id="kommentar">
|
||||
|
||||
</div>
|
||||
<div id="kommentarSpeichernButton">
|
||||
|
||||
</div>
|
||||
<div id="raumLink">
|
||||
|
||||
</div>
|
||||
<div id="raumDialog">
|
||||
<div id="raum">
|
||||
|
||||
</div>
|
||||
<div id="raumSpeichernButton">
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="message"></div>
|
||||
<div id="progressbar"></div>
|
||||
</body>
|
||||
</html>
|
||||
<!DOCTYPE html>
|
||||
<?php
|
||||
/*
|
||||
* Copyright 2014 fhcomplete.org
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
|
||||
* MA 02110-1301, USA.
|
||||
*
|
||||
*
|
||||
* Authors: Stefan Puraner <puraner@technikum-wien.at>
|
||||
*/
|
||||
|
||||
require_once('../../../../config/cis.config.inc.php');
|
||||
require_once('../../../../include/functions.inc.php');
|
||||
require_once('../../../../include/benutzerberechtigung.class.php');
|
||||
require_once('../../../../include/pruefungCis.class.php');
|
||||
require_once('../../../../include/studiensemester.class.php');
|
||||
|
||||
$uid = get_uid();
|
||||
$db = new basis_db();
|
||||
$rechte = new benutzerberechtigung();
|
||||
$rechte->getBerechtigungen($uid);
|
||||
|
||||
$studiensemester = new studiensemester();
|
||||
$pruefung = new pruefungCis();
|
||||
$pruefung->getPruefungByMitarbeiter($uid, $studiensemester->getaktorNext());
|
||||
if(empty($pruefung->result) && !$rechte->isBerechtigt('lehre/pruefungsanmeldungAdmin'))
|
||||
die('Sie haben keine Berechtigung für diese Seite');
|
||||
|
||||
?>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<title>Prüfungsanmeldung Verwaltung</title>
|
||||
<script src="../../../../include/js/datecheck.js"></script>
|
||||
<script src="../../../../include/js/jquery1.9.min.js"></script>
|
||||
<script src="../../../../include/js/jquery.tablesorter.min.js"></script>
|
||||
<script src="./pruefung.js"></script>
|
||||
<link rel="stylesheet" href="../../../../skin/jquery-ui-1.9.2.custom.min.css">
|
||||
<link rel="stylesheet" href="../../../../skin/fhcomplete.css">
|
||||
<link rel="stylesheet" href="../../../../skin/style.css.php">
|
||||
<link rel="stylesheet" href="../../../../skin/tablesort.css">
|
||||
<link rel="stylesheet" href="//code.jquery.com/ui/1.10.4/themes/smoothness/jquery-ui.css">
|
||||
<style type="text/css">
|
||||
body {
|
||||
padding: 10px 0 0 10px;
|
||||
}
|
||||
|
||||
#stgWrapper {
|
||||
position: absolute;
|
||||
height: 70px;
|
||||
width: 850px;
|
||||
padding: 1.8em 1.5em 1.8em 1em;
|
||||
border-radius: 25px;
|
||||
/*border: 1px solid black;*/
|
||||
box-shadow: 0em 0em 2em 0.5em #888888 inset;
|
||||
}
|
||||
|
||||
#studiengaenge {
|
||||
/*border: 1px solid black;*/
|
||||
width: 94%;
|
||||
position: relative;
|
||||
float: left;
|
||||
padding: 0 1em 0em 1em;
|
||||
height: 100%;
|
||||
overflow: auto;
|
||||
overflow-x: hidden;
|
||||
}
|
||||
|
||||
|
||||
#prfWrapper {
|
||||
position: absolute;
|
||||
height: 70%;
|
||||
width: 300px;
|
||||
top: 180px;
|
||||
padding: 1.8em 1.5em 1.8em 1em;
|
||||
border-radius: 25px;
|
||||
/*border: 1px solid black;*/
|
||||
box-shadow: 0em 0em 2em 0.5em #888888 inset;
|
||||
}
|
||||
|
||||
#pruefungen {
|
||||
/*border: 1px solid black;*/
|
||||
width: 94%;
|
||||
position: relative;
|
||||
float: left;
|
||||
padding: 0 1em 0em 1em;
|
||||
height: 100%;
|
||||
overflow: auto;
|
||||
overflow-x: hidden;
|
||||
}
|
||||
|
||||
#anmWrapper {
|
||||
position: absolute;
|
||||
/*top: 45px;*/
|
||||
left: 350px;
|
||||
top: 180px;
|
||||
width: 500px;
|
||||
height: 70%;
|
||||
padding: 1.8em 1.5em 1.8em 1em;
|
||||
border-radius: 25px;
|
||||
/*border: 1px solid black;*/
|
||||
box-shadow: 0em 0em 2em 0.5em #888888 inset;
|
||||
}
|
||||
|
||||
#anmeldungen {
|
||||
height: 100%;
|
||||
overflow: auto;
|
||||
overflow-x: hidden;
|
||||
}
|
||||
|
||||
#anmeldungen > * {
|
||||
padding: 0.5em;
|
||||
}
|
||||
|
||||
#raum > * {
|
||||
margin-bottom: 0.5em;
|
||||
}
|
||||
|
||||
#message {
|
||||
position: fixed;
|
||||
bottom: 0px;
|
||||
width: 100%;
|
||||
height: 2em;
|
||||
font-size: 1.5em;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
#sortable {
|
||||
list-style-type: none;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
width: 100%;
|
||||
}
|
||||
#sortable li {
|
||||
margin: 0 3px 3px 3px;
|
||||
padding: 0.2em 0.4em 0.4em;
|
||||
padding-left: 1.5em;
|
||||
font-size: 1.4em;
|
||||
height: 18px;
|
||||
list-style-image: none;
|
||||
display: block;
|
||||
}
|
||||
#sortable li span {
|
||||
/*position: absolute;*/
|
||||
margin-left: -1.3em;
|
||||
float:left;
|
||||
}
|
||||
|
||||
.resultOK {
|
||||
color: green;
|
||||
}
|
||||
|
||||
.resultNotOK {
|
||||
color: red;
|
||||
}
|
||||
|
||||
#sortable li a {
|
||||
float: left;
|
||||
}
|
||||
|
||||
#sortable li div {
|
||||
float: right;
|
||||
margin-left: 5px;
|
||||
font-size: 0.8em;
|
||||
}
|
||||
|
||||
.anmerkungInfo {
|
||||
text-align: right;
|
||||
width: 10%;
|
||||
}
|
||||
|
||||
#progressbar {
|
||||
position: fixed;
|
||||
width: 300px;
|
||||
top: 30%;
|
||||
left: 50%;
|
||||
margin-left: -150px;
|
||||
z-index: 100;
|
||||
background: '#9CFF29';
|
||||
}
|
||||
.modalOverlay {
|
||||
position: fixed;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
top: 0px;
|
||||
left: 0px;
|
||||
background-color: rgba(0,0,0,0.3); /* black semi-transparent */
|
||||
}
|
||||
|
||||
.studiengang {
|
||||
font-size: 1em;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
#studiengaenge > div {
|
||||
float: left;
|
||||
width: 50%;
|
||||
}
|
||||
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<script>
|
||||
$(document).ready(function(){
|
||||
loadStudiengaenge();
|
||||
$("#filter_studiensemester").css("visibility","visible");
|
||||
console.log($("#filter_studiensemester"));
|
||||
$("#raumDialog").dialog({
|
||||
modal: true,
|
||||
autoOpen: false,
|
||||
width: "400px"
|
||||
});
|
||||
});
|
||||
</script>
|
||||
<h1>Anmeldungen Verwalten</h1>
|
||||
<div id='stgWrapper'>
|
||||
<div id='studiengaenge'>
|
||||
<div>
|
||||
<h2>Studiengänge</h2>
|
||||
<div id='stgListe'>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<h2>Studiensemester</h2>
|
||||
<?php
|
||||
echo '<select id="filter_studiensemester" onchange="loadPruefungStudiengang();" style="visibility: hidden;">';
|
||||
$aktuellesSemester = $studiensemester->getaktorNext();
|
||||
$studiensemester->getAll();
|
||||
foreach($studiensemester->studiensemester as $sem)
|
||||
{
|
||||
/*@var $sem studiensemester */
|
||||
if($aktuellesSemester == $sem->studiensemester_kurzbz)
|
||||
{
|
||||
echo '<option selected value="'.$sem->studiensemester_kurzbz.'">'.$sem->bezeichnung.'</option>';
|
||||
}
|
||||
else
|
||||
{
|
||||
echo '<option value="'.$sem->studiensemester_kurzbz.'">'.$sem->bezeichnung.'</option>';
|
||||
}
|
||||
}
|
||||
echo '</select></p>';
|
||||
?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id='prfWrapper'>
|
||||
<div id='pruefungen'>
|
||||
<h2>Prüfungen</h2>
|
||||
<ul id="pruefungenListe">
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
<div id='anmWrapper'>
|
||||
<div id="anmeldungen">
|
||||
<h2>Anmeldungen</h2>
|
||||
<div id="anmeldung_hinzufuegen">
|
||||
|
||||
</div>
|
||||
<div id="anmeldeDaten">
|
||||
|
||||
</div>
|
||||
<div id="reihungSpeichernButton">
|
||||
|
||||
</div>
|
||||
<div id="kommentar">
|
||||
|
||||
</div>
|
||||
<div id="kommentarSpeichernButton">
|
||||
|
||||
</div>
|
||||
<div id="raumLink">
|
||||
|
||||
</div>
|
||||
<div id="listeDrucken">
|
||||
|
||||
</div>
|
||||
<div id="raumDialog">
|
||||
<div id="raum">
|
||||
|
||||
</div>
|
||||
<div id="raumSpeichernButton">
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="message"></div>
|
||||
<div id="progressbar"></div>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -89,11 +89,18 @@ function showTeilnehmer(pruefungstermin_id, lehrveranstaltung_id, lehrveranstalt
|
||||
},
|
||||
error: loadError
|
||||
}).success(function(data){
|
||||
data.result.forEach(function(d)
|
||||
if(data.error != 'true')
|
||||
{
|
||||
noten += "<option value="+d.note+">"+d.bezeichnung+"</option>";
|
||||
});
|
||||
noten += "</select>";
|
||||
data.result.forEach(function(d)
|
||||
{
|
||||
noten += "<option value="+d.note+">"+d.bezeichnung+"</option>";
|
||||
});
|
||||
noten += "</select>";
|
||||
}
|
||||
else
|
||||
{
|
||||
messageBox("message",data.errormsg, "red", "highlight", 1000);
|
||||
}
|
||||
}).complete(function(event, xhr, settings){
|
||||
var notenSelect = noten;
|
||||
$.ajax({
|
||||
@@ -237,7 +244,16 @@ function updateBeurteilung(ele, pruefung_id)
|
||||
},
|
||||
error: loadError
|
||||
}).success(function(data){
|
||||
markAsSaved(ele);
|
||||
if(data.error != 'true')
|
||||
{
|
||||
markAsSaved(ele);
|
||||
}
|
||||
else
|
||||
{
|
||||
messageBox("message",data.errormsg, "red", "highlight", 1000);
|
||||
}
|
||||
|
||||
|
||||
}).complete(function(event, xhr, settings){
|
||||
|
||||
});
|
||||
|
||||
@@ -1,313 +1,370 @@
|
||||
<?php
|
||||
header( 'Expires: -1' );
|
||||
header( 'Last-Modified: ' . gmdate( 'D, d M Y H:i:s' ) . ' GMT' );
|
||||
header( 'Cache-Control: no-store, no-cache, must-revalidate' );
|
||||
header( 'Pragma: no-cache' );
|
||||
header('Content-Type: text/html;charset=UTF-8');
|
||||
|
||||
require_once('../../../../config/cis.config.inc.php');
|
||||
require_once('../../../../include/functions.inc.php');
|
||||
require_once('../../../../include/pruefungCis.class.php');
|
||||
require_once('../../../../include/lehrveranstaltung.class.php');
|
||||
require_once('../../../../include/benutzerberechtigung.class.php');
|
||||
require_once('../../../../include/studiensemester.class.php');
|
||||
require_once('../../../../include/note.class.php');
|
||||
require_once('../../../../include/pruefung.class.php');
|
||||
require_once('../../../../include/pruefungsanmeldung.class.php');
|
||||
require_once('../../../../include/student.class.php');
|
||||
require_once('../../../../include/pruefungstermin.class.php');
|
||||
require_once('../../../../include/datum.class.php');
|
||||
|
||||
$uid = get_uid();
|
||||
|
||||
$rechte = new benutzerberechtigung();
|
||||
$rechte->getBerechtigungen($uid);
|
||||
|
||||
$studiensemester = new studiensemester();
|
||||
$aktStudiensemester = $studiensemester->getaktorNext();
|
||||
|
||||
$method = filter_input(INPUT_POST, 'method');
|
||||
|
||||
switch($method)
|
||||
{
|
||||
case 'getPruefungMitarbeiter':
|
||||
if($rechte->isBerechtigt('lehre/pruefungsbeurteilungAdmin'))
|
||||
{
|
||||
$mitarbeiter_uid = filter_input(INPUT_POST, 'mitarbeiter_uid');
|
||||
}
|
||||
else
|
||||
{
|
||||
$mitarbeiter_uid = $uid;
|
||||
}
|
||||
$data = getPruefungMitarbeiter($mitarbeiter_uid);
|
||||
break;
|
||||
case 'getNoten':
|
||||
$data = getNoten();
|
||||
break;
|
||||
case 'saveBeurteilung':
|
||||
$lehrveranstaltung_id = filter_input(INPUT_POST, 'lehrveranstaltung_id');
|
||||
$student_uid = filter_input(INPUT_POST, 'student_uid');
|
||||
if($rechte->isBerechtigt('lehre/pruefungsbeurteilungAdmin'))
|
||||
{
|
||||
$mitarbeiter_uid = filter_input(INPUT_POST, 'mitarbeiter_uid');
|
||||
}
|
||||
else
|
||||
{
|
||||
$mitarbeiter_uid = $uid;
|
||||
}
|
||||
$note = filter_input(INPUT_POST, 'note');
|
||||
$pruefung_id = filter_input(INPUT_POST, 'pruefung_id');
|
||||
$datum = filter_input(INPUT_POST, 'datum');
|
||||
$anmerkung = filter_input(INPUT_POST, 'anmerkung');
|
||||
$pruefungsanmeldung_id = filter_input(INPUT_POST, 'pruefungsanmeldung_id');
|
||||
$data = saveBeurteilung($lehrveranstaltung_id, $student_uid, $mitarbeiter_uid, $note, $pruefung_id, $datum, $anmerkung, $pruefungsanmeldung_id, $uid);
|
||||
break;
|
||||
case 'updateBeurteilung':
|
||||
$pruefung_id = filter_input(INPUT_POST, 'pruefung_id');
|
||||
$note = filter_input(INPUT_POST, 'note');
|
||||
$anmerkung = filter_input(INPUT_POST, 'anmerkung');
|
||||
$data = updateBeurteilung($pruefung_id, $note, $uid, $anmerkung);
|
||||
break;
|
||||
case 'loadPruefung':
|
||||
$pruefung_id = filter_input(INPUT_POST, 'pruefung_id');
|
||||
$data = loadPruefung($pruefung_id);
|
||||
break;
|
||||
case 'getBeurteilung':
|
||||
$pruefungsanmeldung_id = filter_input(INPUT_POST, 'pruefungsanmeldung_id');
|
||||
$data = getBeurteilung($pruefungsanmeldung_id);
|
||||
break;
|
||||
case 'getAnmeldungenTermin':
|
||||
$lehrveranstaltung_id = filter_input(INPUT_POST, 'lehrveranstaltung_id');
|
||||
$pruefungstermin_id = filter_input(INPUT_POST, 'pruefungstermin_id');
|
||||
$data = getAnmeldungenTermin($lehrveranstaltung_id, $pruefungstermin_id);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
echo json_encode($data);
|
||||
|
||||
/**
|
||||
* Lädt alle Prüfungen eines Lektors/Mitarbeiters
|
||||
* @param type $uid UID des Lektors/Mitarbeiters
|
||||
* @return Array
|
||||
*/
|
||||
function getPruefungMitarbeiter($uid = null)
|
||||
{
|
||||
$lehrveranstaltung = new lehrveranstaltung();
|
||||
if($uid !== null)
|
||||
{
|
||||
$lehrveranstaltung->getLVByMitarbeiter($uid);
|
||||
$result = array();
|
||||
foreach($lehrveranstaltung->lehrveranstaltungen as $lv)
|
||||
{
|
||||
$pruefung = new pruefungCis();
|
||||
$pruefung->getPruefungByLv($lv->lehrveranstaltung_id);
|
||||
if(!empty($pruefung->lehrveranstaltungen))
|
||||
{
|
||||
foreach($pruefung->lehrveranstaltungen as $tempLv)
|
||||
{
|
||||
$prf = new pruefungCis($tempLv->pruefung_id);
|
||||
$prf->getTermineByPruefung();
|
||||
$tempLv->pruefung = $prf;
|
||||
}
|
||||
$lv->pruefung = $pruefung;
|
||||
array_push($result, $lv);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if(!empty($result))
|
||||
{
|
||||
$data['result']=$result;
|
||||
$data['error']='false';
|
||||
$data['errormsg']='';
|
||||
}
|
||||
else
|
||||
{
|
||||
$data['error']='true';
|
||||
$data['errormsg']="Keine Prüfungen vorhanden.";
|
||||
}
|
||||
return $data;
|
||||
}
|
||||
|
||||
/**
|
||||
* Lädt alle Noten per AJAX aus der Datenbank
|
||||
* @return Array
|
||||
*/
|
||||
function getNoten()
|
||||
{
|
||||
$note = new note();
|
||||
if($note->getAll())
|
||||
{
|
||||
$data['result']=$note->result;
|
||||
$data['error']='false';
|
||||
$data['errormsg']='';
|
||||
}
|
||||
else
|
||||
{
|
||||
$data['error']='true';
|
||||
$data['errormsg']=$note->errormsg;
|
||||
}
|
||||
return $data;
|
||||
}
|
||||
|
||||
/**
|
||||
* Speichert eine Beurteilung
|
||||
* @param int $lehrveranstaltung_id ID der Lehrveranstaltung
|
||||
* @param String $student_uid UID des Studenten
|
||||
* @param String $mitarbeiter_uid UID des Lektors
|
||||
* @param int $note Prüfungsnote
|
||||
* @param int $pruefung_id ID der Prüfung
|
||||
* @param String $datum Datum (YYYY-MM-DD)
|
||||
* @param String $anmerkung Anmerkung zur Beurteilung
|
||||
* @param int $pruefungsanmeldung_id ID der Anmeldung
|
||||
* @param String $uid UID des aktuellen Benutzers
|
||||
* @return Arrray
|
||||
*/
|
||||
function saveBeurteilung($lehrveranstaltung_id, $student_uid, $mitarbeiter_uid, $note, $pruefung_id, $datum, $anmerkung, $pruefungsanmeldung_id, $uid)
|
||||
{
|
||||
$pruefungCis = new pruefungCis($pruefung_id);
|
||||
$lehrveranstaltung = new lehrveranstaltung();
|
||||
$lehreinheiten = $lehrveranstaltung->getLehreinheitenOfLv($lehrveranstaltung_id, $student_uid);
|
||||
$pruefung = new pruefung();
|
||||
$pruefung->new = true;
|
||||
if(!empty($lehreinheiten))
|
||||
{
|
||||
$pruefung->lehreinheit_id = $lehreinheiten[0];
|
||||
$pruefung->student_uid = $student_uid;
|
||||
$pruefung->mitarbeiter_uid = $mitarbeiter_uid;
|
||||
$pruefung->note = $note;
|
||||
$pruefung->pruefungstyp_kurzbz = $pruefungCis->pruefungstyp_kurzbz;
|
||||
$pruefung->datum = $datum;
|
||||
$pruefung->anmerkung = $anmerkung;
|
||||
$pruefung->pruefungsanmeldung_id = $pruefungsanmeldung_id;
|
||||
$pruefung->insertvon = $uid;
|
||||
$pruefung->insertamum = date('Y-m-d H:i:s');
|
||||
|
||||
$pruefungsanmeldung = new pruefungsanmeldung($pruefungsanmeldung_id);
|
||||
$pruefungstermin = new pruefungstermin($pruefungsanmeldung->pruefungstermin_id);
|
||||
|
||||
$datum = new datum();
|
||||
// var_dump(date("Y-m-d", time()));
|
||||
// var_dump($pruefungstermin->von);
|
||||
if($datum->between("", date("Y-m-d", time()), $pruefungstermin->von))
|
||||
{
|
||||
if($pruefung->save())
|
||||
{
|
||||
$data['result']=$pruefung->pruefung_id;
|
||||
$data['error']='false';
|
||||
$data['errormsg']='';
|
||||
}
|
||||
else
|
||||
{
|
||||
$data['error']='true';
|
||||
$data['errormsg']=$pruefung->errormsg;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$data['error']='true';
|
||||
$data['errormsg']="Prüfungstermin liegt nicht in der Vergangenheit.";
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$data['error']='true';
|
||||
$data['errormsg']="Keine Lehreinheiten vorhanden.";
|
||||
}
|
||||
|
||||
return $data;
|
||||
}
|
||||
|
||||
/**
|
||||
* Aktualisiert den Datensatz einer Beurteilung
|
||||
* @param int $pruefung_id ID der Prüfung
|
||||
* @param int $note Prüfungsnote
|
||||
* @param String $uid UID des aktuellen Benutzers
|
||||
* @return Array
|
||||
*/
|
||||
function updateBeurteilung($pruefung_id, $note, $uid, $anmerkung)
|
||||
{
|
||||
$pruefung = new pruefung($pruefung_id);
|
||||
$pruefung->new = FALSE;
|
||||
$pruefung->note = $note;
|
||||
$pruefung->anmerkung = $anmerkung;
|
||||
$pruefung->updatevon = $uid;
|
||||
$pruefung->updateamum = date('Y-m-d H:i:s');
|
||||
if($pruefung->save())
|
||||
{
|
||||
$data['result']=$pruefung->pruefung_id;
|
||||
$data['error']='false';
|
||||
$data['errormsg']='';
|
||||
}
|
||||
else
|
||||
{
|
||||
$data['error']='true';
|
||||
$data['errormsg']=$pruefung->errormsg;
|
||||
}
|
||||
return $data;
|
||||
}
|
||||
|
||||
/**
|
||||
* Lädt die Beurteilung zu einer Anmeldung
|
||||
* @param int $pruefungsanmeldung_id ID einer Anmeldung
|
||||
* @return Array
|
||||
*/
|
||||
function getBeurteilung($pruefungsanmeldung_id)
|
||||
{
|
||||
$pruefung = new pruefung();
|
||||
if($pruefung->getPruefungByAnmeldung($pruefungsanmeldung_id))
|
||||
{
|
||||
$data['result']=$pruefung->pruefung_id;
|
||||
$data['error']='false';
|
||||
$data['errormsg']='';
|
||||
}
|
||||
else
|
||||
{
|
||||
$data['error']='true';
|
||||
$data['errormsg']=$pruefung->errormsg;
|
||||
}
|
||||
return $data;
|
||||
}
|
||||
|
||||
/**
|
||||
* Lädt alle Anmeldungen zu einem Prüfungstermin
|
||||
* @return Array
|
||||
*/
|
||||
function getAnmeldungenTermin($lehrveranstaltung_id, $pruefungstermin_id)
|
||||
{
|
||||
$pruefungsanmeldung = new pruefungsanmeldung();
|
||||
$anmeldungen = $pruefungsanmeldung->getAnmeldungenByTermin($pruefungstermin_id, $lehrveranstaltung_id);
|
||||
foreach($anmeldungen as $a)
|
||||
{
|
||||
$student = new student($a->uid);
|
||||
$temp = new stdClass();
|
||||
$temp->vorname = $student->vorname;
|
||||
$temp->nachname = $student->nachname;
|
||||
$temp->uid = $student->uid;
|
||||
$a->student = $temp;
|
||||
$pruefung = new pruefung();
|
||||
$pruefung->getPruefungByAnmeldung($a->pruefungsanmeldung_id);
|
||||
$a->pruefung = $pruefung;
|
||||
}
|
||||
if(!empty($anmeldungen))
|
||||
{
|
||||
$data['result']=$anmeldungen;
|
||||
$data['error']='false';
|
||||
$data['errormsg']='';
|
||||
}
|
||||
else
|
||||
{
|
||||
$data['error']='true';
|
||||
if($pruefungsanmeldung->errormsg !== null)
|
||||
{
|
||||
$data['errormsg']=$pruefungsanmeldung->errormsg;
|
||||
}
|
||||
else
|
||||
{
|
||||
$data['errormsg']= 'Keine Anmeldungen vorhanden';
|
||||
}
|
||||
}
|
||||
return $data;
|
||||
<?php
|
||||
header( 'Expires: -1' );
|
||||
header( 'Last-Modified: ' . gmdate( 'D, d M Y H:i:s' ) . ' GMT' );
|
||||
header( 'Cache-Control: no-store, no-cache, must-revalidate' );
|
||||
header( 'Pragma: no-cache' );
|
||||
header('Content-Type: text/html;charset=UTF-8');
|
||||
|
||||
require_once('../../../../config/cis.config.inc.php');
|
||||
require_once('../../../../include/functions.inc.php');
|
||||
require_once('../../../../include/pruefungCis.class.php');
|
||||
require_once('../../../../include/lehrveranstaltung.class.php');
|
||||
require_once('../../../../include/benutzerberechtigung.class.php');
|
||||
require_once('../../../../include/studiensemester.class.php');
|
||||
require_once('../../../../include/note.class.php');
|
||||
require_once('../../../../include/pruefung.class.php');
|
||||
require_once('../../../../include/pruefungsanmeldung.class.php');
|
||||
require_once('../../../../include/student.class.php');
|
||||
require_once('../../../../include/pruefungstermin.class.php');
|
||||
require_once('../../../../include/datum.class.php');
|
||||
|
||||
$uid = get_uid();
|
||||
|
||||
$rechte = new benutzerberechtigung();
|
||||
$rechte->getBerechtigungen($uid);
|
||||
|
||||
$studiensemester = new studiensemester();
|
||||
$aktStudiensemester = $studiensemester->getaktorNext();
|
||||
|
||||
$method = filter_input(INPUT_POST, 'method');
|
||||
|
||||
switch($method)
|
||||
{
|
||||
case 'getPruefungMitarbeiter':
|
||||
if($rechte->isBerechtigt('lehre/pruefungsbeurteilungAdmin'))
|
||||
{
|
||||
$mitarbeiter_uid = filter_input(INPUT_POST, 'mitarbeiter_uid');
|
||||
}
|
||||
else if($rechte->isBerechtigt('lehre/pruefungsbeurteilung'))
|
||||
{
|
||||
$mitarbeiter_uid = $uid;
|
||||
}
|
||||
else
|
||||
{
|
||||
$data['result']='false';
|
||||
$data['error']='true';
|
||||
$data['errormsg']='Sie haben keine Berechtigung.';
|
||||
break;
|
||||
}
|
||||
$data = getPruefungMitarbeiter($mitarbeiter_uid);
|
||||
break;
|
||||
case 'getNoten':
|
||||
if(!($rechte->isBerechtigt('lehre/pruefungsbeurteilungAdmin')) && !($rechte->isBerechtigt('lehre/pruefungsbeurteilung')))
|
||||
{
|
||||
$data['result']='false';
|
||||
$data['error']='true';
|
||||
$data['errormsg']='Sie haben keine Berechtigung.';
|
||||
break;
|
||||
}
|
||||
$data = getNoten();
|
||||
break;
|
||||
case 'saveBeurteilung':
|
||||
$lehrveranstaltung_id = filter_input(INPUT_POST, 'lehrveranstaltung_id');
|
||||
$student_uid = filter_input(INPUT_POST, 'student_uid');
|
||||
if($rechte->isBerechtigt('lehre/pruefungsbeurteilungAdmin'))
|
||||
{
|
||||
$mitarbeiter_uid = filter_input(INPUT_POST, 'mitarbeiter_uid');
|
||||
}
|
||||
else if($rechte->isBerechtigt('lehre/pruefungsbeurteilung'))
|
||||
{
|
||||
$mitarbeiter_uid = $uid;
|
||||
}
|
||||
else
|
||||
{
|
||||
$data['result']='false';
|
||||
$data['error']='true';
|
||||
$data['errormsg']='Sie haben keine Berechtigung.';
|
||||
break;
|
||||
}
|
||||
$note = filter_input(INPUT_POST, 'note');
|
||||
$pruefung_id = filter_input(INPUT_POST, 'pruefung_id');
|
||||
$datum = filter_input(INPUT_POST, 'datum');
|
||||
$anmerkung = filter_input(INPUT_POST, 'anmerkung');
|
||||
$pruefungsanmeldung_id = filter_input(INPUT_POST, 'pruefungsanmeldung_id');
|
||||
$data = saveBeurteilung($lehrveranstaltung_id, $student_uid, $mitarbeiter_uid, $note, $pruefung_id, $datum, $anmerkung, $pruefungsanmeldung_id, $uid);
|
||||
break;
|
||||
case 'updateBeurteilung':
|
||||
if($rechte->isBerechtigt('lehre/pruefungsbeurteilungAdmin'))
|
||||
{
|
||||
$mitarbeiter_uid = filter_input(INPUT_POST, 'mitarbeiter_uid');
|
||||
}
|
||||
else if($rechte->isBerechtigt('lehre/pruefungsbeurteilung'))
|
||||
{
|
||||
$mitarbeiter_uid = $uid;
|
||||
}
|
||||
else
|
||||
{
|
||||
$data['result']='false';
|
||||
$data['error']='true';
|
||||
$data['errormsg']='Sie haben keine Berechtigung.';
|
||||
break;
|
||||
}
|
||||
$pruefung_id = filter_input(INPUT_POST, 'pruefung_id');
|
||||
$note = filter_input(INPUT_POST, 'note');
|
||||
$anmerkung = filter_input(INPUT_POST, 'anmerkung');
|
||||
$data = updateBeurteilung($pruefung_id, $note, $mitarbeiter_uid, $anmerkung);
|
||||
break;
|
||||
case 'loadPruefung':
|
||||
if(!($rechte->isBerechtigt('lehre/pruefungsbeurteilungAdmin')) && ($rechte->isBerechtigt('lehre/pruefungsbeurteilung')))
|
||||
{
|
||||
$data['result']='false';
|
||||
$data['error']='true';
|
||||
$data['errormsg']='Sie haben keine Berechtigung.';
|
||||
break;
|
||||
}
|
||||
$pruefung_id = filter_input(INPUT_POST, 'pruefung_id');
|
||||
$data = loadPruefung($pruefung_id);
|
||||
break;
|
||||
case 'getBeurteilung':
|
||||
if(!($rechte->isBerechtigt('lehre/pruefungsbeurteilungAdmin')) && !($rechte->isBerechtigt('lehre/pruefungsbeurteilung')))
|
||||
{
|
||||
$data['result']='false';
|
||||
$data['error']='true';
|
||||
$data['errormsg']='Sie haben keine Berechtigung.';
|
||||
break;
|
||||
}
|
||||
$pruefungsanmeldung_id = filter_input(INPUT_POST, 'pruefungsanmeldung_id');
|
||||
$data = getBeurteilung($pruefungsanmeldung_id);
|
||||
break;
|
||||
case 'getAnmeldungenTermin':
|
||||
if(!($rechte->isBerechtigt('lehre/pruefungsbeurteilungAdmin')) && !($rechte->isBerechtigt('lehre/pruefungsbeurteilung')))
|
||||
{
|
||||
$data['result']='false';
|
||||
$data['error']='true';
|
||||
$data['errormsg']='Sie haben keine Berechtigung.';
|
||||
break;
|
||||
}
|
||||
$lehrveranstaltung_id = filter_input(INPUT_POST, 'lehrveranstaltung_id');
|
||||
$pruefungstermin_id = filter_input(INPUT_POST, 'pruefungstermin_id');
|
||||
$data = getAnmeldungenTermin($lehrveranstaltung_id, $pruefungstermin_id);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
echo json_encode($data);
|
||||
|
||||
/**
|
||||
* Lädt alle Prüfungen eines Lektors/Mitarbeiters
|
||||
* @param type $uid UID des Lektors/Mitarbeiters
|
||||
* @return Array
|
||||
*/
|
||||
function getPruefungMitarbeiter($uid = null)
|
||||
{
|
||||
$lehrveranstaltung = new lehrveranstaltung();
|
||||
if($uid !== null)
|
||||
{
|
||||
$lehrveranstaltung->getLVByMitarbeiter($uid);
|
||||
$result = array();
|
||||
foreach($lehrveranstaltung->lehrveranstaltungen as $lv)
|
||||
{
|
||||
$pruefung = new pruefungCis();
|
||||
$pruefung->getPruefungByLv($lv->lehrveranstaltung_id);
|
||||
if(!empty($pruefung->lehrveranstaltungen))
|
||||
{
|
||||
foreach($pruefung->lehrveranstaltungen as $tempLv)
|
||||
{
|
||||
$prf = new pruefungCis($tempLv->pruefung_id);
|
||||
$prf->getTermineByPruefung();
|
||||
$tempLv->pruefung = $prf;
|
||||
}
|
||||
$lv->pruefung = $pruefung;
|
||||
array_push($result, $lv);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if(!empty($result))
|
||||
{
|
||||
$data['result']=$result;
|
||||
$data['error']='false';
|
||||
$data['errormsg']='';
|
||||
}
|
||||
else
|
||||
{
|
||||
$data['error']='true';
|
||||
$data['errormsg']="Keine Prüfungen vorhanden.";
|
||||
}
|
||||
return $data;
|
||||
}
|
||||
|
||||
/**
|
||||
* Lädt alle Noten per AJAX aus der Datenbank
|
||||
* @return Array
|
||||
*/
|
||||
function getNoten()
|
||||
{
|
||||
$note = new note();
|
||||
if($note->getAll())
|
||||
{
|
||||
$data['result']=$note->result;
|
||||
$data['error']='false';
|
||||
$data['errormsg']='';
|
||||
}
|
||||
else
|
||||
{
|
||||
$data['error']='true';
|
||||
$data['errormsg']=$note->errormsg;
|
||||
}
|
||||
return $data;
|
||||
}
|
||||
|
||||
/**
|
||||
* Speichert eine Beurteilung
|
||||
* @param int $lehrveranstaltung_id ID der Lehrveranstaltung
|
||||
* @param String $student_uid UID des Studenten
|
||||
* @param String $mitarbeiter_uid UID des Lektors
|
||||
* @param int $note Prüfungsnote
|
||||
* @param int $pruefung_id ID der Prüfung
|
||||
* @param String $datum Datum (YYYY-MM-DD)
|
||||
* @param String $anmerkung Anmerkung zur Beurteilung
|
||||
* @param int $pruefungsanmeldung_id ID der Anmeldung
|
||||
* @param String $uid UID des aktuellen Benutzers
|
||||
* @return Arrray
|
||||
*/
|
||||
function saveBeurteilung($lehrveranstaltung_id, $student_uid, $mitarbeiter_uid, $note, $pruefung_id, $datum, $anmerkung, $pruefungsanmeldung_id, $uid)
|
||||
{
|
||||
$pruefungCis = new pruefungCis($pruefung_id);
|
||||
$lehrveranstaltung = new lehrveranstaltung();
|
||||
$lehreinheiten = $lehrveranstaltung->getLehreinheitenOfLv($lehrveranstaltung_id, $student_uid);
|
||||
$pruefung = new pruefung();
|
||||
$pruefung->new = true;
|
||||
if(!empty($lehreinheiten))
|
||||
{
|
||||
$pruefung->lehreinheit_id = $lehreinheiten[0];
|
||||
$pruefung->student_uid = $student_uid;
|
||||
$pruefung->mitarbeiter_uid = $mitarbeiter_uid;
|
||||
$pruefung->note = $note;
|
||||
$pruefung->pruefungstyp_kurzbz = $pruefungCis->pruefungstyp_kurzbz;
|
||||
$pruefung->datum = $datum;
|
||||
$pruefung->anmerkung = $anmerkung;
|
||||
$pruefung->pruefungsanmeldung_id = $pruefungsanmeldung_id;
|
||||
$pruefung->insertvon = $uid;
|
||||
$pruefung->insertamum = date('Y-m-d H:i:s');
|
||||
|
||||
$pruefungsanmeldung = new pruefungsanmeldung($pruefungsanmeldung_id);
|
||||
$pruefungstermin = new pruefungstermin($pruefungsanmeldung->pruefungstermin_id);
|
||||
|
||||
$datum = new datum();
|
||||
// var_dump(date("Y-m-d", time()));
|
||||
// var_dump($pruefungstermin->von);
|
||||
if($datum->between("", date("Y-m-d", time()), $pruefungstermin->von))
|
||||
{
|
||||
if($pruefung->save())
|
||||
{
|
||||
$data['result']=$pruefung->pruefung_id;
|
||||
$data['error']='false';
|
||||
$data['errormsg']='';
|
||||
}
|
||||
else
|
||||
{
|
||||
$data['error']='true';
|
||||
$data['errormsg']=$pruefung->errormsg;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$data['error']='true';
|
||||
$data['errormsg']="Prüfungstermin liegt nicht in der Vergangenheit.";
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$data['error']='true';
|
||||
$data['errormsg']="Keine Lehreinheiten vorhanden.";
|
||||
}
|
||||
|
||||
return $data;
|
||||
}
|
||||
|
||||
/**
|
||||
* Aktualisiert den Datensatz einer Beurteilung
|
||||
* @param int $pruefung_id ID der Prüfung
|
||||
* @param int $note Prüfungsnote
|
||||
* @param String $uid UID des aktuellen Benutzers
|
||||
* @return Array
|
||||
*/
|
||||
function updateBeurteilung($pruefung_id, $note, $uid, $anmerkung)
|
||||
{
|
||||
$pruefung = new pruefung($pruefung_id);
|
||||
$pruefung->new = FALSE;
|
||||
$pruefung->note = $note;
|
||||
$pruefung->anmerkung = $anmerkung;
|
||||
$pruefung->updatevon = $uid;
|
||||
$pruefung->updateamum = date('Y-m-d H:i:s');
|
||||
if($pruefung->save())
|
||||
{
|
||||
$data['result']=$pruefung->pruefung_id;
|
||||
$data['error']='false';
|
||||
$data['errormsg']='';
|
||||
}
|
||||
else
|
||||
{
|
||||
$data['error']='true';
|
||||
$data['errormsg']=$pruefung->errormsg;
|
||||
}
|
||||
return $data;
|
||||
}
|
||||
|
||||
/**
|
||||
* Lädt die Beurteilung zu einer Anmeldung
|
||||
* @param int $pruefungsanmeldung_id ID einer Anmeldung
|
||||
* @return Array
|
||||
*/
|
||||
function getBeurteilung($pruefungsanmeldung_id)
|
||||
{
|
||||
$pruefung = new pruefung();
|
||||
if($pruefung->getPruefungByAnmeldung($pruefungsanmeldung_id))
|
||||
{
|
||||
$data['result']=$pruefung->pruefung_id;
|
||||
$data['error']='false';
|
||||
$data['errormsg']='';
|
||||
}
|
||||
else
|
||||
{
|
||||
$data['error']='true';
|
||||
$data['errormsg']=$pruefung->errormsg;
|
||||
}
|
||||
return $data;
|
||||
}
|
||||
|
||||
/**
|
||||
* Lädt alle Anmeldungen zu einem Prüfungstermin
|
||||
* @return Array
|
||||
*/
|
||||
function getAnmeldungenTermin($lehrveranstaltung_id, $pruefungstermin_id)
|
||||
{
|
||||
$pruefungsanmeldung = new pruefungsanmeldung();
|
||||
$anmeldungen = $pruefungsanmeldung->getAnmeldungenByTermin($pruefungstermin_id, $lehrveranstaltung_id);
|
||||
foreach($anmeldungen as $a)
|
||||
{
|
||||
$student = new student($a->uid);
|
||||
$temp = new stdClass();
|
||||
$temp->vorname = $student->vorname;
|
||||
$temp->nachname = $student->nachname;
|
||||
$temp->uid = $student->uid;
|
||||
$a->student = $temp;
|
||||
$pruefung = new pruefung();
|
||||
$pruefung->getPruefungByAnmeldung($a->pruefungsanmeldung_id);
|
||||
$a->pruefung = $pruefung;
|
||||
}
|
||||
if(!empty($anmeldungen))
|
||||
{
|
||||
$data['result']=$anmeldungen;
|
||||
$data['error']='false';
|
||||
$data['errormsg']='';
|
||||
}
|
||||
else
|
||||
{
|
||||
$data['error']='true';
|
||||
if($pruefungsanmeldung->errormsg !== null)
|
||||
{
|
||||
$data['errormsg']=$pruefungsanmeldung->errormsg;
|
||||
}
|
||||
else
|
||||
{
|
||||
$data['errormsg']= 'Keine Anmeldungen vorhanden';
|
||||
}
|
||||
}
|
||||
return $data;
|
||||
}
|
||||
File diff suppressed because it is too large
Load Diff
@@ -33,7 +33,7 @@ $user = get_uid();
|
||||
$sprache=getSprache();
|
||||
$p = new phrasen($sprache);
|
||||
|
||||
|
||||
$is_lector=false;
|
||||
if(check_lektor($user))
|
||||
$is_lector=true;
|
||||
|
||||
@@ -102,7 +102,7 @@ $openpath = DOC_ROOT.'/documents/'.strtolower($stg_obj->kuerzel).'/'.$lv_obj->se
|
||||
if(is_file($openpath . $inhalt))
|
||||
{
|
||||
writeCISlog('DELETE', "rm -r '$openpath$inhalt'");
|
||||
exec("rm -r '$openpath$inhalt'");
|
||||
exec("rm -r ".escapeshellarg($openpath.$inhalt));
|
||||
echo '<center>'.$p->t('global/erfolgreichgelöscht').'</center>';
|
||||
}
|
||||
else
|
||||
@@ -132,11 +132,11 @@ $openpath = DOC_ROOT.'/documents/'.strtolower($stg_obj->kuerzel).'/'.$lv_obj->se
|
||||
{
|
||||
if(!stristr($fn, '.php') && !stristr($fn, '.php3') &&
|
||||
!stristr($fn,'.php4') && !stristr($fn, '.php5') &&
|
||||
!stristr($fn, '.cgi') && !stristr($fn, '.pl'))
|
||||
!stristr($fn, '.cgi') && !stristr($fn, '.pl') && !stristr($fn, '.phtml'))
|
||||
{
|
||||
if(move_uploaded_file($_FILES['userfile']['tmp_name'],$openpath . $fn))
|
||||
{
|
||||
exec('sudo chown www-data:teacher "'.$openpath.$fn.'"');
|
||||
exec('sudo chown www-data:teacher '.escapeshellarg($openpath.$fn));
|
||||
echo '<center>'.$p->t('semesterplan/fileErfolgreichHochgeladen').'</center>';
|
||||
}
|
||||
else
|
||||
@@ -181,4 +181,4 @@ $openpath = DOC_ROOT.'/documents/'.strtolower($stg_obj->kuerzel).'/'.$lv_obj->se
|
||||
?>
|
||||
</table>
|
||||
</body>
|
||||
</html>
|
||||
</html>
|
||||
|
||||
@@ -623,18 +623,18 @@
|
||||
}
|
||||
else
|
||||
{
|
||||
if(!stristr($uploadfile, '.php') && !stristr($uploadfile, '.cgi') && !stristr($uploadfile, '.pl') && $file_name!='.htaccess')
|
||||
if(!stristr($uploadfile, '.php') && !stristr($uploadfile, '.cgi') && !stristr($uploadfile, '.pl') && !stristr($uploadfile, '.phtml') && !stristr($file_name,'.htaccess'))
|
||||
{
|
||||
if(copy($_FILES[$file]['tmp_name'], $uploadfile))
|
||||
{
|
||||
exec('chmod 664 "'.$uploadfile.'"');
|
||||
exec('chmod 664 '.escapeshellarg($uploadfile));
|
||||
if($islector)
|
||||
{
|
||||
exec('sudo chown :teacher "'.$uploadfile.'"');
|
||||
exec('sudo chown :teacher '.escapeshellarg($uploadfile));
|
||||
}
|
||||
else
|
||||
{
|
||||
exec('sudo chown :student "'.$uploadfile.'"');
|
||||
exec('sudo chown :student '.escapeshellarg($uploadfile));
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -646,18 +646,18 @@
|
||||
}
|
||||
else
|
||||
{
|
||||
if(!stristr($uploadfile, '.php') && !stristr($uploadfile, '.cgi') && !stristr($uploadfile, '.pl') && $file_name!='.htaccess')
|
||||
if(!stristr($uploadfile, '.php') && !stristr($uploadfile, '.cgi') && !stristr($uploadfile, '.pl') && !stristr($uploadfile, '.phtml') && !stristr($file_name,'.htaccess'))
|
||||
{
|
||||
if(copy($_FILES[$file]['tmp_name'], $uploadfile))
|
||||
{
|
||||
exec('chmod 664 "'.$uploadfile.'"');
|
||||
exec('chmod 664 '.escapeshellarg($uploadfile));
|
||||
if($islector)
|
||||
{
|
||||
exec('sudo chown :teacher "'.$uploadfile.'"');
|
||||
exec('sudo chown :teacher '.escapeshellarg($uploadfile));
|
||||
}
|
||||
else
|
||||
{
|
||||
exec('sudo chown :student "'.$uploadfile.'"');
|
||||
exec('sudo chown :student '.escapeshellarg($uploadfile));
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -679,18 +679,18 @@
|
||||
}
|
||||
else
|
||||
{
|
||||
if(!stristr($uploadfile, '.php') && !stristr($uploadfile, '.cgi') && !stristr($uploadfile, '.pl') && $file_name!='.htaccess')
|
||||
if(!stristr($uploadfile, '.php') && !stristr($uploadfile, '.cgi') && !stristr($uploadfile, '.pl') && !stristr($uploadfile, '.phtml') && !stristr($file_name,'.htaccess'))
|
||||
{
|
||||
if(copy($_FILES[$file]['tmp_name'], $uploadfile))
|
||||
{
|
||||
exec('chmod 664 "'.$uploadfile.'"');
|
||||
exec('chmod 664 '.escapeshellarg($uploadfile));
|
||||
if($islector)
|
||||
{
|
||||
exec('sudo chown :teacher "'.$uploadfile.'"');
|
||||
exec('sudo chown :teacher '.escapeshellarg($uploadfile));
|
||||
}
|
||||
else
|
||||
{
|
||||
exec('sudo chown :student "'.$uploadfile.'"');
|
||||
exec('sudo chown :student '.escapeshellarg($uploadfile));
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -702,18 +702,18 @@
|
||||
}
|
||||
else
|
||||
{
|
||||
if(!stristr($uploadfile, '.php') && !stristr($uploadfile, '.cgi') && !stristr($uploadfile, '.pl') && $file_name!='.htaccess')
|
||||
if(!stristr($uploadfile, '.php') && !stristr($uploadfile, '.cgi') && !stristr($uploadfile, '.pl') && !stristr($uploadfile, '.phtml') && !stristr($file_name,'.htaccess'))
|
||||
{
|
||||
if(copy($_FILES[$file]['tmp_name'], $uploadfile))
|
||||
{
|
||||
exec('chmod 664 "'.$uploadfile.'"');
|
||||
exec('chmod 664 '.escapeshellarg($uploadfile));
|
||||
if($islector)
|
||||
{
|
||||
exec('sudo chown :teacher "'.$uploadfile.'"');
|
||||
exec('sudo chown :teacher '.escapeshellarg($uploadfile));
|
||||
}
|
||||
else
|
||||
{
|
||||
exec('sudo chown :student "'.$uploadfile.'"');
|
||||
exec('sudo chown :student '.escapeshellarg($uploadfile));
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -848,15 +848,15 @@
|
||||
if(!@is_dir($dest_create_dir->path.'/'.$new_dir_name_text) && !@file_exists($dest_create_dir->path.'/'.$new_dir_name_text) && $new_dir_name_text != "")
|
||||
{
|
||||
@mkdir($dest_create_dir->path.'/'.$new_dir_name_text);
|
||||
exec('chmod 775 "'.$dest_create_dir->path.'/'.$new_dir_name_text.'"');
|
||||
exec('chmod 775 '.escapeshellarg($dest_create_dir->path.'/'.$new_dir_name_text));
|
||||
|
||||
if($islector)
|
||||
{
|
||||
exec('sudo chown :teacher "'.$dest_create_dir->path.'/'.$new_dir_name_text.'"');
|
||||
exec('sudo chown :teacher '.escapeshellarg($dest_create_dir->path.'/'.$new_dir_name_text));
|
||||
}
|
||||
else
|
||||
{
|
||||
exec('sudo chown :student "'.$dest_create_dir->path.'/'.$new_dir_name_text.'"');
|
||||
exec('sudo chown :student '.escapeshellarg($dest_create_dir->path.'/'.$new_dir_name_text));
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1112,7 +1112,7 @@
|
||||
if(@is_dir($dest_dir->path.'/'.$entry))
|
||||
{
|
||||
writeCISlog('DELETE', 'rm -r "'.$dest_dir->path.'/'.$entry.'"');
|
||||
exec('rm -r "'.$dest_dir->path.'/'.$entry.'"');
|
||||
exec('rm -r '.escapeshellarg($dest_dir->path.'/'.$entry));
|
||||
}
|
||||
|
||||
unset($check_state);
|
||||
@@ -1318,9 +1318,13 @@
|
||||
$link_path = str_replace("+","%20",$link_path);
|
||||
echo "</b></td><td align=\"left\" class='MarkLine'><b><font face=\"Arial,Helvetica,sans-serif\" color=\"#000000\" size=\"2\"><a href=\"$link_path\" target=\"_blank\"> <img src=\"../../../skin/images/file.gif\" border=\"0\"> ".htmlentities($entry, ENT_QUOTES, 'UTF-8')." </a></font>";
|
||||
|
||||
$new_file_name_='';
|
||||
if(isset($_POST['new_file_name'.$file_count]))
|
||||
$new_file_name_ = $_POST['new_file_name'.$file_count];
|
||||
|
||||
if(stristr($new_file_name_,'..'))
|
||||
die('Invalid Parameter detected');
|
||||
|
||||
if(isset($rename_file) && isset($check_state))
|
||||
{
|
||||
echo "</b></td><td align=\"middle\" class='MarkLine'><b><font face=\"Arial,Helvetica,sans-serif\" color=\"#000000\" size=\"2\"><input type=\"text\" name=\"new_file_name$file_count\" value=\"$entry\"> <input type=\"submit\" name=\"confirm_rename\" value=\"OK\"></font>";
|
||||
@@ -1331,7 +1335,7 @@
|
||||
{
|
||||
if(!@file_exists($dest_dir->path.'/'.$new_file_name_) && !@is_dir($dest_dir->path.'/'.$new_file_name_))
|
||||
{
|
||||
if(!stristr($new_file_name_, '.php') && !stristr($new_file_name_, '.cgi') && !stristr($new_file_name_, '.pl') && $new_file_name_!='.htaccess')
|
||||
if(!stristr($new_file_name_, '.php') && !stristr($new_file_name_, '.cgi') && !stristr($new_file_name_, '.pl') && !stristr($new_file_name_, '.phtml') && !stristr($new_file_name_,'.htaccess'))
|
||||
{
|
||||
rename($dest_dir->path.'/'.$entry, $dest_dir->path.'/'.$new_file_name_);
|
||||
|
||||
@@ -1359,7 +1363,7 @@
|
||||
if(!@is_dir($dest_dir->path.'/'.$entry))
|
||||
{
|
||||
writeCISlog('DELETE', 'rm -r "'.$dest_dir->path.'/'.$entry.'"');
|
||||
exec('rm -r "'.$dest_dir->path.'/'.$entry.'"');
|
||||
exec('rm -r '.escapeshellarg($dest_dir->path.'/'.$entry));
|
||||
}
|
||||
|
||||
unset($check_state);
|
||||
|
||||
+103
-14
@@ -128,8 +128,8 @@ function jumpKalender(){
|
||||
else if (document.getElementById('studiensemester').value == '') {
|
||||
alert("<?php echo $p->t('lvplan/bitteEinStudiensemesterAuswaehlen');?>");
|
||||
}
|
||||
else {window.open ('stpl_kalender.php?type=verband&stg_kz='+document.getElementById('stg_kz_semplan').value+'&sem='+document.getElementById('sem').value
|
||||
+'&ver='+document.getElementById('ver').value+'&grp='+document.getElementById('grp').value+'&begin='+document.getElementById('studiensemester').value+'&format=html', '_blank');
|
||||
else {window.open ('stpl_kalender.php?type=verband&stg_kz='+document.getElementById('stg_kz_semplan').value+'&sem='+document.getElementById('sem_semplan').value
|
||||
+'&ver='+document.getElementById('ver_semplan').value+'&grp='+document.getElementById('grp_semplan').value+'&begin='+document.getElementById('studiensemester').value+'&format=html', '_blank');
|
||||
}
|
||||
}
|
||||
function checkSetStudiengang(){
|
||||
@@ -179,6 +179,95 @@ $(document).ready(function()
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
function LoadSemester(type)
|
||||
{
|
||||
if(typeof type=='undefined')
|
||||
type='';
|
||||
|
||||
var studiengang_kz = $('#stg_kz'+type).val();
|
||||
$.ajax({
|
||||
url: "lvplan_autocomplete.php",
|
||||
data: { 'autocomplete':'getSemester',
|
||||
'stg_kz':studiengang_kz
|
||||
},
|
||||
type: "POST",
|
||||
dataType: "json",
|
||||
success: function(data)
|
||||
{
|
||||
$("#sem"+type).empty();
|
||||
$("#sem"+type).append('<option value=""><?php echo $p->t('lvplan/sem'); ?></option>');
|
||||
$.each(data, function(i, data){
|
||||
$("#sem"+type).append('<option value="'+data+'">'+data+'</option>');
|
||||
});
|
||||
},
|
||||
error: function(data)
|
||||
{
|
||||
alert("Fehler beim Laden der Daten");
|
||||
}
|
||||
});
|
||||
}
|
||||
function LoadVerband(type)
|
||||
{
|
||||
if(typeof type=='undefined')
|
||||
type='';
|
||||
|
||||
var studiengang_kz = $('#stg_kz'+type).val();
|
||||
var semester = $('#sem'+type).val();
|
||||
$.ajax({
|
||||
url: "lvplan_autocomplete.php",
|
||||
data: { 'autocomplete':'getVerband',
|
||||
'stg_kz':studiengang_kz,
|
||||
'sem':semester
|
||||
},
|
||||
type: "POST",
|
||||
dataType: "json",
|
||||
success: function(data)
|
||||
{
|
||||
$("#ver"+type).empty();
|
||||
$("#ver"+type).append('<option value=""><?php echo $p->t('lvplan/ver'); ?></option>');
|
||||
$.each(data, function(i, data){
|
||||
$("#ver"+type).append('<option value="'+data+'">'+data+'</option>');
|
||||
});
|
||||
},
|
||||
error: function(data)
|
||||
{
|
||||
alert("Fehler beim Laden der Daten");
|
||||
}
|
||||
});
|
||||
}
|
||||
function LoadGruppe(type)
|
||||
{
|
||||
if(typeof type=='undefined')
|
||||
type='';
|
||||
|
||||
var studiengang_kz = $('#stg_kz'+type).val();
|
||||
var semester = $('#sem'+type).val();
|
||||
var verband = $('#ver'+type).val();
|
||||
$.ajax({
|
||||
url: "lvplan_autocomplete.php",
|
||||
data: { 'autocomplete':'getGruppe',
|
||||
'stg_kz':studiengang_kz,
|
||||
'sem':semester,
|
||||
'ver':verband
|
||||
},
|
||||
type: "POST",
|
||||
dataType: "json",
|
||||
success: function(data)
|
||||
{
|
||||
$("#grp"+type).empty();
|
||||
$("#grp"+type).append('<option value=""><?php echo $p->t('lvplan/grp'); ?></option>');
|
||||
$.each(data, function(i, data){
|
||||
$("#grp"+type).append('<option value="'+data+'">'+data+'</option>');
|
||||
});
|
||||
},
|
||||
error: function(data)
|
||||
{
|
||||
alert("Fehler beim Laden der Daten");
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
</script>
|
||||
</head>
|
||||
|
||||
@@ -282,7 +371,7 @@ $(document).ready(function()
|
||||
<table width="10%" border="0" cellpadding="0" cellspacing="3">
|
||||
<tr>
|
||||
<td width="20%" valign="middle">
|
||||
<select style="width:200px;" id="stg_kz" name="stg_kz">
|
||||
<select style="width:200px;" id="stg_kz" name="stg_kz" onchange="LoadSemester()">
|
||||
<option value="" selected>'.$p->t('lvplan/studiengangAuswaehlen').'</option>';
|
||||
|
||||
$num_rows=$db->db_num_rows($result_stg);
|
||||
@@ -296,7 +385,7 @@ $(document).ready(function()
|
||||
</select>
|
||||
</td>
|
||||
<td valign="middle">
|
||||
<select name="sem">
|
||||
<select id="sem" name="sem" onchange="LoadVerband()">
|
||||
<option value="0">'.$p->t('lvplan/sem').'</option>
|
||||
<option value="1">1</option>
|
||||
<option value="2">2</option>
|
||||
@@ -309,7 +398,7 @@ $(document).ready(function()
|
||||
</select>
|
||||
</td>
|
||||
<td valign="middle">
|
||||
<select name="ver">
|
||||
<select id="ver" name="ver" onchange="LoadGruppe()">
|
||||
<option value="0" selected>'.$p->t('lvplan/ver').'</option>
|
||||
<option value="A">A</option>
|
||||
<option value="B">B</option>
|
||||
@@ -321,14 +410,14 @@ $(document).ready(function()
|
||||
</select>
|
||||
</td>
|
||||
<td valign="middle" >
|
||||
<select name="grp">
|
||||
<select id="grp" name="grp">
|
||||
<option value="0" selected>'.$p->t('lvplan/grp').'</option>
|
||||
<option value="1">1</option>
|
||||
<option value="2">2</option>
|
||||
<option value="3">3</option>
|
||||
<option value="4">4</option>
|
||||
<option value="4">5</option>
|
||||
<option value="4">6</option>
|
||||
<option value="5">5</option>
|
||||
<option value="6">6</option>
|
||||
</select>
|
||||
</td>
|
||||
<td valign="bottom">
|
||||
@@ -350,7 +439,7 @@ if(!defined('CIS_LVPLAN_ARCHIVAUSWAHL_ANZEIGEN') || CIS_LVPLAN_ARCHIVAUSWAHL_ANZ
|
||||
<table border="0" cellpadding="0" cellspacing="3">
|
||||
<tr>
|
||||
<td valign="bottom">
|
||||
<select style="width:200px;" name="stg_kz_semplan" id="stg_kz_semplan">
|
||||
<select style="width:200px;" name="stg_kz_semplan" id="stg_kz_semplan" onchange="LoadSemester(\'_semplan\')">
|
||||
<option value="" selected>'.$p->t('lvplan/studiengangAuswaehlen').'</option>';
|
||||
|
||||
$num_rows=$db->db_num_rows($result_stg);
|
||||
@@ -364,7 +453,7 @@ if(!defined('CIS_LVPLAN_ARCHIVAUSWAHL_ANZEIGEN') || CIS_LVPLAN_ARCHIVAUSWAHL_ANZ
|
||||
</select>
|
||||
</td>
|
||||
<td valign="middle">
|
||||
<select name="sem" id="sem">
|
||||
<select name="sem" id="sem_semplan" onchange="LoadVerband(\'_semplan\')">
|
||||
<option value="01">'.$p->t('lvplan/sem').'</option>
|
||||
<option value="1">1</option>
|
||||
<option value="2">2</option>
|
||||
@@ -377,7 +466,7 @@ if(!defined('CIS_LVPLAN_ARCHIVAUSWAHL_ANZEIGEN') || CIS_LVPLAN_ARCHIVAUSWAHL_ANZ
|
||||
</select>
|
||||
</td>
|
||||
<td valign="middle">
|
||||
<select name="ver" id="ver">
|
||||
<select name="ver" id="ver_semplan" onchange="LoadGruppe(\'_semplan\')">
|
||||
<option value="0" selected>'.$p->t('lvplan/ver').'</option>
|
||||
<option value="A">A</option>
|
||||
<option value="B">B</option>
|
||||
@@ -389,14 +478,14 @@ if(!defined('CIS_LVPLAN_ARCHIVAUSWAHL_ANZEIGEN') || CIS_LVPLAN_ARCHIVAUSWAHL_ANZ
|
||||
</select>
|
||||
</td>
|
||||
<td valign="middle" >
|
||||
<select name="grp" id="grp">
|
||||
<select name="grp" id="grp_semplan">
|
||||
<option value="0" selected>'.$p->t('lvplan/grp').'</option>
|
||||
<option value="1">1</option>
|
||||
<option value="2">2</option>
|
||||
<option value="3">3</option>
|
||||
<option value="4">4</option>
|
||||
<option value="4">5</option>
|
||||
<option value="4">6</option>
|
||||
<option value="5">5</option>
|
||||
<option value="6">6</option>
|
||||
</select>
|
||||
</td></tr><tr>
|
||||
<td valign="middle" >';
|
||||
|
||||
@@ -20,32 +20,102 @@
|
||||
|
||||
require_once('../../../config/cis.config.inc.php');
|
||||
require_once('../../../include/basis_db.class.php');
|
||||
require_once('../../../include/benutzer.class.php');
|
||||
|
||||
require_once('../../../include/benutzer.class.php');
|
||||
require_once('../../../include/studiengang.class.php');
|
||||
require_once('../../../include/functions.inc.php');
|
||||
require_once('../../../include/lehrverband.class.php');
|
||||
|
||||
$uid = get_uid();
|
||||
|
||||
if (!$db = new basis_db())
|
||||
die('Es konnte keine Verbindung zum Server aufgebaut werden.');
|
||||
|
||||
if(isset($_REQUEST['autocomplete']) && $_REQUEST['autocomplete']=='benutzer')
|
||||
if(!isset($_REQUEST['autocomplete']))
|
||||
die('autocomplete param missing');
|
||||
|
||||
switch($_REQUEST['autocomplete'])
|
||||
{
|
||||
$search=trim((isset($_REQUEST['term']) ? $_REQUEST['term']:''));
|
||||
if (is_null($search) ||$search=='')
|
||||
case 'benutzer':
|
||||
$search=trim((isset($_REQUEST['term']) ? $_REQUEST['term']:''));
|
||||
if (is_null($search) ||$search=='')
|
||||
exit();
|
||||
|
||||
$benutzer = new benutzer();
|
||||
$searchItems = explode(' ',$search);
|
||||
if($benutzer->search($searchItems))
|
||||
{
|
||||
$result_obj = array();
|
||||
foreach($benutzer->result as $row)
|
||||
|
||||
$benutzer = new benutzer();
|
||||
$searchItems = explode(' ',$search);
|
||||
if($benutzer->search($searchItems))
|
||||
{
|
||||
$item['vorname']=html_entity_decode($row->vorname);
|
||||
$item['nachname']=html_entity_decode($row->nachname);
|
||||
$item['uid']=html_entity_decode($row->uid);
|
||||
$item['mitarbeiter_uid']=html_entity_decode($row->mitarbeiter_uid);
|
||||
$result_obj[]=$item;
|
||||
$result_obj = array();
|
||||
foreach($benutzer->result as $row)
|
||||
{
|
||||
$item['vorname']=html_entity_decode($row->vorname);
|
||||
$item['nachname']=html_entity_decode($row->nachname);
|
||||
$item['uid']=html_entity_decode($row->uid);
|
||||
$item['mitarbeiter_uid']=html_entity_decode($row->mitarbeiter_uid);
|
||||
$result_obj[]=$item;
|
||||
}
|
||||
echo json_encode($result_obj);
|
||||
}
|
||||
echo json_encode($result_obj);
|
||||
}
|
||||
exit;
|
||||
break;
|
||||
|
||||
case 'getSemester':
|
||||
$studiengang = new studiengang();
|
||||
$data = array();
|
||||
if($studiengang->load($_REQUEST['stg_kz']))
|
||||
{
|
||||
for($i=1;$i<=$studiengang->max_semester;$i++)
|
||||
{
|
||||
$data[]=$i;
|
||||
}
|
||||
echo json_encode($data);
|
||||
}
|
||||
else
|
||||
{
|
||||
echo $studiengang->errormsg;
|
||||
}
|
||||
break;
|
||||
case 'getVerband':
|
||||
$lvb = new lehrverband();
|
||||
$studiengang_kz=$_REQUEST['stg_kz'];
|
||||
$semester=$_REQUEST['sem'];
|
||||
$data = array();
|
||||
if($lvb->getlehrverband($studiengang_kz, $semester))
|
||||
{
|
||||
foreach($lvb->result as $row)
|
||||
{
|
||||
if(trim($row->verband)!='')
|
||||
$data[]=$row->verband;
|
||||
}
|
||||
$data = array_unique($data);
|
||||
echo json_encode($data);
|
||||
}
|
||||
else
|
||||
{
|
||||
echo $studiengang->errormsg;
|
||||
}
|
||||
break;
|
||||
case 'getGruppe':
|
||||
$lvb = new lehrverband();
|
||||
$studiengang_kz=$_REQUEST['stg_kz'];
|
||||
$semester=$_REQUEST['sem'];
|
||||
$verband=$_REQUEST['ver'];
|
||||
$data = array();
|
||||
if($lvb->getlehrverband($studiengang_kz, $semester, $verband))
|
||||
{
|
||||
foreach($lvb->result as $row)
|
||||
{
|
||||
if(trim($row->gruppe)!='')
|
||||
$data[]=$row->gruppe;
|
||||
}
|
||||
$data = array_unique($data);
|
||||
echo json_encode($data);
|
||||
}
|
||||
else
|
||||
{
|
||||
echo $studiengang->errormsg;
|
||||
}
|
||||
break;
|
||||
default:
|
||||
echo 'Invalid Parameter';
|
||||
break;
|
||||
}
|
||||
?>
|
||||
|
||||
@@ -24,6 +24,7 @@ require_once('../../../include/functions.inc.php');
|
||||
require_once('../../../include/datum.class.php');
|
||||
require_once('../../../include/benutzerberechtigung.class.php');
|
||||
require_once('../../../include/phrasen.class.php');
|
||||
require_once('../../../include/reservierung.class.php');
|
||||
|
||||
if (!$db = new basis_db())
|
||||
die($p->t('global/fehlerBeimOeffnenDerDatenbankverbindung'));
|
||||
@@ -32,6 +33,7 @@ $sprache = getSprache();
|
||||
$p=new phrasen($sprache);
|
||||
|
||||
$uid = get_uid();
|
||||
$uid = 'pam';
|
||||
|
||||
if (isset($_GET['id']))
|
||||
$id=$_GET['id'];
|
||||
@@ -54,23 +56,30 @@ if(!$rechte->isBerechtigt('lehre/reservierung:begrenzt', null, 'suid'))
|
||||
<link rel="stylesheet" href="../../../skin/style.css.php" type="text/css">
|
||||
</head>
|
||||
<body id="inhalt">
|
||||
<H2>
|
||||
<table class="tabcontent">
|
||||
<tr>
|
||||
<td> <a class="Item" href="index.php"><?php echo $p->t('lvplan/lehrveranstaltungsplan');?></a> >> <?php echo $p->t('lvplan/reservierungen');?></td>
|
||||
<td align="right"><A href="help/index.html" class="hilfe" target="_blank">HELP </A></td>
|
||||
</tr>
|
||||
</table>
|
||||
</H2>
|
||||
<h2><a class="Item" href="index.php"><?php echo $p->t('lvplan/lehrveranstaltungsplan');?></a> >> <?php echo $p->t('lvplan/reservierungen');?></h2>
|
||||
<?php
|
||||
|
||||
//Loeschen von Reservierungen
|
||||
if (isset($id))
|
||||
{
|
||||
if(!is_numeric($id))
|
||||
die('ungueltige ID');
|
||||
$sql_query="DELETE FROM campus.tbl_reservierung WHERE reservierung_id='".addslashes($id)."'";
|
||||
if($db->db_query($sql_query))
|
||||
echo '<b>'.$p->t('lvplan/reservierungWurdeGeloescht').'</b><br>';
|
||||
|
||||
$reservierung = new reservierung();
|
||||
if($reservierung->load($id))
|
||||
{
|
||||
if($reservierung->uid==$uid || $reservierung->insertvon==$uid || $rechte->isBerechtigt('lehre/reservierung', null, 'suid'))
|
||||
{
|
||||
if($reservierung->delete($id))
|
||||
echo '<b>'.$p->t('lvplan/reservierungWurdeGeloescht').'</b><br>';
|
||||
else
|
||||
echo $reservierung->errormsg;
|
||||
}
|
||||
else
|
||||
{
|
||||
echo '<b>'.$p->t('global/keineBerechtigung').'</b><br>';
|
||||
}
|
||||
}
|
||||
else
|
||||
echo '<b>'.$p->t('global/fehleraufgetreten').'!</b><br>';
|
||||
}
|
||||
@@ -81,7 +90,8 @@ if(!$rechte->isBerechtigt('lehre/reservierung:begrenzt', null, 'suid'))
|
||||
|
||||
//EIGENE
|
||||
$sql_query="SELECT * FROM campus.vw_reservierung
|
||||
WHERE datum>='$datum' AND uid='$uid'
|
||||
WHERE datum>=".$db->db_add_param($datum)."
|
||||
AND (uid=".$db->db_add_param($uid)." OR insertvon=".$db->db_add_param($uid).")
|
||||
ORDER BY datum, titel, ort_kurzbz, stunde";
|
||||
|
||||
if (!$erg_res=$db->db_query($sql_query))
|
||||
@@ -118,15 +128,15 @@ if(!$rechte->isBerechtigt('lehre/reservierung:begrenzt', null, 'suid'))
|
||||
$datum1 = $datum_obj->formatDatum($datum1, 'd.m.Y');
|
||||
if($insertamum!='')
|
||||
$insertamum = $datum_obj->formatDatum($insertamum, 'd.m.Y H:i:s');
|
||||
echo '<tr class="liste'.$zeile.'" title="'.$p->t('global/angelegtAm').' '.$insertamum.$p->t('global/von').' '.$insertvon.'">';
|
||||
echo '<td>'.$datum1.'</td>';
|
||||
echo '<td>'.$titel.'</td>';
|
||||
echo '<td>'.$stunde.'</td>';
|
||||
echo '<td>'.$ort_kurzbz.'</td>';
|
||||
echo '<td>'.$pers_uid.'</td>';
|
||||
echo '<td>'.$beschreibung.'<a name="liste'.$i.'"> </a></td>';
|
||||
echo '<tr class="liste'.$zeile.'" title="'.$p->t('global/angelegtAm').' '.$insertamum.' '.$p->t('global/von').' '.$insertvon.'">';
|
||||
echo '<td>'.$db->convert_html_chars($datum1).'</td>';
|
||||
echo '<td>'.$db->convert_html_chars($titel).'</td>';
|
||||
echo '<td>'.$db->convert_html_chars($stunde).'</td>';
|
||||
echo '<td>'.$db->convert_html_chars($ort_kurzbz).'</td>';
|
||||
echo '<td>'.$db->convert_html_chars($pers_uid).'</td>';
|
||||
echo '<td>'.$db->convert_html_chars($beschreibung).'<a name="liste'.$i.'"> </a></td>';
|
||||
$z=$i-1;
|
||||
if (($pers_uid==$uid)|| $rechte->isBerechtigt('lehre/reservierung', null, 'suid'))
|
||||
if (($pers_uid==$uid)|| ($insertvon==$uid) || $rechte->isBerechtigt('lehre/reservierung', null, 'suid'))
|
||||
echo '<td><A class="Item" href="stpl_reserve_list.php?id='.$id.(isset($_GET['alle'])?'&alle=true':'').'#liste'.$z.'">Delete</A></td>';
|
||||
echo '</tr>';
|
||||
}
|
||||
@@ -142,7 +152,7 @@ if(!$rechte->isBerechtigt('lehre/reservierung:begrenzt', null, 'suid'))
|
||||
|
||||
//ALLE
|
||||
$sql_query="SELECT * FROM campus.vw_reservierung
|
||||
WHERE datum>='$datum'
|
||||
WHERE datum>=".$db->db_add_param($datum)."
|
||||
ORDER BY datum, titel, ort_kurzbz, stunde";
|
||||
if (!$erg_res=$db->db_query($sql_query))
|
||||
die($db->db_last_error());
|
||||
@@ -179,15 +189,15 @@ if(!$rechte->isBerechtigt('lehre/reservierung:begrenzt', null, 'suid'))
|
||||
$datum = $datum_obj->formatDatum($datum, 'd.m.Y');
|
||||
if($insertamum!='')
|
||||
$insertamum = $datum_obj->formatDatum($insertamum, 'd.m.Y H:i:s');
|
||||
echo '<tr class="liste'.$zeile.'" title="'.$p->t('global/angelegtAm').' '.$insertamum.$p->t('global/von').' '.$insertvon.'">';
|
||||
echo '<td>'.$datum.'</td>';
|
||||
echo '<td>'.$titel.'</td>';
|
||||
echo '<td>'.$stunde.'</td>';
|
||||
echo '<td>'.$ort_kurzbz.'</td>';
|
||||
echo '<td>'.$pers_uid.'</td>';
|
||||
echo '<td>'.$beschreibung.'<a name="liste'.$i.'"> </a></td>';
|
||||
echo '<tr class="liste'.$zeile.'" title="'.$p->t('global/angelegtAm').' '.$insertamum.' '.$p->t('global/von').' '.$insertvon.'">';
|
||||
echo '<td>'.$db->convert_html_chars($datum).'</td>';
|
||||
echo '<td>'.$db->convert_html_chars($titel).'</td>';
|
||||
echo '<td>'.$db->convert_html_chars($stunde).'</td>';
|
||||
echo '<td>'.$db->convert_html_chars($ort_kurzbz).'</td>';
|
||||
echo '<td>'.$db->convert_html_chars($pers_uid).'</td>';
|
||||
echo '<td>'.$db->convert_html_chars($beschreibung).'<a name="liste'.$i.'"> </a></td>';
|
||||
$z=$i-1;
|
||||
if (($pers_uid==$uid) || $rechte->isBerechtigt('lehre/reservierung', null, 'suid'))
|
||||
if (($pers_uid==$uid) || ($insertvon==$uid) || $rechte->isBerechtigt('lehre/reservierung', null, 'suid'))
|
||||
echo '<td><A class="Item" href="stpl_reserve_list.php?id='.$id.(isset($_GET['alle'])?'&alle=true':'').'#liste'.$z.'">Delete</A></td>';
|
||||
echo '</tr>';
|
||||
}
|
||||
|
||||
@@ -45,6 +45,7 @@ $uid=get_uid();
|
||||
<HEAD>
|
||||
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<TITLE><?php echo $p->t('lvplan/lehrveranstaltungsplan').' '.CAMPUS_NAME;?></TITLE>
|
||||
<script src="../../../include/js/jquery1.9.min.js" type="text/javascript"></script>
|
||||
<script type="text/javascript">
|
||||
<!--
|
||||
function MM_jumpMenu(targ,selObj,restore)
|
||||
@@ -65,6 +66,86 @@ $uid=get_uid();
|
||||
e.checked = f.check_all.checked;
|
||||
}
|
||||
}
|
||||
|
||||
$(document).ready(function() {
|
||||
$("select[name='studiengang_kz']").change(function() {
|
||||
var studiengang_kz = $("select[name='studiengang_kz']").val();
|
||||
$.ajax({
|
||||
url: "lvplan_autocomplete.php",
|
||||
data: { 'autocomplete':'getSemester',
|
||||
'stg_kz':studiengang_kz
|
||||
},
|
||||
type: "POST",
|
||||
dataType: "json",
|
||||
success: function(data)
|
||||
{
|
||||
$("select[name='semester']").empty();
|
||||
$("select[name='semester']").append('<option value="">*</option>');
|
||||
$.each(data, function(i, data){
|
||||
$("select[name='semester']").append('<option value="'+data+'">'+data+'</option>');
|
||||
});
|
||||
},
|
||||
error: function(data)
|
||||
{
|
||||
alert("Fehler beim Laden der Daten");
|
||||
}
|
||||
});
|
||||
})
|
||||
|
||||
$("select[name='semester']").change(function() {
|
||||
var studiengang_kz = $("select[name='studiengang_kz']").val();
|
||||
var semester = $("select[name='semester']").val();
|
||||
$.ajax({
|
||||
url: "lvplan_autocomplete.php",
|
||||
data: { 'autocomplete':'getVerband',
|
||||
'stg_kz':studiengang_kz,
|
||||
'sem':semester
|
||||
},
|
||||
type: "POST",
|
||||
dataType: "json",
|
||||
success: function(data)
|
||||
{
|
||||
$("select[name='verband']").empty();
|
||||
$("select[name='verband']").append('<option value="">*</option>');
|
||||
$.each(data, function(i, data){
|
||||
$("select[name='verband']").append('<option value="'+data+'">'+data+'</option>');
|
||||
});
|
||||
},
|
||||
error: function(data)
|
||||
{
|
||||
alert("Fehler beim Laden der Daten");
|
||||
}
|
||||
});
|
||||
})
|
||||
|
||||
$("select[name='verband']").change(function() {
|
||||
var studiengang_kz = $("select[name='studiengang_kz']").val();
|
||||
var semester = $("select[name='semester']").val();
|
||||
var verband = $("select[name='verband']").val();
|
||||
$.ajax({
|
||||
url: "lvplan_autocomplete.php",
|
||||
data: { 'autocomplete':'getGruppe',
|
||||
'stg_kz':studiengang_kz,
|
||||
'sem':semester,
|
||||
'ver':verband
|
||||
},
|
||||
type: "POST",
|
||||
dataType: "json",
|
||||
success: function(data)
|
||||
{
|
||||
$("select[name='gruppe']").empty();
|
||||
$("select[name='gruppe']").append('<option value="">*</option>');
|
||||
$.each(data, function(i, data){
|
||||
$("select[name='gruppe']").append('<option value="'+data+'">'+data+'</option>');
|
||||
});
|
||||
},
|
||||
error: function(data)
|
||||
{
|
||||
alert("Fehler beim Laden der Daten");
|
||||
}
|
||||
});
|
||||
})
|
||||
});
|
||||
-->
|
||||
</script>
|
||||
<LINK rel="stylesheet" href="../../../skin/style.css.php" type="text/css">
|
||||
|
||||
@@ -34,14 +34,12 @@
|
||||
$uid=isset($_GET['uid'])?$_GET['uid']:(isset($_POST['uid'])?$_POST['uid']:get_uid());
|
||||
$uid=trim($uid);
|
||||
|
||||
$berechtigung=new benutzerberechtigung();
|
||||
$berechtigung->getBerechtigungen($uid);
|
||||
if ($berechtigung->isBerechtigt('admin')
|
||||
|| $berechtigung->isBerechtigt('lehre/reservierung', null, 's'))
|
||||
$raumres=true;
|
||||
else
|
||||
die('Keine Berechtigung fuer Lehre/Reservierung - Anzeige');
|
||||
unset($berechtigung);
|
||||
$rechte = new benutzerberechtigung();
|
||||
$rechte->getBerechtigungen($uid);
|
||||
|
||||
if(!$rechte->isBerechtigt('lehre/reservierung:begrenzt', null, 's') || !$rechte->isBerechtigt('admin'))
|
||||
die('<span class="error">Sie haben keine Berechtigung für diese Seite</span>');
|
||||
unset($rechte);
|
||||
|
||||
header('Content-Type: text/html;charset=UTF-8');
|
||||
?>
|
||||
|
||||
@@ -105,7 +105,7 @@ if(isset($_REQUEST['token']) && isset($_REQUEST['grp']))
|
||||
$mail_id=mail_id_generator();
|
||||
|
||||
/* call the shellpart at polyxena */
|
||||
$command = "ssh -p 22022 polyxena sudo /root/bin/mlistin.sh " . $_REQUEST['grp'] . " " . $mail_id . " 2>&1";
|
||||
$command = "ssh -p 22022 root@polyxena sudo /root/bin/mlistin.sh " . $_REQUEST['grp'] . " " . $mail_id . " 2>&1";
|
||||
exec($command);
|
||||
|
||||
/* ffe, 20051020 - do a little logging */
|
||||
|
||||
+233
-50
@@ -33,6 +33,7 @@ require_once('../../include/akte.class.php');
|
||||
require_once('../../include/konto.class.php');
|
||||
require_once('../../include/benutzer.class.php');
|
||||
require_once('../../include/vorlage.class.php');
|
||||
require_once('../../include/addon.class.php');
|
||||
|
||||
if (!$db = new basis_db())
|
||||
die('Fehler beim Oeffnen der Datenbankverbindung');
|
||||
@@ -89,31 +90,45 @@ if(isset($_GET['abschlusspruefung_id']))
|
||||
$params.='&abschlusspruefung_id='.$_GET['abschlusspruefung_id'];
|
||||
if(isset($_GET['typ']))
|
||||
$params.='&typ='.$_GET['typ'];
|
||||
|
||||
if(isset($_GET['all']))
|
||||
$params.='&all=1';
|
||||
if(isset($_GET['output']))
|
||||
$output=$_GET['output'];
|
||||
else
|
||||
$output='pdf';
|
||||
|
||||
$konto = new konto();
|
||||
if (($user == $_GET["uid"]) || $rechte->isBerechtigt('admin'))
|
||||
{
|
||||
if($xsl=='Inskription' && (!$konto->checkStudienbeitrag($user, $_GET["ss"])))
|
||||
die('Der Studienbeitrag wurde noch nicht bezahlt');
|
||||
|
||||
$buchungstypen = array();
|
||||
if(defined("CIS_DOKUMENTE_STUDIENBEITRAG_TYPEN"))
|
||||
{
|
||||
$buchungstypen = unserialize (CIS_DOKUMENTE_STUDIENBEITRAG_TYPEN);
|
||||
}
|
||||
|
||||
$stsem_zahlung = $konto->getLastStSemBuchungstypen($user, $buchungstypen);
|
||||
|
||||
if((($xsl=='Inskription') || ($xsl == 'Studienblatt')) && ($_GET["ss"] != $stsem_zahlung))
|
||||
{
|
||||
die('Der Studienbeitrag wurde noch nicht bezahlt');
|
||||
}
|
||||
if(isset($_GET['buchungsnummern']))
|
||||
{
|
||||
//Beim Drucken von Buchungsbestaetigungen pruefen ob diese Buchungen auch zu diesem Benutzer gehoeren
|
||||
$buchungsnr = explode(';',$_GET['buchungsnummern']);
|
||||
$user_obj = new benutzer();
|
||||
$user_obj->load($user);
|
||||
foreach($buchungsnr as $bnr)
|
||||
//Beim Drucken von Buchungsbestaetigungen pruefen ob diese Buchungen auch zu diesem Benutzer gehoeren
|
||||
$buchungsnr = explode(';',$_GET['buchungsnummern']);
|
||||
$user_obj = new benutzer();
|
||||
$user_obj->load($user);
|
||||
foreach($buchungsnr as $bnr)
|
||||
{
|
||||
if($bnr!='')
|
||||
{
|
||||
if($bnr!='')
|
||||
{
|
||||
$konto->load($bnr);
|
||||
if($konto->person_id!=$user_obj->person_id)
|
||||
die('Sie haben keine Berechtigung fuer diese Buchung');
|
||||
if($konto->getDifferenz($bnr)!=0)
|
||||
die('Diese Zahlung wurde noch nicht beglichen');
|
||||
}
|
||||
$konto->load($bnr);
|
||||
if($konto->person_id!=$user_obj->person_id)
|
||||
die('Sie haben keine Berechtigung fuer diese Buchung');
|
||||
if($konto->getDifferenz($bnr)!=0)
|
||||
die('Diese Zahlung wurde noch nicht beglichen');
|
||||
}
|
||||
}
|
||||
}
|
||||
$xml_url=XML_ROOT.$xml.$params;
|
||||
//echo $xml_url;
|
||||
@@ -134,49 +149,217 @@ if (($user == $_GET["uid"]) || $rechte->isBerechtigt('admin'))
|
||||
{
|
||||
if($xsl_stg_kz=='')
|
||||
$xsl_stg_kz='0';
|
||||
|
||||
|
||||
$vorlage->getAktuelleVorlage($xsl_stg_kz, $xsl, $version);
|
||||
}
|
||||
|
||||
// Load the XSL source
|
||||
$xsl_doc = new DOMDocument;
|
||||
|
||||
if(!$xsl_doc->loadXML($vorlage->text))
|
||||
die('unable to load xsl');
|
||||
|
||||
// Configure the transformer
|
||||
$proc = new XSLTProcessor;
|
||||
$proc->importStyleSheet($xsl_doc); // attach the xsl rules
|
||||
|
||||
$buffer = $proc->transformToXml($xml_doc);
|
||||
//in $buffer steht nun das xsl-fo file mit den daten
|
||||
$buffer = '<?xml version="1.0" encoding="utf-8" ?>'.substr($buffer, strpos($buffer,"\n"),strlen($buffer));
|
||||
|
||||
//Pdf erstellen
|
||||
$fo2pdf = new XslFo2Pdf();
|
||||
|
||||
//wenn uid gefunden wird, dann den Nachnamen zum Dateinamen dazuhaengen
|
||||
$nachname='';
|
||||
|
||||
if(mb_strstr($vorlage->mimetype, 'application/vnd.oasis.opendocument'))
|
||||
{
|
||||
switch($vorlage->mimetype)
|
||||
{
|
||||
case 'application/vnd.oasis.opendocument.text':
|
||||
$endung = 'odt';
|
||||
break;
|
||||
case 'application/vnd.oasis.opendocument.spreadsheet':
|
||||
$endung = 'ods';
|
||||
break;
|
||||
default:
|
||||
$endung = 'pdf';
|
||||
}
|
||||
|
||||
// Load the XSL source
|
||||
$xsl_doc = new DOMDocument;
|
||||
|
||||
if(!$xsl_doc->loadXML($vorlage->text))
|
||||
die('unable to load xsl');
|
||||
|
||||
// Configure the transformer
|
||||
$proc = new XSLTProcessor;
|
||||
$proc->importStyleSheet($xsl_doc); // attach the xsl rules
|
||||
|
||||
$buffer = $proc->transformToXml($xml_doc);
|
||||
//echo $buffer;
|
||||
//exit;
|
||||
$tempfolder = '/tmp/'.uniqid();
|
||||
mkdir($tempfolder);
|
||||
chdir($tempfolder);
|
||||
file_put_contents('content.xml', $buffer);
|
||||
|
||||
// Wenn ein Style XSL uebergeben wurde wird ein zweites XML File erstellt mit den
|
||||
// Styleanweisungen und ebenfalls zum Zip hinzugefuegt
|
||||
if(isset($_GET['style_xsl']))
|
||||
{
|
||||
$style_xsl=$_GET['style_xsl'];
|
||||
$style_vorlage = new vorlage();
|
||||
$style_vorlage->getAktuelleVorlage($xsl_stg_kz, $style_xsl, $version);
|
||||
$style_xsl_doc = new DOMDocument;
|
||||
if(!$style_xsl_doc->loadXML($style_vorlage->text))
|
||||
die('unable to load xsl');
|
||||
|
||||
// Configure the transformer
|
||||
$style_proc = new XSLTProcessor;
|
||||
$style_proc->importStyleSheet($style_xsl_doc); // attach the xsl rules
|
||||
|
||||
$stylebuffer = $style_proc->transformToXml($xml_doc);
|
||||
|
||||
file_put_contents('styles.xml', $stylebuffer);
|
||||
}
|
||||
|
||||
$vorlage_found=false;
|
||||
$addons = new addon();
|
||||
|
||||
foreach($addons->aktive_addons as $addon)
|
||||
{
|
||||
$zipfile = DOC_ROOT.'/addons/'.$addon.'/system/vorlage_zip/'.$vorlage->vorlage_kurzbz.'.'.$endung;
|
||||
|
||||
if(file_exists($zipfile))
|
||||
{
|
||||
$vorlage_found=true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if(!$vorlage_found)
|
||||
$zipfile = DOC_ROOT.'/system/vorlage_zip/'.$vorlage->vorlage_kurzbz.'.'.$endung;
|
||||
|
||||
|
||||
$tempname_zip = 'out.zip';
|
||||
if(copy($zipfile, $tempname_zip))
|
||||
{
|
||||
exec("zip $tempname_zip content.xml");
|
||||
if(isset($_GET['style_xsl']))
|
||||
exec("zip $tempname_zip styles.xml");
|
||||
|
||||
clearstatcache();
|
||||
if($vorlage->bezeichnung!='')
|
||||
$filename = $vorlage->bezeichnung;
|
||||
else
|
||||
$filename = $vorlage->vorlage_kurzbz;
|
||||
if($output == 'pdf')
|
||||
{
|
||||
if($xsl == 'LV_Informationen')
|
||||
{
|
||||
$studiengang = new studiengang($_GET['stg_kz']);
|
||||
$studiensemester = new studiensemester($_GET['ss']);
|
||||
$tempPdfName = $vorlage->vorlage_kurzbz.'_'.$studiengang->kurzbzlang.'_'.$studiensemester->studiensemester_kurzbz.'.pdf';
|
||||
$filename = $filename.'_'.$studiengang->kurzbzlang.'_'.$studiensemester->studiensemester_kurzbz.'.pdf';
|
||||
}
|
||||
elseif($xsl == "Honorarvertrag")
|
||||
{
|
||||
$tempPdfName = $vorlage->vorlage_kurzbz.'_'.$benutzer_obj->nachname.'_'.$benutzer_obj->vorname.'.pdf';
|
||||
$filename = $filename.'_'.$benutzer_obj->nachname.'_'.$benutzer_obj->vorname.'.pdf';
|
||||
}
|
||||
elseif($xsl == "Studienordnung")
|
||||
{
|
||||
$studienordnung = new studienordnung();
|
||||
$studienordnung->loadStudienordnung($_GET['studienordnung_id']);
|
||||
$filename = $filename.'_'.$studienordnung->studiengangkurzbzlang.'.pdf';
|
||||
$tempPdfName = $vorlage->vorlage_kurzbz.'.pdf';
|
||||
}
|
||||
else
|
||||
{
|
||||
$tempPdfName = $vorlage->vorlage_kurzbz.'.pdf';
|
||||
$filename = $filename.'.pdf';
|
||||
}
|
||||
exec("unoconv -e IsSkipEmptyPages=false --stdout -f pdf $tempname_zip > $tempPdfName");
|
||||
|
||||
$fsize = filesize($tempPdfName);
|
||||
$handle = fopen($tempPdfName,'r');
|
||||
header('Content-type: application/pdf');
|
||||
header('Content-Disposition: attachment; filename="'.$filename.'"');
|
||||
header('Content-Length: '.$fsize);
|
||||
}
|
||||
else if($output =='odt')
|
||||
{
|
||||
if($xsl == "Studienordnung")
|
||||
{
|
||||
$studienordnung = new studienordnung();
|
||||
$studienordnung->loadStudienordnung($_GET['studienordnung_id']);
|
||||
$filename = $filename.'_'.$studienordnung->studiengangkurzbzlang;
|
||||
}
|
||||
$fsize = filesize($tempname_zip);
|
||||
$handle = fopen($tempname_zip,'r');
|
||||
header('Content-type: '.$vorlage->mimetype);
|
||||
header('Content-Disposition: attachment; filename="'.$filename.'.'.$endung.'"');
|
||||
header('Content-Length: '.$fsize);
|
||||
}
|
||||
else if($output =='doc')
|
||||
{
|
||||
$tempPdfName = $vorlage->vorlage_kurzbz.'.doc';
|
||||
if($xsl == "Studienordnung")
|
||||
{
|
||||
$studienordnung = new studienordnung();
|
||||
$studienordnung->loadStudienordnung($_GET['studienordnung_id']);
|
||||
$filename = $filename.'_'.$studienordnung->studiengangkurzbzlang.'.doc';
|
||||
}
|
||||
else
|
||||
{
|
||||
$filename = $filename.'.doc';
|
||||
}
|
||||
exec("unoconv -e IsSkipEmptyPages=false --stdout -f doc $tempname_zip > $tempPdfName");
|
||||
|
||||
$fsize = filesize($tempPdfName);
|
||||
$handle = fopen($tempPdfName,'r');
|
||||
header('Content-type: application/vnd.ms-word');
|
||||
header('Content-Disposition: attachment; filename="'.$filename.'"');
|
||||
header('Content-Length: '.$fsize);
|
||||
}
|
||||
while (!feof($handle))
|
||||
{
|
||||
echo fread($handle, 8192);
|
||||
}
|
||||
fclose($handle);
|
||||
|
||||
unlink('content.xml');
|
||||
if(isset($_GET['style_xsl']))
|
||||
unlink('styles.xml');
|
||||
unlink($tempname_zip);
|
||||
if($output=='pdf' || $output=='doc')
|
||||
unlink($tempPdfName);
|
||||
rmdir($tempfolder);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
// Load the XSL source
|
||||
$xsl_doc = new DOMDocument;
|
||||
|
||||
if(!$xsl_doc->loadXML($vorlage->text))
|
||||
die('unable to load xsl');
|
||||
|
||||
// Configure the transformer
|
||||
$proc = new XSLTProcessor;
|
||||
$proc->importStyleSheet($xsl_doc); // attach the xsl rules
|
||||
|
||||
$buffer = $proc->transformToXml($xml_doc);
|
||||
//in $buffer steht nun das xsl-fo file mit den daten
|
||||
$buffer = '<?xml version="1.0" encoding="utf-8" ?>'.substr($buffer, strpos($buffer,"\n"),strlen($buffer));
|
||||
|
||||
//Pdf erstellen
|
||||
$fo2pdf = new XslFo2Pdf();
|
||||
|
||||
//wenn uid gefunden wird, dann den Nachnamen zum Dateinamen dazuhaengen
|
||||
$nachname='';
|
||||
|
||||
|
||||
if(isset($_GET['uid']) && $_GET['uid']!='')
|
||||
{
|
||||
if(isset($_GET['uid']) && $_GET['uid']!='')
|
||||
{
|
||||
$uid = str_replace(';','',$_GET['uid']);
|
||||
$qry = "SELECT nachname FROM campus.vw_benutzer WHERE uid=".$db->db_add_param($uid);
|
||||
|
||||
|
||||
if($result = $db->db_query($qry))
|
||||
{
|
||||
if($row = $db->db_fetch_object($result))
|
||||
{
|
||||
$nachname = '_'.$row->nachname;
|
||||
}
|
||||
if($row = $db->db_fetch_object($result))
|
||||
{
|
||||
$nachname = '_'.$row->nachname;
|
||||
}
|
||||
}
|
||||
}
|
||||
$filename=$xsl.$nachname;
|
||||
|
||||
if (!$fo2pdf->generatePdf($buffer, $filename, "D"))
|
||||
{
|
||||
}
|
||||
$filename=$xsl.$nachname;
|
||||
|
||||
if (!$fo2pdf->generatePdf($buffer, $filename, "D"))
|
||||
{
|
||||
echo('Failed to generate PDF');
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
|
||||
@@ -15,13 +15,13 @@
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*
|
||||
* Authors: Robert Hofer <robert.hofer@technikum-wien.at>
|
||||
* Authors: Robert Hofer <robert.hofer@technikum-wien.at>,
|
||||
* Andreas Oestereicher <oesi@technikum-wien.at>
|
||||
*/
|
||||
|
||||
/*
|
||||
* Zeigt die bisherige Anwesenheit eines Studenten im aktuellen Semester bei LVAs
|
||||
*/
|
||||
|
||||
require_once('../../../config/cis.config.inc.php');
|
||||
require_once('../../../config/global.config.inc.php');
|
||||
require_once('../../../include/basis_db.class.php');
|
||||
@@ -32,11 +32,22 @@ require_once('../../../include/studiensemester.class.php');
|
||||
require_once('../../../include/student.class.php');
|
||||
require_once('../../../include/prestudent.class.php');
|
||||
require_once('../../../include/stundenplan.class.php');
|
||||
require_once('../../../include/datum.class.php');
|
||||
require_once('../../../include/benutzerberechtigung.class.php');
|
||||
|
||||
$datum_obj = new datum();
|
||||
$uid = get_uid();
|
||||
//$uid = 'if14b001';
|
||||
//$uid = 'wi13b120';
|
||||
//$uid = 'ia06b172';
|
||||
$uidchange=false;
|
||||
if(isset($_GET['uid']))
|
||||
{
|
||||
$rechte = new benutzerberechtigung();
|
||||
$rechte->getBerechtigungen($uid);
|
||||
if($rechte->isBerechtigt('admin'))
|
||||
{
|
||||
$uid = $_GET['uid'];
|
||||
$uidchange=true;
|
||||
}
|
||||
}
|
||||
|
||||
$benutzer = new benutzer();
|
||||
if(!$benutzer->load($uid))
|
||||
@@ -45,7 +56,7 @@ if(!$benutzer->load($uid))
|
||||
}
|
||||
|
||||
$p = new phrasen(getSprache());
|
||||
|
||||
$db = new basis_db();
|
||||
$student = new student;
|
||||
$stundenplan = new stundenplan('stundenplan');
|
||||
$anwesenheit = new anwesenheit;
|
||||
@@ -61,76 +72,92 @@ if(!$semester || !array_key_exists($semester, $alle_semester))
|
||||
$semester = key($alle_semester);
|
||||
}
|
||||
|
||||
$student->get_lv($uid, $semester);
|
||||
//$student->get_lv($uid, $semester);
|
||||
?>
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<title><?php echo $p->t('lvaliste/anwesenheit') ?></title>
|
||||
<title><?php echo $p->t('anwesenheitsliste/anwesenheit') ?></title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<link rel="stylesheet" href="../../../skin/style.css.php" type="text/css">
|
||||
<link rel="stylesheet" href="../../../skin/jquery.css" type="text/css"/>
|
||||
<script type="text/javascript" src="../../../include/js/jquery.min.1.11.1.js"></script>
|
||||
</head>
|
||||
<body class="anwesenheit">
|
||||
|
||||
<?php if($student->result): ?>
|
||||
|
||||
<form id="anwesenheitAuswahl" method="GET">
|
||||
<select name="semester" id="semester">
|
||||
<?php foreach($alle_semester as $kurzbz => $sem): ?>
|
||||
<option value="<?php echo $kurzbz ?>" <?php echo $kurzbz === $semester ? 'selected' : '' ?>><?php echo $sem ?></option>
|
||||
<?php endforeach; ?>
|
||||
<?php
|
||||
echo '<h1>'.$p->t('anwesenheitsliste/anwesenheit').' - '.$db->convert_html_chars($benutzer->titelpre.' '.$benutzer->vorname.' '.$benutzer->nachname.' '.$benutzer->titelpost).'</h1>';
|
||||
|
||||
echo '<form id="anwesenheitAuswahl" method="GET">';
|
||||
if($uidchange)
|
||||
echo '<input type="hidden" name="uid" value="'.$db->convert_html_chars($uid).'" />';
|
||||
echo '
|
||||
<select name="semester" id="semester">';
|
||||
foreach($alle_semester as $kurzbz => $sem)
|
||||
{
|
||||
echo '<option value="'.$kurzbz.'" '.($kurzbz === $semester ? 'selected' : '').'>'.$sem.'</option>';
|
||||
}
|
||||
echo '
|
||||
</select>
|
||||
</form>
|
||||
</form>';
|
||||
|
||||
<?php foreach($student->result as $lv):
|
||||
$anwesenheit = new anwesenheit();
|
||||
$anwesenheit->loadAnwesenheitStudiensemester($semester, $uid);
|
||||
if($anwesenheit->result)
|
||||
{
|
||||
|
||||
$stunden_gesamt = $stundenplan->getStunden($lv->lehreinheit_id);
|
||||
|
||||
if(!$stunden_gesamt)
|
||||
{
|
||||
foreach($anwesenheit->result as $aw)
|
||||
{
|
||||
if(!$aw->gesamtstunden)
|
||||
continue;
|
||||
}
|
||||
|
||||
$fehlstunden = $anwesenheit->getAnwesenheit($uid, $lv->lehreinheit_id);
|
||||
$le_erledigt = $fehlstunden + $anwesenheit->getAnwesenheit($uid, $lv->lehreinheit_id, true);
|
||||
$anwesenheit_relativ = ($stunden_gesamt - $fehlstunden) / $stunden_gesamt * 100;
|
||||
?>
|
||||
$fehlstunden = $aw->nichtanwesend;
|
||||
$le_erledigt = $aw->erfassteanwesenheit;
|
||||
$anwesenheit_relativ = $aw->prozent;
|
||||
|
||||
echo '
|
||||
<div class="lv">
|
||||
<div>
|
||||
<?php echo $lv->bezeichnung ?>
|
||||
(<?php echo $lv->lehrform_kurzbz ?>)
|
||||
'.$db->convert_html_chars($aw->bezeichnung).'
|
||||
</div>
|
||||
<div>
|
||||
<div class="progress-wrapper">
|
||||
<div class="progress <?php echo $anwesenheit->getAmpel($anwesenheit_relativ) ?>" style="width: <?php echo (int) round($anwesenheit_relativ) ?>%;"></div>
|
||||
</div>
|
||||
<?php echo round($anwesenheit_relativ, 1) ?>%
|
||||
LE abgeschlossen: [<?php echo $le_erledigt ?>/<?php echo $stunden_gesamt ?>]
|
||||
|
||||
<?php if($fehlstunden): ?>
|
||||
|
||||
<span class="fehlstunden-details" title="eingetragene Fehlstunden">>></span>
|
||||
<div style="display: none;">
|
||||
<?php $abwesend_termine = $anwesenheit->getAbwesendTermine($uid, $lv->lehreinheit_id); ?>
|
||||
<table>
|
||||
<?php foreach($abwesend_termine as $termin): ?>
|
||||
<tr>
|
||||
<td><?php echo $termin->datum ?></td>
|
||||
<td><?php echo $termin->einheiten ?></td>
|
||||
</tr>
|
||||
<?php endforeach; ?>
|
||||
</table>
|
||||
<div class="progress '.$anwesenheit->getAmpel($anwesenheit_relativ).'" style="width: '.round($anwesenheit_relativ).'%;">
|
||||
|
||||
</div>
|
||||
</div>'.round($anwesenheit_relativ, 1).'%
|
||||
'.$p->t('anwesenheitsliste/leAbgeschlossen').' ['.$le_erledigt.'/'.$aw->gesamtstunden.']';
|
||||
|
||||
<?php endif; ?>
|
||||
if($fehlstunden)
|
||||
{
|
||||
echo '
|
||||
<span class="fehlstunden-details" title="'.$p->t('anwesenheitsliste/fehlstunden').'">>></span>
|
||||
<div style="display: none;">
|
||||
<table><tr><td>'.$p->t('global/datum').'</td><td>'.$p->t('anwesenheitsliste/fehlstunden').'</td></tr>';
|
||||
$anwesenheit_termine = new anwesenheit();
|
||||
$anwesenheit_termine->getAnwesenheitLehrveranstaltung($uid, $aw->lehrveranstaltung_id, $semester, false);
|
||||
foreach($anwesenheit_termine->result as $termin)
|
||||
{
|
||||
echo ' <tr>
|
||||
<td>'.$datum_obj->formatDatum($termin->datum,'d.m.Y').'</td>
|
||||
<td>'.(float)$termin->einheiten.'</td>
|
||||
</tr>';
|
||||
}
|
||||
echo '
|
||||
</table>
|
||||
</div>';
|
||||
}
|
||||
|
||||
echo '
|
||||
</div>
|
||||
</div>
|
||||
<?php endforeach; ?>
|
||||
<?php else: ?>
|
||||
Es konnten keine Lehrveranstaltungen gefunden werden.
|
||||
<?php endif; ?>
|
||||
</div>';
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
echo $p->t('anwesenheitsliste/keineLVsGefunden');
|
||||
}
|
||||
|
||||
?>
|
||||
<script type="text/javascript">
|
||||
$('span.fehlstunden-details').on('click', function() {
|
||||
$(this).next().toggle();
|
||||
|
||||
@@ -17,11 +17,9 @@
|
||||
*
|
||||
* Authors: Robert Hofer <robert.hofer@technikum-wien.at>
|
||||
*/
|
||||
|
||||
/*
|
||||
* Zeigt die bisherige Anwesenheit eines Studenten im aktuellen Semester bei LVAs
|
||||
*/
|
||||
|
||||
require_once('../../../config/cis.config.inc.php');
|
||||
require_once('../../../config/global.config.inc.php');
|
||||
require_once('../../../include/basis_db.class.php');
|
||||
@@ -32,20 +30,34 @@ require_once('../../../include/lehreinheit.class.php');
|
||||
require_once('../../../include/lehreinheitmitarbeiter.class.php');
|
||||
require_once('../../../include/stundenplan.class.php');
|
||||
require_once('../../../include/anwesenheit.class.php');
|
||||
require_once('../../../include/datum.class.php');
|
||||
require_once('../../../include/benutzerberechtigung.class.php');
|
||||
|
||||
$uid = get_uid();
|
||||
//$uid = 'himmel';
|
||||
|
||||
$uidchange=false;
|
||||
if(isset($_GET['uid']))
|
||||
{
|
||||
$rechte = new benutzerberechtigung();
|
||||
$rechte->getBerechtigungen($uid);
|
||||
if($rechte->isBerechtigt('admin'))
|
||||
{
|
||||
$uid = $_GET['uid'];
|
||||
$uidchange=true;
|
||||
}
|
||||
}
|
||||
$benutzer = new benutzer();
|
||||
if(!$benutzer->load($uid) || !check_lektor($uid))
|
||||
{
|
||||
die('nicht berechtigt');
|
||||
die('Sie haben keine Berechtigung fuer diese Seite');
|
||||
}
|
||||
|
||||
$db = new basis_db();
|
||||
$datum_obj= new datum();
|
||||
$p = new phrasen(getSprache());
|
||||
|
||||
$lehreinheitObj = new lehreinheit;
|
||||
$lema = new lehreinheitmitarbeiter;
|
||||
$lehreinheitObj = new lehreinheit();
|
||||
$lema = new lehreinheitmitarbeiter();
|
||||
$stundenplan = new stundenplan('stundenplan');
|
||||
$anwesenheit = new anwesenheit;
|
||||
$alle_semester = $lema->getSemesterZuLektor($uid);
|
||||
@@ -74,7 +86,7 @@ if($lehreinheit_id)
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<title><?php echo $p->t('lvaliste/anwesenheit/studenten') ?></title>
|
||||
<title><?php echo $p->t('anwesenheitsliste/anwesenheit') ?></title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<link rel="stylesheet" href="../../../skin/style.css.php" type="text/css">
|
||||
<link rel="stylesheet" href="../../../skin/jquery.css" type="text/css"/>
|
||||
@@ -83,95 +95,122 @@ if($lehreinheit_id)
|
||||
|
||||
<body class="anwesenheit">
|
||||
|
||||
<?php if(!count($alle_semester)): ?>
|
||||
<?php
|
||||
|
||||
Keine Lehreinheiten gefunden.
|
||||
echo '<h1>'.$p->t('anwesenheitsliste/anwesenheit').' - '.$db->convert_html_chars($benutzer->titelpre.' '.$benutzer->vorname.' '.$benutzer->nachname.' '.$benutzer->titelpost).'</h1>';
|
||||
|
||||
<?php else: ?>
|
||||
if(!count($alle_semester))
|
||||
{
|
||||
echo $p->t('anwesenheitsliste/keineEintraegeGefunden');
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
<form id="anwesenheitAuswahl" method="GET">
|
||||
<select name="semester" id="semester">
|
||||
<?php foreach($alle_semester as $kurzbz => $sem): ?>
|
||||
<option value="<?php echo $kurzbz ?>" <?php echo $kurzbz === $semester ? 'selected' : '' ?>>
|
||||
<?php echo $sem ?>
|
||||
</option>
|
||||
<?php endforeach; ?>
|
||||
echo '<form id="anwesenheitAuswahl" method="GET">';
|
||||
|
||||
if($uidchange)
|
||||
echo '<input type="hidden" name="uid" value="'.$db->convert_html_chars($uid).'" />';
|
||||
echo '
|
||||
<select name="semester" id="semester">';
|
||||
|
||||
foreach($alle_semester as $kurzbz => $sem)
|
||||
{
|
||||
echo '<option value="'.$kurzbz.'" '.($kurzbz === $semester ? 'selected' : '').'>'.$sem.'</option>';
|
||||
}
|
||||
|
||||
echo '
|
||||
</select>
|
||||
<select name="lehreinheit" id="lehreinheit">
|
||||
<option value=""></option>
|
||||
<?php foreach($lehreinheiten as $le): ?>
|
||||
<option value="<?php echo $le->lehreinheit_id ?>" <?php echo $le->lehreinheit_id === $lehreinheit_id ? 'selected' : '' ?>>
|
||||
<?php echo $le->lv_bezeichnung ?>
|
||||
(<?php echo ($le->lv_lehrform_kurzbz ? $le->lv_lehrform_kurzbz . ', ' : '') . $le->unr ?>)
|
||||
</option>
|
||||
<?php endforeach ?>
|
||||
<option value=""></option>';
|
||||
|
||||
foreach($lehreinheiten as $le)
|
||||
{
|
||||
echo '<option value="'.$le->lehreinheit_id.'" '.($le->lehreinheit_id === $lehreinheit_id ? 'selected' : '').'>
|
||||
'.$le->stg_kurzbzlang.' '.$le->lv_semester.' '.$le->lv_bezeichnung.' ('.($le->lv_lehrform_kurzbz ? $le->lv_lehrform_kurzbz . ', ' : '') . $le->lehreinheit_id.')
|
||||
</option>';
|
||||
}
|
||||
echo '
|
||||
</select>
|
||||
</form>
|
||||
<?php
|
||||
</form>';
|
||||
|
||||
if($lehreinheit_id)
|
||||
{
|
||||
$stunden_gesamt = $stundenplan->getStunden($lehreinheit_id);
|
||||
}
|
||||
|
||||
if(!$lehreinheit_id): ?>
|
||||
Bitte LV auswählen.
|
||||
<?php elseif(!$stunden_gesamt): ?>
|
||||
Keine Stunden eingetragen.
|
||||
<?php else:
|
||||
|
||||
foreach($studenten as $student):
|
||||
|
||||
if(!$lehreinheit_id)
|
||||
{
|
||||
echo $p->t('anwesenheitsliste/waehleLV');
|
||||
}
|
||||
elseif(!$stunden_gesamt)
|
||||
{
|
||||
echo $p->t('anwesenheitsliste/keineStundenvorhanden');
|
||||
}
|
||||
else
|
||||
{
|
||||
foreach($studenten as $student)
|
||||
{
|
||||
$fehlstunden = $anwesenheit->getAnwesenheit($student->uid, $lehreinheit_id);
|
||||
$le_erledigt = $fehlstunden + $anwesenheit->getAnwesenheit($student->uid, $lehreinheit_id, true);
|
||||
$anwesenheit_relativ = ($stunden_gesamt - $fehlstunden) / $stunden_gesamt * 100;
|
||||
?>
|
||||
|
||||
|
||||
echo '
|
||||
<div class="lv">
|
||||
<div>
|
||||
<?php echo $student->nachname ?>
|
||||
<?php echo $student->vorname ?>
|
||||
'.$db->convert_html_chars($student->nachname).'
|
||||
'.$db->convert_html_chars($student->vorname).'
|
||||
</div>
|
||||
<div>
|
||||
<div class="progress-wrapper">
|
||||
<div class="progress <?php echo $anwesenheit->getAmpel($anwesenheit_relativ) ?>" style="width: <?php echo (int) round($anwesenheit_relativ) ?>%;"></div>
|
||||
<div class="progress '.$anwesenheit->getAmpel($anwesenheit_relativ).'" style="width: '.(int) round($anwesenheit_relativ).'%;"></div>
|
||||
</div>
|
||||
<?php echo round($anwesenheit_relativ, 1) ?>%
|
||||
LE abgeschlossen: [<?php echo $le_erledigt ?>/<?php echo $stunden_gesamt ?>]
|
||||
'.round($anwesenheit_relativ, 1).'%
|
||||
'.$p->t('anwesenheitsliste/leAbgeschlossen').': ['.$le_erledigt.'/'.$stunden_gesamt.']';
|
||||
|
||||
<?php if($fehlstunden): ?>
|
||||
|
||||
<span class="fehlstunden-details" title="eingetragene Fehlstunden">>></span>
|
||||
if($fehlstunden)
|
||||
{
|
||||
echo '<span class="fehlstunden-details" title="'.$p->t('anwesenheitsliste/fehlstunden').'">>></span>
|
||||
<div style="display: none;">
|
||||
<?php $abwesend_termine = $anwesenheit->getAbwesendTermine($uid, $lv->lehreinheit_id); ?>
|
||||
<table>
|
||||
<?php foreach($abwesend_termine as $termin): ?>
|
||||
<tr>
|
||||
<td><?php echo $termin->datum ?></td>
|
||||
<td><?php echo $termin->einheiten ?></td>
|
||||
</tr>
|
||||
<?php endforeach; ?>
|
||||
</table>
|
||||
</div>
|
||||
<tr><td>'.$p->t('global/datum').'</td><td>'.$p->t('anwesenheitsliste/fehlstunden').'</td></tr>';
|
||||
$abwesend_termine = $anwesenheit->getAbwesendTermine($student->uid, $lehreinheit_id);
|
||||
|
||||
<?php endif; ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<?php
|
||||
endforeach;
|
||||
endif; ?>
|
||||
|
||||
<script type="text/javascript">
|
||||
$('#anwesenheitAuswahl > *').on('change', function() {
|
||||
|
||||
if(this.id === 'semester') {
|
||||
$('#lehreinheit').val('');
|
||||
foreach($abwesend_termine as $termin)
|
||||
{
|
||||
echo ' <tr>
|
||||
<td>'.$datum_obj->formatDatum($termin->datum,'d.m.Y').'</td>
|
||||
<td>'.(float)$termin->einheiten.'</td>
|
||||
</tr>';
|
||||
}
|
||||
echo ' </table>
|
||||
</div>';
|
||||
}
|
||||
|
||||
$('#anwesenheitAuswahl').trigger('submit');
|
||||
echo '
|
||||
</div>
|
||||
</div>';
|
||||
}
|
||||
}
|
||||
|
||||
echo '
|
||||
<script type="text/javascript">
|
||||
|
||||
$("span.fehlstunden-details").on("click", function() {
|
||||
$(this).next().toggle();
|
||||
});
|
||||
|
||||
$("#anwesenheitAuswahl > *").on("change", function() {
|
||||
|
||||
if(this.id === "semester") {
|
||||
$("#lehreinheit").val("");
|
||||
}
|
||||
|
||||
$("#anwesenheitAuswahl").trigger("submit");
|
||||
});
|
||||
</script>
|
||||
<?php endif; ?>
|
||||
|
||||
';
|
||||
}
|
||||
echo '
|
||||
</body>
|
||||
</html>
|
||||
</html>';
|
||||
?>
|
||||
|
||||
@@ -135,7 +135,15 @@ echo $p->t('global/studiensemester')."</b> <SELECT name='stsem' onChange=\"MM_ju
|
||||
echo "</SELECT><br />";
|
||||
|
||||
$konto = new konto();
|
||||
if ($konto->checkStudienbeitrag($uid, $stsem))
|
||||
|
||||
$buchungstypen = array();
|
||||
if(defined("CIS_DOKUMENTE_STUDIENBEITRAG_TYPEN"))
|
||||
{
|
||||
$buchungstypen = unserialize (CIS_DOKUMENTE_STUDIENBEITRAG_TYPEN);
|
||||
}
|
||||
|
||||
$stsem_zahlung = $konto->getLastStSemBuchungstypen($uid, $buchungstypen);
|
||||
if ($stsem_zahlung != FALSE && $stsem == $stsem_zahlung)
|
||||
{
|
||||
echo "<a href='../pdfExport.php?xsl=Inskription&xml=student.rdf.php&ss=".$stsem."&uid=".$uid."&xsl_stg_kz=".$xsl_stg_kz."'>".$p->t('tools/inskriptionsbestaetigung')."</a>";
|
||||
echo ' - '.$p->t('tools/studienbeitragFuerSSBezahltAmDatum',array($stsem, $konto->buchungsdatum));
|
||||
@@ -145,9 +153,26 @@ else
|
||||
|
||||
echo "<hr>";
|
||||
|
||||
echo "<a href='studienerfolgsbestaetigung.php' class='Item'>".$p->t('tools/studienerfolgsbestaetigung')." Deutsch</a><br>";
|
||||
echo "<a href='studienerfolgsbestaetigung.php?lang=en' class='Item'>".$p->t('tools/studienerfolgsbestaetigung')." Englisch</a>";
|
||||
echo "<hr><br>";
|
||||
if(defined('CIS_DOKUMENTE_STUDIENBUCHLBATT_DRUCKEN') && CIS_DOKUMENTE_STUDIENBUCHLBATT_DRUCKEN)
|
||||
{
|
||||
if ($stsem_zahlung != FALSE && $stsem == $stsem_zahlung)
|
||||
{
|
||||
echo "<a href='../pdfExport.php?xsl=Studienblatt&xml=studienblatt.xml.php&ss=".$stsem."&uid=".$uid."'>".$p->t('tools/studienbuchblatt')."</a>";
|
||||
echo ' - '.$p->t('tools/studienbeitragFuerSSBezahltAmDatum',array($stsem, $konto->buchungsdatum));
|
||||
}
|
||||
else
|
||||
echo $p->t('tools/studienbuchblatt')." - ".$p->t('tools/studienbeitragFuerSSNochNichtBezahlt',array($stsem));
|
||||
|
||||
echo "<hr>";
|
||||
}
|
||||
|
||||
if(defined('CIS_DOKUMENTE_STUDIENERFOLGSBESTAETIGUNG_DRUCKEN') && CIS_DOKUMENTE_STUDIENERFOLGSBESTAETIGUNG_DRUCKEN)
|
||||
{
|
||||
echo "<a href='studienerfolgsbestaetigung.php' class='Item'>".$p->t('tools/studienerfolgsbestaetigung')." Deutsch</a><br>";
|
||||
echo "<a href='studienerfolgsbestaetigung.php?lang=en' class='Item'>".$p->t('tools/studienerfolgsbestaetigung')." Englisch</a>";
|
||||
echo "<hr>";
|
||||
}
|
||||
echo "<br>";
|
||||
|
||||
echo '</body>
|
||||
</html>
|
||||
|
||||
@@ -208,7 +208,7 @@ if(!$ansicht)
|
||||
//Foto Upload nur möglich wenn das Bild noch nicht akzeptiert wurde
|
||||
$fs = new fotostatus();
|
||||
if(!$fs->akzeptiert($user->person_id))
|
||||
echo "<br><a href='#BildUpload' onclick='window.open(\"../bildupload.php?person_id=$user->person_id\",\"BildUpload\", \"height=500,width=500,left=0,top=0,hotkeys=0,resizable=yes,status=no,scrollbars=yes,toolbar=no,location=no,menubar=no,dependent=yes\"); return false;'>".$p->t('profil/bildHochladen')."</a>";
|
||||
echo "<br><a href='#BildUpload' onclick='window.open(\"../bildupload.php?person_id=$user->person_id\",\"BildUpload\", \"height=800,width=800,left=0,top=0,hotkeys=0,resizable=yes,status=no,scrollbars=yes,toolbar=no,location=no,menubar=no,dependent=yes\"); return false;'>".$p->t('profil/bildHochladen')."</a>";
|
||||
}
|
||||
if($user->foto_sperre)
|
||||
echo '<br><b>'.$p->t('profil/profilfotoGesperrt').'</b>';
|
||||
|
||||
@@ -182,7 +182,7 @@ require_once('../../../include/lvangebot.class.php');
|
||||
echo '</tr>
|
||||
</thead><tbody>';
|
||||
$stg_obj = new studiengang();
|
||||
$stg_obj->getAll();
|
||||
$stg_obj->getAll(null,null);
|
||||
$summe_std=0;
|
||||
|
||||
for ($i=0; $i<$num_rows; $i++)
|
||||
@@ -279,7 +279,7 @@ require_once('../../../include/lvangebot.class.php');
|
||||
tbl_projektbetreuer.person_id=".$db->db_add_param($mitarbeiter->person_id, FHC_INTEGER);
|
||||
|
||||
$stg_obj = new studiengang();
|
||||
$stg_obj->getAll();
|
||||
$stg_obj->getAll(null,null);
|
||||
|
||||
if($result = $db->db_query($qry))
|
||||
{
|
||||
|
||||
@@ -26,6 +26,7 @@ require_once('../../../include/functions.inc.php');
|
||||
require_once('../../../include/studiensemester.class.php');
|
||||
require_once('../../../include/basis_db.class.php');
|
||||
require_once('../../../include/phrasen.class.php');
|
||||
require_once('../../../include/benutzerberechtigung.class.php');
|
||||
|
||||
$sprache = getSprache();
|
||||
$p = new phrasen($sprache);
|
||||
@@ -33,12 +34,24 @@ $p = new phrasen($sprache);
|
||||
if (!$db = new basis_db())
|
||||
die($p->t('global/fehlerBeimOeffnenDerDatenbankverbindung'));
|
||||
|
||||
$uid=get_uid();
|
||||
|
||||
if(isset($_GET['lang']) && $_GET['lang']=='en')
|
||||
$xsl = 'StudienerfolgEng';
|
||||
else
|
||||
$xsl = 'Studienerfolg';
|
||||
$uid=get_uid();
|
||||
|
||||
if(isset($_GET['uid']))
|
||||
{
|
||||
// Administratoren duerfen die UID als Parameter uebergeben um die Studienerfolgsbestätigung
|
||||
// von anderen Personen anzuzeigen
|
||||
|
||||
$rechte = new benutzerberechtigung();
|
||||
$rechte->getBerechtigungen($uid);
|
||||
if($rechte->isBerechtigt('admin'))
|
||||
$uid=$_GET['uid'];
|
||||
}
|
||||
|
||||
if(isset($_GET['lang']) && $_GET['lang']=='en')
|
||||
$xsl = 'StudienerfolgEng';
|
||||
else
|
||||
$xsl = 'Studienerfolg';
|
||||
|
||||
echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||
"http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
@@ -56,7 +69,13 @@ function createStudienerfolg()
|
||||
finanzamt = "&typ=finanzamt";
|
||||
else
|
||||
finanzamt = "";
|
||||
window.location.href= "../pdfExport.php?xml=studienerfolg.rdf.php&xsl='.$xsl.'&ss="+stsem+"&uid='.$uid.'"+finanzamt;
|
||||
|
||||
if(stsem == "alle")
|
||||
alle = "&all=1";
|
||||
else
|
||||
alle = "";
|
||||
|
||||
window.location.href= "../pdfExport.php?xml=studienerfolg.rdf.php&xsl='.$xsl.'&ss="+stsem+"&uid='.$uid.'"+finanzamt+alle;
|
||||
}
|
||||
</script>
|
||||
</head>
|
||||
@@ -69,6 +88,7 @@ $qry = "SELECT distinct studiensemester_kurzbz FROM campus.vw_student JOIN publi
|
||||
if($result = $db->db_query($qry))
|
||||
{
|
||||
echo $p->t('global/studiensemester').': <SELECT id="stsem">';
|
||||
echo '<OPTION value="alle">alle Semester</OPTION>';
|
||||
|
||||
$stsem_obj = new studiensemester();
|
||||
$stsem = $stsem_obj->getPrevious();
|
||||
|
||||
@@ -447,12 +447,12 @@ function drawTree($tree, $depth)
|
||||
|
||||
$tdclass=array();
|
||||
//Empfehlung holen
|
||||
if(isset($lv_arr[$row_tree->lehrveranstaltung_id]))
|
||||
{
|
||||
$empfohlenesSemester = $lv_arr[$row_tree->lehrveranstaltung_id]->semester;
|
||||
if($semester==$empfohlenesSemester)
|
||||
$tdclass[]='empfehlung';
|
||||
}
|
||||
// if(isset($lv_arr[$row_tree->lehrveranstaltung_id]))
|
||||
// {
|
||||
// $empfohlenesSemester = $lv_arr[$row_tree->lehrveranstaltung_id]->semester;
|
||||
// if($semester==$empfohlenesSemester)
|
||||
// $tdclass[]='empfehlung';
|
||||
// }
|
||||
|
||||
$tdinhalt='';
|
||||
|
||||
@@ -568,10 +568,10 @@ function drawTree($tree, $depth)
|
||||
echo '</table>';
|
||||
echo '<br><br>'.$p->t('studienplan/legende').':<br>
|
||||
<table>
|
||||
<tr>
|
||||
<!--<tr>
|
||||
<td><span class="empfehlung"> </span></td>
|
||||
<td>'.$p->t('studienplan/legendeEmpfehlung').'</td>
|
||||
</tr>
|
||||
</tr>-->
|
||||
<tr>
|
||||
<td></td>
|
||||
<td></td>
|
||||
|
||||
Regular → Executable
+2
-1
@@ -69,7 +69,8 @@ $addon_obj = new addon();
|
||||
$addon_obj->loadAddons();
|
||||
foreach($addon_obj->result as $addon)
|
||||
{
|
||||
echo '<script type="application/x-javascript" src="../../../addons/'.$addon->kurzbz.'/cis/init.js.php" ></script>';
|
||||
if(file_exists('../../../addons/'.$addon->kurzbz.'/cis/init.js.php'))
|
||||
echo '<script type="application/x-javascript" src="../../../addons/'.$addon->kurzbz.'/cis/init.js.php" ></script>';
|
||||
}
|
||||
|
||||
// Wenn Seite fertig geladen ist Addons aufrufen
|
||||
|
||||
Regular → Executable
+7
-3
@@ -449,7 +449,8 @@ $addon_obj = new addon();
|
||||
$addon_obj->loadAddons();
|
||||
foreach($addon_obj->result as $addon)
|
||||
{
|
||||
echo '<script type="application/x-javascript" src="../../../addons/'.$addon->kurzbz.'/cis/init.js.php" ></script>';
|
||||
if(file_exists('../../../addons/'.$addon->kurzbz.'/cis/init.js.php'))
|
||||
echo '<script type="application/x-javascript" src="../../../addons/'.$addon->kurzbz.'/cis/init.js.php" ></script>';
|
||||
}
|
||||
|
||||
// Wenn Seite fertig geladen ist Addons aufrufen
|
||||
@@ -457,9 +458,12 @@ echo '
|
||||
<script>
|
||||
$( document ).ready(function()
|
||||
{
|
||||
for(i in addon)
|
||||
if(typeof addon !== \'undefined\')
|
||||
{
|
||||
addon[i].init("cis/private/profile/urlaubstool.php", {uid:\''.$uid.'\'});
|
||||
for(i in addon)
|
||||
{
|
||||
addon[i].init("cis/private/profile/urlaubstool.php", {uid:\''.$uid.'\'});
|
||||
}
|
||||
}
|
||||
});
|
||||
</script>';
|
||||
|
||||
@@ -45,7 +45,7 @@
|
||||
<body>';
|
||||
|
||||
$studiengang = new studiengang();
|
||||
$studiengang->getAll();
|
||||
$studiengang->getAll(null,null);
|
||||
|
||||
$stg_arr = array();
|
||||
foreach ($studiengang->result as $row)
|
||||
@@ -94,6 +94,7 @@
|
||||
foreach ($row['childs'] as $row_child)
|
||||
{
|
||||
$betrag += $row_child->betrag;
|
||||
$betrag = round($betrag, 2);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -115,7 +116,7 @@
|
||||
echo '<td>'.$row['parent']->buchungstext.'</td>';
|
||||
echo '<td align="right">'.($betrag<0?'-':($betrag>0?'+':'')).sprintf('%.2f',abs($row['parent']->betrag)).' €</td>';
|
||||
echo '<td align="center">';
|
||||
if($betrag==0 && $row['parent']->betrag<0)
|
||||
if($betrag==0 && $row['parent']->betrag<=0)
|
||||
echo '<a href="../pdfExport.php?xml=konto.rdf.php&xsl=Zahlung&uid='.$uid.'&buchungsnummern='.$row['parent']->buchungsnr.'" title="'.$p->t('tools/bestaetigungDrucken').'"><img src="../../../skin/images/pdfpic.gif" alt="'.$p->t('tools/bestaetigungDrucken').'"></a>';
|
||||
elseif($row['parent']->betrag>0)
|
||||
{
|
||||
@@ -126,7 +127,7 @@
|
||||
{
|
||||
echo '<a onclick="window.open(';
|
||||
echo "'zahlungen_details.php?buchungsnr=".$row['parent']->buchungsnr."','Zahlungsdetails','height=500,width=550,left=0,top=0,hotkeys=0,resizable=yes,status=no,scrollbars=no,toolbar=no,location=no,menubar=no,dependent=yes');return false;";
|
||||
echo '" href="#">'.$p->t('tools/offen').'</a>';
|
||||
echo '" href="#">'.$p->t('tools/offen').'</a> ('.sprintf('%.2f',$betrag*-1).' €)';
|
||||
}
|
||||
echo '</td>';
|
||||
}
|
||||
|
||||
Regular → Executable
+106
-28
@@ -79,14 +79,18 @@ $num_rows_stunde=$db->db_num_rows($result_stunde);
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<link rel="stylesheet" href="../../../skin/style.css.php" type="text/css">
|
||||
<script src="../../../include/js/jquery1.9.min.js" type="text/javascript"></script>
|
||||
|
||||
<script src="../../../include/js/jquery.ui.timepicker.js" type="text/javascript" ></script>
|
||||
<link href="../../../skin/jquery.css" rel="stylesheet" type="text/css"/>
|
||||
<link href="../../../skin/jquery.ui.timepicker.css" rel="stylesheet" type="text/css"/>
|
||||
<link href="../../../skin/jquery-ui-1.9.2.custom.min.css" rel="stylesheet" type="text/css">
|
||||
<?php
|
||||
// ADDONS laden
|
||||
$addon_obj = new addon();
|
||||
$addon_obj->loadAddons();
|
||||
foreach($addon_obj->result as $addon)
|
||||
{
|
||||
echo '<script type="application/x-javascript" src="../../../addons/'.$addon->kurzbz.'/cis/init.js.php" ></script>';
|
||||
if(file_exists('../../../addons/'.$addon->kurzbz.'/cis/init.js.php'))
|
||||
echo '<script type="application/x-javascript" src="../../../addons/'.$addon->kurzbz.'/cis/init.js.php" ></script>';
|
||||
}
|
||||
|
||||
// Wenn Seite fertig geladen ist Addons aufrufen
|
||||
@@ -94,14 +98,38 @@ echo '
|
||||
<script>
|
||||
$( document ).ready(function()
|
||||
{
|
||||
for(i in addon)
|
||||
if(typeof addon !== \'undefined\')
|
||||
{
|
||||
addon[i].init("cis/private/profile/urlaubstool.php", {uid:\''.$uid.'\'});
|
||||
for(i in addon)
|
||||
{
|
||||
addon[i].init("cis/private/profile/urlaubstool.php", {uid:\''.$uid.'\'});
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
$( ".datepicker_datum" ).datepicker({
|
||||
changeMonth: true,
|
||||
changeYear: true,
|
||||
dateFormat: "dd.mm.yy",
|
||||
});
|
||||
|
||||
$( ".timepicker" ).timepicker({
|
||||
showPeriodLabels: false,
|
||||
hourText: "'.$p->t("global/stunde").'",
|
||||
minuteText: "'.$p->t("global/minute").'",
|
||||
hours: {starts: 7,ends: 22},
|
||||
rows: 4,
|
||||
});
|
||||
|
||||
});
|
||||
</script>';
|
||||
?>
|
||||
|
||||
<style>
|
||||
.dd_breit
|
||||
{
|
||||
width:460px;
|
||||
}
|
||||
</style>
|
||||
<script language="Javascript">
|
||||
function conf_del()
|
||||
{
|
||||
@@ -176,6 +204,44 @@ function checkdatum()
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
function showHideBezeichnungDropDown()
|
||||
{
|
||||
var dd = document.zeitsperre_form.zeitsperretyp_kurzbz;
|
||||
var sp = document.getElementById('dienstv_span');
|
||||
if (dd.options[dd.selectedIndex].value == 'DienstV')
|
||||
{
|
||||
var str = '<select name="bezeichnung" class="dd_breit">';
|
||||
str += '<option value="Eheschließung">a) Eigene Eheschließung</option>';
|
||||
str += '<option value="Geburt eigenes Kind">b) Geburt eines Kindes der Ehefrau/Lebensgefährtin</option>';
|
||||
str += '<option value="Heirat Kind/Geschwister">c) Eheschließung eines Kindes/eigener Geschwister</option>';
|
||||
str += '<option value="Eigene Sponsion/Promotion">d) Teilnahme an eigener Sponsion/Promotion</option>';
|
||||
str += '<option value="Lebensbedr. Erkrankung P/K/E">e) Lebensbedrohliche Erkrankung Partner/Kinder/Eltern</option>';
|
||||
str += '<option value="Ableben P/K/E">f) Ableben Partner/Kinder/Elternteil</option>';
|
||||
str += '<option value="Bestattung G/S/G">g) Teilnahme an Bestattung Geschwister/Schwiegereltern/eigener Großeltern</option>';
|
||||
str += '<option value="Wohnungswechsel">h) Wohnungswechsel in eigenen Haushalt</option>';
|
||||
str += '<option value="Bundesheer">i) Einberufung Bundesheer</option>';
|
||||
str += '</select>';
|
||||
|
||||
sp.innerHTML = str;
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
sp.innerHTML = '<input type="text" name="bezeichnung" maxlength="32" size="32" value="">';
|
||||
}
|
||||
if (dd.options[dd.selectedIndex].value == 'Urlaub')
|
||||
document.getElementById('resturlaub').style.visibility = 'visible';
|
||||
else
|
||||
document.getElementById('resturlaub').style.visibility = 'hidden';
|
||||
}
|
||||
|
||||
function setBisDatum()
|
||||
{
|
||||
document.zeitsperre_form.bisdatum.value = document.zeitsperre_form.vondatum.value;
|
||||
}
|
||||
|
||||
</script>
|
||||
</head>
|
||||
|
||||
@@ -422,7 +488,7 @@ if($result = $db->db_query($qry))
|
||||
//liste aller zeitsperren ausgeben
|
||||
if(count($zeit->result)>0)
|
||||
{
|
||||
$content_table.= '<table><tr class="liste"><th>'.$p->t('global/bezeichnung').'</th><th>'.$p->t('zeitsperre/grund').'</th><th>'.$p->t('global/von').'</th><th>'.$p->t('global/bis').'</th><th>'.$p->t('urlaubstool/vertretung').'</th><th>'.$p->t('urlaubstool/erreichbarkeit').'</th><th>'.$p->t('zeitsperre/freigegeben').'</th></tr>';
|
||||
$content_table.= '<table><tr class="liste"><th>'.$p->t('global/bezeichnung').'</th><th>'.$p->t('zeitsperre/grund').'</th><th>'.$p->t('global/von').'</th><th>'.$p->t('global/bis').'</th><th>'.$p->t('urlaubstool/vertretung').'</th><th>'.$p->t('urlaubstool/erreichbarkeit').'</th><th>'.$p->t('zeitsperre/freigegeben').'</th><th colspan="2"></th></tr>';
|
||||
$i=0;
|
||||
foreach ($zeit->result as $row)
|
||||
{
|
||||
@@ -443,11 +509,16 @@ if(count($zeit->result)>0)
|
||||
<td>".(isset($row_vertretung->kurzbz)?$row_vertretung->kurzbz:'')."</td>
|
||||
<td>".(isset($erreichbarkeit_arr[$row->erreichbarkeit])?$erreichbarkeit_arr[$row->erreichbarkeit]:'')."</td>
|
||||
<td align='center'>".($row->freigabeamum!=''?'Ja':'')."</td>";
|
||||
$content_table.="<td><a href='$PHP_SELF?type=edit&id=$row->zeitsperre_id' class='Item'>".$p->t('zeitsperre/edit')."</a></td>";
|
||||
if ($row->zeitsperretyp_kurzbz == 'DienstV')
|
||||
$content_table .= '<td> </td>';
|
||||
else
|
||||
$content_table.="<td><a href='$PHP_SELF?type=edit&id=$row->zeitsperre_id' class='Item'>".$p->t('zeitsperre/edit')."</a></td>";
|
||||
if($row->freigabeamum=='' || $row->zeitsperretyp_kurzbz!='Urlaub')
|
||||
{
|
||||
$content_table.="\n<td><a href='$PHP_SELF?type=delete_sperre&id=$row->zeitsperre_id' onclick='return conf_del()' class='Item'>".$p->t('zeitsperre/loeschen')."</a></td>";
|
||||
}
|
||||
else
|
||||
$content_table .= '<td> </td>';
|
||||
$content_table.="</tr>";
|
||||
}
|
||||
$content_table.= '</table>';
|
||||
@@ -481,19 +552,21 @@ if($zeitsperre->freigabeamum!='' && $zeitsperre->zeitsperretyp_kurzbz=='Urlaub')
|
||||
$readonly=' readonly="readonly"'; //für Textfelder
|
||||
$disabled=' disabled'; //für select-options
|
||||
$style=' style="border: 1px solid #999; color: #999;"'; //disabled-Optik
|
||||
$class = '';
|
||||
}
|
||||
else
|
||||
{
|
||||
$readonly='';
|
||||
$disabled='';
|
||||
$style='';
|
||||
$class = ' class="datepicker_datum"';
|
||||
}
|
||||
|
||||
//formular zum editieren und neu anlegen der zeitsperren
|
||||
$content_form='';
|
||||
$content_form.= '<form method="POST" action="'.$action.'" onsubmit="return checkdatum()">';
|
||||
$content_form.= '<form method="POST" name="zeitsperre_form" action="'.$action.'" onsubmit="return checkdatum()">';
|
||||
$content_form.= "<table>\n";
|
||||
$content_form.= '<tr><td>'.$p->t('zeitsperre/grund').'</td><td><SELECT name="zeitsperretyp_kurzbz"'.$style.'>';
|
||||
$content_form.= '<tr><td style="width:150px">'.$p->t('zeitsperre/grund').'</td><td colspan="2" style="width:450px"><SELECT name="zeitsperretyp_kurzbz"'.$style.' onchange="showHideBezeichnungDropDown()" class="dd_breit">';
|
||||
//dropdown fuer zeitsperretyp
|
||||
$qry = "SELECT * FROM campus.tbl_zeitsperretyp ORDER BY zeitsperretyp_kurzbz";
|
||||
if($result = $db->db_query($qry))
|
||||
@@ -506,13 +579,13 @@ if($result = $db->db_query($qry))
|
||||
$content_form.= "<OPTION value='$row->zeitsperretyp_kurzbz'$disabled>$row->zeitsperretyp_kurzbz - $row->beschreibung</OPTION>";
|
||||
}
|
||||
}
|
||||
$content_form.= '</SELECT>';
|
||||
$content_form.= '<tr><td>'.$p->t('global/bezeichnung').'</td><td><input'.$style.' type="text" name="bezeichnung" maxlength="32" value="'.$zeitsperre->bezeichnung.'"'.$readonly.'></td></tr>';
|
||||
$content_form.= '<tr><td>'.$p->t('global/von').'</td><td><input'.$style.' type="text" size="10" maxlength="10" name="vondatum" id="vondatum" value="'.($zeitsperre->vondatum!=''?date('d.m.Y',$datum_obj->mktime_fromdate($zeitsperre->vondatum)):(!isset($_POST['vondatum'])?date('d.m.Y'):$_POST['vondatum'])).'"'.$readonly.'> ';
|
||||
$content_form.= '</SELECT></td></tr>';
|
||||
$content_form.= '<tr><td>'.$p->t('global/bezeichnung').'</td><td colspan="2"><span id="dienstv_span"><input'.$style.' type="text" size="32" name="bezeichnung" maxlength="32" value="'.$zeitsperre->bezeichnung.'"'.$readonly.'></span></td></tr>';
|
||||
$content_form.= '<tr><td>'.$p->t('global/von').'</td><td><input'.$style.' type="text" '.$class.' size="10" maxlength="10" name="vondatum" id="vondatum" value="'.($zeitsperre->vondatum!=''?date('d.m.Y',$datum_obj->mktime_fromdate($zeitsperre->vondatum)):(!isset($_POST['vondatum'])?date('d.m.Y'):$_POST['vondatum'])).'"'.$readonly.'> <a href="javascript:void(0);" onClick="setBisDatum()">⇓</a></td><td style="text-align:right;"> ';
|
||||
//dropdown fuer vonstunde
|
||||
$content_form.= $p->t('zeitsperre/stundeInklusive');
|
||||
|
||||
$content_form.= "<SELECT name='vonstunde'$style>\n";
|
||||
$content_form.= " <SELECT name='vonstunde'$style>\n";
|
||||
if($zeitsperre->vonstunde=='')
|
||||
$content_form.= "<OPTION value='' selectd>*</OPTION>\n";
|
||||
else
|
||||
@@ -530,10 +603,10 @@ for($i=0;$i<$num_rows_stunde;$i++)
|
||||
|
||||
$content_form.= "</SELECT></td></tr>";
|
||||
|
||||
$content_form.= '<tr><td>'.$p->t('global/bis').'</td><td><input'.$style.' type="text" size="10" maxlength="10" name="bisdatum" id="bisdatum" value="'.($zeitsperre->bisdatum!=''?date('d.m.Y',$datum_obj->mktime_fromdate($zeitsperre->bisdatum)):(!isset($_POST['bisdatum'])?date('d.m.Y'):$_POST['bisdatum'])).'"'.$readonly.'> ';
|
||||
$content_form.= '<tr><td>'.$p->t('global/bis').'</td><td><input'.$style.' type="text" '.$class.' size="10" maxlength="10" name="bisdatum" id="bisdatum" value="'.($zeitsperre->bisdatum!=''?date('d.m.Y',$datum_obj->mktime_fromdate($zeitsperre->bisdatum)):(!isset($_POST['bisdatum'])?date('d.m.Y'):$_POST['bisdatum'])).'"'.$readonly.'></td><td style="text-align:right;"> ';
|
||||
//dropdown fuer bisstunde
|
||||
$content_form.= $p->t('zeitsperre/stundeInklusive');
|
||||
$content_form.= "<SELECT name='bisstunde'$style>\n";
|
||||
$content_form.= " <SELECT name='bisstunde'$style>\n";
|
||||
|
||||
if($zeitsperre->bisstunde=='')
|
||||
$content_form.= "<OPTION value='' selectd>*</OPTION>\n";
|
||||
@@ -551,18 +624,9 @@ for($i=0;$i<$num_rows_stunde;$i++)
|
||||
|
||||
$content_form.= "</SELECT></td></tr>";
|
||||
|
||||
$content_form.= "<tr><td>".$p->t('urlaubstool/erreichbarkeit')."</td><td><SELECT name='erreichbarkeit'>";
|
||||
foreach ($erreichbarkeit_arr as $erreichbarkeit_key=>$erreichbarkeit_beschreibung)
|
||||
{
|
||||
if($zeitsperre->erreichbarkeit_kurzbz == $erreichbarkeit_key)
|
||||
$content_form.= "<OPTION value='$erreichbarkeit_key' selected>$erreichbarkeit_beschreibung</OPTION>\n";
|
||||
else
|
||||
$content_form.= "<OPTION value='$erreichbarkeit_key'>$erreichbarkeit_beschreibung</OPTION>\n";
|
||||
}
|
||||
|
||||
$content_form.= '</SELECT></td></tr>';
|
||||
|
||||
$content_form.= "<tr><td>".$p->t('urlaubstool/vertretung')."</td><td><SELECT name='vertretung_uid' id='vertretung_uid'>";
|
||||
$content_form.= "<tr><td>".$p->t('urlaubstool/vertretung')."</td><td colspan='2'><SELECT name='vertretung_uid' id='vertretung_uid' class='dd_breit'>";
|
||||
//dropdown fuer vertretung
|
||||
$qry = "SELECT * FROM campus.vw_mitarbeiter WHERE uid not LIKE '\\\_%' ORDER BY nachname, vorname";
|
||||
|
||||
@@ -579,14 +643,28 @@ if($result = $db->db_query($qry))
|
||||
}
|
||||
}
|
||||
$content_form.= '</SELECT></td></tr>';
|
||||
$content_form.= '<tr><td> </td><td>';
|
||||
|
||||
$content_form.= "<tr><td>".$p->t('urlaubstool/erreichbarkeit')."</td><td><SELECT name='erreichbarkeit'>";
|
||||
foreach ($erreichbarkeit_arr as $erreichbarkeit_key=>$erreichbarkeit_beschreibung)
|
||||
{
|
||||
if($zeitsperre->erreichbarkeit_kurzbz == $erreichbarkeit_key)
|
||||
$content_form.= "<OPTION value='$erreichbarkeit_key' selected>$erreichbarkeit_beschreibung</OPTION>\n";
|
||||
else
|
||||
$content_form.= "<OPTION value='$erreichbarkeit_key'>$erreichbarkeit_beschreibung</OPTION>\n";
|
||||
}
|
||||
|
||||
$content_form.= '</SELECT></td>';
|
||||
|
||||
$content_form.= '<td style="text-align:right;">';
|
||||
|
||||
if(isset($_GET['type']) && $_GET['type']=='edit')
|
||||
$content_form.= "<input type='submit' name='submit_zeitsperre' value='".$p->t('global/speichern')."'>";
|
||||
else
|
||||
$content_form.= "<input type='submit' name='submit_zeitsperre' value='".$p->t('global/hinzufuegen')."'>";
|
||||
$content_form.= '</td></tr>';
|
||||
$content_form.= "<tr><td> </td><td style='color:red'>".$p->t('zeitsperre/achtungEsWerdenAlleEingegebenenTage')."</td</tr>";
|
||||
|
||||
$content_form .= '<tr><td colspan="3"> </td></tr>';
|
||||
$content_form.= "<tr><td colspan='3' style='color:red'>".$p->t('zeitsperre/achtungEsWerdenAlleEingegebenenTage')."</td></tr>";
|
||||
$content_form.= '</table></form>';
|
||||
|
||||
// ******* RESTURLAUB ******** //
|
||||
@@ -668,7 +746,7 @@ echo '<tr>';
|
||||
echo "<td class='tdvertical'>";
|
||||
echo $content_form;
|
||||
echo '</td>';
|
||||
echo "<td class='tdvertical'><div id='resturlaub'>$content_resturlaub</div></td>";
|
||||
echo "<td class='tdvertical'><div id='resturlaub' style='visibility:hidden;'>$content_resturlaub</div></td>";
|
||||
echo '</tr><tr><td colspan=2>';
|
||||
echo $content_table;
|
||||
echo '</td>';
|
||||
|
||||
+124
-6
@@ -32,6 +32,13 @@ require_once('../../../include/dms.class.php');
|
||||
require_once('../../../include/service.class.php');
|
||||
require_once('../../../include/ort.class.php');
|
||||
require_once('../../../include/benutzerberechtigung.class.php');
|
||||
require_once('../../../include/organisationseinheit.class.php');
|
||||
require_once('../../../include/studiengang.class.php');
|
||||
require_once('../../../include/benutzerfunktion.class.php');
|
||||
require_once('../../../include/person.class.php');
|
||||
require_once('../../../include/mitarbeiter.class.php');
|
||||
require_once('../../../include/kontakt.class.php');
|
||||
require_once('../../../include/bisverwendung.class.php');
|
||||
|
||||
$uid = get_uid();
|
||||
$db = new basis_db();
|
||||
@@ -79,11 +86,12 @@ if (count($easteregg_intersect)==4)
|
||||
}
|
||||
|
||||
$searchPerson = searchPerson($searchItems);
|
||||
$searchOE = searchOE($searchItems);
|
||||
$searchOrt = searchOrt($search);
|
||||
$searchDms = searchDms($searchItems);
|
||||
$searchContent = searchContent($searchItems);
|
||||
|
||||
if (!$searchPerson && !$searchOrt && !$searchDms && !$searchContent)
|
||||
if (!$searchPerson && !$searchOrt && !$searchDms && !$searchContent && !$searchOE)
|
||||
echo $p->t('tools/esWurdenKeineErgebnisseGefunden');
|
||||
|
||||
|
||||
@@ -133,10 +141,18 @@ function searchPerson($searchItems)
|
||||
';
|
||||
foreach($bn->result as $row)
|
||||
{
|
||||
$bisverwendung = new bisverwendung();
|
||||
$bisverwendung->getLastAktVerwendung($row->uid);
|
||||
|
||||
echo '<tr>';
|
||||
//echo '<td>',$row->titelpre,'</td>';
|
||||
echo '<td>',$row->vorname,'</td>';
|
||||
echo '<td><a href="../profile/index.php?uid=',$row->uid,'" title="',$row->titelpre,' ',$row->vorname,' ',$row->nachname,' ',$row->titelpost,'">',$row->nachname,'</a></td>';
|
||||
echo '<td><a href="../profile/index.php?uid=',$row->uid,'" title="',$row->titelpre,' ',$row->vorname,' ',$row->nachname,' ',$row->titelpost,'">',$row->nachname,'</a>';
|
||||
if($row->aktiv==false)
|
||||
echo '<span style="color: red"> (ausgeschieden)</span>';
|
||||
elseif($bisverwendung->beschausmasscode=='5')
|
||||
echo '<span style="color: orange"> (karenziert)</span>';
|
||||
echo '</td>';
|
||||
//echo '<td>',$row->titelpost,'</td>';
|
||||
echo '<td>',($row->studiengang!=''?$row->studiengang:'-'),'</td>';
|
||||
echo '<td>',($row->mitarbeiter_uid==NULL?'StudentIn':'MitarbeiterIn'),'</td>';
|
||||
@@ -158,11 +174,113 @@ function searchPerson($searchItems)
|
||||
else
|
||||
return false;
|
||||
}
|
||||
function searchOE($searchItems)
|
||||
{
|
||||
global $db, $p, $noalias;
|
||||
|
||||
//Suche nach Studiengaengen mit dem Suchbegriff und merge mit $searchItems
|
||||
$stg_oe_array = array();
|
||||
$stg = new studiengang();
|
||||
$stg->search($searchItems);
|
||||
foreach($stg->result as $row)
|
||||
{
|
||||
if($row->aktiv===true)
|
||||
$stg_oe_array[].= $row->oe_kurzbz;
|
||||
}
|
||||
$searchItems = array_merge_recursive($stg_oe_array,$searchItems);
|
||||
|
||||
$oe = new organisationseinheit();
|
||||
$oe->search($searchItems);
|
||||
|
||||
if(count($oe->result)>0)
|
||||
{
|
||||
echo '<h2 style="padding-bottom: 10px;">',$p->t('global/organisationseinheiten'),'</h2>';
|
||||
echo '
|
||||
<script type="text/javascript">
|
||||
$(document).ready(function()
|
||||
{
|
||||
$(".tablesorter").each(function(i,v)
|
||||
{
|
||||
$("#"+v.id).tablesorter(
|
||||
{
|
||||
sortList: [[2,0],[1,0],[0,0]],
|
||||
widgets: [\'zebra\'],
|
||||
headers: {8:{sorter:false}}
|
||||
})
|
||||
});
|
||||
}
|
||||
);
|
||||
</script>';
|
||||
|
||||
foreach($oe->result as $row)
|
||||
{
|
||||
if($row->aktiv==true)
|
||||
{
|
||||
$benutzerfunktion = new benutzerfunktion();
|
||||
$benutzerfunktion->getOeFunktionen($row->oe_kurzbz,'ass,Leitung,stvLtg,oezuordnung','now()','now()');
|
||||
$oebezeichnung = new organisationseinheit();
|
||||
$oebezeichnung->load($row->oe_kurzbz);
|
||||
echo '<h3>',$row->organisationseinheittyp_kurzbz,' ',$oebezeichnung->bezeichnung,'</h3>';
|
||||
echo '<table class="tablesorter" id="t'.$row->oe_kurzbz.'">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>',$p->t('global/vorname'),'</th>
|
||||
<th>',$p->t('global/nachname'),'</th>
|
||||
<th>',$p->t('global/funktion'),'</th>
|
||||
<th>',$p->t('global/telefonnummer'),'</th>
|
||||
<th>',$p->t('lvplan/raum'),'</th>
|
||||
<th>',$p->t('global/mail'),'</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
';
|
||||
foreach($benutzerfunktion->result as $bf)
|
||||
{
|
||||
$person = new person();
|
||||
$person->getPersonFromBenutzer($bf->uid);
|
||||
$mitarbeiter = new mitarbeiter();
|
||||
$mitarbeiter->load($bf->uid);
|
||||
$kontakt = new kontakt();
|
||||
$kontakt->loadFirmaKontakttyp($mitarbeiter->standort_id,'telefon');
|
||||
$bisverwendung = new bisverwendung();
|
||||
$bisverwendung->getLastAktVerwendung($bf->uid);
|
||||
echo '<tr>';
|
||||
echo '<td>'.$person->vorname.'</td>';
|
||||
echo '<td><a href="../profile/index.php?uid=',$person->uid,'" title="',$person->titelpre,' ',$person->vorname,' ',$person->nachname,' ',$person->titelpost,'">',$person->nachname,'</a></td>';
|
||||
echo '<td>'.$bf->bezeichnung;
|
||||
if($person->aktiv==false)
|
||||
echo '<span style="color: red"> (ausgeschieden)</span>';
|
||||
elseif($bisverwendung->beschausmasscode=='5')
|
||||
echo '<span style="color: orange"> (karenziert)</span>';
|
||||
echo '</td>';
|
||||
|
||||
echo '<td>',($mitarbeiter->telefonklappe!=''?$kontakt->kontakt.'-'.$mitarbeiter->telefonklappe:'-'),'</td>';
|
||||
echo '<td>',($mitarbeiter->ort_kurzbz!=''?$mitarbeiter->ort_kurzbz:'-'),'</td>';
|
||||
//if($row->alias!='' && !in_array($row->studiengang_kz, $noalias)) ??? Was macht $noalias?
|
||||
if($person->alias!='')
|
||||
$mail = $person->alias.'@'.DOMAIN;
|
||||
else
|
||||
$mail = $person->uid.'@'.DOMAIN;
|
||||
echo '<td><a href="mailto:',$mail,'">',$mail,'</a></td>';
|
||||
//if(!defined('CIS_SUCHE_LVPLAN_ANZEIGEN') || CIS_SUCHE_LVPLAN_ANZEIGEN)
|
||||
//echo '<td><a href="../../../cis/private/lvplan/stpl_week.php?pers_uid='.$person->uid.($person->mitarbeiter_uid==NULL?'&type=student':'&type=lektor').'">'.$p->t('lvplan/lvPlan').'</a></td>';
|
||||
echo '</tr>';
|
||||
echo "\n";
|
||||
}
|
||||
echo "\n";
|
||||
echo '</tbody></table><br>';
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
else
|
||||
return false;
|
||||
}
|
||||
function searchOrt($search)
|
||||
{
|
||||
global $db, $p, $noalias;
|
||||
$ort = new ort();
|
||||
$ort->filter($search, true, true);
|
||||
$ort->filter($search, true, true, true);
|
||||
|
||||
$uid = get_uid();
|
||||
$berechtigung=new benutzerberechtigung();
|
||||
@@ -228,9 +346,9 @@ function searchDms($searchItems)
|
||||
{
|
||||
$mimetypes = array(
|
||||
'application/pdf'=>'pdf_icon.png',
|
||||
'application/vnd.openxmlformats-officedocument.wordprocessingml.document'=>'word2007.jpg',
|
||||
'application/vnd.openxmlformats-officedocument.presentationml.presentation'=>'x-office-presentation.png',
|
||||
'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'=>'excel.gif',
|
||||
'application/vnd.openxmlformats-officedocument.wordprocessingml.document'=>'doc_icon.png',
|
||||
'application/vnd.openxmlformats-officedocument.presentationml.presentation'=>'ppt_icon.png',
|
||||
'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'=>'xls_icon.png',
|
||||
'application/vnd.oasis.opendocument.text'=>'openoffice0.jpg',
|
||||
'application/msword'=>'doc_icon.png',
|
||||
'application/vnd.ms-excel'=>'xls_icon.png',
|
||||
|
||||
Regular → Executable
+492
-173
@@ -20,6 +20,7 @@
|
||||
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>
|
||||
* Karl Burkhart <burkhart@technikum-wien.at>
|
||||
* Manfred Kindl <kindlm@technikum.wien.at>.
|
||||
* Gerald Raab <raab@technikum-wien.at>
|
||||
*/
|
||||
require_once('../../../config/cis.config.inc.php');
|
||||
require_once('../../../include/functions.inc.php');
|
||||
@@ -28,6 +29,7 @@ require_once('../../../include/benutzer.class.php');
|
||||
require_once('../../../include/studiengang.class.php');
|
||||
require_once('../../../include/fachbereich.class.php');
|
||||
require_once('../../../include/zeitaufzeichnung.class.php');
|
||||
require_once('../../../include/zeitsperre.class.php');
|
||||
require_once('../../../include/datum.class.php');
|
||||
require_once('../../../include/projekt.class.php');
|
||||
require_once('../../../include/phrasen.class.php');
|
||||
@@ -35,6 +37,9 @@ require_once('../../../include/organisationseinheit.class.php');
|
||||
require_once('../../../include/service.class.php');
|
||||
require_once('../../../include/mitarbeiter.class.php');
|
||||
require_once('../../../include/betriebsmittelperson.class.php');
|
||||
require_once('../../../include/globals.inc.php');
|
||||
require_once('../../../include/bisverwendung.class.php');
|
||||
require_once('../../../include/studiensemester.class.php');
|
||||
|
||||
$sprache = getSprache();
|
||||
$p=new phrasen($sprache);
|
||||
@@ -43,17 +48,40 @@ if (!$db = new basis_db())
|
||||
die($p->t("global/fehlerBeimOeffnenDerDatenbankverbindung"));
|
||||
|
||||
$user = get_uid();
|
||||
if ($user == 'raab' && isset($_GET["debuguser"]))
|
||||
$user = $_GET["debuguser"];
|
||||
|
||||
|
||||
|
||||
|
||||
$datum = new datum();
|
||||
|
||||
if (check_infrastruktur($user))
|
||||
{
|
||||
$za_simple = 0;
|
||||
$activities = array('Design', 'Operativ', 'Betrieb', 'Pause', 'LehreIntern', 'LehreExtern', 'Arztbesuch', 'Dienstreise', 'Behoerde');
|
||||
}
|
||||
else
|
||||
{
|
||||
$za_simple = 1;
|
||||
$activities = array('Arbeit', 'Pause', 'LehreIntern', 'LehreExtern', 'Arztbesuch', 'Dienstreise', 'Behoerde');
|
||||
}
|
||||
|
||||
$activities_str = "'".implode("','", $activities)."'";
|
||||
|
||||
// definiert bis zu welchem Datum die Eintragung nicht mehr möglich ist
|
||||
$gesperrt_bis = '2015-08-31';
|
||||
$sperrdatum = date('c', strtotime($gesperrt_bis));
|
||||
|
||||
$zeitaufzeichnung_id = (isset($_GET['zeitaufzeichnung_id'])?$_GET['zeitaufzeichnung_id']:'');
|
||||
$projekt_kurzbz = (isset($_POST['projekt'])?$_POST['projekt']:'');
|
||||
$oe_kurzbz_1 = (isset($_POST['oe_kurzbz_1'])?$_POST['oe_kurzbz_1']:'');
|
||||
$oe_kurzbz_2 = (isset($_POST['oe_kurzbz_2'])?$_POST['oe_kurzbz_2']:'');
|
||||
$aktivitaet_kurzbz = (isset($_POST['aktivitaet'])?$_POST['aktivitaet']:'');
|
||||
$von_datum = (isset($_POST['von_datum'])?$_POST['von_datum']:date('d.m.Y'));
|
||||
$von_datum = (isset($_REQUEST['von_datum'])?$_REQUEST['von_datum']:date('d.m.Y'));
|
||||
$von_uhrzeit = (isset($_POST['von_uhrzeit'])?$_POST['von_uhrzeit']:date('H:i'));
|
||||
$von = $von_datum.' '.$von_uhrzeit;
|
||||
$bis_datum = (isset($_POST['bis_datum'])?$_POST['bis_datum']:date('d.m.Y'));
|
||||
$bis_datum = (isset($_REQUEST['bis_datum'])?$_REQUEST['bis_datum']:date('d.m.Y'));
|
||||
$bis_uhrzeit = (isset($_POST['bis_uhrzeit'])?$_POST['bis_uhrzeit']:date('H:i',mktime(date('H'), date('i')+10)));
|
||||
$bis = $bis_datum.' '.$bis_uhrzeit;
|
||||
$beschreibung = (isset($_POST['beschreibung'])?$_POST['beschreibung']:'');
|
||||
@@ -61,9 +89,17 @@ $service_id = (isset($_POST['service_id'])?$_POST['service_id']:'');
|
||||
$kunde_uid = (isset($_POST['kunde_uid'])?$_POST['kunde_uid']:'');
|
||||
$kartennummer = (isset($_POST['kartennummer'])?$_POST['kartennummer']:'');
|
||||
$filter = (isset($_GET['filter'])?$_GET['filter']:'foo');
|
||||
$alle = (isset($_POST['alle'])?(isset($_POST['normal'])?false:true):false);
|
||||
$alle = (isset($_GET['alle'])?(isset($_GET['normal'])?false:true):false);
|
||||
$angezeigte_tage = '50';
|
||||
|
||||
$zs = new zeitsperre();
|
||||
if ($alle)
|
||||
$zs->getZeitsperrenForZeitaufzeichnung($user,'180');
|
||||
else
|
||||
$zs->getZeitsperrenForZeitaufzeichnung($user,$angezeigte_tage);
|
||||
|
||||
$zeitsperren = $zs->result;
|
||||
|
||||
echo '<!DOCTYPE HTML>
|
||||
<html>
|
||||
<head>
|
||||
@@ -201,6 +237,28 @@ echo '
|
||||
return val;
|
||||
}
|
||||
|
||||
function checkZeiten()
|
||||
{
|
||||
var von_el = document.getElementById("von_uhrzeit");
|
||||
var bis_el = document.getElementById("bis_uhrzeit");
|
||||
var von_zeit = von_el.value;
|
||||
var bis_zeit = bis_el.value;
|
||||
von_arr = von_zeit.split(":");
|
||||
bis_arr = bis_zeit.split(":");
|
||||
if (von_arr[0].length == 1)
|
||||
von_arr[0] = foo(von_arr[0]);
|
||||
if (von_arr[1].length == 1)
|
||||
von_arr[1] = foo(von_arr[1]);
|
||||
if (bis_arr[0].length == 1)
|
||||
bis_arr[0] = foo(bis_arr[0]);
|
||||
if (bis_arr[1].length == 1)
|
||||
bis_arr[1] = foo(bis_arr[1]);
|
||||
von_zeit = von_arr[0]+":"+von_arr[1];
|
||||
bis_zeit = bis_arr[0]+":"+bis_arr[1];
|
||||
von_el.value = von_zeit;
|
||||
bis_el.value = bis_zeit;
|
||||
|
||||
}
|
||||
function confdel()
|
||||
{
|
||||
return confirm("'.$p->t("global/warnungWirklichLoeschen").'");
|
||||
@@ -341,58 +399,166 @@ if($kartennummer != '')
|
||||
$kunde_uid = $betriebsmittel->uid;
|
||||
}
|
||||
//Speichern der Daten
|
||||
if(isset($_POST['save']) || isset($_POST['edit']))
|
||||
if(isset($_POST['save']) || isset($_POST['edit']) || isset($_POST['import']))
|
||||
{
|
||||
$zeit = new zeitaufzeichnung();
|
||||
|
||||
if(isset($_POST['edit']))
|
||||
if ($_FILES['csv']['error'] == 0 && isset($_POST['import']))
|
||||
{
|
||||
if(!$zeit->load($zeitaufzeichnung_id))
|
||||
die($p->t("global/fehlerBeimLadenDesDatensatzes"));
|
||||
|
||||
$zeit->new = false;
|
||||
$name = $_FILES['csv']['name'];
|
||||
$tmpName = $_FILES['csv']['tmp_name'];
|
||||
$mimeType = mime_content_type($_FILES['csv']['tmp_name']);
|
||||
//echo($mimeType);
|
||||
if($mimeType=='text/plain')
|
||||
{
|
||||
if(($handle = fopen($tmpName, 'r')) !== FALSE)
|
||||
{
|
||||
if (mb_detect_encoding(fgets($handle), 'UTF-8', true))
|
||||
{
|
||||
set_time_limit(0);
|
||||
$anzahl = 0;
|
||||
$importtage_array = array();
|
||||
$ende_vorher = date('Y-m-d H:i:s');
|
||||
while(($data = fgetcsv($handle, 1000, ';', '"')) !== FALSE)
|
||||
{
|
||||
if($data[0] == $user)
|
||||
{
|
||||
if ($datum->formatDatum($data[2], $format='Y-m-d H:i:s') < $sperrdatum)
|
||||
echo '<span style="color:red"><b>'.$p->t("global/fehlerBeimSpeichernDerDaten").': Eingabe nicht möglich da vor dem Sperrdatum ('.$data[2].')</b></span><br>';
|
||||
else
|
||||
{
|
||||
$zeit->new = true;
|
||||
$zeit->insertamum = date('Y-m-d H:i:s');
|
||||
$zeit->updateamum = date('Y-m-d H:i:s');
|
||||
$zeit->updatevon = $user;
|
||||
$zeit->insertvon = $user;
|
||||
$zeit->uid = $data[0];
|
||||
$zeit->aktivitaet_kurzbz = $data[1];
|
||||
$zeit->start = $datum->formatDatum($data[2], $format='Y-m-d H:i:s');
|
||||
$zeit->ende = $datum->formatDatum($data[3], $format='Y-m-d H:i:s');
|
||||
$zeit->beschreibung = $data[4];
|
||||
$tag = $datum->formatDatum($data[2], $format='Y-m-d');
|
||||
|
||||
|
||||
|
||||
if(!in_array($tag, $importtage_array))
|
||||
{
|
||||
$importtage_array[] = $tag;
|
||||
$zeit->deleteEntriesForUser($user, $tag);
|
||||
$tag_aktuell = $tag;
|
||||
}
|
||||
else
|
||||
{
|
||||
if ($ende_vorher < $zeit->start)
|
||||
{
|
||||
$pause = new zeitaufzeichnung();
|
||||
$pause->new = true;
|
||||
$pause->insertamum = date('Y-m-d H:i:s');
|
||||
$pause->updateamum = date('Y-m-d H:i:s');
|
||||
$pause->updatevon = $user;
|
||||
$pause->insertvon = $user;
|
||||
$pause->uid = $user;
|
||||
$pause->aktivitaet_kurzbz = 'Pause';
|
||||
$pause->start = $ende_vorher;
|
||||
$pause->ende = $zeit->start;
|
||||
$zeit->beschreibung = '';
|
||||
if(!$pause->save())
|
||||
{
|
||||
echo '<span style="color:red"><b>'.$p->t("global/fehlerBeimSpeichernDerDaten").': '.$pause->errormsg.'</b></span>';
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
$ende_vorher = $zeit->ende;
|
||||
if($data[2] != $data[3])
|
||||
{
|
||||
if ($data[1] == 'LehreExtern')
|
||||
{
|
||||
$zeit->start = date('Y-m-d H:i:s', strtotime('+2 seconds', strtotime($data[2])));
|
||||
$zeit->ende = date('Y-m-d H:i:s', strtotime('-2 seconds', strtotime($data[3])));
|
||||
}
|
||||
if(!$zeit->save())
|
||||
{
|
||||
echo '<span style="color:red"><b>'.$p->t("global/fehlerBeimSpeichernDerDaten").': '.$zeit->errormsg.'</b>('.$zeit->start.')</span>';
|
||||
}
|
||||
else
|
||||
$anzahl++;
|
||||
}
|
||||
else
|
||||
$anzahl++;
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
if($anzahl>0)
|
||||
{
|
||||
echo '<span style="color:green"><b>'.$p->t("global/datenWurdenGespeichert").' ('.$anzahl.')</b></span>';
|
||||
foreach ($importtage_array as $ptag)
|
||||
{
|
||||
$zeit->cleanPausenForUser($user, $ptag);
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
echo '<span style="color:red"><b>Datei konnte nicht importiert werden. Encoding ist nicht UTF-8!</b></span>';
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
else if ($datum->formatDatum($von, $format='Y-m-d H:i:s') < $sperrdatum)
|
||||
echo '<span style="color:red"><b>'.$p->t("global/fehlerBeimSpeichernDerDaten").': Eingabe nicht möglich da vor dem Sperrdatum</b></span>';
|
||||
else if (isset($_POST['save']) || isset($_POST['edit']))
|
||||
{
|
||||
$zeit->new = true;
|
||||
$zeit->insertamum = date('Y-m-d H:i:s');
|
||||
$zeit->insertvon = $user;
|
||||
}
|
||||
|
||||
$zeit->uid = $user;
|
||||
$zeit->aktivitaet_kurzbz = $aktivitaet_kurzbz;
|
||||
$zeit->start = $datum->formatDatum($von, $format='Y-m-d H:i:s');
|
||||
$zeit->ende = $datum->formatDatum($bis, $format='Y-m-d H:i:s');
|
||||
$zeit->beschreibung = $beschreibung;
|
||||
$zeit->oe_kurzbz_1 = $oe_kurzbz_1;
|
||||
$zeit->oe_kurzbz_2 = $oe_kurzbz_2;
|
||||
$zeit->updateamum = date('Y-m-d H:i:s');
|
||||
$zeit->updatevon = $user;
|
||||
$zeit->projekt_kurzbz = $projekt_kurzbz;
|
||||
$zeit->service_id = $service_id;
|
||||
$zeit->kunde_uid = $kunde_uid;
|
||||
|
||||
if(!$zeit->save())
|
||||
{
|
||||
echo '<span style="color:red"><b>'.$p->t("global/fehlerBeimSpeichernDerDaten").': '.$zeit->errormsg.'</b></span>';
|
||||
}
|
||||
else
|
||||
{
|
||||
echo '<span style="color:green"><b>'.$p->t("global/datenWurdenGespeichert").'</b></span>';
|
||||
|
||||
// Nach dem Speichern in den neu Modus springen und als Von Zeit
|
||||
// das Ende des letzten Eintrages eintragen
|
||||
$zeitaufzeichnung_id = '';
|
||||
$uid = $zeit->uid;
|
||||
$aktivitaet_kurzbz = '';
|
||||
$von = date('d.m.Y H:i', $datum->mktime_fromtimestamp($zeit->ende));
|
||||
$bis = date('d.m.Y H:i', $datum->mktime_fromtimestamp($zeit->ende)+3600);
|
||||
$beschreibung = '';
|
||||
$oe_kurzbz_1 = '';
|
||||
$oe_kurzbz_2 = '';
|
||||
$projekt_kurzbz = '';
|
||||
$service_id = '';
|
||||
$kunde_uid = '';
|
||||
if(isset($_POST['edit']))
|
||||
{
|
||||
if(!$zeit->load($zeitaufzeichnung_id))
|
||||
die($p->t("global/fehlerBeimLadenDesDatensatzes"));
|
||||
|
||||
$zeit->new = false;
|
||||
}
|
||||
else
|
||||
{
|
||||
$zeit->new = true;
|
||||
$zeit->insertamum = date('Y-m-d H:i:s');
|
||||
$zeit->insertvon = $user;
|
||||
}
|
||||
|
||||
$zeit->uid = $user;
|
||||
$zeit->aktivitaet_kurzbz = $aktivitaet_kurzbz;
|
||||
$zeit->start = $datum->formatDatum($von, $format='Y-m-d H:i:s');
|
||||
$zeit->ende = $datum->formatDatum($bis, $format='Y-m-d H:i:s');
|
||||
$zeit->beschreibung = $beschreibung;
|
||||
$zeit->oe_kurzbz_1 = $oe_kurzbz_1;
|
||||
$zeit->oe_kurzbz_2 = $oe_kurzbz_2;
|
||||
$zeit->updateamum = date('Y-m-d H:i:s');
|
||||
$zeit->updatevon = $user;
|
||||
$zeit->projekt_kurzbz = $projekt_kurzbz;
|
||||
$zeit->service_id = $service_id;
|
||||
$zeit->kunde_uid = $kunde_uid;
|
||||
|
||||
if(!$zeit->save())
|
||||
{
|
||||
echo '<span style="color:red"><b>'.$p->t("global/fehlerBeimSpeichernDerDaten").': '.$zeit->errormsg.'</b></span>';
|
||||
}
|
||||
else
|
||||
{
|
||||
echo '<span style="color:green"><b>'.$p->t("global/datenWurdenGespeichert").'</b></span>';
|
||||
|
||||
// Nach dem Speichern in den neu Modus springen und als Von Zeit
|
||||
// das Ende des letzten Eintrages eintragen
|
||||
$zeitaufzeichnung_id = '';
|
||||
$uid = $zeit->uid;
|
||||
$aktivitaet_kurzbz = '';
|
||||
$von = date('d.m.Y H:i', $datum->mktime_fromtimestamp($zeit->ende));
|
||||
$bis = date('d.m.Y H:i', $datum->mktime_fromtimestamp($zeit->ende)+3600);
|
||||
$beschreibung = '';
|
||||
$oe_kurzbz_1 = '';
|
||||
$oe_kurzbz_2 = '';
|
||||
$projekt_kurzbz = '';
|
||||
$service_id = '';
|
||||
$kunde_uid = '';
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -403,15 +569,21 @@ if(isset($_GET['type']) && $_GET['type']=='delete')
|
||||
|
||||
if($zeit->load($zeitaufzeichnung_id))
|
||||
{
|
||||
if($zeit->uid==$user)
|
||||
{
|
||||
if($zeit->delete($zeitaufzeichnung_id))
|
||||
echo '<span style="color:orange"><b>'.$p->t("global/eintragWurdeGeloescht").'</b></span>';
|
||||
else
|
||||
echo '<span style="color:red"><b>'.$p->t("global/fehlerBeimLoeschenDesEintrags").'</b></span>';
|
||||
}
|
||||
|
||||
if ($zeit->start < $sperrdatum)
|
||||
echo '<span style="color:red"><b>'.$p->t("global/fehlerBeimSpeichernDerDaten").': Eingabe nicht möglich da vor dem Sperrdatum</b></span>';
|
||||
else
|
||||
echo '<span style="color:red"><b>'.$p->t("global/keineBerechtigung").'!</b></span>';
|
||||
{
|
||||
if($zeit->uid==$user)
|
||||
{
|
||||
if($zeit->delete($zeitaufzeichnung_id))
|
||||
echo '<span style="color:orange"><b>'.$p->t("global/eintragWurdeGeloescht").'</b></span>';
|
||||
else
|
||||
echo '<span style="color:red"><b>'.$p->t("global/fehlerBeimLoeschenDesEintrags").'</b></span>';
|
||||
}
|
||||
else
|
||||
echo '<span style="color:red"><b>'.$p->t("global/keineBerechtigung").'!</b></span>';
|
||||
}
|
||||
}
|
||||
else
|
||||
echo '<span style="color:red"><b>'.$p->t("global/datensatzWurdeNichtGefunden").'</b></span>';
|
||||
@@ -447,11 +619,11 @@ if(isset($_GET['type']) && $_GET['type']=='edit')
|
||||
}
|
||||
}
|
||||
|
||||
//Projekte holen fuer zu denen der Benutzer zugeteilt ist
|
||||
//Projekte holen zu denen der Benutzer zugeteilt ist
|
||||
$projekt = new projekt();
|
||||
|
||||
|
||||
if($projekt->getProjekteMitarbeiter($user))
|
||||
if($projekt->getProjekteMitarbeiter($user, true))
|
||||
{
|
||||
//if(count($projekt->result)>0)
|
||||
//{
|
||||
@@ -460,17 +632,32 @@ if($projekt->getProjekteMitarbeiter($user))
|
||||
<tr>
|
||||
<td>
|
||||
<a href='".$_SERVER['PHP_SELF']."' style='font-size: larger;'>".$p->t("zeitaufzeichnung/neu")."</a>
|
||||
|
||||
<a href='".$_SERVER['PHP_SELF']."?csvimport=1' style='font-size: larger;'>CSV Import</a>
|
||||
</td>
|
||||
<td class='menubox' height='10px'>";
|
||||
if ($p->t("dms_link/handbuchZeitaufzeichnung")!='')
|
||||
{
|
||||
echo '<p><a href="../../../cms/dms.php?id='.$p->t("dms_link/handbuchZeitaufzeichnung").'" target="_blank">'.$p->t("zeitaufzeichnung/handbuchZeitaufzeichnung").'</a></p>';
|
||||
}
|
||||
if ($p->t("dms_link/fiktiveNormalarbeitszeit")!='')
|
||||
{
|
||||
echo '<p><a href="../../../cms/dms.php?id='.$p->t("dms_link/fiktiveNormalarbeitszeit").'" target="_blank">'.$p->t("zeitaufzeichnung/fiktiveNormalarbeitszeit").'</a></p>';
|
||||
}
|
||||
echo '<p><a href="../profile/zeitsperre_resturlaub.php">'.$p->t("urlaubstool/meineZeitsperren").'</a></p>';
|
||||
echo "</td>
|
||||
</tr>
|
||||
</table>";
|
||||
|
||||
//Formular
|
||||
echo '<br><form action="'.$_SERVER['PHP_SELF'].'?zeitaufzeichnung_id='.$zeitaufzeichnung_id.'" method="POST" onsubmit="return checkdatum()">';
|
||||
echo '<br><form action="'.$_SERVER['PHP_SELF'].'?zeitaufzeichnung_id='.$zeitaufzeichnung_id.'" method="POST" onsubmit="return checkdatum()" enctype="multipart/form-data">';
|
||||
|
||||
echo '<table>
|
||||
<tr>
|
||||
<td>';
|
||||
<td rowspan="2">';
|
||||
echo '<table>';
|
||||
if($za_simple == 0)
|
||||
{
|
||||
//Projekt
|
||||
echo '<tr>
|
||||
<td>'.$p->t("zeitaufzeichnung/projekt").'</td>
|
||||
@@ -487,7 +674,7 @@ if($projekt->getProjekteMitarbeiter($user))
|
||||
|
||||
echo '<option value="'.$db->convert_html_chars($row_projekt->projekt_kurzbz).'" '.$selected.'>'.$db->convert_html_chars($row_projekt->titel).'</option>';
|
||||
}
|
||||
echo '</SELECT><input type="button" value="'.$p->t("zeitaufzeichnung/uebersicht").'" onclick="loaduebersicht();"></td>';
|
||||
echo '</SELECT><!--<input type="button" value="'.$p->t("zeitaufzeichnung/uebersicht").'" onclick="loaduebersicht();">--></td>';
|
||||
echo '</tr><tr>';
|
||||
//OE_KURZBZ_1
|
||||
echo '<td nowrap>'.$p->t("zeitaufzeichnung/organisationseinheiten").'</td>
|
||||
@@ -546,16 +733,22 @@ if($projekt->getProjekteMitarbeiter($user))
|
||||
echo '<option value="'.$db->convert_html_chars($row->oe_kurzbz).'" '.$selected.' '.$class.'>'.$db->convert_html_chars($row->bezeichnung.' ('.$row->organisationseinheittyp_kurzbz).')</option>';
|
||||
}
|
||||
echo '</SELECT></td></tr>';
|
||||
}
|
||||
|
||||
//Aktivitaet
|
||||
echo '<tr>';
|
||||
echo '<td>'.$p->t("zeitaufzeichnung/aktivitaet").'</td><td colspan="4">';
|
||||
|
||||
$qry = "SELECT * FROM fue.tbl_aktivitaet ORDER by sort,beschreibung";
|
||||
//if ($za_simple == 1)
|
||||
$qry = "SELECT * FROM fue.tbl_aktivitaet where aktivitaet_kurzbz in (".$activities_str.") ORDER by sort,beschreibung";
|
||||
//else
|
||||
// $qry = "SELECT * FROM fue.tbl_aktivitaet where sort != 5 or sort is null ORDER by sort,beschreibung";
|
||||
if($result = $db->db_query($qry))
|
||||
{
|
||||
echo '<SELECT name="aktivitaet">
|
||||
<OPTION value="">-- '.$p->t('zeitaufzeichnung/keineAuswahl').' --</OPTION>';
|
||||
|
||||
echo '<SELECT name="aktivitaet">';
|
||||
if ($za_simple == 0)
|
||||
echo '<OPTION value="">-- '.$p->t('zeitaufzeichnung/keineAuswahl').' --</OPTION>';
|
||||
//else
|
||||
// echo '<OPTION value="Arbeit">Arbeit</OPTION>';
|
||||
while($row = $db->db_fetch_object($result))
|
||||
{
|
||||
if($aktivitaet_kurzbz == $row->aktivitaet_kurzbz)
|
||||
@@ -569,6 +762,8 @@ if($projekt->getProjekteMitarbeiter($user))
|
||||
}
|
||||
echo '</td></tr>';
|
||||
|
||||
if ($za_simple == 0)
|
||||
{
|
||||
// Service
|
||||
echo '<tr>
|
||||
<td>'.$p->t('zeitaufzeichnung/service').'</td>
|
||||
@@ -610,6 +805,8 @@ if($projekt->getProjekteMitarbeiter($user))
|
||||
<input type="text" id="kartennummer" name="kartennummer" placeholder="'.$p->t("zeitaufzeichnung/kartennummer").'"></td>
|
||||
</tr>';
|
||||
echo '<tr><td colspan="4"> </td></tr>';
|
||||
}
|
||||
|
||||
//Start/Ende
|
||||
$von_ts = $datum->mktime_fromtimestamp($datum->formatDatum($von, $format='Y-m-d H:i:s'));
|
||||
$bis_ts = $datum->mktime_fromtimestamp($datum->formatDatum($bis, $format='Y-m-d H:i:s'));
|
||||
@@ -617,20 +814,33 @@ if($projekt->getProjekteMitarbeiter($user))
|
||||
echo '
|
||||
<tr>
|
||||
<td>'.$p->t("global/von").' - '.$p->t("global/bis").'</td>
|
||||
<td style="width:50px; white-space: nowrap">
|
||||
<td>
|
||||
<input type="text" class="datepicker_datum" id="von_datum" name="von_datum" value="'.$db->convert_html_chars($datum->formatDatum($von, $format='d.m.Y')).'" size="9">
|
||||
<input type="text" class="timepicker" id="von_uhrzeit" name="von_uhrzeit" value="'.$db->convert_html_chars($datum->formatDatum($von, $format='H:i')).'" size="4">
|
||||
<img style="vertical-align:bottom; cursor:pointer" src="../../../skin/images/timetable.png" title="'.$p->t("zeitaufzeichnung/aktuelleZeitLaden").'" onclick="setvondatum()">
|
||||
<img style="vertical-align:bottom; cursor:pointer" src="../../../skin/images/arrow-next.png" title="'.$p->t("zeitaufzeichnung/alsEndzeitUebernehmen").'" onclick="uebernehmen()">
|
||||
</td>
|
||||
<td align="center"> +
|
||||
<input type="text" style="width: 25px;" maxlength="3" id="diff" name="diff" value="'.$db->convert_html_chars($diff/60).'" oninput="addieren()">
|
||||
min.
|
||||
</td><td>
|
||||
<img style="vertical-align:bottom; cursor:pointer" src="../../../skin/images/arrow-previous.png" title="'.$p->t("zeitaufzeichnung/alsStartzeitUebernehmen").'" onclick="uebernehmen1()">
|
||||
<img style="vertical-align:bottom; cursor:pointer" src="../../../skin/images/timetable.png" title="'.$p->t("zeitaufzeichnung/aktuelleZeitLaden").'" onclick="setbisdatum()">
|
||||
<input onchange="checkZeiten()" type="text" class="timepicker" id="von_uhrzeit" name="von_uhrzeit" value="'.$db->convert_html_chars($datum->formatDatum($von, $format='H:i')).'" size="4">
|
||||
</td>';
|
||||
if ($za_simple == 0)
|
||||
{
|
||||
echo '
|
||||
<td align="center">
|
||||
<img style="vertical-align:bottom; cursor:pointer" src="../../../skin/images/timetable.png" title="'.$p->t("zeitaufzeichnung/aktuelleZeitLaden").'" onclick="setvondatum()">
|
||||
<img style="vertical-align:bottom; cursor:pointer" src="../../../skin/images/arrow-next.png" title="'.$p->t("zeitaufzeichnung/alsEndzeitUebernehmen").'" onclick="uebernehmen()">
|
||||
|
||||
+
|
||||
<input type="text" style="width: 25px;" maxlength="3" id="diff" name="diff" value="'.$db->convert_html_chars($diff/60).'" oninput="addieren()">
|
||||
min.
|
||||
|
||||
<img style="vertical-align:bottom; cursor:pointer" src="../../../skin/images/arrow-previous.png" title="'.$p->t("zeitaufzeichnung/alsStartzeitUebernehmen").'" onclick="uebernehmen1()">
|
||||
<img style="vertical-align:bottom; cursor:pointer" src="../../../skin/images/timetable.png" title="'.$p->t("zeitaufzeichnung/aktuelleZeitLaden").'" onclick="setbisdatum()">
|
||||
</td>';
|
||||
}
|
||||
else
|
||||
{
|
||||
echo '<td align="center"> - </td>';
|
||||
}
|
||||
echo '
|
||||
<td align="right">
|
||||
<input type="text" class="datepicker_datum" id="bis_datum" name="bis_datum" value="'.$db->convert_html_chars($datum->formatDatum($bis, $format='d.m.Y')).'" size="9">
|
||||
<input type="text" class="timepicker" id="bis_uhrzeit" name="bis_uhrzeit" value="'.$db->convert_html_chars($datum->formatDatum($bis, $format='H:i')).'" size="4">
|
||||
<input onchange="checkZeiten()" type="text" class="timepicker" id="bis_uhrzeit" name="bis_uhrzeit" value="'.$db->convert_html_chars($datum->formatDatum($bis, $format='H:i')).'" size="4">
|
||||
</td>
|
||||
<tr>';
|
||||
//Beschreibung
|
||||
@@ -645,13 +855,58 @@ if($projekt->getProjekteMitarbeiter($user))
|
||||
echo '<input type="submit" value="'.$p->t("global/aendern").'" name="edit"> ';
|
||||
echo '<input type="submit" value="'.$p->t("zeitaufzeichnung/alsNeuenEintragSpeichern").'" name="save"></td></tr>';
|
||||
}
|
||||
if (isset($_GET['csvimport']))
|
||||
{
|
||||
echo '<tr><td colspan="4"><hr></td></tr>';
|
||||
echo '<tr><td>CSV-Import</td><td colspan="2"><input type="file" name="csv" value="" /></td><td align="right"><input type="submit" value="Import" name="import"></td></tr>';
|
||||
echo '<tr><td></td><td colspan="3">Informationen zum Format der CSV-Datei s. Leitfaden Arbeitszeitaufzeichnung</td></tr>';
|
||||
}
|
||||
else
|
||||
echo '<input type="file" name="csv" value="" style="visibility:hidden">';
|
||||
echo '</table>';
|
||||
echo '</td><td valign="top"><span id="zeitsaldo"></span></td></tr>
|
||||
</table>';
|
||||
|
||||
|
||||
echo '</td><td valign="top"><span id="zeitsaldo"></span><br><br><div id="monatsliste"></span></td></tr>';
|
||||
|
||||
echo '<tr><td style="float:right;">';
|
||||
|
||||
// Summen Lehre anzeigen
|
||||
$bv = new bisverwendung();
|
||||
$bv->getLastAktVerwendung($user);
|
||||
$lehre_inkludiert = $bv->inkludierte_lehre;
|
||||
if (!$lehre_inkludiert)
|
||||
$lehre_inkludiert = 0;
|
||||
|
||||
$stsem = new studiensemester();
|
||||
$sem_akt = $stsem->getakt();
|
||||
$lehre = new zeitaufzeichnung();
|
||||
$l_arr = $lehre->getLehreForUser($user, $sem_akt);
|
||||
if ($l_arr["LehreAuftraege"]>0 || $l_arr["LehreIntern"] > 0 || $l_arr["LehreExtern"] > 0)
|
||||
{
|
||||
$l_extern_soll = $l_arr["LehreAuftraege"]-$lehre_inkludiert;
|
||||
$l_extern_soll_norm = $l_extern_soll/4*3;
|
||||
$lehre_inkludiert_norm = $lehre_inkludiert/4*3;
|
||||
echo '<table style="border: 1px solid gray">';
|
||||
echo '<tr><td colspan="3" style="border: 1px solid gray"><h3>Übersicht Lehre '.$sem_akt.'</h3></tr>';
|
||||
echo '<tr><td colspan="3" style="border: 1px solid gray">(in Stunden)</tr>';
|
||||
echo '<tr><td></td><td style="border: 1px solid gray">beauftragt (LE)</td><td style="border: 1px solid gray">gebucht</td></tr>';
|
||||
if ($lehre_inkludiert > 0 || $l_arr["LehreIntern"] > 0)
|
||||
echo '<tr><td style="border: 1px solid gray">LehreIntern:</td><td align="right" style="border: 1px solid gray">'.$lehre_inkludiert_norm.' ('.$lehre_inkludiert.')</td><td align="right" style="border: 1px solid gray">'.$l_arr["LehreIntern"].'</td></tr>';
|
||||
if ($l_extern_soll > 0 || $l_arr["LehreExtern"] > 0)
|
||||
echo '<tr><td style="border: 1px solid gray">LehreExtern:</td><td align="right" style="border: 1px solid gray">'.$l_extern_soll_norm.' ('.$l_extern_soll.')</td><td align="right" style="border: 1px solid gray">'.$l_arr["LehreExtern"].'</td></tr>';
|
||||
|
||||
echo '</table>';
|
||||
}
|
||||
echo '</td></tr>';
|
||||
echo '</table>';
|
||||
|
||||
echo '<hr>';
|
||||
echo '<h3>'.($alle===true?$p->t('zeitaufzeichnung/alleEintraege'):$p->t('zeitaufzeichnung/xTageAnsicht', array($angezeigte_tage))).'</h3>';
|
||||
echo '<input type="submit" value="'.($alle===true?$p->t('zeitaufzeichnung/xTageAnsicht', array($angezeigte_tage)):$p->t('zeitaufzeichnung/alleAnzeigen')).'" name="'.($alle===true?'normal':'alle').'">';
|
||||
if ($alle===true)
|
||||
echo '<a href="?normal" style="text-decoration:none"><input type="button" value="'.$p->t('zeitaufzeichnung/xTageAnsicht', array($angezeigte_tage)).'"></a>';
|
||||
else
|
||||
echo '<a href="?alle" style="text-decoration:none"><input type="button" value="'.$p->t('zeitaufzeichnung/alleAnzeigen').'"></a>';
|
||||
//echo '<input type="submit" value="'.($alle===true?$p->t('zeitaufzeichnung/xTageAnsicht', array($angezeigte_tage)):$p->t('zeitaufzeichnung/alleAnzeigen')).'" name="'.($alle===true?'normal':'alle').'">';
|
||||
|
||||
echo '</form>';
|
||||
|
||||
$za = new zeitaufzeichnung();
|
||||
@@ -660,9 +915,9 @@ if($projekt->getProjekteMitarbeiter($user))
|
||||
else
|
||||
{
|
||||
if ($alle==true)
|
||||
$za->getListeUser($user, '');
|
||||
$za->getListeUserFull($user, '');
|
||||
else
|
||||
$za->getListeUser($user, $angezeigte_tage);
|
||||
$za->getListeUserFull($user, $angezeigte_tage);
|
||||
}
|
||||
|
||||
$summe=0;
|
||||
@@ -672,122 +927,177 @@ if($projekt->getProjekteMitarbeiter($user))
|
||||
//Uebersichtstabelle
|
||||
$woche=date('W');
|
||||
echo '
|
||||
<table id="t1" class="tablesorter">
|
||||
<thead>
|
||||
<table id="t1" class="" style="width:100%">
|
||||
|
||||
<tr>
|
||||
<th style="background-color: #8DBDD8;" align="center" class="{sorter: false}" colspan="13">'.$p->t("eventkalender/kw").' '.$woche.'</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>'.$p->t("zeitaufzeichnung/id").'</th>
|
||||
<th>'.$p->t("zeitaufzeichnung/user").'</th>
|
||||
<th>'.$p->t("zeitaufzeichnung/projekt").'</th>
|
||||
<th>'.$p->t("zeitaufzeichnung/oe").' 1</th>
|
||||
<th>'.$p->t("zeitaufzeichnung/oe").' 2</th>
|
||||
<th>'.$p->t("zeitaufzeichnung/aktivitaet").'</th>
|
||||
<th>'.$p->t("zeitaufzeichnung/service").'</th>
|
||||
<th>'.$p->t("zeitaufzeichnung/start").'</th>
|
||||
<th>'.$p->t("zeitaufzeichnung/ende").'</th>
|
||||
<th>'.$p->t("zeitaufzeichnung/dauer").'</th>
|
||||
<th>'.$p->t("global/beschreibung").'</th>
|
||||
<th colspan="2">'.$p->t("global/aktion").'</th>
|
||||
<th style="background-color:#DCE4EF" align="center">'.$p->t("zeitaufzeichnung/id").'</th>
|
||||
<th style="background-color:#DCE4EF" align="center">'.$p->t("zeitaufzeichnung/user").'</th>
|
||||
<th style="background-color:#DCE4EF" align="center">'.$p->t("zeitaufzeichnung/projekt").'</th>
|
||||
<th style="background-color:#DCE4EF" align="center">'.$p->t("zeitaufzeichnung/oe").' 1</th>
|
||||
<th style="background-color:#DCE4EF" align="center">'.$p->t("zeitaufzeichnung/oe").' 2</th>
|
||||
<th style="background-color:#DCE4EF" align="center">'.$p->t("zeitaufzeichnung/aktivitaet").'</th>
|
||||
<th style="background-color:#DCE4EF" align="center">'.$p->t("zeitaufzeichnung/service").'</th>
|
||||
<th style="background-color:#DCE4EF" align="center">'.$p->t("zeitaufzeichnung/start").'</th>
|
||||
<th style="background-color:#DCE4EF" align="center">'.$p->t("zeitaufzeichnung/ende").'</th>
|
||||
<th style="background-color:#DCE4EF" align="center">'.$p->t("zeitaufzeichnung/dauer").'</th>
|
||||
<th style="background-color:#DCE4EF" align="center">'.$p->t("global/beschreibung").'</th>
|
||||
<th style="background-color:#DCE4EF" align="center" colspan="2">'.$p->t("global/aktion").'</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>';
|
||||
|
||||
';
|
||||
|
||||
$tag=null;
|
||||
$woche=date('W');
|
||||
$woche=date('W');
|
||||
|
||||
$tagessumme='00:00';
|
||||
$pausesumme='00:00';
|
||||
$wochensumme='00:00';
|
||||
$extlehrearr=array();
|
||||
$elsumme = '00:00';
|
||||
$datum_obj = new datum();
|
||||
$tagesbeginn = '';
|
||||
$tagesende = '';
|
||||
$wochensaldo = '00:00';
|
||||
$pflichtpause = false;
|
||||
|
||||
|
||||
foreach($za->result as $row)
|
||||
{
|
||||
$datumtag = $datum_obj->formatDatum($row->start, 'Y-m-d');
|
||||
$datumtag = $datum_obj->formatDatum($row->datum, 'Y-m-d');
|
||||
|
||||
//echo '<tr><th colspan="13">foo<th></tr>';
|
||||
|
||||
// Nach jedem Tag eine Summenzeile einfuegen
|
||||
if(is_null($tag))
|
||||
$tag = $datumtag;
|
||||
if($tag!=$datumtag)
|
||||
{
|
||||
$style = '';
|
||||
$style = 'style="background-color:#DCE4EF; font-size: 8pt;"';
|
||||
list($h1, $m1) = explode(':', $pausesumme);
|
||||
$pausesumme = $h1*3600+$m1*60;
|
||||
$tagessaldo = $datum->mktime_fromtimestamp($datum->formatDatum($tagesende, $format='Y-m-d H:i:s'))-$datum->mktime_fromtimestamp($datum->formatDatum($tagesbeginn, $format='Y-m-d H:i:s'))-3600;
|
||||
if ($tagessaldo>18000 && $pflichtpause==false)
|
||||
{
|
||||
$pausesumme = $pausesumme+1800;
|
||||
}
|
||||
|
||||
$tagessaldo = $tagessaldo-$pausesumme;
|
||||
$tagessaldo = date('H:i', ($tagessaldo));
|
||||
echo '<tr>
|
||||
<td '.$style.' colspan="7">';
|
||||
//if ($row->uid)
|
||||
//{
|
||||
if ($datum->formatDatum($tag,'N') == '6' || $datum->formatDatum($tag,'N') == '7')
|
||||
$style = 'style="background-color:#eeeeee; font-size: 8pt;"';
|
||||
else
|
||||
$style = 'style="background-color:#DCE4EF; font-size: 8pt;"';
|
||||
|
||||
// zeitsperren anzeigen
|
||||
if (array_key_exists($datum->formatDatum($tag,'Y-m-d'), $zeitsperren))
|
||||
{
|
||||
$zeitsperre_text = " -- ".$zeitsperren[$datum->formatDatum($tag,'Y-m-d')]." -- ";
|
||||
$style = 'style="background-color:#cccccc; font-size: 8pt;"';
|
||||
}
|
||||
else
|
||||
$zeitsperre_text = '';
|
||||
//var_dump($zs->result);
|
||||
if (isset($_GET["von_datum"]) && $datum->formatDatum($tag, 'd.m.Y') == $_GET["von_datum"])
|
||||
$style = 'style="border-top: 3px solid #8DBDD8; border-bottom: 3px solid #8DBDD8"';
|
||||
|
||||
list($h1, $m1) = explode(':', $pausesumme);
|
||||
$pausesumme = $h1*3600+$m1*60;
|
||||
$tagessaldo = $datum->mktime_fromtimestamp($datum->formatDatum($tagesende, $format='Y-m-d H:i:s'))-$datum->mktime_fromtimestamp($datum->formatDatum($tagesbeginn, $format='Y-m-d H:i:s'))-3600;
|
||||
foreach($extlehrearr as $el)
|
||||
{
|
||||
if ($el["start"] > $tagesbeginn && $el["ende"] < $tagesende)
|
||||
$elsumme = $datum_obj->sumZeit($elsumme, $el["diff"]);
|
||||
}
|
||||
list($h2, $m2) = explode(':', $elsumme);
|
||||
$elsumme = $h2*3600+$m2*60;
|
||||
if ($tagessaldo > 18000 && $tagessaldo < 19800 && $pflichtpause==false && $elsumme == 0)
|
||||
{
|
||||
$pausesumme = $tagessaldo-18000;
|
||||
}
|
||||
else if ($tagessaldo>18000 && $pflichtpause==false && $elsumme == 0)
|
||||
{
|
||||
$pausesumme = $pausesumme+1800;
|
||||
}
|
||||
if ($elsumme > 0){
|
||||
$pausesumme = $pausesumme + $elsumme;
|
||||
$pflichtpause = true;
|
||||
}
|
||||
|
||||
// Zusaetzlicher span fuer Addon Informationen
|
||||
echo '<span id="tag_'.$datum->formatDatum($tagesbeginn,'d_m_Y').'"></span>';
|
||||
|
||||
echo '</td>
|
||||
<td align="right" colspan="2" '.$style.'>
|
||||
<b>'.$p->t("zeitaufzeichnung/arbeitszeit").': '.$datum->formatDatum($tagesbeginn, $format='H:i').'-'.$datum->formatDatum($tagesende, $format='H:i').' '.$p->t("eventkalender/uhr").'</b><br>
|
||||
'.$p->t("zeitaufzeichnung/pause").' '.($pflichtpause==false?$p->t("zeitaufzeichnung/inklusivePflichtpause"):'').':
|
||||
</td>
|
||||
<td '.$style.' align="right"><b>'.$tagessaldo.'</b><br>'.date('H:i', ($pausesumme-3600)).'</td>
|
||||
<td '.$style.' colspan="3"></td>';
|
||||
|
||||
$tag=$datumtag;
|
||||
$tagessumme='00:00';
|
||||
$pausesumme='00:00';
|
||||
$tagesbeginn = '';
|
||||
$tagesende = '';
|
||||
$pflichtpause = false;
|
||||
$wochensaldo = $datum_obj->sumZeit($wochensaldo,$tagessaldo );
|
||||
$tagessaldo = $tagessaldo-$pausesumme;
|
||||
$tagessaldo = date('H:i', ($tagessaldo));
|
||||
echo '<tr id="tag_row_'.$datum->formatDatum($tag,'d_m_Y').'"><td '.$style.' colspan="7">';
|
||||
|
||||
// Zusaetzlicher span fuer Addon Informationen
|
||||
|
||||
$lang = getSprache();
|
||||
if ($lang == 'German')
|
||||
$langindex = 1;
|
||||
else
|
||||
$langindex = 2;
|
||||
echo '<b>'.$tagbez[$langindex][$datum->formatDatum($tag,'N')].' '.$datum->formatDatum($tag,'d.m.Y').'</b> <span id="tag_'.$datum->formatDatum($tag,'d_m_Y').'">'.$zeitsperre_text.'</span>';
|
||||
|
||||
echo '</td>
|
||||
<td align="right" colspan="2" '.$style.'>
|
||||
<b>'.$p->t("zeitaufzeichnung/arbeitszeit").': '.$datum->formatDatum($tagesbeginn, $format='H:i').'-'.$datum->formatDatum($tagesende, $format='H:i').' '.$p->t("eventkalender/uhr").'</b><br>LehreExtern /
|
||||
'.$p->t("zeitaufzeichnung/pause").' '.($pflichtpause==false?$p->t("zeitaufzeichnung/inklusivePflichtpause"):'').':
|
||||
</td>
|
||||
<td '.$style.' align="right"><b>'.$tagessaldo.'</b><br>'.date('H:i', ($pausesumme-3600)).'</td>
|
||||
<td '.$style.' colspan="3" align="right">';
|
||||
if ($tag > $sperrdatum)
|
||||
echo '<a href="?von_datum='.$datum->formatDatum($tag,'d.m.Y').'&bis_datum='.$datum->formatDatum($tag,'d.m.Y').'" class="item"><-</a>';
|
||||
|
||||
echo '</td>';
|
||||
|
||||
$tag=$datumtag;
|
||||
$tagessumme='00:00';
|
||||
$pausesumme='00:00';
|
||||
$elsumme='00:00';
|
||||
$extlehrearr = array();
|
||||
$tagesbeginn = '';
|
||||
$tagesende = '';
|
||||
$pflichtpause = false;
|
||||
$wochensaldo = $datum_obj->sumZeit($wochensaldo,$tagessaldo );
|
||||
//}
|
||||
//else
|
||||
//{
|
||||
// echo '<tr><td style="background-color:#DCE4EF; font-size: 8pt;" colspan="13"><b>'.$datum->formatDatum($row->datum,'D d.m.Y').'</b></b> <span id="tag_'.$datum->formatDatum($row->datum,'d_m_Y').'"></span></td></tr>';
|
||||
//}
|
||||
}
|
||||
// Nach jeder Woche eine Summenzeile einfuegen und eine neue Tabelle beginnen
|
||||
$datumwoche = $datum_obj->formatDatum($row->start, 'W');
|
||||
$datumwoche = $datum_obj->formatDatum($row->datum, 'W');
|
||||
if(is_null($woche))
|
||||
$woche = $datumwoche;
|
||||
if($woche!=$datumwoche)
|
||||
{
|
||||
{
|
||||
echo '
|
||||
</tbody>
|
||||
<tfoot>
|
||||
|
||||
|
||||
<tr>
|
||||
<th colspan="7"></th>
|
||||
<th align="right" colspan="2" style="font-weight: normal;"><b>'.$p->t("zeitaufzeichnung/wochensummeArbeitszeit").':</b></th>
|
||||
<th align="right" style="font-weight: normal;"><b>'.$wochensaldo.'</b></th>
|
||||
<th colspan="3"></th>
|
||||
<th colspan="7" style="background-color: #8DBDD8;"></th>
|
||||
<th style="background-color: #8DBDD8;" align="right" colspan="2" style="font-weight: normal;"><b>'.$p->t("zeitaufzeichnung/wochensummeArbeitszeit").':</b></th>
|
||||
<th style="background-color: #8DBDD8;" align="right" style="font-weight: normal;"><b>'.$wochensaldo.'</b></th>
|
||||
<th style="background-color: #8DBDD8;" colspan="3"></th>
|
||||
</tr>
|
||||
</tfoot>
|
||||
</table>';
|
||||
|
||||
|
||||
<!--</table>-->';
|
||||
|
||||
echo '
|
||||
<table id="t'.$datumwoche.'" class="tablesorter">
|
||||
<thead>
|
||||
<!--<table id="t'.$datumwoche.'" class="tablesorter">-->
|
||||
<tr><th colspan="13"> </th></tr>
|
||||
|
||||
<tr>
|
||||
<th style="background-color: #8DBDD8;" align="center" class="{sorter: false}" colspan="13">'.$p->t("eventkalender/kw").' '.$datumwoche.'</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>'.$p->t("zeitaufzeichnung/id").'</th>
|
||||
<th>'.$p->t("zeitaufzeichnung/user").'</th>
|
||||
<th>'.$p->t("zeitaufzeichnung/projekt").'</th>
|
||||
<th>'.$p->t("zeitaufzeichnung/oe").' 1</th>
|
||||
<th>'.$p->t("zeitaufzeichnung/oe").' 2</th>
|
||||
<th>'.$p->t("zeitaufzeichnung/aktivitaet").'</th>
|
||||
<th>'.$p->t("zeitaufzeichnung/service").'</th>
|
||||
<th>'.$p->t("zeitaufzeichnung/start").'</th>
|
||||
<th>'.$p->t("zeitaufzeichnung/ende").'</th>
|
||||
<th>'.$p->t("zeitaufzeichnung/dauer").'</th>
|
||||
<th>'.$p->t("global/beschreibung").'</th>
|
||||
<th colspan="2">'.$p->t("global/aktion").'</th>
|
||||
<th style="background-color:#DCE4EF" align="center">'.$p->t("zeitaufzeichnung/id").'</th>
|
||||
<th style="background-color:#DCE4EF" align="center">'.$p->t("zeitaufzeichnung/user").'</th>
|
||||
<th style="background-color:#DCE4EF" align="center">'.$p->t("zeitaufzeichnung/projekt").'</th>
|
||||
<th style="background-color:#DCE4EF" align="center">'.$p->t("zeitaufzeichnung/oe").' 1</th>
|
||||
<th style="background-color:#DCE4EF" align="center">'.$p->t("zeitaufzeichnung/oe").' 2</th>
|
||||
<th style="background-color:#DCE4EF" align="center">'.$p->t("zeitaufzeichnung/aktivitaet").'</th>
|
||||
<th style="background-color:#DCE4EF" align="center">'.$p->t("zeitaufzeichnung/service").'</th>
|
||||
<th style="background-color:#DCE4EF" align="center">'.$p->t("zeitaufzeichnung/start").'</th>
|
||||
<th style="background-color:#DCE4EF" align="center">'.$p->t("zeitaufzeichnung/ende").'</th>
|
||||
<th style="background-color:#DCE4EF" align="center">'.$p->t("zeitaufzeichnung/dauer").'</th>
|
||||
<th style="background-color:#DCE4EF" align="center">'.$p->t("global/beschreibung").'</th>
|
||||
<th style="background-color:#DCE4EF" align="center" colspan="2">'.$p->t("global/aktion").'</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>';
|
||||
|
||||
';
|
||||
|
||||
|
||||
$woche=$datumwoche;
|
||||
@@ -796,7 +1106,8 @@ if($projekt->getProjekteMitarbeiter($user))
|
||||
$pausesumme='00:00';
|
||||
$wochensaldo = '00:00';
|
||||
}
|
||||
|
||||
if ($row->uid)
|
||||
{
|
||||
$wochensumme = $datum_obj->sumZeit($wochensumme, $row->diff);
|
||||
if ($row->aktivitaet_kurzbz=='Pause')
|
||||
{
|
||||
@@ -812,7 +1123,7 @@ if($projekt->getProjekteMitarbeiter($user))
|
||||
$style = '';
|
||||
if ($row->zeitaufzeichnung_id == $zeitaufzeichnung_id)
|
||||
$style = 'style="border-top: 3px solid #8DBDD8; border-bottom: 3px solid #8DBDD8"';
|
||||
if ($row->aktivitaet_kurzbz=='Pause')
|
||||
if ($row->aktivitaet_kurzbz=='Pause' || $row->aktivitaet_kurzbz=='LehreExtern')
|
||||
$style .= ' style="color: grey;"';
|
||||
$summe = $row->summe;
|
||||
$service = new service();
|
||||
@@ -825,37 +1136,43 @@ if($projekt->getProjekteMitarbeiter($user))
|
||||
<td '.$style.'>'.$db->convert_html_chars($row->oe_kurzbz_2).'</td>
|
||||
<td '.$style.'>'.$db->convert_html_chars($row->aktivitaet_kurzbz).'</td>
|
||||
<td '.$style.' title="'.$service->bezeichnung.'">'.StringCut($db->convert_html_chars($service->bezeichnung),20,null,'...').'</td>
|
||||
<td '.$style.' nowrap>'.date('d.m.Y H:i', $datum->mktime_fromtimestamp($row->start)).'</td>
|
||||
<td '.$style.' nowrap>'.date('d.m.Y H:i', $datum->mktime_fromtimestamp($row->ende)).'</td>
|
||||
<td '.$style.' nowrap>'.date('H:i', $datum->mktime_fromtimestamp($row->start)).'</td>
|
||||
<td '.$style.' nowrap>'.date('H:i', $datum->mktime_fromtimestamp($row->ende)).'</td>
|
||||
<td '.$style.' align="right">'.$db->convert_html_chars($row->diff).'</td>
|
||||
<td '.$style.' title="'.$db->convert_html_chars(mb_eregi_replace("\r\n",' ',$row->beschreibung)).'">'.StringCut($db->convert_html_chars($row->beschreibung),20,null,'...').'</td>
|
||||
<td '.$style.'>';
|
||||
if(!isset($_GET['filter']) || $row->uid==$user)
|
||||
if(!isset($_GET['filter']) && ($row->uid==$user && $row->datum > $sperrdatum))
|
||||
echo '<a href="'.$_SERVER['PHP_SELF'].'?type=edit&zeitaufzeichnung_id='.$row->zeitaufzeichnung_id.'" class="Item">'.$p->t("global/bearbeiten").'</a>';
|
||||
echo "</td>\n";
|
||||
echo " <td ".$style.">";
|
||||
if(!isset($_GET['filter']) || $row->uid==$user)
|
||||
if(!isset($_GET['filter']) && ($row->uid==$user && $row->start > $sperrdatum))
|
||||
echo '<a href="'.$_SERVER['PHP_SELF'].'?type=delete&zeitaufzeichnung_id='.$row->zeitaufzeichnung_id.'" class="Item" onclick="return confdel()">'.$p->t("global/loeschen").'</a>';
|
||||
echo "</td>\n";
|
||||
echo " </tr>\n";
|
||||
|
||||
if ($tagesbeginn=='' || $datum->mktime_fromtimestamp($datum->formatDatum($tagesbeginn, $format='Y-m-d H:i:s')) > $datum->mktime_fromtimestamp($datum->formatDatum($row->start, $format='Y-m-d H:i:s')))
|
||||
if (($tagesbeginn=='' || $datum->mktime_fromtimestamp($datum->formatDatum($tagesbeginn, $format='Y-m-d H:i:s')) > $datum->mktime_fromtimestamp($datum->formatDatum($row->start, $format='Y-m-d H:i:s'))) && $row->aktivitaet_kurzbz != 'LehreExtern')
|
||||
$tagesbeginn = $row->start;
|
||||
|
||||
if ($tagesende=='' || $datum->mktime_fromtimestamp($datum->formatDatum($tagesende, $format='Y-m-d H:i:s')) < $datum->mktime_fromtimestamp($datum->formatDatum($row->ende, $format='Y-m-d H:i:s')))
|
||||
if (($tagesende=='' || $datum->mktime_fromtimestamp($datum->formatDatum($tagesende, $format='Y-m-d H:i:s')) < $datum->mktime_fromtimestamp($datum->formatDatum($row->ende, $format='Y-m-d H:i:s'))) && $row->aktivitaet_kurzbz != 'LehreExtern')
|
||||
$tagesende = $row->ende;
|
||||
if ($row->aktivitaet_kurzbz == 'LehreExtern')
|
||||
$extlehrearr[] = array("start"=>$row->start, "ende"=>$row->ende, "diff"=>$row->diff);
|
||||
}
|
||||
}
|
||||
echo '</tbody>';
|
||||
echo '';
|
||||
if ($alle===false)
|
||||
echo '<tfoot>
|
||||
{
|
||||
echo '
|
||||
<tr>
|
||||
<th align="center" colspan="13">'.$p->t('zeitaufzeichnung/endeXTageAnsicht', array($angezeigte_tage)).'</th>
|
||||
</tr>
|
||||
</tfoot>';
|
||||
echo '</table>';
|
||||
';
|
||||
}
|
||||
//echo '</table>';
|
||||
|
||||
//echo $p->t("zeitaufzeichnung/gesamtdauer").": ".$db->convert_html_chars($summe); Aukommentiert. Irrelevant
|
||||
}
|
||||
echo '</table>';
|
||||
/*
|
||||
}
|
||||
else
|
||||
@@ -869,6 +1186,8 @@ else
|
||||
echo $p->t("zeitaufzeichnung/fehlerBeimErmittelnDerProjekte");
|
||||
}
|
||||
|
||||
|
||||
|
||||
echo '
|
||||
<span id="globalmessages"></span>
|
||||
</body>
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
+45
-10
@@ -26,6 +26,7 @@ require_once('../../config/cis.config.inc.php');
|
||||
require_once('../../include/functions.inc.php');
|
||||
require_once('../../include/basis_db.class.php');
|
||||
require_once('../../include/benutzer.class.php');
|
||||
require_once('../../include/dms.class.php');
|
||||
|
||||
session_start();
|
||||
|
||||
@@ -33,7 +34,7 @@ if (!$db = new basis_db())
|
||||
die('Fehler beim Oeffnen der Datenbankverbindung');
|
||||
|
||||
//Wenn das Bild direkt aufgerufen wird, ist eine Authentifizierung erforderlich
|
||||
//Wenn es vom Server selbst aufgerufen wird, ist keine Auth. notwendig
|
||||
//Wenn es vom Server selbst aufgerufen wird, ist keine Auth. notwendig
|
||||
//(z.B. fuer die Erstellung von PDFs)
|
||||
if($_SERVER['REMOTE_ADDR']!=$_SERVER['SERVER_ADDR'])
|
||||
{
|
||||
@@ -41,19 +42,19 @@ if($_SERVER['REMOTE_ADDR']!=$_SERVER['SERVER_ADDR'])
|
||||
if(!isset($_SESSION['prestudent/user']) && !isset($_SESSION['incoming/user']))
|
||||
$uid = get_uid();
|
||||
}
|
||||
|
||||
|
||||
//default bild (ein weisser pixel)
|
||||
$cTmpHEX='/9j/4AAQSkZJRgABAQEASABIAAD/4QAWRXhpZgAATU0AKgAAAAgAAAAAAAD//gAXQ3JlYXRlZCB3aXRoIFRoZSBHSU1Q/9sAQwAFAwQEBAMFBAQEBQUFBgcMCAcHBwcPCwsJDBEPEhIRDxERExYcFxMUGhURERghGBodHR8fHxMXIiQiHiQcHh8e/9sAQwEFBQUHBgcOCAgOHhQRFB4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4e/8AAEQgAAQABAwEiAAIRAQMRAf/EABUAAQEAAAAAAAAAAAAAAAAAAAAI/8QAFBABAAAAAAAAAAAAAAAAAAAAAP/EABQBAQAAAAAAAAAAAAAAAAAAAAD/xAAUEQEAAAAAAAAAAAAAAAAAAAAA/9oADAMBAAIRAxEAPwCywAf/2Q==';
|
||||
//Hex Dump aus der DB holen
|
||||
if(isset($_GET['src']) && $_GET['src']=='person' && isset($_GET['person_id']) && is_numeric($_GET['person_id']))
|
||||
{
|
||||
$qry = "SELECT tbl_akte.inhalt as foto, tbl_person.foto_sperre FROM public.tbl_akte JOIN public.tbl_person USING(person_id) WHERE tbl_akte.person_id='".addslashes($_GET['person_id'])."' AND dokument_kurzbz='Lichtbil'";
|
||||
$qry = "SELECT tbl_akte.inhalt as foto, tbl_person.foto_sperre, tbl_akte.dms_id FROM public.tbl_akte JOIN public.tbl_person USING(person_id) WHERE tbl_akte.person_id=".$db->db_add_param($_GET['person_id'], FHC_INTEGER)." AND dokument_kurzbz='Lichtbil'";
|
||||
if($result = $db->db_query($qry))
|
||||
{
|
||||
if($row = $db->db_fetch_object($result))
|
||||
{
|
||||
$gesperrt=false;
|
||||
|
||||
|
||||
//Schauen ob eine Foto Sperre existiert
|
||||
if($db->db_parse_bool($row->foto_sperre))
|
||||
{
|
||||
@@ -65,20 +66,54 @@ if(isset($_GET['src']) && $_GET['src']=='person' && isset($_GET['person_id']) &
|
||||
$benutzer->load($uid);
|
||||
if($benutzer->person_id==$_GET['person_id'])
|
||||
$gesperrt=false;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if($row->foto=='' && $row->dms_id!='')
|
||||
{
|
||||
// Wenn das Foto nicht im Inhalt steht wird aus aus dem DMS geladen
|
||||
$dms = new dms();
|
||||
if(!$dms->load($row->dms_id))
|
||||
die('Kein Dokument vorhanden');
|
||||
|
||||
$filename=DMS_PATH.$dms->filename;
|
||||
|
||||
$dms->touch($dms->dms_id, $dms->version);
|
||||
|
||||
if(file_exists($filename))
|
||||
{
|
||||
if($handle = fopen($filename,"r"))
|
||||
{
|
||||
while (!feof($handle))
|
||||
{
|
||||
$row->foto.= fread($handle, 8192);
|
||||
}
|
||||
fclose($handle);
|
||||
}
|
||||
else
|
||||
echo 'Fehler: Datei konnte nicht geoeffnet werden';
|
||||
}
|
||||
else
|
||||
echo 'Die Datei existiert nicht';
|
||||
}
|
||||
|
||||
if($row->foto!='' && !$gesperrt)
|
||||
$cTmpHEX=$row->foto;
|
||||
{
|
||||
if($row->dms_id=='')
|
||||
$cTmpHEX=$row->foto;
|
||||
else
|
||||
$cTmpHEX=$row->foto;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//die bilder werden, sofern es funktioniert, in jpg umgewandelt da es sonst zu fehlern beim erstellen
|
||||
//von pdfs kommen kann.
|
||||
|
||||
$im = @imagecreatefromstring(base64_decode($cTmpHEX));
|
||||
if($im!=false)
|
||||
{
|
||||
{
|
||||
@ob_clean();
|
||||
header("Content-type: image/jpeg");
|
||||
exit(imagejpeg($im));
|
||||
@@ -89,6 +124,6 @@ else
|
||||
//diese werden dann einfach so angezeigt.
|
||||
@ob_clean();
|
||||
header("Content-type: image/gif");
|
||||
exit(base64_decode($cTmpHEX));
|
||||
exit($cTmpHEX);
|
||||
}
|
||||
?>
|
||||
?>
|
||||
|
||||
@@ -1,241 +0,0 @@
|
||||
<?php
|
||||
/* Copyright (C) 2006 Technikum-Wien
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of the
|
||||
* License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* Authors: Christian Paminger <christian.paminger@technikum-wien.at>,
|
||||
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at>,
|
||||
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>,
|
||||
* Karl Burkhart <burkhart@technikum-wien.at>.
|
||||
*/
|
||||
|
||||
// Oberflaeche zur Aenderung von Beispielen und Upload von Bildern
|
||||
|
||||
require_once('../../config/cis.config.inc.php');
|
||||
require_once('../../include/functions.inc.php');
|
||||
require_once('../../include/person.class.php');
|
||||
require_once('../../include/benutzerberechtigung.class.php');
|
||||
require_once('../../include/akte.class.php');
|
||||
require_once('../../include/dokument.class.php');
|
||||
require_once('../../include/mail.class.php');
|
||||
require_once('../../include/phrasen.class.php');
|
||||
require_once('../../include/dms.class.php');
|
||||
|
||||
header("Content-Type: text/html; charset=utf-8");
|
||||
|
||||
session_cache_limiter('none'); //muss gesetzt werden sonst funktioniert der Download mit IE8 nicht
|
||||
session_start();
|
||||
if (!isset($_SESSION['bewerbung/user']) || $_SESSION['bewerbung/user']=='')
|
||||
{
|
||||
header('Location: registration.php?method=allgemein');
|
||||
exit;
|
||||
}
|
||||
|
||||
if(isset($_GET['lang']))
|
||||
setSprache($_GET['lang']);
|
||||
|
||||
$person_id = isset($_GET['person_id'])?$_GET['person_id']:'';
|
||||
|
||||
if(!isset($_SESSION['bewerbung/personId']))
|
||||
die('Sie haben keine Berechtigung für diese Seite');
|
||||
|
||||
if($person_id!=$_SESSION['bewerbung/personId'])
|
||||
die('Sie haben keine Berechtigung für diese Seite');
|
||||
|
||||
$dokumenttyp = (isset($_GET['dokumenttyp']))? $_GET['dokumenttyp'] : '';
|
||||
$kategorie_kurzbz = isset($_REQUEST['kategorie_kurzbz'])?$_REQUEST['kategorie_kurzbz']:'';
|
||||
$sprache = getSprache();
|
||||
$p=new phrasen($sprache);
|
||||
|
||||
$PHP_SELF = $_SERVER['PHP_SELF'];
|
||||
echo "<html>
|
||||
<head><title>File-Upload</title></head>
|
||||
<body>";
|
||||
|
||||
//Bei Upload des Bildes
|
||||
if(isset($_POST['submitbild']))
|
||||
{
|
||||
$error = false;
|
||||
|
||||
// dms Eintrag anlegen
|
||||
if(isset($_POST['fileupload']))
|
||||
{
|
||||
$ext = pathinfo($_FILES['file']['name'], PATHINFO_EXTENSION);
|
||||
$filename = uniqid();
|
||||
$filename.=".".$ext;
|
||||
$uploadfile = DMS_PATH.$filename;
|
||||
|
||||
|
||||
if(move_uploaded_file($_FILES['file']['tmp_name'], $uploadfile))
|
||||
{
|
||||
if(!chgrp($uploadfile,'dms'))
|
||||
echo 'CHGRP failed';
|
||||
if(!chmod($uploadfile, 0774))
|
||||
echo 'CHMOD failed';
|
||||
exec('sudo chown wwwrun '.$uploadfile);
|
||||
|
||||
$dms = new dms();
|
||||
|
||||
$dms->version='0';
|
||||
$dms->kategorie_kurzbz=$kategorie_kurzbz;
|
||||
|
||||
$dms->insertamum=date('Y-m-d H:i:s');
|
||||
//$dms->insertvon = $user;
|
||||
$dms->mimetype=$_FILES['file']['type'];
|
||||
$dms->filename = $filename;
|
||||
$dms->name = $_FILES['file']['name'];
|
||||
|
||||
if($dms->save(true))
|
||||
{
|
||||
$dms_id=$dms->dms_id;
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
echo 'Fehler beim Speichern der Daten';
|
||||
$error = true;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
echo 'Fehler beim Hochladen der Datei';
|
||||
$error = true;
|
||||
}
|
||||
}
|
||||
|
||||
if(isset($_FILES['file']['tmp_name']) && !$error)
|
||||
{
|
||||
//Extension herausfiltern
|
||||
$ext = explode('.',$_FILES['file']['name']);
|
||||
$ext = mb_strtolower($ext[count($ext)-1]);
|
||||
|
||||
$filename = $_FILES['file']['tmp_name'];
|
||||
|
||||
//$fp = fopen($filename,'r');
|
||||
//auslesen
|
||||
//$content = fread($fp, filesize($filename));
|
||||
//fclose($fp);
|
||||
|
||||
$akte = new akte();
|
||||
|
||||
if($akte->getAkten($_GET['person_id'], 'Lichtbil'))
|
||||
{
|
||||
if(count($akte->result)>0)
|
||||
{
|
||||
$akte = $akte->result[0];
|
||||
$akte->new = false;
|
||||
}
|
||||
else
|
||||
$akte->new = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$akte->new = true;
|
||||
}
|
||||
|
||||
$dokument = new dokument();
|
||||
$dokument->loadDokumenttyp($_REQUEST['dokumenttyp']);
|
||||
|
||||
$extension = end(explode(".",strtolower($_FILES['file']['name'])));
|
||||
$titel = '';
|
||||
|
||||
// da nur 32 zeichen gespeichert werden dürfen, muss anhand vom typ gekürzt werden
|
||||
if($_REQUEST['dokumenttyp']=='Lebenslf')
|
||||
$titel = $p->t('incoming/lebenslauf').".".$extension;
|
||||
if($_REQUEST['dokumenttyp']=='LearnAgr')
|
||||
$titel = $p->t('incoming/learningAgreement').".".$extension;
|
||||
if($_REQUEST['dokumenttyp']=='Motivat')
|
||||
$titel = $p->t('incoming/motivationsschreiben').".".$extension;
|
||||
if($_REQUEST['dokumenttyp']=='Zeugnis')
|
||||
$titel = $p->t('incoming/zeugnis').".".$extension;
|
||||
if($_REQUEST['dokumenttyp']=='Lichtbil')
|
||||
$titel = $p->t('incoming/lichtbild').".".$extension;
|
||||
|
||||
|
||||
$akte->dokument_kurzbz = $_REQUEST['dokumenttyp'];
|
||||
$akte->bezeichnung = $_FILES['file']['name'];
|
||||
$akte->person_id = $_GET['person_id'];
|
||||
//$akte->inhalt = base64_encode($content);
|
||||
$akte->mimetype = $_FILES['file']['type'];
|
||||
$akte->erstelltam = date('Y-m-d H:i:s');
|
||||
$akte->gedruckt = false;
|
||||
$akte->titel = $titel;
|
||||
//$akte->bezeichnung = $dokument->bezeichnung;
|
||||
$akte->updateamum = date('Y-m-d H:i:s');
|
||||
// $akte->updatevon = $user;
|
||||
$akte->insertamum = date('Y-m-d H:i:s');
|
||||
$akte->nachgereicht = false;
|
||||
$akte->anmerkung = '';
|
||||
// $akte->insertvon = $user;
|
||||
$akte->uid = '';
|
||||
$akte->dms_id = $dms_id;
|
||||
$akte->new = true;
|
||||
|
||||
|
||||
if(!$akte->save())
|
||||
{
|
||||
echo "<b>Fehler: $akte->errormsg</b>";
|
||||
}
|
||||
else
|
||||
echo "<b>".$p->t('global/erfolgreichgespeichert')."</b>";
|
||||
echo "<script>window.opener.location='bewerbung.php?active=4';</script>";
|
||||
}
|
||||
}
|
||||
|
||||
if($person_id !='')
|
||||
{
|
||||
$dokument = new dokument();
|
||||
$dokument->getAllDokumenteForPerson($person_id);
|
||||
echo " <form method='POST' enctype='multipart/form-data' action='$PHP_SELF?person_id=".$_GET['person_id']."'>
|
||||
<table>
|
||||
<tr>
|
||||
<td>".$p->t('incoming/dokument').":</td>
|
||||
<td>
|
||||
<input type='file' name='file' />
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>".$p->t('incoming/dokumenttyp').":</td>
|
||||
<td>
|
||||
<SELECT name='dokumenttyp'>";
|
||||
foreach ($dokument->result as $dok)
|
||||
{
|
||||
$selected=($dokumenttyp == $dok->dokument_kurzbz)?'selected':'';
|
||||
|
||||
echo '<option '.$selected.' value="'.$dok->dokument_kurzbz.'" >'.$dok->bezeichnung."</option>\n";
|
||||
|
||||
}
|
||||
echo " </select>
|
||||
</td>
|
||||
</tr>
|
||||
<tr><td> </td></tr>
|
||||
<tr>
|
||||
<td><input type='hidden' name='kategorie_kurzbz' id='kategorie_kurzbz' value='Akte'>
|
||||
<td><input type='hidden' name='fileupload' id='fileupload'></td>
|
||||
<td><input type='submit' name='submitbild' value='Upload'></td>
|
||||
|
||||
</tr>
|
||||
</table>
|
||||
</form>";
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
echo "Es wurde keine Person_id angegeben";
|
||||
}
|
||||
|
||||
?>
|
||||
</body>
|
||||
</html>
|
||||
@@ -101,12 +101,34 @@ $firma->getFirmen('Partneruniversität');
|
||||
?>
|
||||
<html>
|
||||
<head>
|
||||
<title>Incoming-Verwaltung</title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
|
||||
<meta http-equiv="expires" content="Sat, 01 Dec 2001 00:00:00 GMT">
|
||||
<title>Incoming-Verwaltung</title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
|
||||
<meta http-equiv="expires" content="Sat, 01 Dec 2001 00:00:00 GMT">
|
||||
<link href="../../../skin/style.css.php" rel="stylesheet" type="text/css">
|
||||
<link href="../../../include/js/tablesort/table.css" rel="stylesheet" type="text/css">
|
||||
<link rel="stylesheet" href="../../../skin/tablesort.css" type="text/css"/>
|
||||
<script src="../../../include/js/tablesort/table.js" type="text/javascript"></script>
|
||||
<script type="text/javascript" src="../../../include/js/jquery.js"></script>
|
||||
<script type="text/javascript">
|
||||
$(document).ready(function()
|
||||
{
|
||||
$("#t1").tablesorter(
|
||||
{
|
||||
sortList: [[1,0],[3,0],[4,0]],
|
||||
widgets: ["zebra"]
|
||||
});
|
||||
$("#t2").tablesorter(
|
||||
{
|
||||
sortList: [[0,0]],
|
||||
widgets: ["zebra"]
|
||||
});
|
||||
$("#t3").tablesorter(
|
||||
{
|
||||
sortList: [[1,0],[3,0],[4,0],[5,0]],
|
||||
widgets: ["zebra"]
|
||||
});
|
||||
});
|
||||
</script>
|
||||
|
||||
</head>
|
||||
<body>
|
||||
<table width="100%" border="0">
|
||||
@@ -284,7 +306,8 @@ else if($method=="lehrveranstaltungen")
|
||||
</tr>
|
||||
<tr><td> </td></tr>
|
||||
</table>';
|
||||
|
||||
|
||||
/* Wird laut Telefonat mit Giedre Jukneviciute am 14.10.2015 derzeit nicht benötigt und soll daher ausgeblendet werden.
|
||||
if($preincoming->deutschkurs1 || $preincoming->deutschkurs2 || $preincoming->deutschkurs3)
|
||||
{
|
||||
//Uebersicht Deutschkurse
|
||||
@@ -324,19 +347,19 @@ else if($method=="lehrveranstaltungen")
|
||||
}
|
||||
|
||||
echo '</tbody></table><br><br>';
|
||||
}
|
||||
}*/
|
||||
|
||||
|
||||
echo '
|
||||
<table width="90%" border="0" align="center" class="table-autosort:1 table-stripeclass:alternate table-autostripe">
|
||||
<table class="tablesorter" id="t1">
|
||||
<thead>
|
||||
<tr class="liste">
|
||||
<th></th>
|
||||
<th class="table-sortable:default">'.$p->t('global/studiengang').'</th>
|
||||
<th class="table-sortable:default">'.$p->t('abgabetool/typ').'</th>
|
||||
<th class="table-sortable:numeric">'.$p->t('global/semester').'</th>
|
||||
<th class="table-sortable:default">'.$p->t('global/lehrveranstaltung').'</th>
|
||||
<th class="table-sortable:default">'.$p->t('global/lehrveranstaltung').' '.$p->t('global/englisch').'</th>
|
||||
<th>'.$p->t('global/studiengang').'</th>
|
||||
<th>'.$p->t('abgabetool/typ').'</th>
|
||||
<th>'.$p->t('global/semester').'</th>
|
||||
<th>'.$p->t('global/lehrveranstaltung').'</th>
|
||||
<th>'.$p->t('global/lehrveranstaltung').' '.$p->t('global/englisch').'</th>
|
||||
<th>Info</th>
|
||||
</tr>
|
||||
</thead>
|
||||
@@ -380,9 +403,10 @@ else if($method=="lehrveranstaltungen")
|
||||
<td width="25%" align="center"><input type="button" value="'.$p->t('incoming/hauptmenue').'" onclick="document.location.href = \'incoming.php\'";></td>
|
||||
</tr>
|
||||
</table> <br><br>';
|
||||
|
||||
|
||||
/* Wird laut Telefonat mit Giedre Jukneviciute am 14.10.2015 derzeit nicht benötigt und soll daher ausgeblendet werden.
|
||||
//Uebersicht Deutschkurse
|
||||
echo '<table width="90%" border="0" align="center" class="table-stripeclass:alternate table-autostripe">
|
||||
echo '<table width="90%" border="0" align="center" class="tablesorter" id="t2">
|
||||
<thead align="center">
|
||||
<tr class="liste">
|
||||
<th colspan="2">'.$p->t('incoming/deutschkurse').'</th>
|
||||
@@ -417,10 +441,10 @@ else if($method=="lehrveranstaltungen")
|
||||
|
||||
|
||||
|
||||
echo '</tbody></table><br><br>';
|
||||
echo '</tbody></table><br><br>';*/
|
||||
|
||||
|
||||
echo '
|
||||
/*echo '
|
||||
<table width="90%" border="0" align="center" class="table-autosort:1 table-stripeclass:alternate table-autostripe">
|
||||
<thead>
|
||||
<tr class="liste">
|
||||
@@ -456,11 +480,11 @@ else if($method=="lehrveranstaltungen")
|
||||
</tbody>
|
||||
</table>
|
||||
<br><br>
|
||||
';
|
||||
';*/
|
||||
|
||||
echo '
|
||||
<form name="filterSemester">
|
||||
<table width="90%" border="0" align="center" table-stripeclass:alternate table-autostripe">
|
||||
<table width="90%" border="0" align="center">
|
||||
<tr>
|
||||
<td>'.$p->t('incoming/studentenImWS').'</td>
|
||||
</tr>
|
||||
@@ -486,18 +510,56 @@ else if($method=="lehrveranstaltungen")
|
||||
|
||||
echo '<option value="SSemester" '.$SSemesterSelected.'>'.$p->t('incoming/sommersemester').'</option>';
|
||||
|
||||
echo'</td>
|
||||
echo'</SELECT><br>';
|
||||
echo $p->t('courseInformation/unterrichtssprache').':<SELECT name="filterUnterrichtssprache" onchange=selectChange()>
|
||||
<option value="">'.$p->t('incoming/alleSprachen').'</option>';
|
||||
|
||||
// Vorauswahl der Übergebenen Filter
|
||||
$GermanSelected = '';
|
||||
$EnglishSelected = '';
|
||||
|
||||
if(isset($_GET['unterrichtssprache']))
|
||||
if($_GET['unterrichtssprache'] == 'German')
|
||||
$GermanSelected ='selected';
|
||||
elseif($_GET['unterrichtssprache']=='English')
|
||||
$EnglishSelected='selected';
|
||||
|
||||
echo '<option value="German" '.$GermanSelected.'>German</option>';
|
||||
|
||||
echo '<option value="English" '.$EnglishSelected.'>English</option>';
|
||||
|
||||
echo'</SELECT><br>';
|
||||
echo $p->t('global/studiengang').':<SELECT name="filterStudiengang" onchange=selectChange()>
|
||||
<option value="">Alle Studiengänge</option>';
|
||||
|
||||
// Vorauswahl der Übergebenen Filter
|
||||
|
||||
$studiengang = new studiengang();
|
||||
$studiengang->getAll('typ,kurzbz', true);
|
||||
|
||||
foreach ($studiengang->result as $row)
|
||||
{
|
||||
$selected = '';
|
||||
if(isset($_GET['studiengang']) && $_GET['studiengang'] == $row->studiengang_kz)
|
||||
$selected='selected';
|
||||
|
||||
echo '<option value="'.$row->studiengang_kz.'" '.$selected.'>'.strtoupper($row->typ.$row->kurzbz).' - '.$row->bezeichnung.'</option>';
|
||||
}
|
||||
|
||||
echo'</SELECT>';
|
||||
echo '</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<script language="JavaScript">
|
||||
function selectChange()
|
||||
{
|
||||
filter =document.filterSemester.filterLv.options[document.filterSemester.filterLv.selectedIndex].value;
|
||||
url = document.URL;
|
||||
url = url+"&filter="+filter;
|
||||
document.location=url;
|
||||
|
||||
filter = document.filterSemester.filterLv.options[document.filterSemester.filterLv.selectedIndex].value;
|
||||
filterSprache = document.filterSemester.filterUnterrichtssprache.options[document.filterSemester.filterUnterrichtssprache.selectedIndex].value;
|
||||
filterStudiengang = document.filterSemester.filterStudiengang.options[document.filterSemester.filterStudiengang.selectedIndex].value;
|
||||
url = [location.protocol, "//", location.host, location.pathname].join("");
|
||||
url = url+"?method=lehrveranstaltungen&filter="+filter+"&unterrichtssprache="+filterSprache+"&studiengang="+filterStudiengang;
|
||||
document.location=url;
|
||||
}
|
||||
</script>
|
||||
|
||||
@@ -509,16 +571,19 @@ else if($method=="lehrveranstaltungen")
|
||||
|
||||
if(isset($_GET['filter']))
|
||||
if($_GET['filter'] == "WSemester")
|
||||
$filterqry= "AND tbl_lehrveranstaltung.semester IN (1,3,5)";
|
||||
$filterqry= " AND tbl_lehrveranstaltung.semester IN (1,3,5)";
|
||||
elseif($_GET['filter'] == "SSemester")
|
||||
$filterqry = "AND tbl_lehrveranstaltung.semester IN (2,4,6)";
|
||||
$filterqry= " AND tbl_lehrveranstaltung.semester IN (2,4,6)";
|
||||
|
||||
if(isset($_GET['unterrichtssprache']) && $_GET['unterrichtssprache']!='')
|
||||
$filterqry .= " AND tbl_lehrveranstaltung.sprache='".$_GET['unterrichtssprache']."'";
|
||||
|
||||
|
||||
//Uebersicht LVs
|
||||
$qry = "SELECT
|
||||
tbl_lehrveranstaltung.lehrveranstaltung_id, tbl_lehrveranstaltung.studiengang_kz, tbl_lehrveranstaltung.ects,
|
||||
tbl_lehrveranstaltung.bezeichnung, tbl_lehrveranstaltung.semester,
|
||||
tbl_lehrveranstaltung.bezeichnung_english, tbl_lehrveranstaltung.incoming,
|
||||
tbl_lehrveranstaltung.bezeichnung, tbl_lehrveranstaltung.semester, tbl_lehrveranstaltung.sprache,
|
||||
tbl_lehrveranstaltung.bezeichnung_english, tbl_lehrveranstaltung.incoming, tbl_lehrveranstaltung.orgform_kurzbz,
|
||||
(
|
||||
Select count(*)
|
||||
FROM (
|
||||
@@ -538,7 +603,7 @@ else if($method=="lehrveranstaltungen")
|
||||
tbl_lehreinheit.studiensemester_kurzbz='$stsem->studiensemester_kurzbz')
|
||||
AND
|
||||
tbl_prestudentstatus.status_kurzbz='Incoming'
|
||||
AND tbl_prestudentstatus.status_kurzbz='$stsem->studiensemester_kurzbz'
|
||||
AND tbl_prestudentstatus.studiensemester_kurzbz='$stsem->studiensemester_kurzbz'
|
||||
UNION
|
||||
SELECT
|
||||
person_id
|
||||
@@ -547,9 +612,9 @@ else if($method=="lehrveranstaltungen")
|
||||
JOIN public.tbl_preincoming using(preincoming_id)
|
||||
WHERE lehrveranstaltung_id=tbl_lehrveranstaltung.lehrveranstaltung_id
|
||||
AND
|
||||
(von is null OR von >= '$stsem->start')
|
||||
(von is null OR von <= '$stsem->start')
|
||||
AND
|
||||
(bis is null OR bis <= (DATE '$stsem->ende' + INTERVAL '6 MONTH'))
|
||||
(bis is null OR bis >= (DATE '$stsem->ende'))
|
||||
AND aktiv = true
|
||||
)a ) as anzahl
|
||||
FROM
|
||||
@@ -558,22 +623,28 @@ else if($method=="lehrveranstaltungen")
|
||||
tbl_lehrveranstaltung.incoming>0 AND
|
||||
tbl_lehrveranstaltung.aktiv AND
|
||||
tbl_lehrveranstaltung.lehre
|
||||
AND tbl_lehrveranstaltung.studiengang_kz>0 AND tbl_lehrveranstaltung.studiengang_kz<10000
|
||||
AND tbl_studiengang.aktiv ".$filterqry." order by studiengang_kz
|
||||
AND tbl_lehrveranstaltung.studiengang_kz>0 AND tbl_lehrveranstaltung.studiengang_kz<10000";
|
||||
|
||||
if (isset($_GET['studiengang']) && $_GET['studiengang'] !='')
|
||||
$qry .= "AND tbl_lehrveranstaltung.studiengang_kz=".$_GET['studiengang'];
|
||||
|
||||
$qry .= "AND tbl_studiengang.aktiv ".$filterqry." order by studiengang_kz
|
||||
";
|
||||
|
||||
echo '<table width="90%" border="0" align="center" class="table-autosort:1 table-stripeclass:alternate table-autostripe">
|
||||
|
||||
echo '<table class="tablesorter" id="t3" width="90%" border="0" align="center">
|
||||
<thead align="center">
|
||||
<tr class="liste">
|
||||
<tr>
|
||||
<th width="6%"></th>
|
||||
<th class="table-sortable:default">'.$p->t('global/studiengang').'</th>
|
||||
<th class="table-sortable:default">'.$p->t('abgabetool/typ').'</th>
|
||||
<th class="table-sortable:numeric">'.$p->t('global/semester').'</th>
|
||||
<th class="table-sortable:default">'.$p->t('global/lehrveranstaltung').'</th>
|
||||
<th class="table-sortable:default">'.$p->t('global/lehrveranstaltung').' '.$p->t('global/englisch').'</th>
|
||||
<th class="table-sortable:numeric">'.$p->t('incoming/ects').'</th>
|
||||
<th>'.$p->t('global/studiengang').'</th>
|
||||
<th>'.$p->t('abgabetool/typ').'</th>
|
||||
<th>'.$p->t('incoming/orgform').'</th>
|
||||
<th>'.$p->t('global/semester').'</th>
|
||||
<th>'.$p->t('global/lehrveranstaltung').'</th>
|
||||
<th>'.$p->t('global/lehrveranstaltung').' '.$p->t('global/englisch').'</th>
|
||||
<th>'.$p->t('incoming/ects').'</th>
|
||||
<th>'.$p->t('courseInformation/unterrichtssprache').'</th>
|
||||
<th>Info</th>
|
||||
<th class="table-sortable:numeric">'.$p->t('incoming/freieplätze').'</th>
|
||||
<th>'.$p->t('incoming/freieplätze').'</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>';
|
||||
@@ -599,15 +670,17 @@ else if($method=="lehrveranstaltungen")
|
||||
echo '<td>'.$p->t('global/angemeldet').'</td>';
|
||||
echo '<td>',$studiengang_language,'</td>';
|
||||
echo '<td>',$typ,'</td>';
|
||||
echo '<td>',$row->orgform_kurzbz,'</td>';
|
||||
echo '<td>',$row->semester,'</td>';
|
||||
echo '<td>',$row->bezeichnung,'</td>';
|
||||
echo '<td>',$row->bezeichnung_english,'</td>';
|
||||
echo '<td>',$row->ects,'</td>';
|
||||
echo '<td>',$row->sprache,'</td>';
|
||||
echo '<td>
|
||||
<a href="#Deutsch" class="Item" onclick="javascript:window.open(\'lvinfo.php?lv='.$row->lehrveranstaltung_id.'&language=de\',\'Lehrveranstaltungsinformation\',\'width=700,height=750,resizable=yes,menuebar=no,toolbar=no,status=yes,scrollbars=yes\');return false;">Deutsch </a>
|
||||
<a href="#Englisch" class="Item" onclick="javascript:window.open(\'lvinfo.php?lv='.$row->lehrveranstaltung_id.'&language=en\',\'Lehrveranstaltungsinformation\',\'width=700,height=750,resizable=yes,menuebar=no,toolbar=no,status=yes,scrollbars=yes\');return false;">Englisch</a>
|
||||
</td>';
|
||||
echo '<td>',$freieplaetze,'</td>';
|
||||
echo '<td>',($freieplaetze<$row->incoming?'<strong>'.$freieplaetze.'/'.$row->incoming.'</strong>':$freieplaetze.'/'.$row->incoming),'</td>';
|
||||
echo '</tr>';
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,711 +0,0 @@
|
||||
<?php
|
||||
|
||||
/* Copyright (C) 2012 FH Technikum-Wien
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of the
|
||||
* License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* Authors: Karl Burkhart <burkhart@technikum-wien.at>
|
||||
* Manfred Kindl <kindlm@technikum-wien.at>
|
||||
*/
|
||||
|
||||
require_once '../../config/cis.config.inc.php';
|
||||
require_once '../../include/phrasen.class.php';
|
||||
require_once '../../include/person.class.php';
|
||||
require_once '../../include/studiengang.class.php';
|
||||
require_once '../../include/datum.class.php';
|
||||
require_once '../../include/mail.class.php';
|
||||
require_once '../../include/prestudent.class.php';
|
||||
require_once '../../include/preinteressent.class.php';
|
||||
require_once '../../include/kontakt.class.php';
|
||||
require_once '../../include/studiensemester.class.php';
|
||||
require_once '../../include/datum.class.php';
|
||||
require_once('../../include/sprache.class.php');
|
||||
|
||||
require_once '../../include/securimage/securimage.php';
|
||||
|
||||
$lang = filter_input(INPUT_GET, 'lang');
|
||||
|
||||
if(isset($lang))
|
||||
{
|
||||
setSprache($lang);
|
||||
}
|
||||
|
||||
$method = filter_input(INPUT_GET, 'method');
|
||||
$message = '';
|
||||
$datum = new datum();
|
||||
|
||||
$sprache = filter_input(INPUT_GET, 'sprache');
|
||||
|
||||
if(isset($sprache))
|
||||
{
|
||||
$sprache = new sprache();
|
||||
if($sprache->load($_GET['sprache']))
|
||||
{
|
||||
setSprache($_GET['sprache']);
|
||||
}
|
||||
else
|
||||
setSprache(DEFAULT_LANGUAGE);
|
||||
}
|
||||
|
||||
$sprache = getSprache();
|
||||
$p = new phrasen($sprache);
|
||||
$db = new basis_db();
|
||||
|
||||
$userid = trim(filter_input(INPUT_POST, 'userid'));
|
||||
|
||||
// Login gestartet
|
||||
if ($userid)
|
||||
{
|
||||
$person = new person();
|
||||
|
||||
session_start();
|
||||
$person_id = $person->checkZugangscodePerson($userid);
|
||||
|
||||
//Zugangscode wird überprüft
|
||||
if($person_id != false)
|
||||
{
|
||||
$_SESSION['bewerbung/user'] = $userid;
|
||||
$_SESSION['bewerbung/personId'] = $person_id;
|
||||
|
||||
header('Location: bewerbung.php');
|
||||
exit;
|
||||
}
|
||||
else
|
||||
{
|
||||
$message = "<script type=\"text/javascript\">alert('".$p->t('bewerbung/zugangsdatenFalsch')."')</script>";
|
||||
}
|
||||
}
|
||||
?>
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<title>Registration für Studiengänge</title>
|
||||
<meta http-equiv="X-UA-Compatible" content="chrome=1">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
|
||||
<meta name="robots" content="noindex">
|
||||
<link href="../../include/css/bootstrap.min.css" rel="stylesheet" type="text/css">
|
||||
<link href="../../include/css/registration.css" rel="stylesheet" type="text/css">
|
||||
</head>
|
||||
<body class="main">
|
||||
<div class="container">
|
||||
<?php
|
||||
$sprache2 = new sprache();
|
||||
$sprache2->getAll(true);
|
||||
?>
|
||||
<div class="dropdown pull-right">
|
||||
<button class="btn btn-default dropdown-toggle" type="button" id="sprache-label" data-toggle="dropdown" aria-expanded="true">
|
||||
<?php echo $sprache2->getBezeichnung(getSprache(), getSprache()) ?>
|
||||
<span class="caret"></span>
|
||||
</button>
|
||||
<ul class="dropdown-menu" role="menu" aria-labelledby="sprache-label" id="sprache-dropdown">
|
||||
<?php foreach($sprache2->result as $row): ?>
|
||||
<li role="presentation">
|
||||
<a href="#" role="menuitem" tabindex="-1" data-sprache="<?php echo $row->sprache ?>">
|
||||
<?php echo $row->bezeichnung_arr[getSprache()] ?>
|
||||
</a>
|
||||
</li>
|
||||
<?php endforeach; ?>
|
||||
</ul>
|
||||
</div>
|
||||
<ol class="breadcrumb">
|
||||
<?php if($method === 'registration'): ?>
|
||||
<li>
|
||||
<a href="<?php echo basename(__FILE__) ?>">
|
||||
<?php echo $p->t('bewerbung/login') ?>
|
||||
</a>
|
||||
</li>
|
||||
<li class="active">
|
||||
<?php echo $p->t('bewerbung/registration') ?>
|
||||
</li>
|
||||
<?php else: ?>
|
||||
<li class="active">
|
||||
<?php echo $p->t('bewerbung/login') ?>
|
||||
</li>
|
||||
<?php endif; ?>
|
||||
</ol>
|
||||
<?php
|
||||
/**
|
||||
* Maske zum Registrieren wird angezeigt
|
||||
* Nach erfolgreicher Registration wird eine Benutzer ID erstellt und an den Benutzer geschickt
|
||||
*/
|
||||
if($method == 'registration'):
|
||||
// Falls Sicherheitscode falsch ist - übergebene Werte speichern und vorausfüllen
|
||||
$date = new datum();
|
||||
|
||||
$vorname = filter_input(INPUT_POST, 'vorname');
|
||||
$nachname = filter_input(INPUT_POST, 'nachname');
|
||||
$geb_datum = filter_input(INPUT_POST, 'geb_datum');
|
||||
$geschlecht = filter_input(INPUT_POST, 'geschlecht');
|
||||
$email = filter_input(INPUT_POST, 'email');
|
||||
$studiengaenge = filter_input(INPUT_POST, 'studiengaenge');
|
||||
$std_semester = filter_input(INPUT_POST, 'studiensemester_kurzbz');
|
||||
$stg_auswahl = filter_input(INPUT_POST, 'stg');
|
||||
|
||||
if(!is_array($studiengaenge))
|
||||
{
|
||||
$studiengaenge = array();
|
||||
}
|
||||
|
||||
if($geb_datum)
|
||||
{
|
||||
$geb_datum = date('Y-m-d', strtotime($geb_datum));
|
||||
}
|
||||
|
||||
$submit = filter_input(INPUT_POST, 'submit');
|
||||
|
||||
if(isset($submit))
|
||||
{
|
||||
$securimage = new Securimage();
|
||||
// Sicherheitscode wurde falsch eingegeben
|
||||
if ($securimage->check($_POST['captcha_code']) == false)
|
||||
{
|
||||
$message = '<span class="error">'.$p->t('bewerbung/sicherheitscodeFalsch').'</span><br />';
|
||||
}
|
||||
elseif (count($studiengaenge)==0)
|
||||
{
|
||||
$message = '<span class="error">'.$p->t('bewerbung/bitteStudienrichtungWaehlen').'</span><br />';
|
||||
}
|
||||
else
|
||||
{
|
||||
// Person anlegen
|
||||
$person = new person();
|
||||
|
||||
$zugangscode = uniqid();
|
||||
|
||||
$person->nachname = $nachname;
|
||||
$person->vorname = $vorname;
|
||||
$person->gebdatum = $geb_datum;
|
||||
$person->geschlecht = $geschlecht;
|
||||
$person->aktiv = true;
|
||||
$person->zugangscode = $zugangscode;
|
||||
$person->insertamum = date('Y-m-d H:i:s');
|
||||
$person->updateamum = date('Y-m-d H:i:s');
|
||||
$person->new = true;
|
||||
|
||||
if(!$person->save())
|
||||
{
|
||||
die('Fehler beim Anlegen der Person aufgetreten.');
|
||||
}
|
||||
|
||||
// Email Kontakt zu Person speichern
|
||||
$kontakt = new kontakt();
|
||||
$kontakt->person_id = $person->person_id;
|
||||
$kontakt->kontakttyp = 'email';
|
||||
$kontakt->kontakt = $email;
|
||||
$kontakt->insertamum = date('Y-m-d H:i:s');
|
||||
$kontakt->updateamum = date('Y-m-d H:i:s');
|
||||
$kontakt->new = true;
|
||||
|
||||
if(!$kontakt->save())
|
||||
{
|
||||
die('Fehler beim speichern des Kontaktes');
|
||||
}
|
||||
|
||||
$anzStg = count($studiengaenge);
|
||||
|
||||
// ab wieviel ausgewählten Studiengängen kommt Student ins Preinteressententool
|
||||
if(count($studiengaenge) < ANZAHL_PREINTERESSENT)
|
||||
{
|
||||
// Prestudenten anlegen
|
||||
for($i = 0; $i<$anzStg; $i++)
|
||||
{
|
||||
$prestudent = new prestudent();
|
||||
$prestudent->person_id = $person->person_id;
|
||||
$prestudent->studiengang_kz = $studiengaenge[$i];
|
||||
$prestudent->aufmerksamdurch_kurzbz = 'k.A.';
|
||||
$prestudent->insertamum = date('Y-m-d H:i:s');
|
||||
$prestudent->updateamum = date('Y-m-d H:i:s');
|
||||
$prestudent->reihungstestangetreten = false;
|
||||
$prestudent->new = true;
|
||||
|
||||
if(!$prestudent->save())
|
||||
{
|
||||
die('Fehler beim anlegen des Prestudenten');
|
||||
}
|
||||
|
||||
// Interessenten Status anlegen
|
||||
$prestudent_status = new prestudent();
|
||||
$prestudent_status->load($prestudent->prestudent_id);
|
||||
$prestudent_status->status_kurzbz = 'Interessent';
|
||||
$prestudent_status->studiensemester_kurzbz = $std_semester;
|
||||
$prestudent_status->ausbildungssemester = '1';
|
||||
$prestudent_status->datum = date("Y-m-d H:m:s");
|
||||
$prestudent_status->insertamum = date("Y-m-d H:m:s");
|
||||
$prestudent_status->insertvon = '';
|
||||
$prestudent_status->updateamum = date("Y-m-d H:m:s");
|
||||
$prestudent_status->updatevon = '';
|
||||
$prestudent_status->new = true;
|
||||
|
||||
if(!$prestudent_status->save_rolle())
|
||||
{
|
||||
die('Fehler beim anlegen der Rolle');
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
// Preinteressent anlegen
|
||||
$timestamp = time();
|
||||
$preInteressent = new preinteressent();
|
||||
$preInteressent->person_id = $person->person_id;
|
||||
$preInteressent->aufmerksamdurch_kurzbz = 'k.A.';
|
||||
$preInteressent->kontaktmedium_kurzbz = 'bewerbungonline';
|
||||
$preInteressent->erfassungsdatum = date('Y-m-d', $timestamp);
|
||||
$preInteressent->insertamum = date('Y-m-d H:i:s');
|
||||
$preInteressent->updateamum = date('Y-m-d H:i:s');
|
||||
$preInteressent->new = true;
|
||||
|
||||
if(!$preInteressent->save())
|
||||
{
|
||||
die('Fehler beim anlegen des Preinteressenten');
|
||||
}
|
||||
|
||||
// Zuordnungen anlegen
|
||||
|
||||
for($i = 0; $i<$anzStg; $i++)
|
||||
{
|
||||
$preIntZuordnung = new preinteressent();
|
||||
$preIntZuordnung->preinteressent_id = $preInteressent->preinteressent_id;
|
||||
$preIntZuordnung->studiengang_kz = $studiengaenge[$i];
|
||||
$preIntZuordnung->prioritaet = '1';
|
||||
$preIntZuordnung->insertamum = date('Y-m-d H:i:s');
|
||||
$preIntZuordnung->updateamum = date('Y-m-d H:i:s');
|
||||
$preIntZuordnung->new = true;
|
||||
|
||||
if(!$preIntZuordnung->saveZuordnung())
|
||||
{
|
||||
die('Fehler beim anlegen des Preinteressenten');
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
//Email schicken
|
||||
echo sendMail($zugangscode, $email);
|
||||
exit();
|
||||
}
|
||||
} ?>
|
||||
|
||||
<?php echo $message ?>
|
||||
<form method="post" action="<?php echo basename(__FILE__) ?>?method=registration" name="RegistrationLoginForm" class="form-horizontal">
|
||||
<p class="infotext">
|
||||
<?php echo $p->t('bewerbung/einleitungstext') ?>
|
||||
</p>
|
||||
<div class="form-group">
|
||||
<label for="zugangscode" class="col-sm-3 control-label">
|
||||
<?php echo $p->t('bewerbung/zugangscode') ?> <?php echo $p->t('bewerbung/fallsVorhanden') ?>
|
||||
</label>
|
||||
<div class="col-sm-4">
|
||||
<div class="input-group">
|
||||
<input type="text" class="form-control" id="zugangscode" name="userid" placeholder="<?php echo $p->t('bewerbung/zugangscode') ?>">
|
||||
<span class="input-group-btn">
|
||||
<button type="submit" class="btn btn-primary" value="Login">
|
||||
<?php echo $p->t('bewerbung/login') ?>
|
||||
</button>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<label for="vorname" class="col-sm-3 control-label">
|
||||
<?php echo $p->t('global/vorname') ?>
|
||||
</label>
|
||||
<div class="col-sm-4">
|
||||
<input type="text" maxlength="32" name="vorname" id="vorname" value="<?php echo $vorname ?>" class="form-control">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<label for="nachname" class="col-sm-3 control-label">
|
||||
<?php echo $p->t('global/nachname') ?>
|
||||
</label>
|
||||
<div class="col-sm-4">
|
||||
<input type="text" maxlength="64" name="nachname" id="nachname" value="<?php echo $nachname ?>" class="form-control">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<label for="geburtsdatum" class="col-sm-3 control-label">
|
||||
<?php echo $p->t('global/geburtsdatum') ?>
|
||||
</label>
|
||||
<div class="col-sm-4">
|
||||
<input type="datetime" name="geb_datum" id="geburtsdatum" value="<?php echo $geb_datum ?>" class="form-control" placeholder="<?php echo $p->t('bewerbung/datumFormat') ?>">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<label class="col-sm-3 control-label">
|
||||
<?php echo $p->t('global/geschlecht') ?>
|
||||
</label>
|
||||
<div class="col-sm-4 text-center">
|
||||
<label class="radio-inline">
|
||||
<input type="radio" name="geschlecht" id="geschlechtm" value="m" <?php echo $geschlecht == 'm' ? 'checked' : '' ?>>
|
||||
<?php echo $p->t('global/mann'); ?>
|
||||
</label>
|
||||
<label class="radio-inline">
|
||||
<input type="radio" name="geschlecht" id="geschlechtw" value="w" <?php echo $geschlecht == 'w' ? 'checked' : '' ?>>
|
||||
<?php echo $p->t('global/frau') ?>
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<label for="email" class="col-sm-3 control-label">
|
||||
<?php echo $p->t('global/emailAdresse') ?>
|
||||
</label>
|
||||
<div class="col-sm-4">
|
||||
<input type="email" maxlength="128" name="email" id="email" value="<?php echo $email ?>" class="form-control">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<label for="studiensemester_kurzbz" class="col-sm-3 control-label">
|
||||
<?php echo $p->t('bewerbung/geplanterStudienbeginn') ?>
|
||||
</label>
|
||||
<div class="col-sm-4 dropdown">
|
||||
<select id="studiensemester_kurzbz" name="studiensemester_kurzbz" class="form-control">
|
||||
<option value=""><?php echo $p->t('bewerbung/bitteWaehlen') ?></option>
|
||||
<?php
|
||||
$stsem = new studiensemester();
|
||||
$stsem->getFutureStudiensemester('',4);
|
||||
|
||||
foreach($stsem->studiensemester as $row): ?>
|
||||
<option value="<?php echo $row->studiensemester_kurzbz ?>"
|
||||
<?php echo $std_semester == $row->studiensemester_kurzbz ? 'selected' : '' ?>>
|
||||
<?php echo $row->bezeichnung ?>
|
||||
</option>
|
||||
<?php endforeach; ?>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<label class="col-sm-3 control-label">
|
||||
<?php echo $p->t('bewerbung/studienrichtung') ?>
|
||||
</label>
|
||||
<div class="col-sm-6" id="liste-studiengaenge">
|
||||
<?php
|
||||
$stg = new studiengang();
|
||||
$stg->getAll('typ,bezeichnung',true);
|
||||
|
||||
foreach($stg->result as $result):
|
||||
if($result->studiengang_kz > 0):
|
||||
$checked = '';
|
||||
$typ = new studiengang();
|
||||
$typ->getStudiengangTyp($result->typ);
|
||||
if(in_array($result->studiengang_kz, $studiengaenge) || $result->studiengang_kz == $stg_auswahl)
|
||||
{
|
||||
$checked = 'checked';
|
||||
} ?>
|
||||
<div class="checkbox">
|
||||
<label>
|
||||
<input type="checkbox" name="studiengaenge[]" value="<?php echo $result->studiengang_kz ?>" <?php echo $checked ?>>
|
||||
<?php echo $result->bezeichnung ?>
|
||||
<span class="badge" id="badge<?php echo $result->studiengang_kz ?>"></span>
|
||||
<input type="hidden" id="anmerkung<?php echo $result->studiengang_kz ?>">
|
||||
</label>
|
||||
</div>
|
||||
<?php endif;
|
||||
endforeach; ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<div class="col-sm-3">
|
||||
<img id="captcha" class="center-block img-responsive" src="<?php echo APP_ROOT ?>include/securimage/securimage_show.php" alt="CAPTCHA Image" />
|
||||
<a href="#" onclick="document.getElementById('captcha').src = '<?php echo APP_ROOT ?>include/securimage/securimage_show.php?' + Math.random(); return false">
|
||||
<?php echo $p->t('bewerbung/andereGrafik') ?>
|
||||
</a>
|
||||
</div>
|
||||
<div class="col-sm-4">
|
||||
<?php echo $p->t('bewerbung/captcha') ?>
|
||||
<input type="text" name="captcha_code" maxlength="6" id="captcha" class="form-control">
|
||||
<input type="hidden" name="zugangscode" value="<?php echo uniqid() ?>">
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<div class="col-sm-4 col-sm-offset-3">
|
||||
<input type="submit" name="submit" value="<?php echo $p->t('bewerbung/registrieren') ?>" onclick="return checkRegistration()" class="btn btn-primary">
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
<?php else: ?>
|
||||
<?php echo $message ?>
|
||||
<div class="row">
|
||||
<div class="col-xs-10 col-xs-offset-1 col-sm-6 col-sm-offset-3">
|
||||
<form action ="<?php echo basename(__FILE__) ?>" method="POST" id="lp">
|
||||
<h1 class="text-center">
|
||||
<?php echo $p->t('bewerbung/welcome') ?>
|
||||
</h1>
|
||||
<img class="center-block img-responsive" src="../../skin/styles/<?php echo DEFAULT_STYLE ?>/logo.png">
|
||||
<p class="text-center"><?php echo $p->t('bewerbung/registrierenOderZugangscode') ?></p>
|
||||
<div class="form-group">
|
||||
<div class="input-group">
|
||||
<input class="form-control" type="text" placeholder="<?php echo $p->t('bewerbung/zugangscode') ?>" name="userid">
|
||||
<span class="input-group-btn">
|
||||
<button class="btn btn-primary" type="submit" name="submit">
|
||||
Login
|
||||
</button>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
<?php
|
||||
if(isset($errormsg))
|
||||
{
|
||||
echo $errormsg;
|
||||
}
|
||||
?>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
<?php endif; ?>
|
||||
</div>
|
||||
<div class="modal fade" id="prio-dialog"><div class="modal-dialog"><div class="modal-content">
|
||||
<div class="modal-header">
|
||||
<button type="button" class="close cancel-prio" data-dismiss="modal" aria-label="Close">
|
||||
<span aria-hidden="true">×</span>
|
||||
</button>
|
||||
<h4 class="modal-title"><?php echo $p->t('bewerbung/priowaehlen') ?></h4>
|
||||
</div>
|
||||
<div class="model-body">
|
||||
<?php foreach(array('topprio', 'alternative') as $prio): ?>
|
||||
<div class="" id="<?php echo $prio ?>">
|
||||
<div class="col-sm-6">
|
||||
<h4><?php echo $p->t('bewerbung/orgform') ?></h4>
|
||||
<div class="radio">
|
||||
<label>
|
||||
<input type="radio" name="<?php echo $prio ?>Orgform" value="egal">
|
||||
<?php echo $p->t('bewerbung/egal') ?>
|
||||
</label>
|
||||
</div>
|
||||
<div class="radio">
|
||||
<label>
|
||||
<input type="radio" name="<?php echo $prio ?>Orgform" value="VZ">
|
||||
<?php echo $p->t('bewerbung/orgform/vollzeit') ?>
|
||||
</label>
|
||||
</div>
|
||||
<div class="radio">
|
||||
<label>
|
||||
<input type="radio" name="<?php echo $prio ?>Orgform" value="BB">
|
||||
<?php echo $p->t('bewerbung/orgform/berufsbegleitend') ?>
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-sm-6">
|
||||
<h4><?php echo $p->t('bewerbung/sprache') ?></h4>
|
||||
<div class="radio">
|
||||
<label>
|
||||
<input type="radio" name="<?php echo $prio ?>Sprache" value="egal">
|
||||
<?php echo $p->t('bewerbung/egal') ?>
|
||||
</label>
|
||||
</div>
|
||||
<div class="radio">
|
||||
<label>
|
||||
<input type="radio" name="<?php echo $prio ?>Sprache" value="De">
|
||||
<?php echo $p->t('bewerbung/sprache/deutsch') ?>
|
||||
</label>
|
||||
</div>
|
||||
<div class="radio">
|
||||
<label>
|
||||
<input type="radio" name="<?php echo $prio ?>Sprache" value="En">
|
||||
<?php echo $p->t('bewerbung/sprache/englisch') ?>
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<?php endforeach; ?>
|
||||
<div class="modal-footer">
|
||||
<button class="btn btn-default cancel-prio" data-dismiss="modal"><?php echo $p->t('bewerbung/abbrechen') ?></button>
|
||||
<button class="btn btn-primary ok-prio" data-dismiss="modal"><?php echo $p->t('bewerbung/ok') ?></button>
|
||||
</div>
|
||||
</div>
|
||||
</div></div></div>
|
||||
<script src="../../include/js/jquery.min.1.11.1.js"></script>
|
||||
<script src="../../include/js/bootstrap.min.js"></script>
|
||||
<script type="text/javascript">
|
||||
|
||||
function changeSprache(sprache)
|
||||
{
|
||||
method = '<?php echo $db->convert_html_chars($method);?>';
|
||||
|
||||
window.location.href="registration.php?sprache="+sprache+"&method="+method;
|
||||
}
|
||||
|
||||
function checkRegistration()
|
||||
{
|
||||
if(document.RegistrationLoginForm.vorname.value == "")
|
||||
{
|
||||
alert("<?php echo $p->t('bewerbung/bitteVornameAngeben')?>");
|
||||
return false;
|
||||
}
|
||||
if(document.RegistrationLoginForm.nachname.value == "")
|
||||
{
|
||||
alert("<?php echo $p->t('bewerbung/bitteNachnameAngeben')?>");
|
||||
return false;
|
||||
}
|
||||
if(document.RegistrationLoginForm.geb_datum.value == "")
|
||||
{
|
||||
alert("<?php echo $p->t('bewerbung/bitteGeburtsdatumEintragen')?>");
|
||||
return false;
|
||||
}
|
||||
else
|
||||
{
|
||||
var gebDat = document.RegistrationLoginForm.geb_datum.value;
|
||||
gebDat = gebDat.split(".");
|
||||
|
||||
if(gebDat.length !== 3)
|
||||
{
|
||||
alert("<?php echo $p->t('bewerbung/bitteGeburtsdatumEintragen')?>");
|
||||
return false;
|
||||
}
|
||||
|
||||
if(gebDat[0].length !==2 && gebDat[1].length !== 2 && gebDat[2].length !== 4)
|
||||
{
|
||||
alert("<?php echo $p->t('bewerbung/bitteGeburtsdatumEintragen')?>");
|
||||
return false;
|
||||
}
|
||||
|
||||
var date = new Date(gebDat[2], gebDat[1], gebDat[0]);
|
||||
date.setMonth(date.getMonth()-1);
|
||||
|
||||
gebDat[0] = parseInt(gebDat[0], 10);
|
||||
gebDat[1] = parseInt(gebDat[1], 10)-1;
|
||||
gebDat[2] = parseInt(gebDat[2], 10);
|
||||
|
||||
if(!(date.getFullYear() === gebDat[2] && date.getMonth() === gebDat[1] && date.getDate() === gebDat[0]))
|
||||
{
|
||||
alert("<?php echo $p->t('bewerbung/bitteGeburtsdatumEintragen')?>");
|
||||
return false;
|
||||
}
|
||||
}
|
||||
if((document.getElementById('geschlechtm').checked == false)&&(document.getElementById('geschlechtw').checked == false))
|
||||
{
|
||||
alert("<?php echo $p->t('bewerbung/bitteGeschlechtWaehlen')?>");
|
||||
return false;
|
||||
}
|
||||
if(document.RegistrationLoginForm.email.value == "")
|
||||
{
|
||||
alert("<?php echo $p->t('bewerbung/bitteEmailAngeben')?>");
|
||||
return false;
|
||||
}
|
||||
if(document.RegistrationLoginForm.studiensemester_kurzbz.value == "")
|
||||
{
|
||||
alert("<?php echo $p->t('bewerbung/bitteStudienbeginnWaehlen')?>");
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
function checkPrios(slideDuration) {
|
||||
|
||||
var stgkz = $('#prio-dialog').data('stgkz'),
|
||||
anm = $('#anmerkung' + stgkz);
|
||||
|
||||
if($('#topprio input:checked[value="egal"]').length === 2) {
|
||||
|
||||
$('#alternative')
|
||||
.addClass('inactive')
|
||||
.slideUp(slideDuration);
|
||||
|
||||
anm.val('keine Prio');
|
||||
$('#badge' + stgkz).html(anm.val());
|
||||
|
||||
} else {
|
||||
|
||||
$('#alternative')
|
||||
.removeClass('inactive')
|
||||
.slideDown(slideDuration);
|
||||
|
||||
anm.val('');
|
||||
|
||||
anm.val('Prio: ' + $('#topprio input[name="topprioOrgform"]:checked').val() + '/'
|
||||
+ $('#topprio input[name="topprioSprache"]:checked').val());
|
||||
|
||||
if($('#alternative input:checked[value="egal"]').length !== 2) {
|
||||
anm.val(anm.val() + '; Alt: ' + $('#alternative input[name="alternativeOrgform"]:checked').val() + '/'
|
||||
+ $('#alternative input[name="alternativeSprache"]:checked').val());
|
||||
}
|
||||
|
||||
$('#badge' + stgkz).html(anm.val());
|
||||
}
|
||||
}
|
||||
|
||||
$(function() {
|
||||
|
||||
$('#sprache-dropdown a').on('click', function() {
|
||||
|
||||
var sprache = $(this).attr('data-sprache');
|
||||
changeSprache(sprache);
|
||||
});
|
||||
|
||||
$('#liste-studiengaenge input').on('change', function() {
|
||||
|
||||
var stgkz = $(this).val();
|
||||
$('#prio-dialog').data({stgkz: stgkz});
|
||||
|
||||
if($(this).prop('checked')) {
|
||||
|
||||
$('#prio-dialog input[value="egal"]').prop('checked', true);
|
||||
checkPrios(0);
|
||||
|
||||
$('#prio-dialog').modal('show');
|
||||
} else {
|
||||
|
||||
$('#badge' + stgkz).html('');
|
||||
}
|
||||
});
|
||||
|
||||
$('#prio-dialog button.cancel-prio').on('click', function() {
|
||||
|
||||
var stgkz = $('#prio-dialog').data('stgkz');
|
||||
|
||||
$('#liste-studiengaenge input[value="' + stgkz + '"]').prop('checked', false);
|
||||
$('#badge' + stgkz).html('');
|
||||
});
|
||||
|
||||
$('#prio-dialog button.ok-prio').on('click', function() {
|
||||
|
||||
checkPrios(0);
|
||||
});
|
||||
|
||||
$('#prio-dialog input').on('change', function() {
|
||||
|
||||
checkPrios(200);
|
||||
});
|
||||
});
|
||||
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
<?php
|
||||
function sendMail($zugangscode, $email)
|
||||
{
|
||||
global $p, $vorname, $nachname;
|
||||
|
||||
$mail = new mail($email, 'no-reply', $p->t('bewerbung/registration'), $p->t('bewerbung/mailtextHtml'));
|
||||
$text = $p->t('bewerbung/mailtext',array($vorname, $nachname, $zugangscode));
|
||||
$mail->setHTMLContent($text);
|
||||
if(!$mail->send())
|
||||
$msg= '<span class="error">'.$p->t('bewerbung/fehlerBeimSenden').'</span><br /><a href='.$_SERVER['PHP_SELF'].'?method=registration>'.$p->t('bewerbung/zurueckZurAnmeldung').'</a>';
|
||||
else
|
||||
$msg= $p->t('global/emailgesendetan')." $email!<br><a href=".$_SERVER['PHP_SELF'].">".$p->t('bewerbung/zurueckZurAnmeldung')."</a>";
|
||||
|
||||
// sende Nachricht an Assistenz
|
||||
|
||||
return $msg;
|
||||
}
|
||||
@@ -1,149 +0,0 @@
|
||||
<?php
|
||||
/* Copyright (C) 2014 fhcomplete.org
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of the
|
||||
* License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* Authors: Martin Tatzber <tatzberm@technikum-wien.at>,
|
||||
*/
|
||||
|
||||
require_once('../../config/cis.config.inc.php');
|
||||
|
||||
session_cache_limiter('none'); //muss gesetzt werden sonst funktioniert der Download mit IE8 nicht
|
||||
session_start();
|
||||
if (!isset($_SESSION['bewerbung/user']) || $_SESSION['bewerbung/user']=='')
|
||||
{
|
||||
$_SESSION['request_uri']=$_SERVER['REQUEST_URI'];
|
||||
|
||||
header('Location: registration.php?method=allgemein');
|
||||
exit;
|
||||
}
|
||||
|
||||
require_once('../../include/functions.inc.php');
|
||||
require_once('../../include/benutzer.class.php');
|
||||
require_once('../../include/benutzerberechtigung.class.php');
|
||||
require_once('../../include/konto.class.php');
|
||||
require_once('../../include/bankverbindung.class.php');
|
||||
require_once('../../include/studiengang.class.php');
|
||||
require_once('../../include/organisationseinheit.class.php');
|
||||
|
||||
$person_id = $_SESSION['bewerbung/personId'];
|
||||
|
||||
if(isset($_GET['buchungsnr']))
|
||||
$buchungsnr=$_GET['buchungsnr'];
|
||||
else
|
||||
$buchungsnr='';
|
||||
|
||||
$konto=new konto();
|
||||
if(!$konto->load($buchungsnr))
|
||||
die('Buchungsnummer '.$buchungsnr.' nicht vorhanden');
|
||||
if($person_id != $konto->person_id)
|
||||
die('keine Berechtigung, um auf Datensatz zuzugreifen');
|
||||
|
||||
$studiengang=new studiengang();
|
||||
$studiengang->load($konto->studiengang_kz);
|
||||
$bankverbindung=new bankverbindung();
|
||||
if($bankverbindung->load_oe($studiengang->oe_kurzbz) && count($bankverbindung->result)>0)
|
||||
{
|
||||
$iban=$bankverbindung->result[0]->iban;
|
||||
$bic=$bankverbindung->result[0]->bic;
|
||||
}
|
||||
else
|
||||
{
|
||||
$iban='';
|
||||
$bic='';
|
||||
}
|
||||
|
||||
$oe=new organisationseinheit();
|
||||
$oe->load($studiengang->oe_kurzbz);
|
||||
|
||||
$konto->getBuchungstyp();
|
||||
$buchungstyp = array();
|
||||
foreach ($konto->result as $row)
|
||||
$buchungstyp[$row->buchungstyp_kurzbz]=$row->beschreibung;
|
||||
|
||||
echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<title>Zahlungsdetails</title>
|
||||
<link href="../../skin/style.css.php" rel="stylesheet" type="text/css">
|
||||
<link href="../../skin/fhcomplete.css.php" rel="stylesheet" type="text/css">
|
||||
<link rel="stylesheet" href="../../skin/tablesort.css" type="text/css"/>
|
||||
</head>
|
||||
<body>';
|
||||
|
||||
echo '<h1>Einzahlung für '.$konto->vorname.' '.$konto->nachname.'</h1>
|
||||
<table class="tablesorter">
|
||||
<thead>
|
||||
<tr>
|
||||
<th width="40%">Zahlungsinformationen</th>
|
||||
<th width="60%"></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td>Buchungstyp</td>
|
||||
<td>'.$buchungstyp[$konto->buchungstyp_kurzbz].'</td>
|
||||
</tr><tr>
|
||||
<td>Buchungstext</td>
|
||||
<td>'.$konto->buchungstext.'</td>
|
||||
</tr><tr>
|
||||
<td>Betrag</td>
|
||||
<td>'.abs($konto->betrag).' €</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<table class="tablesorter">
|
||||
<thead>
|
||||
<tr>
|
||||
<th width="40%">Zahlung an</th>
|
||||
<th width="60%"></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td>Empfänger</td>
|
||||
<td>'.$oe->organisationseinheittyp_kurzbz.' '.$oe->bezeichnung.'</td>
|
||||
</tr>';
|
||||
if($iban!='')
|
||||
{
|
||||
echo '
|
||||
<tr>
|
||||
<td>IBAN</td>
|
||||
<td>'.$iban.'</td>
|
||||
</tr>';
|
||||
}
|
||||
if($bic!='')
|
||||
{
|
||||
echo '
|
||||
<tr>
|
||||
<td>BIC</td>
|
||||
<td>'.$bic.'</td>
|
||||
</tr>';
|
||||
}
|
||||
|
||||
if($konto->zahlungsreferenz!='')
|
||||
{
|
||||
echo '
|
||||
<tr>
|
||||
<td>Zahlungsreferenz</td>
|
||||
<td>'.$konto->zahlungsreferenz.'</td>
|
||||
</tr>';
|
||||
}
|
||||
echo '
|
||||
</tbody>
|
||||
</table>
|
||||
</body></html>';
|
||||
?>
|
||||
@@ -1,133 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||
<html><head>
|
||||
<title>Testtool Features</title>
|
||||
<meta http-equiv="Content-Type" content="text/html; ">
|
||||
<meta http-equiv="Content-Language" content="de-at">
|
||||
<meta name="copyright" content="(c) FH Technikum Wien">
|
||||
<style>
|
||||
body {
|
||||
background-color: #FFFFFF;
|
||||
margin:10px 10px 10px 20px;
|
||||
padding-left:13px;
|
||||
padding-right:17px;
|
||||
padding-top:25px;
|
||||
}
|
||||
body, div, p, td, th, h1, h2, a, a:link, a:hover, a:visited {
|
||||
background-color:transparent;
|
||||
color: #727B80;
|
||||
font-family:"Tahoma";
|
||||
font-size:15px;
|
||||
line-height:18px;
|
||||
text-decoration:none;
|
||||
}
|
||||
a:link, a:hover, a:visited {
|
||||
color:#727B80;
|
||||
text-decoration: underline;
|
||||
}
|
||||
a:hover {
|
||||
text-decoration: underline;
|
||||
font-weight:bold;
|
||||
}
|
||||
img {
|
||||
border: none;
|
||||
}
|
||||
h1 {
|
||||
color:#459F8C;
|
||||
font-weight:bold;
|
||||
margin: 40px 0px 0px 0px;
|
||||
padding: 0px;
|
||||
font-size:medium;
|
||||
}
|
||||
h2 {
|
||||
margin:16px 0px 10px 30px;
|
||||
}
|
||||
p {
|
||||
padding:0px;
|
||||
margin-top:15px;
|
||||
}
|
||||
.eingerueckt {
|
||||
padding-left:15px;
|
||||
margin:16px 0px 10px 15px;
|
||||
}
|
||||
|
||||
</style></head>
|
||||
|
||||
<body>
|
||||
|
||||
<table width="100%" border="0" cellspacing="0" cellpadding="0">
|
||||
<tr>
|
||||
<td width="170" nowrap>
|
||||
<img src="http://cis.technikum-wien.at/skin/images/TWLogo_klein.jpg">
|
||||
</td>
|
||||
<td nowrap>
|
||||
<table width="100%" border="0" cellspacing="0" cellpadding="0">
|
||||
<tr>
|
||||
<td> </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td height="10" valign="bottom">
|
||||
<img src="http://cis.technikum-wien.at/skin/images/header_line.gif" width="100%" height="3">
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td> </td>
|
||||
</tr>
|
||||
|
||||
</table>
|
||||
</td>
|
||||
<td width="30"> </td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<div style="width: 800px;">
|
||||
|
||||
<h1>Reihungstesttool - Neue Features</h1>
|
||||
<p>Folgende optionale Features stehen ab sofort im Testtool zur Verfügung:</p>
|
||||
<h2>Mehrsprachig</h2>
|
||||
<p class="eingerueckt">dzt. Deutsch oder Englisch (Vom Kandidaten frei wählbar oder fix vorgegeben)<br>
|
||||
Die Übersetzungen der Gebiete Mathematik und Schlussfolgerungen sind abgeschlossen.</p>
|
||||
|
||||
<h2>Zufallsfragen</h2>
|
||||
<p class="eingerueckt">Bei Beginn des Tests werden die Fragen in zufälliger Reihenfolge aus einem Fragenpool zusammengestellt. Damit fällt die bisherige Aufteilung in 2 Gruppen weg.
|
||||
</p>
|
||||
|
||||
<h2>Zufallsantworten</h2>
|
||||
<p class="eingerueckt">Die Reihenfolge der Antwortvorschläge wird zufällig vorgegeben.
|
||||
</p>
|
||||
|
||||
<h2>Multiple Response</h2>
|
||||
<p class="eingerueckt">Es können von nun an auch mehrere Antworten richtig sein.
|
||||
</p>
|
||||
|
||||
<h2>Punktewertung nach Antwort</h2>
|
||||
<p class="eingerueckt">Die Antworten pro Frage können mit unterschiedlichen Punkten bewertet werden.<br>
|
||||
So kann eine Antwort z.B. Richtig (volle Punkte), eine Antwort teilweise richtig (halbe Punkte), eine Antwort teilweise falsch, usw. sein.
|
||||
</p>
|
||||
|
||||
<h2>Audiofiles</h2>
|
||||
<p class="eingerueckt">Es ist nun auch möglich, Audiofiles (mp3) bei der Frage oder den Antworten einzubinden.
|
||||
</p>
|
||||
|
||||
<h2>Levelgleichverteilung (noch in der Testphase)</h2>
|
||||
<p class="eingerueckt">Es ist möglich, ein Teilgebiet aus einem Fragenpool unterschiedlich schwieriger Levels, mit im gleichen Verhältnis aufgeteilten Fragen, zusammensetzen zu lassen.
|
||||
(z.B.: sind sechs Fragen des Levels 1 im Pool vorhanden und drei Fragen des Levels 2 und die maximale Fragenanzahl im Test ist drei, dann kommen zwei Fragen mit Level 1 und eine Frage mit Level 2)
|
||||
</p>
|
||||
|
||||
<h2>Relative Fragestellung (noch in der Testphase)</h2>
|
||||
<p class="eingerueckt">Hier ist Vorraussetzung, dass ein Kandidat eine Frage nur einmal gestellt bekommt und diese danach nicht mehr korrigieren kann.
|
||||
Die folgende Frage wird dann - je nach gegebener Antwort - aus einem höheren oder einem niedrigeren Level gewählt.
|
||||
Der Levelanstieg/-abstieg erfolgt nach einer frei wählbaren Anzahl von Fragen (z.B. nach 3 richtig beantworteten Fragen = ein Level höher)
|
||||
</p>
|
||||
|
||||
<h2>Auswertung direkt ins FAS</h2>
|
||||
<p class="eingerueckt">Das Ergebnis des Tests (die Gesamtpunktezahl) kann von der Assistentin direkt ins FAS importiert werden.
|
||||
</p>
|
||||
<br>
|
||||
<br>
|
||||
<br>
|
||||
<br>
|
||||
<br>
|
||||
<br>
|
||||
|
||||
</div>
|
||||
</body></html>
|
||||
@@ -733,7 +733,7 @@ else
|
||||
$selected = 'selected';
|
||||
$select = true;
|
||||
}
|
||||
elseif ($prestudent_id=='' && $reihungstest=='' && $rt->datum==date('Y-m-d') && !$select)
|
||||
elseif ($prestudent_id=='' && $reihungstest=='' && $rt->datum==date('Y-m-d') && $datum_von=='' && $datum_bis=='' && $studiengang=='' && $semester=='' && !$select)
|
||||
{
|
||||
$selected = 'selected';
|
||||
$select = true;
|
||||
@@ -771,8 +771,8 @@ else
|
||||
}
|
||||
echo '</SELECT>';
|
||||
|
||||
echo ' von Datum: <INPUT class="datepicker_datum" type="text" name="datum_von" maxlength="10" size="10" value="'.$datum_von.'" /> ';
|
||||
echo 'bis Datum: <INPUT class="datepicker_datum" type="text" name="datum_bis" maxlength="10" size="10" value="'.$datum_bis.'" /><br />';
|
||||
echo ' von Datum: <INPUT class="datepicker_datum" type="text" name="datum_von" maxlength="10" size="10" value="'.$datum_obj->formatDatum($datum_von, 'd.m.Y').'" /> ';
|
||||
echo 'bis Datum: <INPUT class="datepicker_datum" type="text" name="datum_bis" maxlength="10" size="10" value="'.$datum_obj->formatDatum($datum_bis, 'd.m.Y').'" /><br />';
|
||||
echo '<hr style="color: #B3B3B3; background-color: #B3B3B3; border:none;">';
|
||||
echo 'PrestudentIn: <INPUT id="prestudent" type="text" name="prestudent_id" size="50" value="'.$prestudent_id.'" placeholder="Name, UID oder Prestudent_id eingeben" onInput="document.getElementById(\'reihungstest\').value=\'\'" onkeyup="document.getElementById(\'prestudent_id\').value=this.value"/><input type="hidden" id="prestudent_id" name="prestudent_id" value="'.$prestudent_id.'" />';
|
||||
echo '</td>
|
||||
@@ -792,9 +792,9 @@ else
|
||||
if (isset ($_REQUEST['semester']) && $_REQUEST['semester']!='')
|
||||
echo $semester.'. Semester ';
|
||||
if ($datum_von!='')
|
||||
echo 'von '.$datum_von;
|
||||
echo 'von '.$datum_obj->formatDatum($datum_von, 'd.m.Y');
|
||||
if ($datum_bis!='')
|
||||
echo ' bis '.$datum_bis;
|
||||
echo ' bis '.$datum_obj->formatDatum($datum_bis, 'd.m.Y');
|
||||
if ($prestudent_id!='')
|
||||
echo ' PrestudentID: '.$prestudent_id;
|
||||
|
||||
|
||||
@@ -40,6 +40,13 @@ echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
|
||||
<h1>Testtool Auswertung - Detail</h1>
|
||||
';
|
||||
|
||||
$user = get_uid();
|
||||
$rechte = new benutzerberechtigung();
|
||||
$rechte->getBerechtigungen($user);
|
||||
|
||||
if(!$rechte->isBerechtigt('basis/testtool',null,'s'))
|
||||
die('Sie haben keine Berechtigung für diese Seite');
|
||||
|
||||
$stg_kz = (isset($_GET['stg_kz'])?$_GET['stg_kz']:'');
|
||||
$gebiet_id = (isset($_GET['gebiet_id'])?$_GET['gebiet_id']:'');
|
||||
$db = new basis_db();
|
||||
@@ -102,36 +109,61 @@ if(isset($_GET['show']))
|
||||
JOIN testtool.tbl_frage_sprache USING(frage_id)
|
||||
JOIN testtool.tbl_gebiet USING(gebiet_id)
|
||||
WHERE
|
||||
demo=false
|
||||
AND tbl_frage_sprache.sprache='German'";
|
||||
demo=false";
|
||||
if($stg_kz!='')
|
||||
$qry.=" AND studiengang_kz='".addslashes($stg_kz)."'";
|
||||
if($gebiet_id!='')
|
||||
$qry.=" AND gebiet_id='".addslashes($gebiet_id)."'";
|
||||
$qry.=") as a ORDER BY gebiet_id, nummer";
|
||||
|
||||
//echo $qry.'<br><br>';
|
||||
if($result = $db->db_query($qry))
|
||||
{
|
||||
echo '<br />
|
||||
<table>
|
||||
<tr class="liste">
|
||||
<th></th>
|
||||
<th>Gebiet</th>
|
||||
<th>Frage</th>
|
||||
<th title="Anzahl der Personen die diese Frage gestellt bekommen haben">Gesamt</th>
|
||||
<th colspan="16">Vorschlag/Punkte/Anzahl</th>
|
||||
</tr>';
|
||||
if($db->db_num_rows($result)>0)
|
||||
{
|
||||
if($row = $db->db_fetch_object($result,0))
|
||||
{
|
||||
echo '<br />
|
||||
(!) Bei der Berechnung werden die Antworten aus allen verfügbaren Sprachen addiert.
|
||||
<br /><br />
|
||||
Bearbeitungszeit: '.$row->zeit.'<br>
|
||||
Multipleresponse: '.($db->db_parse_bool($row->multipleresponse)==true?'Ja':'Nein').'<br>
|
||||
Gestellte Fragen: '.$row->maxfragen.'<br>
|
||||
Zufallsfrage: '.($db->db_parse_bool($row->zufallfrage)==true?'Ja':'Nein').'<br>
|
||||
Zufallsvorschlag: '.($db->db_parse_bool($row->zufallvorschlag)==true?'Ja':'Nein').'<br>
|
||||
Startlevel: '.($row->level_start!=''?$row->level_start:'Keines').'<br>
|
||||
Höheres Level nach: '.($row->level_sprung_auf!=''?$row->level_sprung_auf.' richtigen Antwort(en)':'-').'<br>
|
||||
Niedrigeres Level nach: '.($row->level_sprung_ab!=''?$row->level_sprung_ab.' falschen Antwort(en)':'-').'<br>
|
||||
Levelgleichverteilung: '.($db->db_parse_bool($row->levelgleichverteilung)==true?'Ja':'Nein').'<br>
|
||||
Maximalpunkte: '.$row->maxpunkte.'<br>
|
||||
Antworten pro Zeile: '.$row->antwortenprozeile.'<br>
|
||||
<br>
|
||||
<table>
|
||||
<tr class="liste">
|
||||
<th></th>
|
||||
<th>Gebiet</th>
|
||||
<th>Nummer</th>
|
||||
<th>Level</th>
|
||||
<th>Frage</th>
|
||||
<th colspan="3" title="Anzahl der Personen die diese Frage gestellt bekommen haben">Gesamt (m/w)</th>
|
||||
<th colspan="30">Nummer | Punkte | Gesamt | Männlich | Weiblich</th>
|
||||
</tr>';
|
||||
}
|
||||
}
|
||||
else
|
||||
echo '<br>Keine Detaildaten vorhanden';
|
||||
|
||||
$i=0;
|
||||
while($row = $db->db_fetch_object($result))
|
||||
{
|
||||
$i++;
|
||||
$hlp='';
|
||||
$hlp .='<tr class="liste'.($i%2).'">
|
||||
<td><a href="auswertung_detail_frage.php?frage_id='.$row->frage_id.'">Details</a></td>
|
||||
<td><a href="auswertung_detail_frage.php?frage_id='.$row->frage_id.'" target="_blank">Details</a></td>
|
||||
<td nowrap>'.$row->gebiet.'</td>
|
||||
<td>'.strip_tags($row->text).' ('.$row->nummer.')</td>';
|
||||
|
||||
<td>'.$row->nummer.'</td>
|
||||
<td>'.$row->level.'</td>
|
||||
<td>'.strip_tags($row->text).'</td>';
|
||||
//Anzahl Antworten gesamt
|
||||
$qry = "SELECT
|
||||
count(*) as anzahl
|
||||
FROM
|
||||
@@ -141,10 +173,35 @@ if(isset($_GET['show']))
|
||||
frage_id=$row->frage_id";
|
||||
if($stg_kz!='')
|
||||
$qry.=" AND studiengang_kz='".addslashes($stg_kz)."'";
|
||||
//Anzahl Antworten männlich
|
||||
$qry_m = "SELECT
|
||||
count(*) as anzahl_m
|
||||
FROM
|
||||
testtool.tbl_pruefling_frage
|
||||
JOIN testtool.vw_pruefling USING (pruefling_id)
|
||||
WHERE
|
||||
frage_id=$row->frage_id
|
||||
AND
|
||||
geschlecht='m'";
|
||||
if($stg_kz!='')
|
||||
$qry_m.=" AND studiengang_kz='".addslashes($stg_kz)."'";
|
||||
//Anzahl Antworten weiblich
|
||||
$qry_w = "SELECT
|
||||
count(*) as anzahl_w
|
||||
FROM
|
||||
testtool.tbl_pruefling_frage
|
||||
JOIN testtool.vw_pruefling USING (pruefling_id)
|
||||
WHERE
|
||||
frage_id=$row->frage_id
|
||||
AND
|
||||
geschlecht='w'";
|
||||
if($stg_kz!='')
|
||||
$qry_w.=" AND studiengang_kz='".addslashes($stg_kz)."'";
|
||||
|
||||
//Anzahl Antworten je Vorschlag gesamt
|
||||
$qry_vorschlag = "
|
||||
SELECT
|
||||
vorschlag_id, nummer, punkte, count(*) as anzahl_vorschlag, ($qry) as anzahl_gesamt,
|
||||
vorschlag_id, nummer, punkte, count(*) as anzahl_vorschlag, ($qry) as anzahl_gesamt, ($qry_m) as anzahl_gesamt_m, ($qry_w) as anzahl_gesamt_w,
|
||||
(SELECT text FROM testtool.tbl_vorschlag_sprache WHERE vorschlag_id=tbl_vorschlag.vorschlag_id AND sprache='German' LIMIT 1) as text
|
||||
FROM
|
||||
testtool.tbl_vorschlag
|
||||
@@ -159,26 +216,53 @@ if(isset($_GET['show']))
|
||||
GROUP BY
|
||||
vorschlag_id, nummer, punkte
|
||||
ORDER BY punkte DESC, vorschlag_id";
|
||||
|
||||
//echo $qry_vorschlag.'<br>';
|
||||
$hlp2='';
|
||||
$gesamt =0;
|
||||
$gesamt = 0;
|
||||
$gesamt_m = 0;
|
||||
$gesamt_w = 0;
|
||||
if($result_vorschlag = $db->db_query($qry_vorschlag))
|
||||
{
|
||||
while($row_vorschlag = $db->db_fetch_object($result_vorschlag))
|
||||
{
|
||||
$qry_geschlecht = " SELECT count(*) AS anz_m
|
||||
FROM testtool.tbl_vorschlag
|
||||
JOIN testtool.tbl_antwort USING(vorschlag_id)
|
||||
JOIN testtool.vw_pruefling USING(pruefling_id)
|
||||
WHERE geschlecht='m'
|
||||
AND frage_id='$row->frage_id' ";
|
||||
if($stg_kz!='')
|
||||
$qry_geschlecht.=" AND studiengang_kz=".addslashes($stg_kz)."";
|
||||
|
||||
$qry_geschlecht.=" AND vorschlag_id='".addslashes($row_vorschlag->vorschlag_id)."'";
|
||||
|
||||
$result_geschlecht = $db->db_query($qry_geschlecht);
|
||||
$row_geschlecht = $db->db_fetch_object($result_geschlecht);
|
||||
|
||||
$anz_m = $row_geschlecht->anz_m;
|
||||
$anz_w = $row_vorschlag->anzahl_vorschlag-$row_geschlecht->anz_m;
|
||||
|
||||
$hlp2.= '
|
||||
<td style="border-left: 1px solid black"> '.$row_vorschlag->text.'</td>
|
||||
<td>'.number_format($row_vorschlag->punkte,2).' Pkt</td>
|
||||
<td><b>'.$row_vorschlag->anzahl_vorschlag.'</b></td>';
|
||||
<td style="border-left: 1px solid black; padding-left:2px;"><b>'.$row_vorschlag->nummer.'</b></td>
|
||||
<!--<td style="padding-left:2px;">'.$row_vorschlag->text.'</td>-->
|
||||
<td>'.number_format($row_vorschlag->punkte,2).'</td>
|
||||
<td><b>'.$row_vorschlag->anzahl_vorschlag.'</b></td>
|
||||
<td style="color:blue;"><b>'.$anz_m.'</b></td>
|
||||
<td style="color:magenta;"><b>'.$anz_w.'</b></td>';
|
||||
|
||||
$gesamt = $row_vorschlag->anzahl_gesamt;
|
||||
$gesamt_m = $row_vorschlag->anzahl_gesamt_m;
|
||||
$gesamt_w = $row_vorschlag->anzahl_gesamt_w;
|
||||
}
|
||||
}
|
||||
echo $hlp."<td><b>$gesamt</b></td>".$hlp2;
|
||||
echo $hlp."<td><b>$gesamt</b></td><td><b>$gesamt_m</b></td><td><b>$gesamt_w</b></td>".$hlp2;
|
||||
echo '</tr>';
|
||||
}
|
||||
echo '</table>';
|
||||
}
|
||||
else
|
||||
echo 'Keine Detailauswertung vorhanden';
|
||||
}
|
||||
?>
|
||||
</body>
|
||||
|
||||
@@ -40,6 +40,13 @@ echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
|
||||
<h1>Testtool Auswertung - Frage Detail</h1>
|
||||
';
|
||||
|
||||
$user = get_uid();
|
||||
$rechte = new benutzerberechtigung();
|
||||
$rechte->getBerechtigungen($user);
|
||||
|
||||
if(!$rechte->isBerechtigt('basis/testtool',null,'s'))
|
||||
die('Sie haben keine Berechtigung für diese Seite');
|
||||
|
||||
$frage_id = (isset($_GET['frage_id'])?$_GET['frage_id']:'');
|
||||
$sprache = (isset($_GET['sprache'])?$_GET['sprache']:'German');
|
||||
$db = new basis_db();
|
||||
@@ -54,7 +61,8 @@ if($frage_id!='' && is_numeric($frage_id))
|
||||
tbl_vorschlag_sprache.text as vorschlag_text,
|
||||
tbl_vorschlag_sprache.audio as vorschlag_audio,
|
||||
tbl_vorschlag_sprache.bild as vorschlag_bild,
|
||||
(SELECT count(*) FROM testtool.tbl_antwort WHERE vorschlag_id=tbl_vorschlag.vorschlag_id) as anzahl,
|
||||
tbl_frage.level,
|
||||
/*(SELECT count(*) FROM testtool.tbl_antwort WHERE vorschlag_id=tbl_vorschlag.vorschlag_id) as anzahl,*/
|
||||
(SELECT count(*) FROM testtool.tbl_pruefling_frage WHERE frage_id='$frage_id') as gesamt_anzahl
|
||||
FROM
|
||||
testtool.tbl_frage
|
||||
@@ -78,7 +86,8 @@ if($frage_id!='' && is_numeric($frage_id))
|
||||
{
|
||||
//Fragen Details
|
||||
echo "
|
||||
Anzahl der Personen die diese Frage bekommen haben (alle Stg): $row->gesamt_anzahl<br>
|
||||
Anzahl der Personen, die diese Frage bekommen haben (alle Stg): $row->gesamt_anzahl<br>
|
||||
Level der Frage: $row->level
|
||||
<br /><br />
|
||||
";
|
||||
echo '<center>';
|
||||
@@ -86,15 +95,11 @@ if($frage_id!='' && is_numeric($frage_id))
|
||||
echo $row->frage_text.'<br>';
|
||||
if($row->frage_audio!='')
|
||||
{
|
||||
echo '
|
||||
<script language="JavaScript" src="../audio-player/audio-player.js"></script>
|
||||
<object type="application/x-shockwave-flash" data="../audio-player/player.swf" id="audioplayer1" height="24" width="290">
|
||||
<param name="movie" value="../audio_player/player.swf" />
|
||||
<param name="FlashVars" value="playerID=audioplayer1&soundFile=../sound.php%3Fsrc%3Dfrage%26frage_id%3D'.$frage_id.'%26sprache%3D'.$sprache.'" />
|
||||
<param name="quality" value="high" />
|
||||
<param name="menu" value="false" />
|
||||
<param name="wmode" value="transparent" />
|
||||
</object>';
|
||||
echo ' <audio src="../sound.php?src=frage&frage_id='.$frage_id.'&sprache='.$sprache.'" controls="controls">
|
||||
<div>
|
||||
<p>Ihr Browser unterstützt dieses Audioelement leider nicht.</p>
|
||||
</div>
|
||||
</audio>';
|
||||
}
|
||||
if($row->frage_bild!='')
|
||||
echo "<img class='testtoolfrage' src='../bild.php?src=frage&frage_id=$frage_id&sprache=".$sprache."' /><br/><br/>\n";
|
||||
@@ -103,26 +108,22 @@ if($frage_id!='' && is_numeric($frage_id))
|
||||
}
|
||||
|
||||
//Vorschlaege
|
||||
echo '<center><div style="border: 1px solid black">';
|
||||
echo '<center><div style="width: 90%; padding: 5px; background-color: #eee;border: 1px solid black">';
|
||||
//echo "<b>Vorschlag $i: </b>";
|
||||
$first=false;
|
||||
echo $row->vorschlag_text;
|
||||
if($row->vorschlag_audio!='')
|
||||
{
|
||||
echo '
|
||||
<script language="JavaScript" src="../audio-player/audio-player.js"></script>
|
||||
<object type="application/x-shockwave-flash" data="../audio-player/player.swf" id="audioplayer1" height="24" width="290">
|
||||
<param name="movie" value="../audio_player/player.swf" />
|
||||
<param name="FlashVars" value="playerID=audioplayer1&soundFile=../sound.php%3Fsrc%3Dvorschlag%26vorschlag_id%3D'.$row->vorschlag_id.'%26sprache%3D'.$sprache.'" />
|
||||
<param name="quality" value="high" />
|
||||
<param name="menu" value="false" />
|
||||
<param name="wmode" value="transparent" />
|
||||
</object>';
|
||||
echo ' <audio src="../sound.php?src=vorschlag&vorschlag_id='.$row->vorschlag_id.'&sprache='.$sprache.'" controls="controls">
|
||||
<div>
|
||||
<p>Ihr Browser unterstützt dieses Audioelement leider nicht.</p>
|
||||
</div>
|
||||
</audio>';
|
||||
}
|
||||
if($row->vorschlag_bild!='')
|
||||
echo "<img class='testtoolfrage' src='../bild.php?src=vorschlag&vorschlag_id=$row->vorschlag_id&sprache=".$sprache."' /><br/><br/>\n";
|
||||
echo "<br /><br /><br /><b>Punkte:</b> ".number_format($row->punkte,2);
|
||||
echo "<br /><b>Anzahl beantwortet (alle Stg):</b> $row->anzahl";
|
||||
//echo "<br /><b>Anzahl beantwortet (alle Stg):</b> $row->anzahl";
|
||||
echo '</div></center><br /><br />';
|
||||
}
|
||||
}
|
||||
|
||||
@@ -47,7 +47,7 @@ echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//DE" "http://www
|
||||
<body class="Background_main">
|
||||
<h2>Auswertung Reihungstest Detailergebnis PrestudentIn '.$db->convert_html_chars($_GET['prestudent_id']).'</h2>';
|
||||
|
||||
if(!$rechte->isBerechtigt('basis/testtool', null, 'suid'))
|
||||
if(!$rechte->isBerechtigt('lehre/reihungstest', null, 's'))
|
||||
die('Sie haben keine Berechtigung fuer diese Seite');
|
||||
|
||||
// Testergebnisse anzeigen
|
||||
|
||||
@@ -518,7 +518,7 @@ echo '<table width="100%"><tr><td>';
|
||||
|
||||
//Liste der Studiengänge
|
||||
echo 'Studiengang: <select onchange="window.location.href=this.value">';
|
||||
echo '<option value="'.$PHP_SELF.'?" '.$selected.'>Alle Studiengänge</option>';
|
||||
echo '<option value="'.$PHP_SELF.'?" >Alle Studiengänge</option>';
|
||||
foreach ($studiengang->result as $row)
|
||||
{
|
||||
$stg_arr[$row->studiengang_kz] = $row->kuerzel;
|
||||
@@ -677,23 +677,17 @@ if($frage_id!='')
|
||||
}
|
||||
else
|
||||
{
|
||||
//echo "\n<tr><td align='center' width='400' height='300' style='background: #DDDDDD;'>Kein Bild vorhanden\n";
|
||||
echo "\n<tr><td align='center' width='400' style='background: #DDDDDD;'>\n";
|
||||
if($frage->audio=='')
|
||||
echo "Kein Bild vorhanden\n";
|
||||
}
|
||||
if($frage->audio!='')
|
||||
{
|
||||
//echo '<br /><embed autostart="false" src="../sound.php?src=frage&frage_id='.$frage->frage_id.'&sprache='.$sprache.'" height="20" width="250"/>';
|
||||
echo '
|
||||
<script language="JavaScript" src="../audio-player/audio-player.js"></script>
|
||||
<object type="application/x-shockwave-flash" data="../audio-player/player.swf" id="audioplayer1" height="24" width="290">
|
||||
<param name="movie" value="../audio_player/player.swf" />
|
||||
<param name="FlashVars" value="playerID=audioplayer1&soundFile=../sound.php%3Fsrc%3Dfrage%26frage_id%3D'.$frage->frage_id.'%26sprache%3D'.$sprache.'" />
|
||||
<param name="quality" value="high" />
|
||||
<param name="menu" value="false" />
|
||||
<param name="wmode" value="transparent" />
|
||||
</object>';
|
||||
echo ' <audio src="../sound.php?src=frage&frage_id='.$frage->frage_id.'&sprache='.$sprache.'" controls="controls">
|
||||
<div>
|
||||
<p>Ihr Browser unterstützt dieses Audioelement leider nicht.</p>
|
||||
</div>
|
||||
</audio>';
|
||||
}
|
||||
echo '</td>';
|
||||
//Zusaetzliche EingabeFelder anzeigen
|
||||
@@ -829,16 +823,11 @@ if($frage_id!='')
|
||||
$a[] = $vs->punkte;
|
||||
if($vs->audio!='')
|
||||
{
|
||||
//echo "<embed autostart='false' src='../sound.php?src=vorschlag&vorschlag_id=".$vs->vorschlag_id."&sprache=".$sprache."' height='20' width='150'/>";
|
||||
echo '
|
||||
<script language="JavaScript" src="../audio-player/audio-player.js"></script>
|
||||
<object type="application/x-shockwave-flash" data="../audio-player/player.swf" id="audioplayer1" height="24" width="290">
|
||||
<param name="movie" value="../audio_player/player.swf" />
|
||||
<param name="FlashVars" value="playerID=audioplayer1&soundFile=../sound.php%3Fsrc%3Dvorschlag%26vorschlag_id%3D'.$vs->vorschlag_id.'%26sprache%3D'.$sprache.'" />
|
||||
<param name="quality" value="high" />
|
||||
<param name="menu" value="false" />
|
||||
<param name="wmode" value="transparent" />
|
||||
</object>';
|
||||
echo ' <audio src="../sound.php?src=vorschlag&vorschlag_id='.$vs->vorschlag_id.'&sprache='.$sprache.'" controls="controls">
|
||||
<div>
|
||||
<p>Ihr Browser unterstützt dieses Audioelement leider nicht.</p>
|
||||
</div>
|
||||
</audio>';
|
||||
}
|
||||
echo " </td>
|
||||
<td><a href='$PHP_SELF?gebiet_id=$gebiet_id&stg_kz=$stg_kz&nummer=$nummer&frage_id=$frage->frage_id&vorschlag_id=$vs->vorschlag_id'>edit</a></td>
|
||||
|
||||
@@ -185,15 +185,11 @@ if(isset($_REQUEST['AuswahlGebiet']))
|
||||
//Sound einbinden
|
||||
if($spracheFrage->audio!='')
|
||||
{
|
||||
echo '
|
||||
<script language="JavaScript" src="../audio-player/audio-player.js"></script>
|
||||
<object type="application/x-shockwave-flash" data="../audio-player/player.swf" id="audioplayer1" height="24" width="290">
|
||||
<param name="movie" value="audio_player/player.swf" />
|
||||
<param name="FlashVars" value="playerID=audioplayer1&soundFile=../sound.php%3Fsrc%3Dfrage%26frage_id%3D'.$spracheFrage->frage_id.'%26sprache%3D'.$sprache.'" />
|
||||
<param name="quality" value="high" />
|
||||
<param name="menu" value="false" />
|
||||
<param name="wmode" value="transparent" />
|
||||
</object>';
|
||||
echo ' <audio src="../sound.php?src=frage&frage_id='.$spracheFrage->frage_id.'&sprache='.$sprache.'" controls="controls">
|
||||
<div>
|
||||
<p>Ihr Browser unterstützt dieses Audioelement leider nicht.</p>
|
||||
</div>
|
||||
</audio>';
|
||||
}
|
||||
// FRAGE anzeigen
|
||||
echo "$spracheFrage->text<br/><br/>\n";
|
||||
@@ -226,15 +222,11 @@ if(isset($_REQUEST['AuswahlGebiet']))
|
||||
}
|
||||
if($vorschlag->audio!='')
|
||||
{
|
||||
echo '
|
||||
<script language="JavaScript" src="../audio-player/audio-player.js"></script>
|
||||
<object type="application/x-shockwave-flash" data="../audio-player/player.swf" id="audioplayer1" height="24" width="290">
|
||||
<param name="movie" value="audio_player/player.swf" />
|
||||
<param name="FlashVars" value="playerID=audioplayer1&soundFile=../sound.php%3Fsrc%3Dvorschlag%26vorschlag_id%3D'.$vorschlag->vorschlag_id.'%26sprache%3D'.$_SESSION['sprache'].'" />
|
||||
<param name="quality" value="high" />
|
||||
<param name="menu" value="false" />
|
||||
<param name="wmode" value="transparent" />
|
||||
</object>';
|
||||
echo ' <audio src="../sound.php?src=vorschlag&vorschlag_id='.$vorschlag->vorschlag_id.'&sprache='.$sprache.'" controls="controls">
|
||||
<div>
|
||||
<p>Ihr Browser unterstützt dieses Audioelement leider nicht.</p>
|
||||
</div>
|
||||
</audio>';
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
+20
-70
@@ -161,6 +161,7 @@ echo '
|
||||
{
|
||||
var check = confirm(<?php echo "'".$p->t('testtool/okKlickenUmZuStarten')."'"?>+' '+stunde+'h '+minute+'m '+sekunde+'s');
|
||||
if (check == true) {
|
||||
var sprache_user = <?php echo "'".$sprache_user."'"?>;
|
||||
document.location.href = 'frage.php?gebiet_id='+gebiet_id+'&start=true';
|
||||
}
|
||||
else {
|
||||
@@ -192,8 +193,14 @@ else
|
||||
|
||||
list($stunde, $minute, $sekunde) = explode(':',$gebiet->zeit);
|
||||
|
||||
$gestartet = $gebiet->isGestartet($gebiet_id, $_SESSION['pruefling_id'], null);
|
||||
if(!$gestartet && $gebiet->errormsg!='')
|
||||
{
|
||||
die($gebiet->errormsg.'</body></html>');
|
||||
}
|
||||
|
||||
//Start des Pruefungsvorganges
|
||||
if(isset($_GET['start']))
|
||||
if(isset($_GET['start']) && !$gestartet)
|
||||
{
|
||||
//Fragenpool generieren
|
||||
$frage = new frage();
|
||||
@@ -499,9 +506,9 @@ if($frage->frage_id!='')
|
||||
$antwort = new antwort();
|
||||
$antwort->getAntwort($_SESSION['pruefling_id'],$row->frage_id);
|
||||
if($row->frage_id==$frage_id)
|
||||
echo " <a href='#' target='_self'><td style='width:12px; text-align:center; padding:2px; box-shadow: 0px 0px 3px 3px #888888;".(count($antwort->result)!=0?"background-color:lightgreen;":"")."'>".($row->nummer<10?" ":"")."$row->nummer</td></a>";
|
||||
echo " <a href='#' target='_self'><td style='width:12px; text-align:center; padding:2px; box-shadow: 0px 0px 3px 3px #888888;".(count($antwort->result)!=0?"background-color:lightblue;":"")."'>".($row->nummer<10?" ":"")."$row->nummer</td></a>";
|
||||
else
|
||||
echo " <a href='$PHP_SELF?gebiet_id=$gebiet_id&frage_id=$row->frage_id'><td style='width:12px; text-align:center; padding:2px; box-shadow: 0px 0px 3px 0px #888888;".(count($antwort->result)!=0?"background-color:lightgreen;":"")."'>$row->nummer</td></a>";
|
||||
echo " <a href='$PHP_SELF?gebiet_id=$gebiet_id&frage_id=$row->frage_id'><td style='width:12px; text-align:center; padding:2px; box-shadow: 0px 0px 3px 0px #888888;".(count($antwort->result)!=0?"background-color:lightblue;":"")."'>$row->nummer</td></a>";
|
||||
}
|
||||
//echo " </tr></table>";
|
||||
}
|
||||
@@ -523,19 +530,6 @@ if($frage->frage_id!='')
|
||||
else
|
||||
{
|
||||
if(!$demo)
|
||||
/*{
|
||||
$qry = "SELECT count(*) as anzahl FROM testtool.tbl_frage
|
||||
WHERE tbl_frage.gebiet_id=".$db->db_add_param($gebiet_id, FHC_INTEGER)."
|
||||
AND demo ";
|
||||
if($row = $db->db_fetch_object($db->db_query($qry)))
|
||||
{
|
||||
if($row->anzahl>1)
|
||||
{
|
||||
//Bei Demos den Weiter-Button nur anzeigen, wenn ausser der Startseite noch andere Demoseiten vorhanden sind
|
||||
echo " <a href='$PHP_SELF?gebiet_id=$gebiet_id' class='Item'>".$p->t("testtool/zurueckZurStartseite")." >></a>";
|
||||
}
|
||||
}
|
||||
}*/
|
||||
//else
|
||||
{
|
||||
//Wenns der letzte Eintrag ist, wieder zum ersten springen
|
||||
@@ -543,40 +537,6 @@ if($frage->frage_id!='')
|
||||
}
|
||||
}
|
||||
}
|
||||
/*else
|
||||
{
|
||||
//Naechste Frage holen und Weiter-Button anzeigen
|
||||
if($demo)
|
||||
{
|
||||
|
||||
$frage2 = new frage();
|
||||
$nextfrage = $frage2->getNextFrage($gebiet_id, $_SESSION['pruefling_id'], $frage_id, $demo);
|
||||
|
||||
if($nextfrage)
|
||||
{
|
||||
$value="Demo";
|
||||
echo " <a href='$PHP_SELF?gebiet_id=$gebiet_id&frage_id=$nextfrage' class='Item'>$value >></a>";
|
||||
}
|
||||
else
|
||||
{
|
||||
//Naechste Frage holen und Weiter-Button anzeigen
|
||||
//$frage = new frage();
|
||||
//$nextfrage = $frage->getNextFrage($gebiet_id, $_SESSION['pruefling_id'], $frage_id, $demo);
|
||||
|
||||
$qry = "SELECT count(*) as anzahl FROM testtool.tbl_frage
|
||||
WHERE tbl_frage.gebiet_id=".$db->db_add_param($gebiet_id, FHC_INTEGER)."
|
||||
AND demo ";
|
||||
if($row = $db->db_fetch_object($db->db_query($qry)))
|
||||
{
|
||||
if($row->anzahl>1)
|
||||
{
|
||||
//Bei Demos den Weiter-Button nur anzeigen, wenn ausser der Startseite noch andere Demoseiten vorhanden sind
|
||||
echo " <a href='$PHP_SELF?gebiet_id=$gebiet_id' class='Item'>".$p->t("testtool/zurueckZurStartseite")." >></a>";
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}*/
|
||||
if(!$demo && !$levelgebiet)
|
||||
echo " </tr></table>";
|
||||
|
||||
@@ -588,16 +548,11 @@ if($frage->frage_id!='')
|
||||
//Sound einbinden
|
||||
if($frage->audio!='')
|
||||
{
|
||||
//echo '<embed autostart="false" src="sound.php?src=frage&frage_id='.$frage->frage_id.'&sprache='.$_SESSION['sprache'].'" height="20" width="250"/><br />';
|
||||
echo '
|
||||
<script language="JavaScript" src="audio-player/audio-player.js"></script>
|
||||
<object type="application/x-shockwave-flash" data="audio-player/player.swf" id="audioplayer1" height="24" width="290">
|
||||
<param name="movie" value="audio_player/player.swf" />
|
||||
<param name="FlashVars" value="playerID=audioplayer1&soundFile=sound.php%3Fsrc%3Dfrage%26frage_id%3D'.$frage->frage_id.'%26sprache%3D'.$_SESSION['sprache'].'" />
|
||||
<param name="quality" value="high" />
|
||||
<param name="menu" value="false" />
|
||||
<param name="wmode" value="transparent" />
|
||||
</object>';
|
||||
echo ' <audio src="sound.php?src=frage&frage_id='.$frage->frage_id.'&sprache='.$_SESSION['sprache'].'" controls="controls">
|
||||
<div>
|
||||
<p>Ihr Browser unterstützt dieses Audioelement leider nicht.</p>
|
||||
</div>
|
||||
</audio>';
|
||||
}
|
||||
echo "$frage->text<br/><br/>\n";
|
||||
|
||||
@@ -645,16 +600,11 @@ if($frage->frage_id!='')
|
||||
echo "<img class='testtoolvorschlag' src='bild.php?src=vorschlag&vorschlag_id=$vorschlag->vorschlag_id&sprache=".$_SESSION['sprache']."' /><br/>";
|
||||
if($vorschlag->audio!='')
|
||||
{
|
||||
//echo '<embed autostart="false" src="sound.php?src=vorschlag&vorschlag_id='.$vorschlag->vorschlag_id.'&sprache='.$_SESSION['sprache'].'" height="20" width="100"/><br />';
|
||||
echo '
|
||||
<script language="JavaScript" src="audio-player/audio-player.js"></script>
|
||||
<object type="application/x-shockwave-flash" data="audio-player/player.swf" id="audioplayer1" height="24" width="290">
|
||||
<param name="movie" value="audio_player/player.swf" />
|
||||
<param name="FlashVars" value="playerID=audioplayer1&soundFile=sound.php%3Fsrc%3Dvorschlag%26vorschlag_id%3D'.$vs->vorschlag_id.'%26sprache%3D'.$_SESSION['sprache'].'" />
|
||||
<param name="quality" value="high" />
|
||||
<param name="menu" value="false" />
|
||||
<param name="wmode" value="transparent" />
|
||||
</object>';
|
||||
echo ' <audio src="sound.php?src=vorschlag&vorschlag_id='.$vorschlag->vorschlag_id.'&sprache='.$_SESSION['sprache'].'" controls="controls">
|
||||
<div>
|
||||
<p>Ihr Browser unterstützt dieses Audioelement leider nicht.</p>
|
||||
</div>
|
||||
</audio>';
|
||||
}
|
||||
if($vorschlag->text!='')
|
||||
echo $vorschlag->text.'<br/>';
|
||||
|
||||
@@ -347,6 +347,7 @@ if(isset($_POST['save']) && isset($_SESSION['prestudent_id']))
|
||||
else
|
||||
{
|
||||
$prestudent_id_dummy_student = (defined('PRESTUDENT_ID_DUMMY_STUDENT')?PRESTUDENT_ID_DUMMY_STUDENT:'');
|
||||
|
||||
echo '<form method="post">
|
||||
<SELECT name="prestudent">';
|
||||
echo '<OPTION value="'.$prestudent_id_dummy_student.'">'.$p->t('testtool/nameAuswaehlen').'</OPTION>\n';
|
||||
@@ -354,7 +355,11 @@ if(isset($_POST['save']) && isset($_SESSION['prestudent_id']))
|
||||
{
|
||||
$stg = new studiengang();
|
||||
$stg->load($prestd->studiengang_kz);
|
||||
echo '<OPTION value="'.$prestd->prestudent_id.'" '.($prestd->prestudent_id==($_POST['prestudent'])?'selected':'').'>'.$prestd->nachname.' '.$prestd->vorname.' ('.(strtoupper($stg->typ.$stg->kurzbz)).')</OPTION>\n';
|
||||
if(isset($_POST['prestudent']) && $prestd->prestudent_id==$_POST['prestudent'])
|
||||
$selected = 'selected';
|
||||
else
|
||||
$selected='';
|
||||
echo '<OPTION value="'.$prestd->prestudent_id.'" '.$selected.'>'.$prestd->nachname.' '.$prestd->vorname.' ('.(strtoupper($stg->typ.$stg->kurzbz)).')</OPTION>\n';
|
||||
}
|
||||
echo '</SELECT>';
|
||||
echo ' '.$p->t('global/geburtsdatum').': ';
|
||||
|
||||
@@ -137,7 +137,6 @@ if (isset($_SESSION['pruefling_id']))
|
||||
if($row_time->time>0)
|
||||
{
|
||||
//Gebiet gestartet aber noch nicht zu ende
|
||||
//$style='text-decoration: underline;';
|
||||
$style='';
|
||||
$class='ItemTesttoolAktiv';
|
||||
}
|
||||
@@ -152,7 +151,6 @@ if (isset($_SESSION['pruefling_id']))
|
||||
else
|
||||
{
|
||||
//Gebiet ist zu Ende
|
||||
//$style='text-decoration:line-through;';
|
||||
$style='';
|
||||
$class='ItemTesttoolBeendet';
|
||||
}
|
||||
@@ -182,7 +180,7 @@ if (isset($_SESSION['pruefling_id']))
|
||||
{
|
||||
echo '<tr>
|
||||
<td nowrap>
|
||||
<span class="error"><img src="../../skin/images/menu_item.gif" width="7" height="9"> '.$row->gebiet_bez.' (invalid)</span>
|
||||
<span class="error"> '.$row->gebiet_bez.' (invalid)</span>
|
||||
</td>
|
||||
</tr>';
|
||||
}
|
||||
|
||||
@@ -27,9 +27,6 @@ require_once '../../include/phrasen.class.php';
|
||||
die('Fehler beim Oeffnen der Datenbankverbindung');
|
||||
|
||||
require_once('../../include/gebiet.class.php');
|
||||
|
||||
//if(isset($_GET['lang']))
|
||||
//setSprache($_GET['lang']);
|
||||
|
||||
function getSpracheUser()
|
||||
{
|
||||
|
||||
+127
-9
@@ -40,7 +40,7 @@ $rechte = new benutzerberechtigung();
|
||||
$rechte->getBerechtigungen($user);
|
||||
|
||||
if(!$rechte->isBerechtigt('basis/cms'))
|
||||
die('Sie haben keine Berechtigung fuer diese Seite');
|
||||
die($rechte->errormsg);
|
||||
|
||||
$berechtigte_oe = $rechte->getOEkurzbz('basis/cms')
|
||||
?>
|
||||
@@ -55,9 +55,13 @@ $berechtigte_oe = $rechte->getOEkurzbz('basis/cms')
|
||||
<link href="../skin/style.css.php" rel="stylesheet" type="text/css">
|
||||
<script type="text/javascript" src="../include/tiny_mce/tiny_mce.js"></script>
|
||||
<script type="text/javascript" src="../include/js/jquery.js"></script>
|
||||
|
||||
|
||||
<script type="text/javascript">
|
||||
|
||||
function conf_del()
|
||||
{
|
||||
return confirm('Möchten Sie diesen Eintrag wirklich löschen?');
|
||||
}
|
||||
|
||||
tinyMCE.init
|
||||
(
|
||||
{
|
||||
@@ -65,7 +69,8 @@ $berechtigte_oe = $rechte->getOEkurzbz('basis/cms')
|
||||
theme : "advanced",
|
||||
language : "de",
|
||||
protect: [ /\<\/?(audio[^>]+|audio)\>/g, // Protect <audio...> und </audio>],
|
||||
/\<\/?(source[^>]+)\>/g // Protect <source...>],
|
||||
/\<\/?(source[^>]+)\>/g, // Protect <source...>],
|
||||
/\<\/?(video[^>]+|video)\>/g // Protect <video...> und </video>],
|
||||
],
|
||||
|
||||
file_browser_callback: "FHCFileBrowser",
|
||||
@@ -121,9 +126,11 @@ $berechtigte_oe = $rechte->getOEkurzbz('basis/cms')
|
||||
$sprache = isset($_GET['sprache'])?$_GET['sprache']:DEFAULT_LANGUAGE;
|
||||
$version = isset($_GET['version'])?$_GET['version']:null;
|
||||
$content_id = isset($_GET['content_id'])?$_GET['content_id']:null;
|
||||
$parent_content_id = isset($_GET['parent_content_id'])?$_GET['parent_content_id']:null;
|
||||
$action = isset($_GET['action'])?$_GET['action']:'';
|
||||
$method = isset($_GET['method'])?$_GET['method']:null;
|
||||
$filter = isset($_GET['filter'])?$_GET['filter']:null;
|
||||
$deleted = isset($_GET['deleted'])?$_GET['deleted']:'';
|
||||
$message = '';
|
||||
$submenu_depth=0;
|
||||
$datum_obj = new datum();
|
||||
@@ -236,7 +243,21 @@ if(!is_null($method))
|
||||
{
|
||||
if($content->saveContentSprache())
|
||||
{
|
||||
$message .= '<span class="ok">Eintrag wurde erfolgreich angelegt</span>';
|
||||
if ($parent_content_id!=null)
|
||||
{
|
||||
$parent_content = new content();
|
||||
$parent_content->content_id = $parent_content_id;
|
||||
$parent_content->child_content_id = $content->content_id;
|
||||
$parent_content->insertamum = date('Y-m-d');
|
||||
$parent_content->insertvon = $user;
|
||||
$parent_content->sort=$parent_content->getMaxSort($parent_content_id)+1;
|
||||
|
||||
if($parent_content->addChild())
|
||||
$message.='<span class="ok">Erfolgreich als Child von Content '.$parent_content_id.' angelegt</span><br>';
|
||||
else
|
||||
$message.='<span class="error">'.$content->errormsg.'</span>';
|
||||
}
|
||||
$message .= '<span class="ok">Neuer Eintrag wurde erfolgreich angelegt</span>';
|
||||
$action='prefs';
|
||||
$content_id=$content->content_id;
|
||||
$version=1;
|
||||
@@ -641,6 +662,29 @@ if(!is_null($method))
|
||||
$message.='<span class="error">Fehler: ID wurde nicht uebergeben</span>';
|
||||
}
|
||||
break;
|
||||
case 'delete':
|
||||
if(!$rechte->isBerechtigt('basis/cms', null, 'suid'))
|
||||
{
|
||||
$message.='<span class="error">Sie haben keine Berechtigung zum loeschen von Contents</span>';
|
||||
break;
|
||||
}
|
||||
|
||||
$content = new content();
|
||||
if (isset($_GET['versionold']) || isset($_GET['spracheold']))
|
||||
{
|
||||
$versionold = $_GET['versionold'];
|
||||
$spracheold = $_GET['spracheold'];
|
||||
$content->deleteContent($_GET['deleted'], $spracheold, $versionold);
|
||||
}
|
||||
/*
|
||||
* letzte default-language
|
||||
* letzte version (!= 1)
|
||||
*/
|
||||
else
|
||||
{
|
||||
$content->deleteContent($_GET['deleted']);
|
||||
}
|
||||
break;
|
||||
default: break;
|
||||
}
|
||||
}
|
||||
@@ -658,7 +702,8 @@ echo '<table width="100%">
|
||||
$db = new basis_db();
|
||||
|
||||
echo '
|
||||
<a href="'.$_SERVER['PHP_SELF'].'?action=prefs&method=add_new_content">Neuen Eintrag hinzufügen</a>
|
||||
<a href="'.$_SERVER['PHP_SELF'].'?action=prefs&method=add_new_content">Neuen Eintrag hinzufügen</a><br>
|
||||
<a href="'.$_SERVER['PHP_SELF'].'?action=prefs&method=add_new_content&filter='.$filter.'&parent_content_id='.$content_id.'">Neuen Child-Eintrag hinzufügen</a>
|
||||
<br><br>
|
||||
|
||||
<a href="admin.php?content_id='.$content_id.'&action='.$action.'&sprache='.$sprache.'&menu=content">Content</a> |
|
||||
@@ -779,10 +824,13 @@ if(!is_null($content_id) && $content_id!='')
|
||||
case 'history':
|
||||
print_history();
|
||||
break;
|
||||
case 'delete':
|
||||
print_delete();
|
||||
break;
|
||||
default: break;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
echo '</td></tr></table>';
|
||||
echo '</body>
|
||||
</html>';
|
||||
@@ -863,7 +911,8 @@ function drawheader()
|
||||
echo get_content_link('content','Inhalt').' | ';
|
||||
echo get_content_link('rights','Rechte').' | ';
|
||||
echo get_content_link('childs','Childs').' | ';
|
||||
echo get_content_link('history','History');
|
||||
echo get_content_link('history','History').' | ';
|
||||
echo get_content_link('delete', 'Delete');
|
||||
}
|
||||
/**
|
||||
* Gibt einen Menue Link aus
|
||||
@@ -1231,13 +1280,17 @@ function print_content()
|
||||
echo '
|
||||
<br>
|
||||
<h3>Vorschau</h3>';
|
||||
if($content->sichtbar!=true)
|
||||
{
|
||||
echo '<p style="color:red">(Unsichtbar im Livesystem)</p>';
|
||||
}
|
||||
//Bei Redirects wird die Vorschau nicht im IFrame gezeigt, da durch eventuelles weiterleiten durch
|
||||
// Javascript in der Vorschau die CMS Seite geschlossen wird.
|
||||
|
||||
if($content->template_kurzbz=='redirect')
|
||||
echo '<a href="content.php?content_id='.$content_id.'&version='.$version.'&sprache='.$sprache.'&sichtbar&filter='.implode(' ', $filterstr).'" target="_blank">Vorschau in eigenem Fenster öffnen</a>';
|
||||
else
|
||||
echo '<iframe src="content.php?content_id='.$content_id.'&version='.$version.'&sprache='.$sprache.'&filter='.implode(' ', $filterstr).'" style="width: 800px; height: 500px; border: 1px solid black;">';
|
||||
echo '<iframe src="content.php?content_id='.$content_id.'&version='.$version.'&sprache='.$sprache.'&filter='.implode(' ', $filterstr).'&sichtbar" style="width: 800px; height: 500px; border: 1px solid black;">';
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -1314,4 +1367,69 @@ function print_history()
|
||||
echo '</ul>';
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Erstellt den Karteireiter zum Löschen des Contents / der Version
|
||||
* Achtet auch darauf ob es die letzte version überhaupt bzw. die Letzte in der DEFAULT_LANGUAGE ist
|
||||
*
|
||||
*/
|
||||
function print_delete()
|
||||
{
|
||||
global $content_id, $sprache, $version, $filterstr;
|
||||
|
||||
$content = new content();
|
||||
|
||||
if ($sprache == DEFAULT_LANGUAGE)
|
||||
{
|
||||
if ($content->getNumberOfVersions($content_id, $sprache) == 1)
|
||||
{
|
||||
echo'Diese Version kann nicht gelöscht werden, da sie die letzte Vorhandene in der Standardsprache ('.DEFAULT_LANGUAGE.') ist.<br>';
|
||||
echo '<form action="'.$_SERVER['PHP_SELF'].'?deleted='.$content_id.'&method=delete&filter='.implode(' ', $filterstr).'" method="POST">
|
||||
Den gesamten Content <input type="submit" value="löschen" onclick="return conf_del()"></form>';
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
echo'<form action="'.$_SERVER['PHP_SELF'].'?deleted='.$content_id.'&action=delete&versionold='.$version.'&spracheold='.$sprache.'&method=delete&content_id='.$content_id.'&filter='.implode(' ', $filterstr).'" method="POST">
|
||||
Diese Version ('.$sprache.' '.$version.'. Version) <input type="submit" value="löschen" onclick="return conf_del()"> <br /></form>';
|
||||
echo '<form action="'.$_SERVER['PHP_SELF'].'?deleted='.$content_id.'&method=delete&filter='.implode(' ', $filterstr).'" method="POST">
|
||||
Den gesamten Content <input type="submit" value="löschen" onclick="return conf_del()"></form>';
|
||||
}
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
echo'<form action="'.$_SERVER['PHP_SELF'].'?deleted='.$content_id.'&action=delete&versionold='.$version.'&spracheold='.$sprache.'&method=delete&content_id='.$content_id.'&filter='.implode(' ', $filterstr).'" method="POST">
|
||||
Diese Version ('.$sprache.' '.$version.'. Version) <input type="submit" value="löschen" onclick="return conf_del()"> <br /></form>';
|
||||
echo '<form action="'.$_SERVER['PHP_SELF'].'?deleted='.$content_id.'&method=delete&filter='.implode(' ', $filterstr).'" method="POST">
|
||||
Den gesamten Content <input type="submit" value="löschen" onclick="return conf_del()"></form>';
|
||||
}
|
||||
}
|
||||
?>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
+1
-1
@@ -36,7 +36,7 @@ else
|
||||
|
||||
$version = (isset($_GET['version'])?$_GET['version']:null);
|
||||
$sprache = (isset($_GET['sprache'])?$_GET['sprache']:getSprache());
|
||||
$sichtbar = (isset($_GET['sichtbar'])?null:true);
|
||||
$sichtbar = (isset($_GET['sichtbar'])?($_GET['sichtbar']=='true'?true:($_GET['sichtbar']=='false'?false:null)):true);
|
||||
|
||||
$p = new phrasen($sprache);
|
||||
//XML Content laden
|
||||
|
||||
@@ -52,23 +52,34 @@ class menu_addon_meinelvkompatibel extends menu_addon
|
||||
if ($stsemobj = new studiensemester())
|
||||
{
|
||||
// Angezeigt wird das Studiensemester das am naehesten ist das davor und das danach
|
||||
//cis.config.inc.php: Durch den Eintrag CIS_MEINELV_ANZAHL_SEMESTER_PAST können mehrere Semester aus der Vergangenheit angezeigt werden.
|
||||
$stsem = $stsemobj->getNearest();
|
||||
$stsem_array[]=$stsemobj->getPreviousFrom($stsem);
|
||||
$stsem_array[]=$stsem;
|
||||
$stsem_array[]=$stsemobj->getNextFrom($stsem);
|
||||
$stsem_array = array();
|
||||
array_push($stsem_array, $stsem);
|
||||
array_push($stsem_array, $stsemobj->getNextFrom($stsem));
|
||||
|
||||
if(defined('CIS_MEINELV_ANZAHL_SEMESTER_PAST'))
|
||||
$end = CIS_MEINELV_ANZAHL_SEMESTER_PAST;
|
||||
else
|
||||
$end = 1;
|
||||
|
||||
for($i=0; $i<$end; $i++)
|
||||
{
|
||||
$stsem = $stsemobj->getPreviousFrom($stsem);
|
||||
array_unshift($stsem_array, $stsem);
|
||||
}
|
||||
|
||||
foreach($stsem_array as $stsem)
|
||||
{
|
||||
$qry = "SELECT
|
||||
lehrfach.bezeichnung, lehrfach.lehrveranstaltung_id as lehrfach_id, vw_student_lehrveranstaltung.lehrveranstaltung_id,
|
||||
vw_student_lehrveranstaltung.studiengang_kz, vw_student_lehrveranstaltung.semester
|
||||
FROM
|
||||
campus.vw_student_lehrveranstaltung
|
||||
JOIN lehre.tbl_lehrveranstaltung as lehrfach ON(vw_student_lehrveranstaltung.lehrfach_id=lehrfach.lehrveranstaltung_id)
|
||||
FROM
|
||||
campus.vw_student_lehrveranstaltung
|
||||
JOIN lehre.tbl_lehrveranstaltung as lehrfach ON(vw_student_lehrveranstaltung.lehrfach_id=lehrfach.lehrveranstaltung_id)
|
||||
WHERE
|
||||
uid=".$this->db_add_param($user)."
|
||||
AND studiensemester_kurzbz=".$this->db_add_param($stsem)."
|
||||
AND studiensemester_kurzbz=".$this->db_add_param($stsem)."
|
||||
AND vw_student_lehrveranstaltung.lehre=true
|
||||
AND vw_student_lehrveranstaltung.lehreverzeichnis<>''
|
||||
ORDER BY
|
||||
@@ -101,11 +112,11 @@ class menu_addon_meinelvkompatibel extends menu_addon
|
||||
}
|
||||
if(count($stsementry)>0)
|
||||
{
|
||||
$this->items[] = array('title'=>$stsem,
|
||||
'target'=>'',
|
||||
'link'=>'#',
|
||||
$this->items[] = array('title'=>$stsem,
|
||||
'target'=>'',
|
||||
'link'=>'#',
|
||||
'name'=>$stsem,
|
||||
'childs'=>$stsementry
|
||||
'childs'=>$stsementry
|
||||
);
|
||||
}
|
||||
}
|
||||
@@ -124,18 +135,18 @@ class menu_addon_meinelvkompatibel extends menu_addon
|
||||
{
|
||||
if ($stsemobj = new studiensemester())
|
||||
{
|
||||
// Angezeigt wird das Studiensemester das am naehesten ist das davor und das danach
|
||||
$stsem = $stsemobj->getNearest();
|
||||
$stsem_array[]=$stsemobj->getPreviousFrom($stsem);
|
||||
$stsem_array[]=$stsem;
|
||||
$stsem_array[]=$stsemobj->getNextFrom($stsem);
|
||||
|
||||
$this->items[] = array('title'=>$p->t("lvaliste/titel"),
|
||||
'target'=>'content',
|
||||
'link'=>'private/profile/lva_liste.php',
|
||||
// Angezeigt wird das Studiensemester das am naehesten ist das davor und das danach
|
||||
$stsem = $stsemobj->getNearest();
|
||||
$stsem_array[]=$stsemobj->getPreviousFrom($stsem);
|
||||
$stsem_array[]=$stsem;
|
||||
$stsem_array[]=$stsemobj->getNextFrom($stsem);
|
||||
|
||||
$this->items[] = array('title'=>$p->t("lvaliste/titel"),
|
||||
'target'=>'content',
|
||||
'link'=>'private/profile/lva_liste.php',
|
||||
'name'=>$p->t("lvaliste/titel"));
|
||||
|
||||
foreach($stsem_array as $stsem)
|
||||
|
||||
foreach($stsem_array as $stsem)
|
||||
{
|
||||
|
||||
$qry = "SELECT
|
||||
@@ -183,14 +194,14 @@ class menu_addon_meinelvkompatibel extends menu_addon
|
||||
);
|
||||
}
|
||||
}
|
||||
if(count($stsementry)>0)
|
||||
{
|
||||
$this->items[] = array('title'=>$stsem,
|
||||
'target'=>'',
|
||||
'link'=>'#',
|
||||
'name'=>$stsem,
|
||||
'childs'=>$stsementry
|
||||
);
|
||||
if(count($stsementry)>0)
|
||||
{
|
||||
$this->items[] = array('title'=>$stsem,
|
||||
'target'=>'',
|
||||
'link'=>'#',
|
||||
'name'=>$stsem,
|
||||
'childs'=>$stsementry
|
||||
);
|
||||
}
|
||||
}
|
||||
else
|
||||
|
||||
@@ -22,21 +22,23 @@
|
||||
*/
|
||||
require_once(dirname(__FILE__).'/menu_addon.class.php');
|
||||
|
||||
class menu_addon_spacer extends menu_addon
|
||||
if(!class_exists('menu_addon_spacer'))
|
||||
{
|
||||
public function __construct()
|
||||
class menu_addon_spacer extends menu_addon
|
||||
{
|
||||
parent::__construct();
|
||||
public function __construct()
|
||||
{
|
||||
parent::__construct();
|
||||
|
||||
$this->link=false;
|
||||
$this->link=false;
|
||||
|
||||
$this->block='
|
||||
<br /><br />
|
||||
';
|
||||
$this->block='
|
||||
<br /><br />
|
||||
';
|
||||
|
||||
$this->output();
|
||||
}
|
||||
$this->output();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
new menu_addon_spacer();
|
||||
?>
|
||||
?>
|
||||
|
||||
+388
-104
@@ -24,7 +24,10 @@ require_once('../config/cis.config.inc.php');
|
||||
require_once('../include/functions.inc.php');
|
||||
require_once('../include/dms.class.php');
|
||||
require_once('../include/benutzerberechtigung.class.php');
|
||||
require_once('../include/basis_db.class.php');
|
||||
require_once('../include/datum.class.php');
|
||||
|
||||
$db = new basis_db();
|
||||
$user = get_uid();
|
||||
$rechte = new benutzerberechtigung();
|
||||
$rechte->getBerechtigungen($user);
|
||||
@@ -43,39 +46,59 @@ $rechte->getBerechtigungen($user);
|
||||
<script type="text/javascript" src="../include/js/jquery.js"></script>
|
||||
<script type="text/javascript" src="../include/js/superfish.js"></script>
|
||||
<script type="text/javascript" src="../include/tiny_mce/tiny_mce_popup.js"></script>
|
||||
<style type="text/css">
|
||||
.buttondesign {
|
||||
background-color: #87cefa;
|
||||
border: 1px solid black;
|
||||
border-radius: 5px;
|
||||
}
|
||||
</style>
|
||||
<script type="text/javascript">
|
||||
|
||||
function conf_del()
|
||||
function conf_del()
|
||||
{
|
||||
return confirm('Möchten Sie das File wirklich löschen?');
|
||||
}
|
||||
|
||||
var FileBrowserDialog={
|
||||
init: function(){
|
||||
},
|
||||
mySubmit : function (id) {
|
||||
var URL = "dms.php?id="+id;
|
||||
var win = tinyMCEPopup.getWindowArg("window");
|
||||
|
||||
// insert information now
|
||||
win.document.getElementById(tinyMCEPopup.getWindowArg("input")).value = URL;
|
||||
var FileBrowserDialog=
|
||||
{
|
||||
init: function(){
|
||||
},
|
||||
mySubmit : function (id) {
|
||||
var URL = "dms.php?id="+id;
|
||||
var win = tinyMCEPopup.getWindowArg("window");
|
||||
|
||||
// are we an image browser
|
||||
if (typeof(win.ImageDialog) != "undefined") {
|
||||
// we are, so update image dimensions...
|
||||
if (win.ImageDialog.getImageData)
|
||||
win.ImageDialog.getImageData();
|
||||
// insert information now
|
||||
win.document.getElementById(tinyMCEPopup.getWindowArg("input")).value = URL;
|
||||
|
||||
// ... and preview if necessary
|
||||
if (win.ImageDialog.showPreviewImage)
|
||||
win.ImageDialog.showPreviewImage(URL);
|
||||
}
|
||||
// are we an image browser
|
||||
if (typeof(win.ImageDialog) != "undefined") {
|
||||
// we are, so update image dimensions...
|
||||
if (win.ImageDialog.getImageData)
|
||||
win.ImageDialog.getImageData();
|
||||
|
||||
// close popup window
|
||||
tinyMCEPopup.close();
|
||||
}
|
||||
// ... and preview if necessary
|
||||
if (win.ImageDialog.showPreviewImage)
|
||||
win.ImageDialog.showPreviewImage(URL);
|
||||
}
|
||||
|
||||
// close popup window
|
||||
tinyMCEPopup.close();
|
||||
}
|
||||
};
|
||||
|
||||
$('document').ready(function() {
|
||||
$('.buttondesign').mouseenter(function() {
|
||||
$(this).animate({
|
||||
backgroundColor: "#bfefff"
|
||||
}, 300);
|
||||
});
|
||||
$('.buttondesign').mouseleave(function() {
|
||||
$(this).animate({
|
||||
backgroundColor: "#87cefa"
|
||||
}, 300);
|
||||
});
|
||||
});
|
||||
|
||||
//tinyMCEPopup.onInit.add(FileBrowserDialog.init, FileBrowserDialog);
|
||||
|
||||
$(document).ready(function()
|
||||
@@ -93,6 +116,7 @@ $rechte->getBerechtigungen($user);
|
||||
$('#dms_id').val(id);
|
||||
$('#dms_id_import').val(id);
|
||||
$('#ueberschrift').html('Neue Version von '+name);
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -103,6 +127,16 @@ $rechte->getBerechtigungen($user);
|
||||
return false;
|
||||
}
|
||||
|
||||
function updateBeschreibung(beschreibung)
|
||||
{
|
||||
var beschreibungstext = ""+beschreibung;
|
||||
beschreibungstext = beschreibungstext.replace(/4nführungsze1ch3n/g, "'");
|
||||
beschreibungstext = beschreibungstext.replace(/6Sl4sh/g, "\\");
|
||||
beschreibungstext = beschreibungstext.replace(/D4n7ührung/g, "\"");
|
||||
beschreibungstext = beschreibungstext.replace(/Ze1l3numxbr/g, "\r\n");
|
||||
document.getElementById("beschreibung-textarea").value = beschreibungstext;
|
||||
}
|
||||
|
||||
var __js_page_array = new Array();
|
||||
function js_toggle_container(conid)
|
||||
{
|
||||
@@ -171,20 +205,26 @@ $projekt_kurzbz = isset($_REQUEST['projekt_kurzbz'])?$_REQUEST['projekt_kurzbz']
|
||||
$projektphase_id = isset($_REQUEST['projektphase_id'])?$_REQUEST['projektphase_id']:'';
|
||||
$openupload = isset($_GET['openupload'])?$_GET['openupload']:false;
|
||||
$newVersionID = isset($_GET['newVersionID'])?$_GET['newVersionID']:false;
|
||||
$suche = false;
|
||||
$suche = false;
|
||||
$chkatID = isset($_REQUEST['chkatID'])?$_REQUEST['chkatID']:'';
|
||||
$page = isset($_REQUEST['page'])?$_REQUEST['page']:1;
|
||||
$dpp = isset($_REQUEST['dpp'])?$_REQUEST['dpp']:20;
|
||||
$searching = isset($_REQUEST['searching'])?$_REQUEST['searching']:'false';
|
||||
|
||||
$mimetypes = array(
|
||||
'application/pdf'=>'pdf.ico',
|
||||
'application/vnd.openxmlformats-officedocument.wordprocessingml.document'=>'word2007.jpg',
|
||||
'application/vnd.openxmlformats-officedocument.presentationml.presentation'=>'x-office-presentation.png',
|
||||
'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'=>'excel.gif',
|
||||
'application/vnd.oasis.opendocument.text'=>'openoffice0.jpg',
|
||||
'application/msword'=>'dotpic.gif',
|
||||
'application/vnd.ms-excel'=>'excel.gif',
|
||||
'application/x-zip'=>'zippic.gif',
|
||||
'image/jpeg'=>'imgpic.gif',
|
||||
'image/gif'=>'imgpic.gif',
|
||||
'image/png'=>'imgpic.gif',
|
||||
'application/pdf'=>'pdf_icon.png',
|
||||
'application/vnd.openxmlformats-officedocument.wordprocessingml.document'=>'doc_icon.png',
|
||||
'application/vnd.openxmlformats-officedocument.presentationml.presentation'=>'ppt_icon.png',
|
||||
'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'=>'xls_icon.png',
|
||||
'application/vnd.oasis.opendocument.text'=>'openoffice0.jpg',
|
||||
'application/msword'=>'doc_icon.png',
|
||||
'application/vnd.ms-excel'=>'xls_icon.png',
|
||||
'application/x-zip'=>'zip_icon.png',
|
||||
'application/zip'=>'zip_icon.png',
|
||||
'application/mspowerpoint'=>'ppt_icon.png',
|
||||
'image/jpeg'=>'img_icon.png',
|
||||
'image/gif'=>'img_icon.png',
|
||||
'image/png'=>'img_icon.png',
|
||||
);
|
||||
|
||||
// Hole Datei aus Import Verzeichnis
|
||||
@@ -213,10 +253,12 @@ if($importFile != '')
|
||||
$dms->version='0';
|
||||
$dms->kategorie_kurzbz=$kategorie_kurzbz;
|
||||
}
|
||||
|
||||
//Mimetype auslesen
|
||||
$finfo = finfo_open(FILEINFO_MIME_TYPE);
|
||||
|
||||
$dms->insertamum=date('Y-m-d H:i:s');
|
||||
$dms->insertvon = $user;
|
||||
$dms->mimetype= mime_content_type(IMPORT_PATH.$importFile);
|
||||
$dms->mimetype= finfo_file($finfo, IMPORT_PATH.$importFile); //Davor deprecated: mime_content_type(IMPORT_PATH.$importFile);
|
||||
$dms->filename = $filename;
|
||||
$dms->name = $importFile;
|
||||
|
||||
@@ -278,10 +320,12 @@ if(isset($_POST['fileupload']))
|
||||
$dms->version='0';
|
||||
$dms->kategorie_kurzbz=$kategorie_kurzbz;
|
||||
}
|
||||
//Mimetype auslesen
|
||||
$finfo = finfo_open(FILEINFO_MIME_TYPE);
|
||||
|
||||
$dms->insertamum=date('Y-m-d H:i:s');
|
||||
$dms->insertvon = $user;
|
||||
$dms->mimetype=$_FILES['userfile']['type'];
|
||||
$dms->mimetype = finfo_file($finfo, $uploadfile); // Davor deprecated: $_FILES['userfile']['type'];
|
||||
$dms->filename = $filename;
|
||||
$dms->name = $_FILES['userfile']['name'];
|
||||
$dms->beschreibung = $beschreibung;
|
||||
@@ -332,8 +376,8 @@ if(isset($_POST['action']) && $_POST['action']=='rename')
|
||||
|
||||
if(isset($_REQUEST['delete']))
|
||||
{
|
||||
if(!$rechte->isberechtigt('basis/dms',null, 'sui', null))
|
||||
die('Sie haben keine Berechtigung diese Seite zu sehen.');
|
||||
if(!$rechte->isberechtigt('basis/dms',null, 'suid', null))
|
||||
die($rechte->errormsg);
|
||||
|
||||
// lösche nur die Version
|
||||
if(isset($_REQUEST['version']))
|
||||
@@ -347,40 +391,16 @@ if(isset($_REQUEST['delete']))
|
||||
// DB Eintrag löschen
|
||||
if(!$dms->deleteVersion($dms_id, $version))
|
||||
echo '<span class="error">'.$dms->errormsg.'</span>';
|
||||
else
|
||||
{
|
||||
// File im Filesystem löschen
|
||||
if(unlink(DMS_PATH.$dms->filename))
|
||||
echo '<span class="ok">Erfolgreich gelöscht!</span>';
|
||||
else
|
||||
echo '<span class="error">Fehler beim löschen aus dem Filesystem aufgetreten!</span>';
|
||||
}
|
||||
}else
|
||||
}
|
||||
else
|
||||
{
|
||||
// lösche gesamten Eintrag
|
||||
$dms = new dms();
|
||||
$dms_id = $_REQUEST['dms_id'];
|
||||
|
||||
$dms = new dms();
|
||||
$error = false;
|
||||
|
||||
$dms->getAllVersions($dms_id);
|
||||
|
||||
// DB Einträge löschen
|
||||
// DB Einträge und Dokumente löschen
|
||||
if(!$dms->deleteDms($dms_id))
|
||||
echo '<span class="error">'.$dms->errormsg.'</span>';
|
||||
else
|
||||
{
|
||||
// Alle Versionen der Datei vom Filesystem löschen
|
||||
foreach($dms->result as $obj)
|
||||
{
|
||||
if(!unlink(DMS_PATH.$obj->filename))
|
||||
$error = true;
|
||||
}
|
||||
if($error)
|
||||
echo '<span class="error">Fehler beim löschen aus dem Filesystem aufgetreten!</span>';
|
||||
else
|
||||
echo '<span class="ok">Erfolgreich gelöscht!</span>';
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -388,29 +408,75 @@ if($versionId != '')
|
||||
{
|
||||
// Übersicht der Versionen
|
||||
echo '<h1>Versionsübersicht</h1>';
|
||||
echo '<span style="float:right";><a href="'.$_SERVER['PHP_SELF'].'">zurück</a></span>';
|
||||
if (isset($_REQUEST['searching']) && $_REQUEST['searching'] == 'true')
|
||||
echo '<p><a href="'.$_SERVER['PHP_SELF'].'?searching=true&searchstring='.$_REQUEST['searchstring'].'&page='.$page.'&dpp='.$dpp.'">zurück</a></p>';
|
||||
else
|
||||
echo '<p><a href="'.$_SERVER['PHP_SELF'].'?kategorie_kurzbz='.$_REQUEST['kategorie_kurzbz'].'&page='.$page.'&dpp='.$dpp.'">zurück</a></p>';
|
||||
drawAllVersions($versionId);
|
||||
}
|
||||
elseif($renameId!='')
|
||||
{
|
||||
// Übersicht der Versionen
|
||||
echo '<h1>Versionsübersicht</h1>';
|
||||
echo '<span style="float:right";><a href="'.$_SERVER['PHP_SELF'].'">zurück</a></span>';
|
||||
drawRenameForm($renameId, $version);
|
||||
// Datei umbenennen
|
||||
echo '<h1>Datei umbennen</h1>';
|
||||
if (isset($_REQUEST['searching']) && $_REQUEST['searching'] == 'true')
|
||||
echo '<p><a href="'.$_SERVER['PHP_SELF'].'?searching=true&searchstring='.$_REQUEST['searchstring'].'&page='.$page.'&dpp='.$dpp.'">zurück</a></p>';
|
||||
else
|
||||
echo '<p><a href="'.$_SERVER['PHP_SELF'].'?kategorie_kurzbz='.$_REQUEST['kategorie_kurzbz'].'&page='.$page.'&dpp='.$dpp.'">zurück</a></p>';
|
||||
drawRenameForm($renameId, $version, $page, $dpp, $searching, $searchstring);
|
||||
}
|
||||
|
||||
/*if (isset($_REQUEST['searching']) && $_REQUEST['searching'] == 'true')
|
||||
{
|
||||
echo '<form action="'.$_SERVER['PHP_SELF'].'?searching=true&searchstring='.$searchstring.'&page='.$page.'&dpp='.$dpp.'" method="POST" enctype="multipart/form-data">';
|
||||
}
|
||||
else
|
||||
{
|
||||
echo '<form action="'.$_SERVER['PHP_SELF'].'?kategorie_kurzbz='.$kategorie_kurzbz.'&page='.$page.'&dpp='.$dpp.'" method="POST" enctype="multipart/form-data">';
|
||||
}*/
|
||||
|
||||
elseif($chkatID != '')
|
||||
{
|
||||
if(isset($_POST['action']) && ($_POST['action']=='chkat'))
|
||||
{
|
||||
// neue Kategorie speichern
|
||||
$dms = new dms();
|
||||
$dms->load($chkatID);
|
||||
$dms->kategorie_kurzbz = $_POST['kategoriez'];
|
||||
$dms->save();
|
||||
if (isset($_REQUEST['searching']) && $_REQUEST['searching'] == 'true')
|
||||
{
|
||||
echo '<meta http-equiv="refresh" content="0; url='.$_SERVER['PHP_SELF'].'?searching=true&searchstring='.$_REQUEST['searchstring'].'&page='.$page.'&dpp='.$dpp.'" />';
|
||||
}
|
||||
else
|
||||
{
|
||||
echo '<meta http-equiv="refresh" content="0; url='.$_SERVER['PHP_SELF'].'?kategorie_kurzbz='.$_REQUEST['kategorie_kurzbz'].'&page='.$page.'&dpp='.$dpp.'" />';
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
// Kategorieauswahl
|
||||
$dms = new dms();
|
||||
$dms->load($chkatID);
|
||||
echo '<h1>Kategorie von '.$dms->name.' ändern</h1>';
|
||||
echo '<span style="float:right";><a href="'.$_SERVER['PHP_SELF'].'">zurück</a></span>';
|
||||
drawChangeKategorie($chkatID, $page, $dpp);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
echo '<div align="left"><h1>Dokument Auswählen</h1></div><div align="right"><a href="admin_dms.php" target="_blank">Administration</a></div>
|
||||
<form action="'.$_SERVER['PHP_SELF'].'" method="POST">
|
||||
echo '<div align="left"><h1>Dokument Auswählen</h1></div><div align="right"></div>
|
||||
<form action="'.$_SERVER['PHP_SELF'].'?searching=true&searchstring='.$searchstring.'" method="POST">
|
||||
<input type="text" name="searchstring" value="'.$searchstring.'">
|
||||
<input type="submit" value="Suchen">
|
||||
<input type="submit" class="buttondesign" value="Suchen">
|
||||
</form>';
|
||||
|
||||
// Suche anzeigen
|
||||
echo' <table cellspacing=0>
|
||||
<tr>
|
||||
<td valign="top" nowrap style="border-right: 1px solid lightblue;border-top: 1px solid lightblue;padding-right:5px">
|
||||
<h3>Kategorie:</h3>
|
||||
<a href="admin_dms.php" target="_blank" style="position: absolute; margin-left:12px; margin-top:29px;">Administration</a>
|
||||
<h3>Kategorie:</h3>
|
||||
<hr><hr style="margin-top:20px;">
|
||||
';
|
||||
//Kategorien anzeigen
|
||||
$dms = new dms();
|
||||
@@ -455,18 +521,155 @@ else
|
||||
//Dokumente der Ausgewaehlten Kategorie laden und Anzeigen
|
||||
$dms = new dms();
|
||||
|
||||
if($searchstring!='')
|
||||
if($searchstring!='' || (isset($_GET['searching']) && $_GET['searching'] == true))
|
||||
{
|
||||
$dms->search($searchstring);
|
||||
$suche = true;
|
||||
$count = new dms();
|
||||
$count->search($searchstring);
|
||||
$anzahl = count($count->result);
|
||||
$dms->search($searchstring, $dpp, $page);
|
||||
$suche = true;
|
||||
|
||||
|
||||
if ($page != 0)
|
||||
{
|
||||
echo '<span style="float:left">'.$anzahl.' Elemente gefunden</span><span style="float:right">Seite '.$page.' von <a href="'.$_SERVER['PHP_SELF'].'?page='; if (is_int($anzahl/$dpp)) { echo (int)($anzahl/$dpp); } else { echo (int)(($anzahl/$dpp)+1); } echo '&dpp='.$dpp.'&searching=true&searchstring='.$searchstring.'">';
|
||||
if (is_int($anzahl/$dpp))
|
||||
{
|
||||
echo (int)($anzahl/$dpp).' </a></span>';
|
||||
}
|
||||
else
|
||||
{
|
||||
echo (int)(($anzahl/$dpp)+1).' </a></span>';
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
echo '<span align="center"><a href="'.$_SERVER['PHP_SELF'].'?page=1&dpp='.$dpp.'&searching=true&searchstring='.$searchstring.'">Seite 1</a></span>';
|
||||
}
|
||||
|
||||
|
||||
drawFilesList($dms->result);
|
||||
echo '
|
||||
<form action="'.$_SERVER['PHP_SELF'].'?page='; if($page-100 < 1){echo '1';}else{echo ($page-100);} if (isset($_GET['dpp'])) { echo '&dpp='.$_GET['dpp']; } echo '&searching=true&searchstring='.$searchstring.'" method="POST" style="float:left"><input type="submit" class="buttondesign" name="100zurück" value="100 zurück" style="margin-left:5px;"/><input type="hidden" name="searchstring" id="searchstring" value="'.$searchstring.'" /></form>
|
||||
<form action="'.$_SERVER['PHP_SELF'].'?page='; if($page-10 < 1){echo '1';}else{echo ($page-10);} if (isset($_GET['dpp'])) { echo '&dpp='.$_GET['dpp']; } echo '&searching=true&searchstring='.$searchstring.'" method="POST" style="float:left"><input type="submit" class="buttondesign" name="10zurück" value="10 zurück" style="margin-left:2px;"/><input type="hidden" name="searchstring" id="searchstring" value="'.$searchstring.'" /></form>
|
||||
<form action="'.$_SERVER['PHP_SELF'].'?page='; if($page-1 < 1){echo '1';}else{echo ($page-1);} if (isset($_GET['dpp'])) { echo '&dpp='.$_GET['dpp']; } echo '&searching=true&searchstring='.$searchstring.'" method="POST" style="float:left"><input type="submit" class="buttondesign" name="zurück" value="zurück" style="margin-left:2px;"/><input type="hidden" name="searchstring" id="searchstring" value="'.$searchstring.'" /></form>
|
||||
<form action="'.$_SERVER['PHP_SELF'].'?page=0&searching=true" method="POST" style="float:left"><input type=submit class="buttondesign" name="showAll" value="Alle anzeigen" style="margin-left:2px"/><input type="hidden" name="searchstring" id="searchstring" value="'.$searchstring.'" /></form>
|
||||
<form action="'.$_SERVER['PHP_SELF'].'?page='; if($page+1 < 1){echo '1';}else{echo ($page+1);} if (isset($_GET['dpp'])) { echo '&dpp='.$_GET['dpp']; } echo '&searching=true&searchstring='.$searchstring.'" method="POST" style="float:left"><input type="submit" class="buttondesign" name="weiter" value="weiter" style="margin-left:2px"/><input type="hidden" name="searchstring" id="searchstring" value="'.$searchstring.'" /></form>
|
||||
<form action="'.$_SERVER['PHP_SELF'].'?page='; if($page+10 < 1){echo '1';}else{echo ($page+10);} if (isset($_GET['dpp'])) { echo '&dpp='.$_GET['dpp']; } echo '&searching=true&searchstring='.$searchstring.'" method="POST" style="float:left"><input type="submit" class="buttondesign" name="10weiter" value="10 weiter" style="margin-left:2px"/><input type="hidden" name="searchstring" id="searchstring" value="'.$searchstring.'" /></form>
|
||||
<form action="'.$_SERVER['PHP_SELF'].'?page='; if($page+100 < 1){echo '1';}else{echo ($page+100);} if (isset($_GET['dpp'])) { echo '&dpp='.$_GET['dpp']; } echo '&searching=true&searchstring='.$searchstring.'" method="POST" style="float:left"><input type="submit" class="buttondesign" name="100weiter" value="100 weiter" style="margin-left:2px"/><input type="hidden" name="searchstring" id="searchstring" value="'.$searchstring.'" /></form>
|
||||
<form action="'.$_SERVER['PHP_SELF'].'?searching=true&searchstring='.$searchstring.'&page='.$page.' method="POST" style="float:right">
|
||||
<input type="hidden" name="page" id="page" value="'; if ($page == 0 || $page == '') { echo '1'; } else { echo $page; } echo '">
|
||||
<input type="hidden" name="searchstring" id="searchstring" value="'.$searchstring.'" />
|
||||
<input type="hidden" name="searching" id="searchstring" value="'.$searching.'" />
|
||||
<select name="dpp" onchange="this.form.submit();" style="margin-left:20px;">';
|
||||
if (isset($_GET['dpp']))
|
||||
{
|
||||
for ($i = 10; $i <= 100; $i = $i+10)
|
||||
{
|
||||
if ($_GET['dpp'] == $i)
|
||||
{
|
||||
echo '<option selected>'.$i.'</option>';
|
||||
}
|
||||
else
|
||||
{
|
||||
echo '<option>'.$i.'</option>';
|
||||
}
|
||||
}
|
||||
switch ($_GET['dpp'])
|
||||
{
|
||||
case 150: echo'<option selected>150</option><option>200</option><option>500</option><option>1000</option><option>2000</option>'; break;
|
||||
case 200: echo'<option>150</option><option selected>200</option><option>500</option><option>1000</option><option>2000</option>'; break;
|
||||
case 500: echo'<option>150</option><option>200</option><option selected>500</option><option>1000</option><option>2000</option>'; break;
|
||||
case 1000: echo'<option>150</option><option>200</option><option>500</option><option selected>1000</option><option>2000</option>'; break;
|
||||
case 2000: echo'<option>150</option><option>200</option><option>500</option><option>1000</option><option selected>2000</option>'; break;
|
||||
default: echo'<option>150</option><option>200</option><option>500</option><option>1000</option><option>2000</option>'; break;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
echo ' <option>10</option><option selected>20</option><option>30</option>
|
||||
<option>40</option><option>50</option><option>60</option>
|
||||
<option>70</option><option>80</option><option>90</option>
|
||||
<option>100</option><option>150</option><option>200</option>
|
||||
<option>500</option><option>1000</option><option>2000</option>';
|
||||
}
|
||||
echo'
|
||||
</select> Elemente pro Seite
|
||||
</form>';
|
||||
}
|
||||
else
|
||||
{
|
||||
$dms->getDocuments($kategorie_kurzbz);
|
||||
$count = new dms();
|
||||
$count->getDocuments($kategorie_kurzbz);
|
||||
$anzahl = count($count->result);
|
||||
$dms->getDocuments($kategorie_kurzbz, $dpp, $page);
|
||||
|
||||
if ($page != 0)
|
||||
{
|
||||
echo '<span style="float:left">'.$anzahl.' Elemente gefunden</span><span style="float:right">Seite '.$page.' von <a href="'.$_SERVER['PHP_SELF'].'?kategorie_kurzbz='.$kategorie_kurzbz.'&page='; if (is_int($anzahl/$dpp)) { echo (int)($anzahl/$dpp); } else { echo (int)(($anzahl/$dpp)+1); } echo '&dpp='.$dpp.'">';
|
||||
if (is_int($anzahl/$dpp))
|
||||
{
|
||||
echo (int)($anzahl/$dpp).' </a></span>';
|
||||
}
|
||||
else
|
||||
{
|
||||
echo (int)(($anzahl/$dpp)+1).' </a></span>';
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
echo '<span align="center"><a href="'.$_SERVER['PHP_SELF'].'?kategorie_kurzbz='.$kategorie_kurzbz.'&page=1&dpp='.$dpp.'">Seite 1</a></span>';
|
||||
}
|
||||
|
||||
drawFilesList($dms->result);
|
||||
echo '
|
||||
<form action="'.$_SERVER['PHP_SELF'].'?kategorie_kurzbz='.$kategorie_kurzbz.'&page='; if($page-100 < 1){echo '1';}else{echo ($page-100);} if (isset($_GET['dpp'])) { echo '&dpp='.$_GET['dpp']; } echo '" method="POST" style="float:left"><input type="submit" class="buttondesign" name="100zurück" value="100 zurück" style="margin-left:5px;"/></form>
|
||||
<form action="'.$_SERVER['PHP_SELF'].'?kategorie_kurzbz='.$kategorie_kurzbz.'&page='; if($page-10 < 1){echo '1';}else{echo ($page-10);} if (isset($_GET['dpp'])) { echo '&dpp='.$_GET['dpp']; } echo '" method="POST" style="float:left"><input type="submit" class="buttondesign" name="10zurück" value="10 zurück" style="margin-left:2px;"/></form>
|
||||
<form action="'.$_SERVER['PHP_SELF'].'?kategorie_kurzbz='.$kategorie_kurzbz.'&page='; if($page-1 < 1){echo '1';}else{echo ($page-1);} if (isset($_GET['dpp'])) { echo '&dpp='.$_GET['dpp']; } echo '" method="POST" style="float:left"><input type="submit" class="buttondesign" name="zurück" value="zurück" style="margin-left:2px;"/></form>
|
||||
<form action="'.$_SERVER['PHP_SELF'].'?kategorie_kurzbz='.$kategorie_kurzbz.'&page=0" method="POST" style="float:left"><input type=submit class="buttondesign" name="showAll" value="Alle anzeigen" style="margin-left:2px"/></form>
|
||||
<form action="'.$_SERVER['PHP_SELF'].'?kategorie_kurzbz='.$kategorie_kurzbz.'&page='; if($page+1 < 1){echo '1';}else{echo ($page+1);} if (isset($_GET['dpp'])) { echo '&dpp='.$_GET['dpp']; } echo '" method="POST" style="float:left"><input type="submit" class="buttondesign" name="weiter" value="weiter" style="margin-left:2px"/></form>
|
||||
<form action="'.$_SERVER['PHP_SELF'].'?kategorie_kurzbz='.$kategorie_kurzbz.'&page='; if($page+10 < 1){echo '1';}else{echo ($page+10);} if (isset($_GET['dpp'])) { echo '&dpp='.$_GET['dpp']; } echo '" method="POST" style="float:left"><input type="submit" class="buttondesign" name="10weiter" value="10 weiter" style="margin-left:2px"/></form>
|
||||
<form action="'.$_SERVER['PHP_SELF'].'?kategorie_kurzbz='.$kategorie_kurzbz.'&page='; if($page+100 < 1){echo '1';}else{echo ($page+100);} if (isset($_GET['dpp'])) { echo '&dpp='.$_GET['dpp']; } echo '" method="POST" style="float:left"><input type="submit" class="buttondesign" name="100weiter" value="100 weiter" style="margin-left:2px"/></form>
|
||||
<form action="'.$_SERVER['PHP_SELF'].'?kategorie_kurzbz='.$kategorie_kurzbz.'&page='.$page.' method="POST" style="float:right">
|
||||
<input type="hidden" name="kategorie_kurzbz" id="kategorie_kurzbz" value="'.$kategorie_kurzbz.'" /><input type="hidden" name="page" id="page" value="'; if ($page == 0 || $page == '') { echo '1'; } else { echo $page; } echo '">
|
||||
<select name="dpp" onchange="this.form.submit();" style="margin-left:20px;">';
|
||||
if (isset($_GET['dpp']))
|
||||
{
|
||||
for ($i = 10; $i <= 100; $i = $i+10)
|
||||
{
|
||||
if ($_GET['dpp'] == $i)
|
||||
{
|
||||
echo '<option selected>'.$i.'</option>';
|
||||
}
|
||||
else
|
||||
{
|
||||
echo '<option>'.$i.'</option>';
|
||||
}
|
||||
}
|
||||
switch ($_GET['dpp'])
|
||||
{
|
||||
case 150: echo'<option selected>150</option><option>200</option><option>500</option><option>1000</option><option>2000</option>'; break;
|
||||
case 200: echo'<option>150</option><option selected>200</option><option>500</option><option>1000</option><option>2000</option>'; break;
|
||||
case 500: echo'<option>150</option><option>200</option><option selected>500</option><option>1000</option><option>2000</option>'; break;
|
||||
case 1000: echo'<option>150</option><option>200</option><option>500</option><option selected>1000</option><option>2000</option>'; break;
|
||||
case 2000: echo'<option>150</option><option>200</option><option>500</option><option>1000</option><option selected>2000</option>'; break;
|
||||
default: echo'<option>150</option><option>200</option><option>500</option><option>1000</option><option>2000</option>'; break;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
echo ' <option>10</option><option selected>20</option><option>30</option>
|
||||
<option>40</option><option>50</option><option>60</option>
|
||||
<option>70</option><option>80</option><option>90</option>
|
||||
<option>100</option><option>150</option><option>200</option>
|
||||
<option>500</option><option>1000</option><option>2000</option>';
|
||||
}
|
||||
echo'
|
||||
</select> Elemente pro Seite
|
||||
</form>';
|
||||
}
|
||||
|
||||
//drawFilesThumb($dms->result);
|
||||
drawFilesList($dms->result);
|
||||
|
||||
|
||||
echo '
|
||||
</td>
|
||||
@@ -474,17 +677,27 @@ else
|
||||
</table>
|
||||
<br>
|
||||
<a href="#Upload" onclick="return upload()">Neue Datei hochladen</a>
|
||||
<br><br>
|
||||
<br>
|
||||
|
||||
<br><br>
|
||||
<div id="divupload">
|
||||
<hr>
|
||||
<span id="ueberschrift"></span>
|
||||
<form action="'.$_SERVER['PHP_SELF'].'" method="POST" enctype="multipart/form-data">
|
||||
<span id="ueberschrift"></span>';
|
||||
if (isset($_REQUEST['searching']) && $_REQUEST['searching'] == 'true')
|
||||
{
|
||||
echo '<form action="'.$_SERVER['PHP_SELF'].'?searching=true&searchstring='.$searchstring.'&page='.$page.'&dpp='.$dpp.'" method="POST" enctype="multipart/form-data">';
|
||||
}
|
||||
else
|
||||
{
|
||||
echo '<form action="'.$_SERVER['PHP_SELF'].'?kategorie_kurzbz='.$kategorie_kurzbz.'&page='.$page.'&dpp='.$dpp.'" method="POST" enctype="multipart/form-data">';
|
||||
}
|
||||
echo '
|
||||
<input type="hidden" name="kategorie_kurzbz" id="kategorie_kurzbz" value="'.$kategorie_kurzbz.'">
|
||||
<input type="hidden" name="dms_id" id="dms_id" value="">
|
||||
<table>
|
||||
<tr>
|
||||
<td>Beschreibung</td>
|
||||
<td><textarea name="beschreibung" rows="2" cols="80" style="font-size: small;"></textarea></td>
|
||||
<td><textarea name="beschreibung" id="beschreibung-textarea" rows="2" cols="80" style="font-size: small;"></textarea></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td></td>
|
||||
@@ -493,11 +706,11 @@ else
|
||||
</table>
|
||||
<input type="hidden" name="projekt_kurzbz" value="'.$projekt_kurzbz.'">
|
||||
<input type="hidden" name="projektphase_id" value="'.$projektphase_id.'">
|
||||
<input type="submit" name="fileupload" value="Upload">
|
||||
<input type="submit" class="buttondesign" name="fileupload" value="Upload">
|
||||
</form>
|
||||
<br>';
|
||||
drawFilesFromImport();
|
||||
echo'
|
||||
echo'
|
||||
</div>';
|
||||
if($openupload)
|
||||
{
|
||||
@@ -520,7 +733,6 @@ else
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
/************ FUNCTIONS ********************/
|
||||
|
||||
@@ -540,7 +752,7 @@ function drawAllVersions($id)
|
||||
$("#t3").tablesorter(
|
||||
{
|
||||
sortList: [[0,0]], headers: {6:{sorter:false}},
|
||||
widgets: ["zebra"]
|
||||
widgets: ["zebra"],
|
||||
});
|
||||
});
|
||||
</script>
|
||||
@@ -656,7 +868,7 @@ function drawKategorieMenue($rows)
|
||||
<tr>
|
||||
<td class="tdwidth10" nowrap> </td>
|
||||
<td class="tdwrap">
|
||||
<a href="'.$_SERVER['PHP_SELF'].'?kategorie_kurzbz='.$row->kategorie_kurzbz.'" class="MenuItem" onClick="js_toggle_container(\''.$row->kategorie_kurzbz.'\');"><img src="../skin/images/menu_item.gif" alt="menu item" width="7" height="9"> <span class="'.$class.'">'.$row->bezeichnung.'</span></a>
|
||||
<a href="'.$_SERVER['PHP_SELF'].'?kategorie_kurzbz='.$row->kategorie_kurzbz.'" class="MenuItem" onClick="js_toggle_container(\''.$row->kategorie_kurzbz.'\');"> <span class="'.$class.'">'.$row->bezeichnung.'</span></a>
|
||||
'.$locked.'
|
||||
<table class="tabcontent" id="'.$row->kategorie_kurzbz.'" style="display: none;">';
|
||||
drawKategorieMenue($dms->result);
|
||||
@@ -669,7 +881,7 @@ function drawKategorieMenue($rows)
|
||||
echo '
|
||||
<tr>
|
||||
<td class="tdwidth10" nowrap> </td>
|
||||
<td class="tdwrap"><a id="'.$row->kategorie_kurzbz.'" href="'.$_SERVER['PHP_SELF'].'?kategorie_kurzbz='.$row->kategorie_kurzbz.'" class="Item"><img src="../skin/images/menu_item.gif" alt="menu item" width="7" height="9"> <span class="'.$class.'">'.$row->bezeichnung.'</span></a>'.$locked.'</td>
|
||||
<td class="tdwrap"><a id="'.$row->kategorie_kurzbz.'" href="'.$_SERVER['PHP_SELF'].'?kategorie_kurzbz='.$row->kategorie_kurzbz.'" class="Item"> <span class="'.$class.'">'.$row->bezeichnung.'</span></a>'.$locked.'</td>
|
||||
</tr>';
|
||||
}
|
||||
|
||||
@@ -750,15 +962,20 @@ function drawFilesList($rows)
|
||||
<a href="id://'.$row->dms_id.'/Auswahl" onclick="'.$newerVersionAlert.' FileBrowserDialog.mySubmit('.$row->dms_id.'); return false;" style="font-size: small" title="'.$row->beschreibung.'">
|
||||
'.$newVersion.' '.$row->name.'</a>
|
||||
</td>';
|
||||
echo '<td style="padding: 1px;">';
|
||||
$datum = new datum();
|
||||
|
||||
echo '<td style="padding: 1px;" title="'.$datum->formatDatum($row->insertamum,'d.m.Y H:m').' von '.$row->insertvon.'">';
|
||||
echo $row->version;
|
||||
echo '</td>';
|
||||
|
||||
|
||||
$kategorie = new dms();
|
||||
$kategorie->loadKategorie($row->kategorie_kurzbz);
|
||||
|
||||
// zeige bei suche auch kategorie an
|
||||
if($suche == true)
|
||||
{
|
||||
echo '<td style="padding: 1px;">';
|
||||
echo $row->kategorie_kurzbz;
|
||||
echo '<a href="'.$_SERVER['PHP_SELF'].'?kategorie_kurzbz='.$row->kategorie_kurzbz.'">'.$kategorie->bezeichnung.'</a>';
|
||||
echo '</td>';
|
||||
}
|
||||
echo'<td style="padding: 1px;">';
|
||||
@@ -769,10 +986,30 @@ function drawFilesList($rows)
|
||||
<ul>
|
||||
<li><a href="id://'.$row->dms_id.'/Auswahl" onclick="'.$newerVersionAlert.' FileBrowserDialog.mySubmit('.$row->dms_id.');" style="font-size:small">Auswählen</a></li>
|
||||
<li><a href="dms.php?id='.$row->dms_id.'&version='.$row->version.'" style="font-size:small" target="_blank">Herunterladen</a></li>
|
||||
<li><a href="id://'.$row->dms_id.'/Upload" onclick="return upload(\''.$row->dms_id.'\',\''.$row->name.'\')" style="font-size:small">Neue Version hochladen</a></li>
|
||||
<li><a href="'.$_SERVER['PHP_SELF'].'?versionid='.$row->dms_id.'" style="font-size:small" >Alle Versionen anzeigen</a></li>
|
||||
<li><a href="'.$_SERVER['PHP_SELF'].'?renameid='.$row->dms_id.'&version='.$row->version.'&kategorie_kurzbz='.$row->kategorie_kurzbz.'" style="font-size:small" >Datei umbenennen</a></li>
|
||||
<li><a href="'.$_SERVER['PHP_SELF'].'?kategorie_kurzbz='.$row->kategorie_kurzbz.'&dms_id='.$row->dms_id.'&delete" onclick="return conf_del()" style="font-size:small" >Löschen</a></li>
|
||||
<li><a href="id://'.$row->dms_id.'/Upload" onclick=" updateBeschreibung(\'';
|
||||
$beschreibungstext = $row->beschreibung;
|
||||
$beschreibungstext = str_replace("'","4nführungsze1ch3n",$beschreibungstext);
|
||||
$beschreibungstext = str_replace('"',"D4n7ührung",$beschreibungstext);
|
||||
$beschreibungstext = str_replace("\\","6Sl4sh",$beschreibungstext);
|
||||
$beschreibungstext = str_replace("\r\n","Ze1l3numxbr",$beschreibungstext);
|
||||
echo $beschreibungstext.'\'); return upload(\''.$row->dms_id.'\',\''.$row->name.'\');" style="font-size:small">Neue Version hochladen</a></li>';
|
||||
if (isset($_REQUEST['searching']) && $_REQUEST['searching'] == 'true')
|
||||
{
|
||||
echo '<li><a href="'.$_SERVER['PHP_SELF'].'?versionid='.$row->dms_id.'&searching=true&'; if (isset($_REQUEST['searchstring'])) echo 'searchstring='.$_REQUEST['searchstring'].'&page='; if (isset($_REQUEST['page'])) { echo $_REQUEST['page']; } else { echo '1'; } echo '&dpp='; if (isset($_REQUEST['dpp'])) { echo $_REQUEST['dpp']; } else { echo '20'; } echo '" style="font-size:small" >Alle Versionen anzeigen</a></li>';
|
||||
echo '<li><a href="'.$_SERVER['PHP_SELF'].'?chkatID='.$row->dms_id.'&page='; if (isset($_REQUEST['page'])) { echo $_REQUEST['page']; } else { echo '1'; } echo '&dpp='; if (isset($_REQUEST['dpp'])) { echo $_REQUEST['dpp']; } else { echo '20'; } echo '&searching=true&searchstring='.$_REQUEST['searchstring'].'" style="font-size:small" >Kategorie ändern</a></li>';
|
||||
echo '<li><a href="'.$_SERVER['PHP_SELF'].'?renameid='.$row->dms_id.'&version='.$row->version.'&searching=true&'; if (isset($_REQUEST['searchstring'])) echo 'searchstring='.$_REQUEST['searchstring'].'&page='; if (isset($_REQUEST['page'])) { echo $_REQUEST['page']; } else { echo '1'; } echo '&dpp='; if (isset($_REQUEST['dpp'])) { echo $_REQUEST['dpp']; } else { echo '20'; } echo '" style="font-size:small" >Datei umbenennen</a></li>';
|
||||
echo '<li><a href="'.$_SERVER['PHP_SELF'].'?searching=true&'; if (isset($_REQUEST['searchstring'])) echo 'searchstring='.$_REQUEST['searchstring'].'&dms_id='.$row->dms_id.'&delete" onclick="return conf_del()" style="font-size:small" >Löschen</a></li>';
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
echo '<li><a href="'.$_SERVER['PHP_SELF'].'?versionid='.$row->dms_id.'&version='.$row->version.'&kategorie_kurzbz='.$row->kategorie_kurzbz.'&page='; if (isset($_REQUEST['page'])) { echo $_REQUEST['page']; } else { echo '1'; } echo '&dpp='; if (isset($_REQUEST['dpp'])) { echo $_REQUEST['dpp']; } else { echo '20'; } echo '" style="font-size:small" >Alle Versionen anzeigen</a></li>';
|
||||
echo '<li><a href="'.$_SERVER['PHP_SELF'].'?chkatID='.$row->dms_id.'&page='; if (isset($_REQUEST['page'])) { echo $_REQUEST['page']; } else { echo '1'; } echo '&dpp='; if (isset($_REQUEST['dpp'])) { echo $_REQUEST['dpp']; } else { echo '20'; } echo '" style="font-size:small" >Kategorie ändern</a></li>';
|
||||
echo '<li><a href="'.$_SERVER['PHP_SELF'].'?renameid='.$row->dms_id.'&version='.$row->version.'&kategorie_kurzbz='.$row->kategorie_kurzbz.'&page='; if (isset($_REQUEST['page'])) { echo $_REQUEST['page']; } else { echo '1'; } echo '&dpp='; if (isset($_REQUEST['dpp'])) { echo $_REQUEST['dpp']; } else { echo '20'; } echo '" style="font-size:small" >Datei umbenennen</a></li>';
|
||||
echo '<li><a href="'.$_SERVER['PHP_SELF'].'?kategorie_kurzbz='.$row->kategorie_kurzbz.'&dms_id='.$row->dms_id.'&delete" onclick="return conf_del()" style="font-size:small" >Löschen</a></li>';
|
||||
|
||||
}
|
||||
echo '
|
||||
</ul>
|
||||
</li>
|
||||
</ul>';
|
||||
@@ -792,14 +1029,22 @@ function drawFilesList($rows)
|
||||
* @param $dms_id ID des Dokuments
|
||||
* @param $version Versionsnummer des Dokuments
|
||||
*/
|
||||
function drawRenameForm($dms_id, $version)
|
||||
function drawRenameForm($dms_id, $version, $page = NULL, $dpp = NULL, $searching, $searchstring)
|
||||
{
|
||||
global $kategorie_kurzbz;
|
||||
|
||||
$dms = new dms();
|
||||
if($dms->load($dms_id, $version))
|
||||
{
|
||||
echo '<form action="'.$_SERVER['PHP_SELF'].'?kategorie_kurzbz='.$kategorie_kurzbz.'" method="POST">
|
||||
if ($searching == 'true')
|
||||
{
|
||||
echo '<form action="'.$_SERVER['PHP_SELF'].'?searching=true&searchstring='.$searchstring; if (!is_null($page)) echo '&page='.$page; if (!is_null($dpp)) echo '&dpp='.$dpp; echo '" method="POST">';
|
||||
}
|
||||
else
|
||||
{
|
||||
echo '<form action="'.$_SERVER['PHP_SELF'].'?kategorie_kurzbz='.$kategorie_kurzbz; if (!is_null($page)) echo '&page='.$page; if (!is_null($dpp)) echo '&dpp='.$dpp; echo '" method="POST">';
|
||||
}
|
||||
echo '
|
||||
<table>
|
||||
<tr>
|
||||
<td>Dateiname:</td>
|
||||
@@ -812,8 +1057,8 @@ function drawRenameForm($dms_id, $version)
|
||||
</table>
|
||||
<input type="hidden" name="action" value="rename">
|
||||
<input type="hidden" name="dms_id" value="'.$dms_id.'">
|
||||
<input type="hidden" name="version" value="'.$version.'">
|
||||
<input type="submit" name="submit" value="Umbenennen">
|
||||
<input type="hidden" name="version" value="'.$version.'">';
|
||||
echo '<input type="submit" class="buttondesign" name="submit" value="Umbenennen">
|
||||
</form>';
|
||||
}
|
||||
else
|
||||
@@ -822,6 +1067,45 @@ function drawRenameForm($dms_id, $version)
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Erstellt das Formular zum Ändern der Kategorie von Dokumenten
|
||||
* @param $dms_id ID des Dokuments
|
||||
*/
|
||||
function drawChangeKategorie($dms_id, $page = NULL, $dpp = NULL) {
|
||||
$dms = new dms;
|
||||
$dms->load($dms_id);
|
||||
|
||||
$allKategorien = new dms();
|
||||
$allKategorien->getAllKategories();
|
||||
|
||||
if (isset($_REQUEST['searching']) && $_REQUEST['searching'] == 'true')
|
||||
{
|
||||
echo '<form action="'.$_SERVER['PHP_SELF'].'?chkatID='.$dms_id.'&searching=true&searchstring='.$_REQUEST['searchstring']; if (!is_null($page)) echo '&page='.$page; if (!is_null($dpp)) echo '&dpp='.$dpp; echo '" method="POST">';
|
||||
}
|
||||
else
|
||||
{
|
||||
echo '<form action="'.$_SERVER['PHP_SELF'].'?chkatID='.$dms_id.'&kategorie_kurzbz='.$dms->kategorie_kurzbz; if (!is_null($page)) echo '&page='.$page; if (!is_null($dpp)) echo '&dpp='.$dpp; echo '" method="POST">';
|
||||
}
|
||||
echo '
|
||||
<select name="kategoriez">
|
||||
<option value="auswahl">-- Bitte Auswählen --</option>';
|
||||
foreach($allKategorien->result as $kategorienResult)
|
||||
{
|
||||
$selected ='';
|
||||
if($kategorienResult->kategorie_kurzbz == $dms->kategorie_kurzbz)
|
||||
$selected='selected';
|
||||
|
||||
echo '<option '.$selected.' value="'.$kategorienResult->kategorie_kurzbz.'">'.$kategorienResult->bezeichnung.' ['.$kategorienResult->kategorie_kurzbz.']</option>';
|
||||
}
|
||||
|
||||
echo '</select>
|
||||
<input type="hidden" name="action" value="chkat">
|
||||
<input type="hidden" name="dms_id" value="'.$dms_id.'">';
|
||||
if (!is_null($page)) echo '<input type="hidden" name="page" value="'.$page.'">';
|
||||
if (!is_null($dpp)) echo '<input type="hidden" name="dpp" value="'.$dpp.'">';
|
||||
echo '<input type="submit" class="buttondesign" name="chkat_save" value="Speichern"></form>';
|
||||
}
|
||||
|
||||
?>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,27 @@
|
||||
{
|
||||
"require": {
|
||||
"components/jquery": "2.1.4",
|
||||
"components/angular.js": "1.3.16",
|
||||
"components/bootstrap": "3.3.5"
|
||||
|
||||
},
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
"_comment":
|
||||
{
|
||||
"um GIT-Repos zu inkludieren, muss die url zuerst zu 'repositories' hinzugefügt werden. Anschließend kann es bei 'require' wie üblich mit angegeben werden:":{
|
||||
"repositories": [
|
||||
{"type": "git", "url": "https://github.com/BEISPIEL/BEISPIEL.git"}
|
||||
],
|
||||
"require": {
|
||||
"BEISPIEL/BEISPIEL": "x.x.x"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
+433
@@ -0,0 +1,433 @@
|
||||
{
|
||||
"_readme": [
|
||||
"This file locks the dependencies of your project to a known state",
|
||||
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file",
|
||||
"This file is @generated automatically"
|
||||
],
|
||||
"hash": "6f613635b131d66244b30d0ee702a36b",
|
||||
"content-hash": "60c05e7e5b04118d51a1bc59c4877b8d",
|
||||
"packages": [
|
||||
{
|
||||
"name": "components/angular.js",
|
||||
"version": "1.3.16",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/components/angular.js.git",
|
||||
"reference": "84d0420402cf02b559d210b7286bd9a30655ca33"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/components/angular.js/zipball/84d0420402cf02b559d210b7286bd9a30655ca33",
|
||||
"reference": "84d0420402cf02b559d210b7286bd9a30655ca33",
|
||||
"shasum": ""
|
||||
},
|
||||
"type": "component",
|
||||
"extra": {
|
||||
"component": {
|
||||
"name": "angularjs",
|
||||
"scripts": [
|
||||
"angular.js"
|
||||
],
|
||||
"files": [
|
||||
"angular-animate.js",
|
||||
"angular-animate.min.js",
|
||||
"angular-animate.min.js.map",
|
||||
"angular-cookies.js",
|
||||
"angular-cookies.min.js",
|
||||
"angular-cookies.min.js.map",
|
||||
"angular-csp.css",
|
||||
"angular-loader.js",
|
||||
"angular-loader.min.js",
|
||||
"angular-loader.min.js.map",
|
||||
"angular-mocks.js",
|
||||
"angular-resource.js",
|
||||
"angular-resource.min.js",
|
||||
"angular-resource.min.js.map",
|
||||
"angular-route.js",
|
||||
"angular-route.min.js",
|
||||
"angular-route.min.js.map",
|
||||
"angular-sanitize.js",
|
||||
"angular-sanitize.min.js",
|
||||
"angular-sanitize.min.js.map",
|
||||
"angular-scenario.js",
|
||||
"angular-touch.js",
|
||||
"angular-touch.min.js",
|
||||
"angular-touch.min.js.map",
|
||||
"angular.min.js",
|
||||
"angular.min.js.map",
|
||||
"i18n/angular-locale_af-na.js",
|
||||
"i18n/angular-locale_af-za.js",
|
||||
"i18n/angular-locale_af.js",
|
||||
"i18n/angular-locale_am-et.js",
|
||||
"i18n/angular-locale_am.js",
|
||||
"i18n/angular-locale_ar-001.js",
|
||||
"i18n/angular-locale_ar-ae.js",
|
||||
"i18n/angular-locale_ar-bh.js",
|
||||
"i18n/angular-locale_ar-dz.js",
|
||||
"i18n/angular-locale_ar-eg.js",
|
||||
"i18n/angular-locale_ar-iq.js",
|
||||
"i18n/angular-locale_ar-jo.js",
|
||||
"i18n/angular-locale_ar-kw.js",
|
||||
"i18n/angular-locale_ar-lb.js",
|
||||
"i18n/angular-locale_ar-ly.js",
|
||||
"i18n/angular-locale_ar-ma.js",
|
||||
"i18n/angular-locale_ar-om.js",
|
||||
"i18n/angular-locale_ar-qa.js",
|
||||
"i18n/angular-locale_ar-sa.js",
|
||||
"i18n/angular-locale_ar-sd.js",
|
||||
"i18n/angular-locale_ar-sy.js",
|
||||
"i18n/angular-locale_ar-tn.js",
|
||||
"i18n/angular-locale_ar-ye.js",
|
||||
"i18n/angular-locale_ar.js",
|
||||
"i18n/angular-locale_bg-bg.js",
|
||||
"i18n/angular-locale_bg.js",
|
||||
"i18n/angular-locale_bn-bd.js",
|
||||
"i18n/angular-locale_bn-in.js",
|
||||
"i18n/angular-locale_bn.js",
|
||||
"i18n/angular-locale_ca-ad.js",
|
||||
"i18n/angular-locale_ca-es.js",
|
||||
"i18n/angular-locale_ca.js",
|
||||
"i18n/angular-locale_cs-cz.js",
|
||||
"i18n/angular-locale_cs.js",
|
||||
"i18n/angular-locale_da-dk.js",
|
||||
"i18n/angular-locale_da.js",
|
||||
"i18n/angular-locale_de-at.js",
|
||||
"i18n/angular-locale_de-be.js",
|
||||
"i18n/angular-locale_de-ch.js",
|
||||
"i18n/angular-locale_de-de.js",
|
||||
"i18n/angular-locale_de-li.js",
|
||||
"i18n/angular-locale_de-lu.js",
|
||||
"i18n/angular-locale_de.js",
|
||||
"i18n/angular-locale_el-cy.js",
|
||||
"i18n/angular-locale_el-gr.js",
|
||||
"i18n/angular-locale_el.js",
|
||||
"i18n/angular-locale_en-as.js",
|
||||
"i18n/angular-locale_en-au.js",
|
||||
"i18n/angular-locale_en-bb.js",
|
||||
"i18n/angular-locale_en-be.js",
|
||||
"i18n/angular-locale_en-bm.js",
|
||||
"i18n/angular-locale_en-bw.js",
|
||||
"i18n/angular-locale_en-bz.js",
|
||||
"i18n/angular-locale_en-ca.js",
|
||||
"i18n/angular-locale_en-dsrt-us.js",
|
||||
"i18n/angular-locale_en-dsrt.js",
|
||||
"i18n/angular-locale_en-fm.js",
|
||||
"i18n/angular-locale_en-gb.js",
|
||||
"i18n/angular-locale_en-gu.js",
|
||||
"i18n/angular-locale_en-gy.js",
|
||||
"i18n/angular-locale_en-hk.js",
|
||||
"i18n/angular-locale_en-ie.js",
|
||||
"i18n/angular-locale_en-in.js",
|
||||
"i18n/angular-locale_en-iso.js",
|
||||
"i18n/angular-locale_en-jm.js",
|
||||
"i18n/angular-locale_en-mh.js",
|
||||
"i18n/angular-locale_en-mp.js",
|
||||
"i18n/angular-locale_en-mt.js",
|
||||
"i18n/angular-locale_en-mu.js",
|
||||
"i18n/angular-locale_en-na.js",
|
||||
"i18n/angular-locale_en-nz.js",
|
||||
"i18n/angular-locale_en-ph.js",
|
||||
"i18n/angular-locale_en-pk.js",
|
||||
"i18n/angular-locale_en-pr.js",
|
||||
"i18n/angular-locale_en-pw.js",
|
||||
"i18n/angular-locale_en-sg.js",
|
||||
"i18n/angular-locale_en-tc.js",
|
||||
"i18n/angular-locale_en-tt.js",
|
||||
"i18n/angular-locale_en-um.js",
|
||||
"i18n/angular-locale_en-us.js",
|
||||
"i18n/angular-locale_en-vg.js",
|
||||
"i18n/angular-locale_en-vi.js",
|
||||
"i18n/angular-locale_en-za.js",
|
||||
"i18n/angular-locale_en-zw.js",
|
||||
"i18n/angular-locale_en.js",
|
||||
"i18n/angular-locale_es-419.js",
|
||||
"i18n/angular-locale_es-ar.js",
|
||||
"i18n/angular-locale_es-bo.js",
|
||||
"i18n/angular-locale_es-cl.js",
|
||||
"i18n/angular-locale_es-co.js",
|
||||
"i18n/angular-locale_es-cr.js",
|
||||
"i18n/angular-locale_es-do.js",
|
||||
"i18n/angular-locale_es-ea.js",
|
||||
"i18n/angular-locale_es-ec.js",
|
||||
"i18n/angular-locale_es-es.js",
|
||||
"i18n/angular-locale_es-gq.js",
|
||||
"i18n/angular-locale_es-gt.js",
|
||||
"i18n/angular-locale_es-hn.js",
|
||||
"i18n/angular-locale_es-ic.js",
|
||||
"i18n/angular-locale_es-mx.js",
|
||||
"i18n/angular-locale_es-ni.js",
|
||||
"i18n/angular-locale_es-pa.js",
|
||||
"i18n/angular-locale_es-pe.js",
|
||||
"i18n/angular-locale_es-pr.js",
|
||||
"i18n/angular-locale_es-py.js",
|
||||
"i18n/angular-locale_es-sv.js",
|
||||
"i18n/angular-locale_es-us.js",
|
||||
"i18n/angular-locale_es-uy.js",
|
||||
"i18n/angular-locale_es-ve.js",
|
||||
"i18n/angular-locale_es.js",
|
||||
"i18n/angular-locale_et-ee.js",
|
||||
"i18n/angular-locale_et.js",
|
||||
"i18n/angular-locale_eu-es.js",
|
||||
"i18n/angular-locale_eu.js",
|
||||
"i18n/angular-locale_fa-af.js",
|
||||
"i18n/angular-locale_fa-ir.js",
|
||||
"i18n/angular-locale_fa.js",
|
||||
"i18n/angular-locale_fi-fi.js",
|
||||
"i18n/angular-locale_fi.js",
|
||||
"i18n/angular-locale_fil-ph.js",
|
||||
"i18n/angular-locale_fil.js",
|
||||
"i18n/angular-locale_fr-be.js",
|
||||
"i18n/angular-locale_fr-bf.js",
|
||||
"i18n/angular-locale_fr-bi.js",
|
||||
"i18n/angular-locale_fr-bj.js",
|
||||
"i18n/angular-locale_fr-bl.js",
|
||||
"i18n/angular-locale_fr-ca.js",
|
||||
"i18n/angular-locale_fr-cd.js",
|
||||
"i18n/angular-locale_fr-cf.js",
|
||||
"i18n/angular-locale_fr-cg.js",
|
||||
"i18n/angular-locale_fr-ch.js",
|
||||
"i18n/angular-locale_fr-ci.js",
|
||||
"i18n/angular-locale_fr-cm.js",
|
||||
"i18n/angular-locale_fr-dj.js",
|
||||
"i18n/angular-locale_fr-fr.js",
|
||||
"i18n/angular-locale_fr-ga.js",
|
||||
"i18n/angular-locale_fr-gf.js",
|
||||
"i18n/angular-locale_fr-gn.js",
|
||||
"i18n/angular-locale_fr-gp.js",
|
||||
"i18n/angular-locale_fr-gq.js",
|
||||
"i18n/angular-locale_fr-km.js",
|
||||
"i18n/angular-locale_fr-lu.js",
|
||||
"i18n/angular-locale_fr-mc.js",
|
||||
"i18n/angular-locale_fr-mf.js",
|
||||
"i18n/angular-locale_fr-mg.js",
|
||||
"i18n/angular-locale_fr-ml.js",
|
||||
"i18n/angular-locale_fr-mq.js",
|
||||
"i18n/angular-locale_fr-ne.js",
|
||||
"i18n/angular-locale_fr-re.js",
|
||||
"i18n/angular-locale_fr-yt.js",
|
||||
"i18n/angular-locale_fr.js",
|
||||
"i18n/angular-locale_gl-es.js",
|
||||
"i18n/angular-locale_gl.js",
|
||||
"i18n/angular-locale_gsw-ch.js",
|
||||
"i18n/angular-locale_gsw.js",
|
||||
"i18n/angular-locale_gu-in.js",
|
||||
"i18n/angular-locale_gu.js",
|
||||
"i18n/angular-locale_he-il.js",
|
||||
"i18n/angular-locale_he.js",
|
||||
"i18n/angular-locale_hi-in.js",
|
||||
"i18n/angular-locale_hi.js",
|
||||
"i18n/angular-locale_hr-hr.js",
|
||||
"i18n/angular-locale_hr.js",
|
||||
"i18n/angular-locale_hu-hu.js",
|
||||
"i18n/angular-locale_hu.js",
|
||||
"i18n/angular-locale_id-id.js",
|
||||
"i18n/angular-locale_id.js",
|
||||
"i18n/angular-locale_in.js",
|
||||
"i18n/angular-locale_is-is.js",
|
||||
"i18n/angular-locale_is.js",
|
||||
"i18n/angular-locale_it-it.js",
|
||||
"i18n/angular-locale_it-sm.js",
|
||||
"i18n/angular-locale_it.js",
|
||||
"i18n/angular-locale_iw.js",
|
||||
"i18n/angular-locale_ja-jp.js",
|
||||
"i18n/angular-locale_ja.js",
|
||||
"i18n/angular-locale_kn-in.js",
|
||||
"i18n/angular-locale_kn.js",
|
||||
"i18n/angular-locale_ko-kr.js",
|
||||
"i18n/angular-locale_ko.js",
|
||||
"i18n/angular-locale_ln-cd.js",
|
||||
"i18n/angular-locale_ln.js",
|
||||
"i18n/angular-locale_lt-lt.js",
|
||||
"i18n/angular-locale_lt.js",
|
||||
"i18n/angular-locale_lv-lv.js",
|
||||
"i18n/angular-locale_lv.js",
|
||||
"i18n/angular-locale_ml-in.js",
|
||||
"i18n/angular-locale_ml.js",
|
||||
"i18n/angular-locale_mr-in.js",
|
||||
"i18n/angular-locale_mr.js",
|
||||
"i18n/angular-locale_ms-my.js",
|
||||
"i18n/angular-locale_ms.js",
|
||||
"i18n/angular-locale_mt-mt.js",
|
||||
"i18n/angular-locale_mt.js",
|
||||
"i18n/angular-locale_nl-cw.js",
|
||||
"i18n/angular-locale_nl-nl.js",
|
||||
"i18n/angular-locale_nl-sx.js",
|
||||
"i18n/angular-locale_nl.js",
|
||||
"i18n/angular-locale_no.js",
|
||||
"i18n/angular-locale_or-in.js",
|
||||
"i18n/angular-locale_or.js",
|
||||
"i18n/angular-locale_pl-pl.js",
|
||||
"i18n/angular-locale_pl.js",
|
||||
"i18n/angular-locale_pt-br.js",
|
||||
"i18n/angular-locale_pt-pt.js",
|
||||
"i18n/angular-locale_pt.js",
|
||||
"i18n/angular-locale_ro-ro.js",
|
||||
"i18n/angular-locale_ro.js",
|
||||
"i18n/angular-locale_ru-ru.js",
|
||||
"i18n/angular-locale_ru.js",
|
||||
"i18n/angular-locale_sk-sk.js",
|
||||
"i18n/angular-locale_sk.js",
|
||||
"i18n/angular-locale_sl-si.js",
|
||||
"i18n/angular-locale_sl.js",
|
||||
"i18n/angular-locale_sq-al.js",
|
||||
"i18n/angular-locale_sq.js",
|
||||
"i18n/angular-locale_sr-cyrl-rs.js",
|
||||
"i18n/angular-locale_sr-latn-rs.js",
|
||||
"i18n/angular-locale_sr.js",
|
||||
"i18n/angular-locale_sv-se.js",
|
||||
"i18n/angular-locale_sv.js",
|
||||
"i18n/angular-locale_sw-tz.js",
|
||||
"i18n/angular-locale_sw.js",
|
||||
"i18n/angular-locale_ta-in.js",
|
||||
"i18n/angular-locale_ta.js",
|
||||
"i18n/angular-locale_te-in.js",
|
||||
"i18n/angular-locale_te.js",
|
||||
"i18n/angular-locale_th-th.js",
|
||||
"i18n/angular-locale_th.js",
|
||||
"i18n/angular-locale_tl.js",
|
||||
"i18n/angular-locale_tr-tr.js",
|
||||
"i18n/angular-locale_tr.js",
|
||||
"i18n/angular-locale_uk-ua.js",
|
||||
"i18n/angular-locale_uk.js",
|
||||
"i18n/angular-locale_ur-pk.js",
|
||||
"i18n/angular-locale_ur.js",
|
||||
"i18n/angular-locale_vi-vn.js",
|
||||
"i18n/angular-locale_vi.js",
|
||||
"i18n/angular-locale_zh-cn.js",
|
||||
"i18n/angular-locale_zh-hans-cn.js",
|
||||
"i18n/angular-locale_zh-hk.js",
|
||||
"i18n/angular-locale_zh-tw.js",
|
||||
"i18n/angular-locale_zh.js",
|
||||
"i18n/angular-locale_zu-za.js",
|
||||
"i18n/angular-locale_zu.js"
|
||||
]
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
"description": "Shim repository for Angular.js",
|
||||
"homepage": "http://angularjs.org",
|
||||
"time": "2015-06-07 20:10:38"
|
||||
},
|
||||
{
|
||||
"name": "components/bootstrap",
|
||||
"version": "3.3.5",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/components/bootstrap.git",
|
||||
"reference": "d71c2a234c61f53f1109a26ba8155902a51f8ca5"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/components/bootstrap/zipball/d71c2a234c61f53f1109a26ba8155902a51f8ca5",
|
||||
"reference": "d71c2a234c61f53f1109a26ba8155902a51f8ca5",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"components/jquery": ">=1.9.1 <3.0"
|
||||
},
|
||||
"suggest": {
|
||||
"components/bootstrap-default": "Provide a theme for Bootstrap as components/bootstrap only provides the CSS as file assets"
|
||||
},
|
||||
"type": "component",
|
||||
"extra": {
|
||||
"component": {
|
||||
"scripts": [
|
||||
"js/bootstrap.js"
|
||||
],
|
||||
"files": [
|
||||
"js/*.js",
|
||||
"css/*.css",
|
||||
"css/*.map",
|
||||
"fonts/*",
|
||||
"less/mixins/*.less",
|
||||
"less/*.less"
|
||||
],
|
||||
"shim": {
|
||||
"deps": [
|
||||
"jquery"
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Jacob Thornton",
|
||||
"email": "jacobthornton@gmail.com"
|
||||
},
|
||||
{
|
||||
"name": "Mark Otto",
|
||||
"email": "markdotto@gmail.com"
|
||||
}
|
||||
],
|
||||
"description": "The most popular front-end framework for developing responsive, mobile first projects on the web.",
|
||||
"homepage": "http://getbootstrap.com",
|
||||
"keywords": [
|
||||
"css",
|
||||
"framework",
|
||||
"front-end",
|
||||
"less",
|
||||
"mobile-first",
|
||||
"responsive",
|
||||
"web"
|
||||
],
|
||||
"time": "2015-06-17 06:08:09"
|
||||
},
|
||||
{
|
||||
"name": "components/jquery",
|
||||
"version": "2.1.4",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/components/jquery.git",
|
||||
"reference": "7b1d1104656a092423fbfba13c5920e9bbba290c"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/components/jquery/zipball/7b1d1104656a092423fbfba13c5920e9bbba290c",
|
||||
"reference": "7b1d1104656a092423fbfba13c5920e9bbba290c",
|
||||
"shasum": ""
|
||||
},
|
||||
"type": "component",
|
||||
"extra": {
|
||||
"component": {
|
||||
"scripts": [
|
||||
"jquery.js"
|
||||
],
|
||||
"files": [
|
||||
"jquery.min.js",
|
||||
"jquery.min.map",
|
||||
"jquery-migrate.js",
|
||||
"jquery-migrate.min.js"
|
||||
]
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "John Resig",
|
||||
"email": "jeresig@gmail.com"
|
||||
}
|
||||
],
|
||||
"description": "jQuery JavaScript Library",
|
||||
"homepage": "http://jquery.com",
|
||||
"time": "2015-05-08 05:04:47"
|
||||
}
|
||||
],
|
||||
"packages-dev": [],
|
||||
"aliases": [],
|
||||
"minimum-stability": "stable",
|
||||
"stability-flags": [],
|
||||
"prefer-stable": false,
|
||||
"prefer-lowest": false,
|
||||
"platform": [],
|
||||
"platform-dev": []
|
||||
}
|
||||
@@ -10,7 +10,8 @@ error_reporting(E_ALL);
|
||||
// Encoding
|
||||
mb_internal_encoding("UTF-8");
|
||||
mb_regex_encoding("UTF-8");
|
||||
setlocale (LC_ALL, 'de_DE.UTF8','de_DE@euro', 'de_DE', 'de','DE', 'ge','German');
|
||||
setlocale (LC_ALL, 'de_AT.utf8');
|
||||
setlocale (LC_NUMERIC, 'C');
|
||||
|
||||
// Zeitzone
|
||||
date_default_timezone_set('Europe/Vienna');
|
||||
@@ -53,7 +54,7 @@ define('DOC_ROOT','/var/www/');
|
||||
// Externe Funktionen - Unterordner im Include-Verzeichnis
|
||||
define('EXT_FKT_PATH','tw');
|
||||
|
||||
// ID des CMS-Contents bei dem das CIS Menue beginnt
|
||||
// ID des CMS-Contents bei dem das CIS Menue beginnt
|
||||
define('CIS_MENU_ENTRY_CONTENT',1);
|
||||
|
||||
// Zusaetzliche Links bei News anzeigen (Lehrziele, Allg. Download, Newsgroups)
|
||||
@@ -62,8 +63,8 @@ define('CIS_EXT_MENU',true);
|
||||
// Legt fest ob bei den Zeitsperren der Bereich fuer die Resturlaubstage angezeigt wird
|
||||
define('URLAUB_TOOLS',true);
|
||||
|
||||
// Authentifizierungsmethode
|
||||
// Moegliche Werte:
|
||||
// Authentifizierungsmethode
|
||||
// Moegliche Werte:
|
||||
// auth_mixed - htaccess mit LDAP (Default)
|
||||
// auth_session - Sessions mit LDAP (Testbetrieb)
|
||||
define("AUTH_SYSTEM", "auth_mixed");
|
||||
@@ -128,9 +129,9 @@ define("ATTR_SPRACHE_EN","English");
|
||||
|
||||
// Konstanten fuer die Reservierung
|
||||
// Tage ab wann ein Mitarbeiter reservieren kann.
|
||||
define('RES_TAGE_LEKTOR_MIN','5');
|
||||
define('RES_TAGE_LEKTOR_MIN','5');
|
||||
// Datum bis wann im voraus ein Mitarbeiter reservieren kann.
|
||||
define('RES_TAGE_LEKTOR_BIS','2020-01-01');
|
||||
define('RES_TAGE_LEKTOR_BIS','2020-01-01');
|
||||
|
||||
// Wie viele Tage pro Woche werden im LVPlan angezeigt
|
||||
define('TAGE_PRO_WOCHE','7');
|
||||
@@ -150,6 +151,9 @@ define('CHOOSE_LAYOUT',false);
|
||||
define('DEFAULT_LANGUAGE','German');
|
||||
|
||||
// E-Mail Einstellungen
|
||||
// Wenn MAIL_FROM gesetzt ist, werden alle Mails mit diesem Absender versandt
|
||||
define('MAIL_FROM','');
|
||||
|
||||
// Wenn MAIL_DEBUG gesetzt ist, werden alle Mails an diese Adresse gesendet
|
||||
define('MAIL_DEBUG','invalid@technikum-wien.at');
|
||||
// Geschaeftsstelle / Personalabteilung
|
||||
@@ -167,7 +171,7 @@ define('MAIL_INTERNATIONAL_OUTGOING', 'invalid@technikum-wien.at');
|
||||
|
||||
define('ANZAHL_PREINTERESSENT','5');
|
||||
|
||||
//Name der aktiven Addons getrennt mit ;
|
||||
//Name der aktiven Addons getrennt mit ;
|
||||
define('ACTIVE_ADDONS','');
|
||||
|
||||
// ***** MOODLE *****
|
||||
@@ -195,4 +199,23 @@ define('TABLE_ID','_id');
|
||||
define('TABLE_BEGIN','tbl_');
|
||||
define('VIEW_BEGIN','vw_');
|
||||
|
||||
//Gibt an, ob das Studienbuchblatt im CIS gedruckt werden kann
|
||||
define('CIS_DOKUMENTE_STUDIENBUCHLBATT_DRUCKEN',false);
|
||||
|
||||
//Gibt an, ob die Studienerfolgsbestätigung im CIS gedruckt werden kann
|
||||
define('CIS_DOKUMENTE_STUDIENERFOLGSBESTAETIGUNG_DRUCKEN',false);
|
||||
|
||||
//**** INFOSCREEN ****
|
||||
//Gibt an, ob der Lageplan im Infoterminal angezeigt werden soll.
|
||||
define('CIS_INFOSCREEN_LAGEPLAN_ANZEIGEN',true);
|
||||
|
||||
//User, welcher für das Anlegen von Anrechnungen bei der Prüfungsanmeldung verwendet wird
|
||||
define('CIS_PRUEFUNGSANMELDUNG_USER','p.pruefungsanmeldung');
|
||||
|
||||
//Gibt an, wie viele Semester aus der Vergangenheit unter Meine LV angezeigt werden
|
||||
define('CIS_MEINELV_ANZAHL_SEMESTER_PAST', 3);
|
||||
|
||||
//Gibt an, welche Buchungstypen bei der Überprüfung auf Einzahlung berücksichtigt werden
|
||||
define('CIS_DOKUMENTE_STUDIENBEITRAG_TYPEN', serialize(array("Studiengebuehr")));
|
||||
|
||||
?>
|
||||
|
||||
@@ -6,6 +6,9 @@ define('DEFAULT_LEHREINHEIT_RAUMTYP','Dummy');
|
||||
define('DEFAULT_LEHREINHEIT_RAUMTYP_ALTERNATIV','Dummy');
|
||||
define('DEFAULT_LEHREINHEIT_LEHRFORM','UE');
|
||||
|
||||
// Defaul Trennzeichen fuer E-Mail Empfaenger wenn nicht ueber Variablen ueberschrieben
|
||||
define('DEFAULT_EMAILADRESSENTRENNZEICHEN',',');
|
||||
|
||||
//Anzeigeoptionen für Lehrveranstaltungen im CIS
|
||||
define('CIS_LEHRVERANSTALTUNG_NEWSGROUPS_ANZEIGEN',true);
|
||||
define('CIS_LEHRVERANSTALTUNG_FEEDBACK_ANZEIGEN',true);
|
||||
@@ -16,10 +19,15 @@ define('CIS_LEHRVERANSTALTUNG_MAILSTUDIERENDE_ANZEIGEN',true);
|
||||
define('CIS_LEHRVERANSTALTUNG_STUDENTENUPLOAD_ANZEIGEN',true);
|
||||
define('CIS_LEHRVERANSTALTUNG_SEMESTERPLAN_ANZEIGEN',true);
|
||||
define('CIS_LEHRVERANSTALTUNG_LVINFO_ANZEIGEN',true);
|
||||
define('CIS_LEHRVERANSTALTUNG_LVINFO_LEKTOR_EDIT',true); //Legt fest, ob Lehrende die LV-Infos selbst bearbeiten duerfen und ob der Link zum bearbeiten der LV-Infos im CIS angezeigt wird
|
||||
define('CIS_LEHRVERANSTALTUNG_LEISTUNGSUEBERSICHT_ANZEIGEN',true);
|
||||
define('CIS_LEHRVERANSTALTUNG_SEMESTERINFO_ANZEIGEN',true);
|
||||
define('CIS_LEHRVERANSTALTUNG_LEHRFACH_ANZEIGEN',false);
|
||||
define('CIS_LEHRVERANSTALTUNG_GESAMTNOTE_ANZEIGEN', true);
|
||||
|
||||
// Legt fest, ob bei den LV-Infos der Block mit den Terminen zu den einzelnen LVs (laut Stundenplan) angezeigt werden soll
|
||||
define ('CIS_LVINFO_TERMINE_ANZEIGEN', false);
|
||||
|
||||
// Legt fest ob bei den LVs im CIS das aktuelle Semester angezeigt wird oder das zum Semester dazupassende (zB Sommersemester im 2. Semester)
|
||||
define('CIS_LEHRVERANSTALTUNG_AKTUELLES_STUDIENSEMESTER_ANZEIGEN',true);
|
||||
|
||||
@@ -39,6 +47,26 @@ define('CIS_SUCHE_LVPLAN_ANZEIGEN',true);
|
||||
// Link zu den Excel Notenlisten im CIS Anzeigen
|
||||
define('CIS_ANWESENHEITSLISTE_NOTENLISTE_ANZEIGEN',true);
|
||||
|
||||
// Link zu den Anwesenheitslisten (ohne Bilder) im CIS Anzeigen
|
||||
define('CIS_ANWESENHEITSLISTE_ANWESENHEITSLISTE_ANZEIGEN',true);
|
||||
|
||||
// Punkte bei der Noteneingabe anzeigen
|
||||
define('CIS_GESAMTNOTE_PUNKTE',false);
|
||||
|
||||
// Gibt an ob der Lektor erneut eine LVNote eintragen kann wenn bereits eine Zeugnisnote vorhanden ist (true | false) DEFAULT true
|
||||
define('CIS_GESAMTNOTE_UEBERSCHREIBEN',true);
|
||||
|
||||
// Gibt an ob im FAS bei den Lehrveranstaltungsnoten ein zusaetzliches Formular angezeigt wird um
|
||||
// Vertraege fuer Pruefungshonorare anzulegen
|
||||
define('FAS_GESAMTNOTE_PRUEFUNGSHONORAR',false);
|
||||
|
||||
// Grenzwerte für Anwesenheit
|
||||
define('FAS_ANWESENHEIT_ROT', 70);
|
||||
define('FAS_ANWESENHEIT_GELB', 90);
|
||||
|
||||
// Legt einen Prüfungstermin an wenn eine neue Note erfasst wird
|
||||
define('FAS_PRUEFUNG_BEI_NOTENEINGABE_ANLEGEN',false);
|
||||
|
||||
// Anzeigeoptionen für LV-Plan Menü
|
||||
define('CIS_LVPLAN_EXPORT_ANZEIGEN',true);
|
||||
define('CIS_LVPLAN_PERSONENAUSWAHL_ANZEIGEN',true);
|
||||
@@ -58,6 +86,9 @@ define('LVPLAN_SYNC_ENDE','');
|
||||
// Soll nach dem LVPlan Sync automatisch das Horde Sync angestoßen werden
|
||||
define('LVPLAN_HORDE_SYNC',false);
|
||||
|
||||
// Format der Tagesinfo im Tempus %t = Wochentag %b = Begin der Stunde %e = Ende der Stunde %s = Stunde
|
||||
define('TEMPUS_TAGESINFO_FORMAT','%t %b');
|
||||
|
||||
/*
|
||||
* VORRUECKUNG_LEHRVERBAND_MAX_SEMESTER
|
||||
* leer: Studentlehrverband Semester wird bei der Vorrueckung normal weitergezaehlt bis zum max_semester des Studienganges
|
||||
@@ -75,7 +106,7 @@ define('VORRUECKUNG_LEHRVERBAND_MAX_SEMESTER','');
|
||||
define('VORRUECKUNG_STATUS_MAX_SEMESTER',true);
|
||||
|
||||
// Bei Statuswechsel auf Bewerber -> soll Reihungstest brücksichtigt werden
|
||||
define('REIHUNGSTEST_CHECK', true);
|
||||
define('REIHUNGSTEST_CHECK', true);
|
||||
|
||||
/* Schema zur Erstellung der Kurs Kategorien im Moodle
|
||||
* Leer oder nicht gesetzt: STSEM -> STG -> Ausbsemester (WS2014 -> BEL -> 1)
|
||||
@@ -83,8 +114,11 @@ define('REIHUNGSTEST_CHECK', true);
|
||||
*/
|
||||
define('MOODLE_COURSE_SCHEMA','');
|
||||
|
||||
// Legt fst ob Fachbereichsleiter zu Moodle Kursen zugeteilt werden (mit Benutzerdefinierter Rolle 11)
|
||||
define('MOODLE_SYNC_FACHBEREICHSLEITUNG',false);
|
||||
|
||||
// Bei Statuswechsel auf Bewerber -> bei true wird email (INFOMAIL_BEWERBER) an den Bewerber geschickt
|
||||
define('SEND_BEWERBER_INFOMAIL', false);
|
||||
define('SEND_BEWERBER_INFOMAIL', false);
|
||||
|
||||
// Infotext der an Bewerber gesendet wird
|
||||
define('INFOMAIL_BEWERBER', 'Vielen Dank für Ihr Interesse an einem Studium
|
||||
@@ -100,7 +134,7 @@ Mo-Fr 9:00-12:00 Uhr
|
||||
Mi 13:30-15:30 Uhr
|
||||
|
||||
Mit freundlichen Grüßen,
|
||||
Ihre Fachhochschule');
|
||||
Ihre Fachhochschule');
|
||||
|
||||
// Bei neuen Studierenden UID automatisch als Matrikelnummer setzen (true|false)
|
||||
define('SET_UID_AS_MATRIKELNUMMER',false);
|
||||
@@ -121,7 +155,7 @@ define('VILESCI_PERSON_NEU_STUDIENSEMESTER_WINTERONLY',false);
|
||||
define('CIS_STUDIENPLAN_SEMESTER_ANZEIGEN', false);
|
||||
|
||||
//Legt fest ob ein User zu einer LV angemeldet sein muss um Detailinformationen abrufen zu können. (true|false)
|
||||
define('CIS_LEHRVERANSTALTUNG_WENNANGEMELDET_DETAILS_ANZEIGEN', true);
|
||||
define('CIS_LEHRVERANSTALTUNG_WENNANGEMELDET_DETAILS_ANZEIGEN', false);
|
||||
|
||||
// Prestudent_ID des Dummy_Studenten (zB fuer Testtool)
|
||||
define('PRESTUDENT_ID_DUMMY_STUDENT', 13478);
|
||||
@@ -129,4 +163,43 @@ define('PRESTUDENT_ID_DUMMY_STUDENT', 13478);
|
||||
//Legt fest ob die Option für alle Räume im Saalplan Dropdown angezeigt werden soll. (true|false)
|
||||
define('CIS_SAALPLAN_ALLERAEUME_OPTION', false);
|
||||
|
||||
//Legt fest ob Bestätigungsmails über eine Anmelung zu einer Prüfung an eine einzelne Person erfolgt oder an den jeweiligen Lektor. (Leerstring für jeweiligen Lektor | uid);
|
||||
define('CIS_PRUEFUNG_MAIL_EMPFAENGER_ANMEDLUNG',"");
|
||||
|
||||
// Username fuer STIP Schnittstelle
|
||||
define('STIP_USER_NAME','stipendienstelle');
|
||||
// Passwort fuer STIP Schnittstelle
|
||||
define('STIP_USER_PASSWORD','password');
|
||||
|
||||
// Optionen für das Bewerbertool
|
||||
define('BEWERBERTOOL_STUDIENAUSWAHL_ANZEIGEN', true);
|
||||
define('BEWERBERTOOL_STANDORTAUSWAHL_ANZEIGEN', false);
|
||||
|
||||
define('BEWERBERTOOL_REIHUNGSTEST_ANZEIGEN', true);
|
||||
define('BEWERBERTOOL_ZAHLUNGEN_ANZEIGEN', true);
|
||||
define('BEWERBERTOOL_DOKUMENTE_ANZEIGEN', true);
|
||||
define('BEWERBERTOOL_ZGV_ANZEIGEN', true);
|
||||
define('BEWERBERTOOL_BERUFSTAETIGKEIT_ANZEIGEN', true);
|
||||
// Wenn hier eine Mailadresse angegeben ist, werden die Bewerbungen aus der Onlinebwerbung an diese Adresse gesendet.
|
||||
// Wenn leer dann wird an BEWERBERTOOL_BEWERBUNG_EMPFAENGER geschickt, sonst an die Studiengangsadresse.
|
||||
define('BEWERBERTOOL_MAILEMPFANG', '');
|
||||
// Wenn true dann koennen Dokumente nachgereicht werden, wenn false dann nicht
|
||||
define('BEWERBERTOOL_DOKUMENTE_NACHREICHEN', true);
|
||||
//Wer soll beim nachtraeglichen Upload von Dokumenten im Bewerbertool benachrichtigt werden. Kommagetrenntes Array in der Form: "Stg-Kz" => "empfaenger@domain.at". zB: "227" => "info.bbe@technikum-wien.at",
|
||||
define('BEWERBERTOOL_UPLOAD_EMPFAENGER', serialize(array()));
|
||||
//Array von Empfaengern fuer das Abschicken von Bewerbungen aus dem Bewerbungstool. Kommagetrenntes Array in der Form: "Stg-Kz" => "empfaenger@domain.at". zB: "227" => "info.bbe@technikum-wien.at",
|
||||
define('BEWERBERTOOL_BEWERBUNG_EMPFAENGER', serialize(array()));
|
||||
|
||||
// Google Tag Manager HTML/JS Snippet für Bewerbertool Tracking
|
||||
define('BEWERBERTOOL_GTM', '');
|
||||
|
||||
// Array mit Usern die nicht Kollidieren
|
||||
define('KOLLISIONSFREIE_USER',serialize(array('_DummyLektor')));
|
||||
|
||||
// Soll der Lageplan am Infoterminal angezeigt werden (true|false)
|
||||
define('CIS_INFOSCREEN_LAGEPLAN_ANZEIGEN', true);
|
||||
|
||||
|
||||
//PHANTOM
|
||||
define('PHANTOM_SERVER','http://phantomjs.example.com:3003');
|
||||
?>
|
||||
|
||||
@@ -114,7 +114,12 @@ define('WARN_SEMESTERSTD_FIX','320');
|
||||
//Wochen als Grundlage zur Berechnung der Lektorenmeldung
|
||||
define('BIS_SWS_WOCHEN', 40);
|
||||
|
||||
// E-Mail Einstellungen
|
||||
// Mail-Adressen (Angabe von mehreren Addressen mit ',' getrennt moeglich)
|
||||
|
||||
// Wenn MAIL_FROM gesetzt ist, werden alle Mails mit diesem Absender versandt
|
||||
define('MAIL_FROM','');
|
||||
|
||||
// Wenn MAIL_DEBUG gesetzt ist, werden alle Mails an diese Adresse gesendet
|
||||
define('MAIL_DEBUG','invalid@technikum-wien.at');
|
||||
// Geschaeftsstelle / Personalabteilung
|
||||
@@ -127,6 +132,8 @@ define('MAIL_LVPLAN','invalid@technikum-wien.at');
|
||||
define('MAIL_IT','invalid@technikum-wien.at');
|
||||
// Support
|
||||
define('MAIL_SUPPORT','invalid@technikum-wien.at');
|
||||
// Lehrgaenge
|
||||
define('MAIL_LG','invalid@technikum-wien.at');
|
||||
|
||||
// Default Anmerkung fuer neue Lehreinheiten
|
||||
// Beispiel: 'Abhaengigkeiten von anderen LV\'s\n\nSpez. Software/Equipment:\n\n'
|
||||
@@ -160,5 +167,8 @@ define('RT_PUNKTE3','false');
|
||||
define('TABLE_ID','_id');
|
||||
define('TABLE_BEGIN','tbl_');
|
||||
define('VIEW_BEGIN','vw_');
|
||||
|
||||
//Legt fest ob die Personalnummer beim Anlegen NULL sein soll
|
||||
define('FAS_PERSONALNUMMER_GENERATE_NULL', false);
|
||||
|
||||
?>
|
||||
|
||||
@@ -38,12 +38,15 @@ echo '<?xml-stylesheet href="'.APP_ROOT.'skin/tempus.css" type="text/css"?>';
|
||||
<vbox>
|
||||
<hbox style="margin-top: 20px">
|
||||
<spacer flex="1"/>
|
||||
<image src='<?php echo APP_ROOT; ?>skin/images/fh_complete_logo.png' width="392" height="60"/>
|
||||
<image src='<?php echo APP_ROOT; ?>skin/images/fh_complete_logo_400x61.png' width="400" height="61"/>
|
||||
<spacer flex="1"/>
|
||||
</hbox>
|
||||
<hbox style="margin-top: 20px">
|
||||
<spacer flex="1"/>
|
||||
</hbox>
|
||||
<hbox>
|
||||
<spacer flex="1"/>
|
||||
<label value="Copyright (C) 2007 Technikum-Wien" />
|
||||
<label value="Copyright (C) 2007 FH Complete" />
|
||||
<spacer flex="1"/>
|
||||
</hbox>
|
||||
<hbox>
|
||||
@@ -70,6 +73,7 @@ echo '<?xml-stylesheet href="'.APP_ROOT.'skin/tempus.css" type="text/css"?>';
|
||||
Rudolf Hangl <rudolf.hangl@technikum-wien.at>,
|
||||
Gerald Raab <gerald.raab@technikum-wien.at> and
|
||||
Gerald Simane-Sequens <gerald.simane-sequence@technikum-wien.at>
|
||||
Manfred Kindl <manfred.kindl@technikum-wien.at>
|
||||
</description>
|
||||
</groupbox>
|
||||
<spacer flex="1"/>
|
||||
|
||||
+1
-1
@@ -97,7 +97,7 @@ function OutputData($akte)
|
||||
if($dms->mimetype=='')
|
||||
$dms->mimetype='application/octetstream';
|
||||
|
||||
header('Content-type: '.$dms->mimetype);
|
||||
header('Content-type: application/octetstream');
|
||||
header('Content-Disposition: inline; filename="'.$dms->name.'"');
|
||||
header('Content-Length: ' .filesize($filename));
|
||||
|
||||
|
||||
@@ -0,0 +1,56 @@
|
||||
<?php
|
||||
/* Copyright (C) 2015 fhcomplete.org
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of the
|
||||
* License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* Authors: Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at>
|
||||
*/
|
||||
require_once('../config/vilesci.config.inc.php');
|
||||
?>
|
||||
// ********** FUNKTIONEN ********** //
|
||||
var anwesenheitStudentUID='';
|
||||
|
||||
// ****
|
||||
// * Laedt die Trees
|
||||
// ****
|
||||
function loadanwesenheit(student_uid,lehrveranstaltung_id)
|
||||
{
|
||||
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
|
||||
|
||||
anwesenheitStudentUID=student_uid;
|
||||
|
||||
//anwesenheit laden
|
||||
url = "<?php echo APP_ROOT; ?>rdf/anwesenheit.rdf.php?ts="+gettimestamp();
|
||||
|
||||
if(student_uid!='')
|
||||
url=url+"&student_uid="+student_uid;
|
||||
if(lehrveranstaltung_id!='')
|
||||
url=url+"&lehrveranstaltung_id="+lehrveranstaltung_id;
|
||||
|
||||
var treeanwesenheit=document.getElementById('anwesenheit-tree');
|
||||
|
||||
//Alte DS entfernen
|
||||
var oldDatasources = treeanwesenheit.database.GetDataSources();
|
||||
while(oldDatasources.hasMoreElements())
|
||||
{
|
||||
treeanwesenheit.database.RemoveDataSource(oldDatasources.getNext());
|
||||
}
|
||||
|
||||
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService);
|
||||
var TerminTreeDatasource = rdfService.GetDataSource(url);
|
||||
TerminTreeDatasource.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource);
|
||||
treeanwesenheit.database.AddDataSource(TerminTreeDatasource);
|
||||
|
||||
}
|
||||
@@ -0,0 +1,107 @@
|
||||
<?php
|
||||
/* Copyright (C) 2015 fhcomplete.org
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of the
|
||||
* License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* Authors: Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at>
|
||||
*/
|
||||
header("Cache-Control: no-cache");
|
||||
header("Cache-Control: post-check=0, pre-check=0",false);
|
||||
header("Expires Mon, 26 Jul 1997 05:00:00 GMT");
|
||||
header("Pragma: no-cache");
|
||||
header("Content-type: application/vnd.mozilla.xul+xml");
|
||||
|
||||
require_once('../config/vilesci.config.inc.php');
|
||||
|
||||
echo '<?xml version="1.0" encoding="UTF-8"?>'."\n";
|
||||
|
||||
echo '<?xml-stylesheet href="'.APP_ROOT.'skin/tempus.css" type="text/css"?>';
|
||||
echo '<?xml-stylesheet href="'.APP_ROOT.'content/bindings.css" type="text/css"?>';
|
||||
|
||||
$student_uid = filter_input(INPUT_GET,'student_uid');
|
||||
$lehrveranstaltung_id= filter_input(INPUT_GET,'lehrveranstaltung_id');
|
||||
|
||||
?>
|
||||
|
||||
<window id="anwesenheit-window" title="anwesenheit"
|
||||
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
|
||||
onload="loadanwesenheit('<?php echo $student_uid;?>','<?php echo $lehrveranstaltung_id;?>');">
|
||||
|
||||
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/anwesenheit.js.php" />
|
||||
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/functions.js.php" />
|
||||
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/phpRequest.js.php" />
|
||||
<vbox flex="1">
|
||||
<groupbox id="anwesenheit-groupbox-anwesenheit" flex="1">
|
||||
<caption label="Anwesenheit" />
|
||||
<hbox flex="1">
|
||||
<tree id="anwesenheit-tree" seltype="single" hidecolumnpicker="false" flex="1"
|
||||
datasources="rdf:null"
|
||||
ref="http://www.technikum-wien.at/anwesenheit"
|
||||
persist="hidden, height"
|
||||
>
|
||||
<treecols>
|
||||
<treecol id="anwesenheit-treecol-lehrveranstaltung" label="Lehrveranstaltung" flex="1" hidden="<?php echo ($lehrveranstaltung_id==''?'false':'true');?>"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/anwesenheit/rdf#lehrveranstaltung_bezeichnung" onclick="anwesenheitTreeSort()"/>
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="anwesenheit-treecol-nachname" label="Nachname" flex="1" hidden="<?php echo ($lehrveranstaltung_id==''?'true':'false');?>"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/anwesenheit/rdf#nachname" onclick="anwesenheitTreeSort()"/>
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="anwesenheit-treecol-vorname" label="Vorname" flex="1" hidden="<?php echo ($lehrveranstaltung_id==''?'true':'false');?>"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/anwesenheit/rdf#vorname" onclick="anwesenheitTreeSort()"/>
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="anwesenheit-treecol-prozent" label="Anwesenheit in Prozent" flex="1" hidden="false"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/anwesenheit/rdf#prozent" onclick="anwesenheitTreeSort()"/>
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="anwesenheit-treecol-anwesend" label="Anwesend" flex="1" hidden="true"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/anwesenheit/rdf#anwesend" onclick="anwesenheitTreeSort()"/>
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="anwesenheit-treecol-nichtanwesend" label="Nicht anwesend" flex="1" hidden="true"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/anwesenheit/rdf#nichtanwesend" onclick="anwesenheitTreeSort()"/>
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="anwesenheit-treecol-uid" label="UID" flex="1" hidden="true"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/anwesenheit/rdf#uid" onclick="anwesenheitTreeSort()"/>
|
||||
<splitter class="tree-splitter"/>
|
||||
</treecols>
|
||||
|
||||
<template>
|
||||
<rule>
|
||||
<treechildren>
|
||||
<treeitem uri="rdf:*">
|
||||
<treerow properties="rdf:http://www.technikum-wien.at/anwesenheit/rdf#ampel">
|
||||
<treecell label="rdf:http://www.technikum-wien.at/anwesenheit/rdf#lehrveranstaltung_bezeichnung" />
|
||||
<treecell label="rdf:http://www.technikum-wien.at/anwesenheit/rdf#nachname" />
|
||||
<treecell label="rdf:http://www.technikum-wien.at/anwesenheit/rdf#vorname" />
|
||||
<treecell label="rdf:http://www.technikum-wien.at/anwesenheit/rdf#prozent" />
|
||||
<treecell label="rdf:http://www.technikum-wien.at/anwesenheit/rdf#anwesend" />
|
||||
<treecell label="rdf:http://www.technikum-wien.at/anwesenheit/rdf#nichtanwesend" />
|
||||
<treecell label="rdf:http://www.technikum-wien.at/anwesenheit/rdf#uid" />
|
||||
</treerow>
|
||||
</treeitem>
|
||||
</treechildren>
|
||||
</rule>
|
||||
</template>
|
||||
</tree>
|
||||
</hbox>
|
||||
</groupbox>
|
||||
|
||||
</vbox>
|
||||
</window>
|
||||
+42
-9
@@ -24,6 +24,8 @@
|
||||
// Aufruf mit <img src='bild.php?src=frage&frage_id=1
|
||||
require_once('../config/vilesci.config.inc.php');
|
||||
require_once('../include/basis_db.class.php');
|
||||
require_once('../include/dms.class.php');
|
||||
|
||||
$db = new basis_db();
|
||||
//base64 Dump aus der DB holen
|
||||
$cTmpHEX='/9j/4AAQSkZJRgABAQEASABIAAD/4QAWRXhpZgAATU0AKgAAAAgAAAAAAAD//gAXQ3JlYXRlZCB3aXRoIFRoZSBHSU1Q/9sAQwAFAwQEBAMFBAQEBQUFBgcMCAcHBwcPCwsJDBEPEhIRDxERExYcFxMUGhURERghGBodHR8fHxMXIiQiHiQcHh8e/9sAQwEFBQUHBgcOCAgOHhQRFB4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4e/8AAEQgAAQABAwEiAAIRAQMRAf/EABUAAQEAAAAAAAAAAAAAAAAAAAAI/8QAFBABAAAAAAAAAAAAAAAAAAAAAP/EABQBAQAAAAAAAAAAAAAAAAAAAAD/xAAUEQEAAAAAAAAAAAAAAAAAAAAA/9oADAMBAAIRAxEAPwCywAf/2Q==';
|
||||
@@ -32,22 +34,53 @@ if(isset($_GET['src']) && $_GET['src']=='person' && isset($_GET['person_id']))
|
||||
$qry = "SELECT foto FROM public.tbl_person WHERE person_id=".$db->db_add_param($_GET['person_id'], FHC_INTEGER);
|
||||
if($result = $db->db_query($qry))
|
||||
{
|
||||
if($row = $db->db_fetch_object($result))
|
||||
$cTmpHEX=$row->foto;
|
||||
}
|
||||
if($row = $db->db_fetch_object($result))
|
||||
$cTmpHEX=base64_decode($row->foto);
|
||||
}
|
||||
}
|
||||
elseif(isset($_GET['src']) && $_GET['src']=='akte' && isset($_GET['person_id']))
|
||||
{
|
||||
$qry = "SELECT inhalt as foto FROM public.tbl_akte WHERE person_id=".$db->db_add_param($_GET['person_id'], FHC_INTEGER)." AND dokument_kurzbz='Lichtbil'";
|
||||
$qry = "SELECT inhalt as foto, dms_id FROM public.tbl_akte WHERE person_id=".$db->db_add_param($_GET['person_id'], FHC_INTEGER)." AND dokument_kurzbz='Lichtbil'";
|
||||
if($result = $db->db_query($qry))
|
||||
{
|
||||
if($row = $db->db_fetch_object($result))
|
||||
$cTmpHEX=$row->foto;
|
||||
}
|
||||
if($row = $db->db_fetch_object($result))
|
||||
{
|
||||
if($row->foto!='')
|
||||
$cTmpHEX=base64_decode($row->foto);
|
||||
elseif($row->dms_id!='')
|
||||
{
|
||||
// Wenn das Foto nicht im Inhalt steht wird aus aus dem DMS geladen
|
||||
$dms = new dms();
|
||||
if(!$dms->load($row->dms_id))
|
||||
die('Kein Dokument vorhanden');
|
||||
|
||||
$filename=DMS_PATH.$dms->filename;
|
||||
|
||||
$dms->touch($dms->dms_id, $dms->version);
|
||||
|
||||
if(file_exists($filename))
|
||||
{
|
||||
if($handle = fopen($filename,"r"))
|
||||
{
|
||||
$cTmpHEX='';
|
||||
while (!feof($handle))
|
||||
{
|
||||
$cTmpHEX.= fread($handle, 8192);
|
||||
}
|
||||
fclose($handle);
|
||||
}
|
||||
else
|
||||
echo 'Fehler: Datei konnte nicht geoeffnet werden';
|
||||
}
|
||||
else
|
||||
echo 'Die Datei existiert nicht';
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//Header fuer Bild schicken
|
||||
header("Content-type: image/gif");
|
||||
//base64 Werte in Zeichen umwandeln und ausgeben
|
||||
exit(base64_decode($cTmpHEX));
|
||||
?>
|
||||
exit($cTmpHEX);
|
||||
?>
|
||||
|
||||
+103
-11
@@ -458,19 +458,61 @@ var boardObserver=
|
||||
},
|
||||
onDragEnter: function (evt,flavour,session)
|
||||
{
|
||||
var styleNow=evt.target.getAttribute("style");
|
||||
if (evt.target.tagName=="label")
|
||||
evt.target.setAttribute("style","background-color:#AAFFAA;");
|
||||
else
|
||||
evt.target.setAttribute("style",styleNow+"border:1px dashed black;");
|
||||
if(typeof evt.target.getAttribute == 'function')
|
||||
{
|
||||
var styleNow=evt.target.getAttribute("style");
|
||||
if (evt.target.tagName=="label")
|
||||
{
|
||||
evt.target.setAttribute("style","background-color:#AAFFAA;");
|
||||
|
||||
var tagesinfo = evt.target.parentNode.getElementsByClassName('stplweek_tagesinfo');
|
||||
if(typeof tagesinfo[0]!='undefined')
|
||||
{
|
||||
var Tagesinfostyle = tagesinfo[0].getAttribute("style");
|
||||
tagesinfo[0].setAttribute("style",Tagesinfostyle+";visibility:visible;");
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
evt.target.setAttribute("style",styleNow+";border:1px dashed black;");
|
||||
|
||||
var tagesinfo = evt.target.getElementsByClassName('stplweek_tagesinfo');
|
||||
if(typeof tagesinfo[0]!='undefined')
|
||||
{
|
||||
var Tagesinfostyle = tagesinfo[0].getAttribute("style");
|
||||
tagesinfo[0].setAttribute("style",Tagesinfostyle+";visibility:visible;");
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
onDragExit: function (evt,flavour,session)
|
||||
{
|
||||
var styleNow=evt.target.getAttribute("style");
|
||||
if (evt.target.tagName=="label")
|
||||
evt.target.setAttribute("style","");
|
||||
else
|
||||
evt.target.setAttribute("style",styleNow+"border:1px solid black;");
|
||||
if(typeof evt.target.getAttribute == 'function')
|
||||
{
|
||||
var styleNow=evt.target.getAttribute("style");
|
||||
if (evt.target.tagName=="label")
|
||||
{
|
||||
evt.target.setAttribute("style","");
|
||||
|
||||
var tagesinfo = evt.target.parentNode.getElementsByClassName('stplweek_tagesinfo');
|
||||
if(typeof tagesinfo[0]!='undefined')
|
||||
{
|
||||
var Tagesinfostyle = tagesinfo[0].getAttribute("style");
|
||||
tagesinfo[0].setAttribute("style",Tagesinfostyle+";visibility:hidden;");
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
evt.target.setAttribute("style",styleNow+";border:1px solid black;");
|
||||
|
||||
var tagesinfo = evt.target.getElementsByClassName('stplweek_tagesinfo');
|
||||
if(typeof tagesinfo[0]!='undefined')
|
||||
{
|
||||
var Tagesinfostyle = tagesinfo[0].getAttribute("style");
|
||||
tagesinfo[0].setAttribute("style",Tagesinfostyle+";visibility:hidden;");
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
onDragOver: function(evt,flavour,session)
|
||||
{
|
||||
@@ -495,11 +537,31 @@ var boardObserver=
|
||||
|
||||
var stunde=evt.target.getAttribute("stunde");
|
||||
var new_datum=evt.target.getAttribute("datum");
|
||||
|
||||
if (evt.target.tagName=="label")
|
||||
{
|
||||
var new_ort=evt.target.getAttribute("ort_kurzbz");
|
||||
var kollisionsanzahl=evt.target.getAttribute("kollision");
|
||||
}
|
||||
else if(evt.target.tagName=="button")
|
||||
{
|
||||
|
||||
if(getvariable('allow_lehrstunde_drop')=='true')
|
||||
{
|
||||
// Wenn direkt auf die Stunde gezogen wird, wird der Raum uebernommen und die unr gleich gesetzt
|
||||
ort=evt.target.getAttribute("ort_kurzbz");
|
||||
var new_unr=evt.target.getAttribute("unr");
|
||||
var new_ort=ort;
|
||||
|
||||
// zusaetzlich wird diese zu allen Stunden (gesamter Block) dazugebucht
|
||||
var new_blockung=getNewBlockung(evt.target);
|
||||
}
|
||||
else
|
||||
{
|
||||
alert('Bitte waehlen Sie einen Ort oder aktivieren Sie die Option allow_lehrstunde_drop');
|
||||
return false;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if (dropdata.flavour.contentType=="application/tempus-lehrveranstaltung")
|
||||
@@ -517,11 +579,17 @@ var boardObserver=
|
||||
url+="&new_ort="+new_ort+"&kollisionsanzahl="+kollisionsanzahl;
|
||||
else
|
||||
url+="&aktion=stpl_move";
|
||||
|
||||
if(new_unr)
|
||||
url+="&new_unr="+new_unr;
|
||||
if(new_blockung)
|
||||
url+="&new_blockung="+new_blockung;
|
||||
|
||||
url+="&mime="+dropdata.flavour.contentType;
|
||||
|
||||
//IDs der Stunden die verschoben werden dazuhaengen
|
||||
//idList = TimeTableWeekGetMarkedIdList();
|
||||
//url+=idList;
|
||||
//alert("url:"+url);
|
||||
if(new_ort=='' && ort=='')
|
||||
{
|
||||
alert('Es muss ein Ort gewaehlt werden');
|
||||
@@ -534,6 +602,30 @@ var boardObserver=
|
||||
}
|
||||
};
|
||||
|
||||
// Holt die Anzahl der Bloecke nach dem uebergebenen mit der selben unr
|
||||
function getNewBlockung(item)
|
||||
{
|
||||
var items = document.getElementsByTagName('button');
|
||||
var unr = item.getAttribute('unr');
|
||||
var stunde = item.getAttribute('stunde');
|
||||
var wochentag = item.getAttribute('wochentag');
|
||||
var blockung=1;
|
||||
for each(var button in items)
|
||||
{
|
||||
if(button.id && button.id.startsWith('buttonSTPL'))
|
||||
{
|
||||
buttonunr=button.getAttribute('unr');
|
||||
buttonwochentag=button.getAttribute('wochentag');
|
||||
buttonstunde=button.getAttribute('stunde');
|
||||
|
||||
if(buttonunr==unr && buttonwochentag==wochentag && buttonstunde>stunde)
|
||||
{
|
||||
blockung=blockung+1;
|
||||
}
|
||||
}
|
||||
}
|
||||
return blockung;
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Observer fuer den Lehrverbandstree
|
||||
|
||||
+57
-28
@@ -19,8 +19,6 @@
|
||||
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at> and
|
||||
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
|
||||
*/
|
||||
header("Content-type: application/vnd.mozilla.xul+xml");
|
||||
echo '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>';
|
||||
require_once('../config/vilesci.config.inc.php');
|
||||
require_once('../include/functions.inc.php');
|
||||
require_once('../include/benutzerberechtigung.class.php');
|
||||
@@ -46,6 +44,11 @@ if(!$variable->loadVariables($user))
|
||||
$rechte = new benutzerberechtigung();
|
||||
$rechte->getBerechtigungen($user);
|
||||
|
||||
if(!$rechte->isBerechtigt('basis/fas'))
|
||||
die('Sie haben keine Berechtigung für diese Seite');
|
||||
|
||||
header("Content-type: application/vnd.mozilla.xul+xml");
|
||||
echo '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>';
|
||||
echo '<?xml-stylesheet href="'.APP_ROOT.'skin/tempus.css" type="text/css"?>';
|
||||
echo '<?xml-stylesheet href="'.APP_ROOT.'content/bindings.css" type="text/css" ?>';
|
||||
echo '<?xml-stylesheet href="'.APP_ROOT.'content/datepicker/datepicker.css" type="text/css"?>';
|
||||
@@ -117,32 +120,35 @@ foreach($addon_obj->result as $addon)
|
||||
<command id="menu-statistic-studentendetails:command" oncommand="StatistikPrintStudentExportExtended();"/>
|
||||
<command id="menu-statistic-lektorenstatistik:command" oncommand="StatistikPrintLektorenstatistik();"/>
|
||||
<command id="menu-statistic-stromanalyse:command" oncommand="StatistikPrintStromanalyse();"/>
|
||||
<command id="menu-dokumente-inskriptionsbestaetigung:command" oncommand="StudentPrintInskriptionsbestaetigung();"/>
|
||||
<command id="menu-dokumente-inskriptionsbestaetigung:command" oncommand="StudentPrintInskriptionsbestaetigung(event);"/>
|
||||
<command id="menu-dokumente-zeugnis:command" oncommand="StudentCreateZeugnis('Zeugnis',event);"/>
|
||||
<command id="menu-dokumente-zeugniseng:command" oncommand="StudentCreateZeugnis('ZeugnisEng',event);"/>
|
||||
<!--<command id="menu-dokumente-sammelzeugnis:command" oncommand="StudentCreateSammelzeugnis('Sammelzeugnis');"/>-->
|
||||
<command id="menu-dokumente-diplsupplement:command" oncommand="StudentCreateDiplSupplement(event);"/>
|
||||
<command id="menu-dokumente-studienerfolg-normal:command" oncommand="StudentCreateStudienerfolg('Studienerfolg');"/>
|
||||
<command id="menu-dokumente-studienerfolg-finanzamt:command" oncommand="StudentCreateStudienerfolg('Studienerfolg','finanzamt');"/>
|
||||
<command id="menu-dokumente-studienerfolg-allesemester-normal:command" oncommand="StudentCreateStudienerfolg('Studienerfolg','', '', 'true');"/>
|
||||
<command id="menu-dokumente-studienerfolg-allesemester-finanzamt:command" oncommand="StudentCreateStudienerfolg('Studienerfolg','finanzamt', '', 'true');"/>
|
||||
<command id="menu-dokumente-studienerfolgeng-normal:command" oncommand="StudentCreateStudienerfolg('StudienerfolgEng');"/>
|
||||
<command id="menu-dokumente-studienerfolgeng-finanzamt:command" oncommand="StudentCreateStudienerfolg('StudienerfolgEng','finanzamt');"/>
|
||||
<command id="menu-dokumente-studienerfolgeng-allesemester-normal:command" oncommand="StudentCreateStudienerfolg('StudienerfolgEng','', '', 'true');"/>
|
||||
<command id="menu-dokumente-studienerfolgeng-allesemester-finanzamt:command" oncommand="StudentCreateStudienerfolg('StudienerfolgEng','finanzamt', '', 'true');"/>
|
||||
<command id="menu-dokumente-accountinfoblatt:command" oncommand="PrintAccountInfoBlatt();"/>
|
||||
<command id="menu-dokumente-studienerfolg-normal:command" oncommand="StudentCreateStudienerfolg(event, 'Studienerfolg');"/>
|
||||
<command id="menu-dokumente-studienerfolg-finanzamt:command" oncommand="StudentCreateStudienerfolg(event, 'Studienerfolg','finanzamt');"/>
|
||||
<command id="menu-dokumente-studienerfolg-allesemester-normal:command" oncommand="StudentCreateStudienerfolg(event, 'Studienerfolg','', '', 'true');"/>
|
||||
<command id="menu-dokumente-studienerfolg-allesemester-finanzamt:command" oncommand="StudentCreateStudienerfolg(event, 'Studienerfolg','finanzamt', '', 'true');"/>
|
||||
<command id="menu-dokumente-studienerfolgeng-normal:command" oncommand="StudentCreateStudienerfolg(event, 'StudienerfolgEng');"/>
|
||||
<command id="menu-dokumente-studienerfolgeng-finanzamt:command" oncommand="StudentCreateStudienerfolg(event, 'StudienerfolgEng','finanzamt');"/>
|
||||
<command id="menu-dokumente-studienerfolgeng-allesemester-normal:command" oncommand="StudentCreateStudienerfolg(event, 'StudienerfolgEng','', '', 'true');"/>
|
||||
<command id="menu-dokumente-studienerfolgeng-allesemester-finanzamt:command" oncommand="StudentCreateStudienerfolg(event, 'StudienerfolgEng','finanzamt', '', 'true');"/>
|
||||
<command id="menu-dokumente-accountinfoblatt:command" oncommand="PrintAccountInfoBlatt(event);"/>
|
||||
<command id="menu-dokumente-zutrittskarte:command" oncommand="PrintZutrittskarte();"/>
|
||||
<command id="menu-dokumente-studienblatt:command" oncommand="PrintStudienblatt(event);"/>
|
||||
<command id="menu-dokumente-pruefungsprotokoll:command" oncommand="StudentAbschlusspruefungPrintPruefungsprotokollMultiple('de');"/>
|
||||
<command id="menu-dokumente-pruefungsprotokoll_englisch:command" oncommand="StudentAbschlusspruefungPrintPruefungsprotokollMultiple('en');"/>
|
||||
<command id="menu-dokumente-pruefungsprotokoll2:command" oncommand="StudentAbschlusspruefungPrintPruefungsprotokollMultiple('de2');"/>
|
||||
<command id="menu-dokumente-pruefungsprotokoll2_englisch:command" oncommand="StudentAbschlusspruefungPrintPruefungsprotokollMultiple('en2');"/>
|
||||
<command id="menu-dokumente-pruefungszeugnis:command" oncommand="StudentAbschlusspruefungPrintPruefungszeugnisMultiple('deutsch');"/>
|
||||
<command id="menu-dokumente-pruefungszeugnis_englisch:command" oncommand="StudentAbschlusspruefungPrintPruefungszeugnisMultiple('englisch');"/>
|
||||
<command id="menu-dokumente-urkunde_deutsch:command" oncommand="StudentAbschlusspruefungPrintUrkundeMultiple('deutsch')"/>
|
||||
<command id="menu-dokumente-urkunde_englisch:command" oncommand="StudentAbschlusspruefungPrintUrkundeMultiple('englisch')"/>
|
||||
<command id="menu-dokumente-ausbildungsvertrag:command" oncommand="StudentPrintAusbildungsvertrag();"/>
|
||||
<command id="menu-dokumente-ausbildungsvertrag_englisch:command" oncommand="StudentPrintAusbildungsvertragEnglisch();"/>
|
||||
<command id="menu-dokumente-studienblatt_englisch:command" oncommand="PrintStudienblattEnglisch(event);"/>
|
||||
<command id="menu-dokumente-pruefungsprotokoll:command" oncommand="StudentAbschlusspruefungPrintPruefungsprotokollMultiple(event,'de');"/>
|
||||
<command id="menu-dokumente-pruefungsprotokoll_englisch:command" oncommand="StudentAbschlusspruefungPrintPruefungsprotokollMultiple(event,'en');"/>
|
||||
<command id="menu-dokumente-pruefungsprotokoll2:command" oncommand="StudentAbschlusspruefungPrintPruefungsprotokollMultiple(event,'de2');"/>
|
||||
<command id="menu-dokumente-pruefungsprotokoll2_englisch:command" oncommand="StudentAbschlusspruefungPrintPruefungsprotokollMultiple(event,'en2');"/>
|
||||
<command id="menu-dokumente-pruefungszeugnis:command" oncommand="StudentAbschlusspruefungPrintPruefungszeugnisMultiple(event,'deutsch');"/>
|
||||
<command id="menu-dokumente-pruefungszeugnis_englisch:command" oncommand="StudentAbschlusspruefungPrintPruefungszeugnisMultiple(event,'englisch');"/>
|
||||
<command id="menu-dokumente-urkunde_deutsch:command" oncommand="StudentAbschlusspruefungPrintUrkundeMultiple(event, 'deutsch')"/>
|
||||
<command id="menu-dokumente-urkunde_englisch:command" oncommand="StudentAbschlusspruefungPrintUrkundeMultiple(event, 'englisch')"/>
|
||||
<command id="menu-dokumente-ausbildungsvertrag:command" oncommand="StudentPrintAusbildungsvertrag(event);"/>
|
||||
<command id="menu-dokumente-ausbildungsvertrag_englisch:command" oncommand="StudentPrintAusbildungsvertragEnglisch(event);"/>
|
||||
<command id="menu-cis-studienplan:command" oncommand="StudentCisStudienplan(event);"/>
|
||||
<command id="menu-cis-notenliste:command" oncommand="StudentCisNotenliste(event);"/>
|
||||
<command id="menu-extras-reihungstest:command" oncommand="ExtrasShowReihungstest();"/>
|
||||
<command id="menu-extras-firma:command" oncommand="ExtrasShowFirmenverwaltung();"/>
|
||||
<command id="menu-extras-lvverwaltung:command" oncommand="ExtrasShowLVverwaltung();"/>
|
||||
@@ -648,6 +654,12 @@ foreach($addon_obj->result as $addon)
|
||||
label = "&menu-dokumente-studienblatt.label;"
|
||||
command = "menu-dokumente-studienblatt:command"
|
||||
accesskey = "&menu-dokumente-studienblatt.accesskey;"/>
|
||||
<menuitem
|
||||
id = "menu-dokumente-studienblatt_englisch"
|
||||
key = "menu-dokumente-studienblatt_englisch:key"
|
||||
label = "&menu-dokumente-studienblatt_englisch.label;"
|
||||
command = "menu-dokumente-studienblatt_englisch:command"
|
||||
accesskey = "&menu-dokumente-studienblatt_englisch.accesskey;"/>
|
||||
<menuseparator/>
|
||||
<menuitem
|
||||
id = "menu-dokumente-pruefungsprotokoll"
|
||||
@@ -711,6 +723,23 @@ foreach($addon_obj->result as $addon)
|
||||
accesskey = "&menu-dokumente-ausbildungsvertrag_englisch.accesskey;"/>
|
||||
</menupopup>
|
||||
</menu>
|
||||
<!-- ***** CIS ***** -->
|
||||
<menu id="menu-cis" label="&menu-cis.label;" accesskey="&menu-cis.accesskey;">
|
||||
<menupopup id="menu-cis-popup">
|
||||
<menuitem
|
||||
id = "menu-cis-studienplan"
|
||||
key = "menu-cis-studienplan:key"
|
||||
label = "&menu-cis-studienplan.label;"
|
||||
command = "menu-cis-studienplan:command"
|
||||
accesskey = "&menu-cis-studienplan.accesskey;"/>
|
||||
<menuitem
|
||||
id = "menu-cis-notenliste"
|
||||
key = "menu-cis-notenliste:key"
|
||||
label = "&menu-cis-notenliste.label;"
|
||||
command = "menu-cis-notenliste:command"
|
||||
accesskey = "&menu-cis-notenliste.accesskey;"/>
|
||||
</menupopup>
|
||||
</menu>
|
||||
<!-- ***** Zusatzmenues inkludieren ***** -->
|
||||
<?php
|
||||
include('../include/'.EXT_FKT_PATH.'/fas_zusatzmenues.inc.php');
|
||||
@@ -832,12 +861,6 @@ foreach($addon_obj->result as $addon)
|
||||
<!-- HILFE -->
|
||||
<menu id="menu-help" label="&menu-help.label;" accesskey="&menu-help.accesskey;">
|
||||
<menupopup id="menu-about-popup">
|
||||
<menuitem
|
||||
id = "menu-help-about"
|
||||
key = "menu-help-about:key"
|
||||
label = "&menu-help-about.label;"
|
||||
command = "menu-help-about:command"
|
||||
accesskey = "&menu-help-about.accesskey;"/>
|
||||
<menuitem
|
||||
id = "menu-help-manual"
|
||||
key = "menu-help-manual:key"
|
||||
@@ -850,6 +873,12 @@ foreach($addon_obj->result as $addon)
|
||||
label = "&menu-help-todo.label;"
|
||||
command = "menu-help-todo:command"
|
||||
accesskey = "&menu-help-todo.accesskey;"/>
|
||||
<menuitem
|
||||
id = "menu-help-about"
|
||||
key = "menu-help-about:key"
|
||||
label = "&menu-help-about.label;"
|
||||
command = "menu-help-about:command"
|
||||
accesskey = "&menu-help-about.accesskey;"/>
|
||||
</menupopup>
|
||||
</menu>
|
||||
</menubar>
|
||||
|
||||
+132
-65
@@ -65,9 +65,9 @@ if(!$error)
|
||||
//in der Variable type wird die auszufuehrende Aktion mituebergeben
|
||||
if(isset($_POST['type']) && $_POST['type']=='adressesave') // ***** ADRESSEN ***** //
|
||||
{
|
||||
if(($_POST['studiengang_kz']!='' && !$rechte->isBerechtigt('admin', $_POST['studiengang_kz'],'suid') &&
|
||||
if(($_POST['studiengang_kz']!='' && !$rechte->isBerechtigt('admin', $_POST['studiengang_kz'],'suid') &&
|
||||
!$rechte->isBerechtigt('assistenz', $_POST['studiengang_kz'], 'suid')) ||
|
||||
($_POST['studiengang_kz']=='' && !$rechte->isBerechtigt('admin', null, 'suid') &&
|
||||
($_POST['studiengang_kz']=='' && !$rechte->isBerechtigt('admin', null, 'suid') &&
|
||||
!$rechte->isBerechtigt('mitarbeiter', null, 'suid')))
|
||||
{
|
||||
$return = false;
|
||||
@@ -79,19 +79,19 @@ if(!$error)
|
||||
{
|
||||
//Speichert die Adressdaten in die Datenbank
|
||||
$adresse = new adresse();
|
||||
|
||||
|
||||
if($_POST['neu']=='false')
|
||||
{
|
||||
$adresse->load($_POST['adresse_id']);
|
||||
$adresse->new = false;
|
||||
}
|
||||
else
|
||||
else
|
||||
{
|
||||
$adresse->insertamum = date('Y-m-d H:i:s');
|
||||
$adresse->insertvon = $user;
|
||||
$adresse->new = true;
|
||||
}
|
||||
|
||||
|
||||
$adresse->adresse_id = $_POST['adresse_id'];
|
||||
$adresse->person_id = $_POST['person_id'];
|
||||
$adresse->name = $_POST['name'];
|
||||
@@ -106,19 +106,19 @@ if(!$error)
|
||||
$adresse->firma_id = $_POST['firma_id'];
|
||||
$adresse->updateamum = date('Y-m-d H:i:s');
|
||||
$adresse->updatevon = $user;
|
||||
|
||||
|
||||
//Wenn die Nation Oesterreich ist, dann muss die Gemeinde in der Tabelle Gemeinde vorkommen
|
||||
if($_POST['nation']=='A')
|
||||
{
|
||||
if(is_numeric($_POST['plz']) && $_POST['plz']<32000)
|
||||
{
|
||||
$qry = "SELECT * FROM bis.tbl_gemeinde WHERE lower(name)=lower(".$db->db_add_param($_POST['gemeinde']).")
|
||||
$qry = "SELECT * FROM bis.tbl_gemeinde WHERE lower(name)=lower(".$db->db_add_param($_POST['gemeinde']).")
|
||||
AND plz=".$db->db_add_param($_POST['plz']);
|
||||
if($db->db_query($qry))
|
||||
{
|
||||
if($row = $db->db_fetch_object())
|
||||
{
|
||||
$adresse->gemeinde = $row->name;
|
||||
$adresse->gemeinde = $row->name;
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -134,14 +134,14 @@ if(!$error)
|
||||
$return = false;
|
||||
}
|
||||
}
|
||||
else
|
||||
else
|
||||
{
|
||||
$error = true;
|
||||
$errormsg = 'Postleitzahl ist fuer diese Nation ungueltig';
|
||||
$return = false;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if(!$error)
|
||||
{
|
||||
if($adresse->save())
|
||||
@@ -159,9 +159,9 @@ if(!$error)
|
||||
}
|
||||
elseif(isset($_POST['type']) && $_POST['type']=='adressedelete')
|
||||
{
|
||||
if(($_POST['studiengang_kz']!='' && !$rechte->isBerechtigt('admin', $_POST['studiengang_kz'],'suid') &&
|
||||
if(($_POST['studiengang_kz']!='' && !$rechte->isBerechtigt('admin', $_POST['studiengang_kz'],'suid') &&
|
||||
!$rechte->isBerechtigt('assistenz', $_POST['studiengang_kz'], 'suid')) ||
|
||||
($_POST['studiengang_kz']=='' && !$rechte->isBerechtigt('admin', null, 'suid') &&
|
||||
($_POST['studiengang_kz']=='' && !$rechte->isBerechtigt('admin', null, 'suid') &&
|
||||
!$rechte->isBerechtigt('mitarbeiter', null, 'suid')))
|
||||
{
|
||||
$return = false;
|
||||
@@ -169,7 +169,7 @@ if(!$error)
|
||||
$data = '';
|
||||
$error = true;
|
||||
}
|
||||
else
|
||||
else
|
||||
{
|
||||
//Loescht Adressen aus der DB
|
||||
$adresse = new adresse();
|
||||
@@ -178,7 +178,7 @@ if(!$error)
|
||||
$return = false;
|
||||
$errormsg = $adresse->errormsg;
|
||||
}
|
||||
else
|
||||
else
|
||||
{
|
||||
if($adresse->heimatadresse)
|
||||
{
|
||||
@@ -187,7 +187,7 @@ if(!$error)
|
||||
$return = false;
|
||||
$errormsg = 'Heimatadressen dürfen nicht gelöscht werden, da diese für die BIS-Meldung relevant sind. Um die Adresse dennoch zu löschen, entfernen sie das Hackerl bei Heimatadresse!';
|
||||
}
|
||||
else
|
||||
else
|
||||
{
|
||||
if($adresse->delete($_POST['adresse_id']))
|
||||
{
|
||||
@@ -204,9 +204,9 @@ if(!$error)
|
||||
}
|
||||
elseif(isset($_POST['type']) && $_POST['type']=='kontaktsave') // ***** KONTAKT ***** //
|
||||
{
|
||||
if(($_POST['studiengang_kz']!='' && !$rechte->isBerechtigt('admin', $_POST['studiengang_kz'],'suid') &&
|
||||
if(($_POST['studiengang_kz']!='' && !$rechte->isBerechtigt('admin', $_POST['studiengang_kz'],'suid') &&
|
||||
!$rechte->isBerechtigt('assistenz', $_POST['studiengang_kz'], 'suid')) ||
|
||||
($_POST['studiengang_kz']=='' && !$rechte->isBerechtigt('admin', null, 'suid') &&
|
||||
($_POST['studiengang_kz']=='' && !$rechte->isBerechtigt('admin', null, 'suid') &&
|
||||
!$rechte->isBerechtigt('mitarbeiter', null, 'suid')))
|
||||
{
|
||||
$return = false;
|
||||
@@ -214,11 +214,11 @@ if(!$error)
|
||||
$data = '';
|
||||
$error = true;
|
||||
}
|
||||
else
|
||||
else
|
||||
{
|
||||
//Speichert die Kontaktdaten in die Datenbank
|
||||
$kontakt = new kontakt();
|
||||
|
||||
|
||||
if($_POST['neu']=='false')
|
||||
{
|
||||
$kontakt->load($_POST['kontakt_id']);
|
||||
@@ -230,7 +230,7 @@ if(!$error)
|
||||
$kontakt->insertvon = $user;
|
||||
$kontakt->new = true;
|
||||
}
|
||||
|
||||
|
||||
$kontakt->kontakt_id = $_POST['kontakt_id'];
|
||||
$kontakt->person_id = $_POST['person_id'];
|
||||
$kontakt->anmerkung = $_POST['anmerkung'];
|
||||
@@ -240,7 +240,7 @@ if(!$error)
|
||||
$kontakt->standort_id = $_POST['standort_id'];
|
||||
$kontakt->updateamum = date('Y-m-d H:i:s');
|
||||
$kontakt->updatevon = $user;
|
||||
|
||||
|
||||
if($kontakt->save())
|
||||
{
|
||||
$return = true;
|
||||
@@ -255,9 +255,9 @@ if(!$error)
|
||||
}
|
||||
elseif(isset($_POST['type']) && $_POST['type']=='kontaktdelete')
|
||||
{
|
||||
if(($_POST['studiengang_kz']!='' && !$rechte->isBerechtigt('admin', $_POST['studiengang_kz'],'suid') &&
|
||||
if(($_POST['studiengang_kz']!='' && !$rechte->isBerechtigt('admin', $_POST['studiengang_kz'],'suid') &&
|
||||
!$rechte->isBerechtigt('assistenz', $_POST['studiengang_kz'], 'suid')) ||
|
||||
($_POST['studiengang_kz']=='' && !$rechte->isBerechtigt('admin', null, 'suid') &&
|
||||
($_POST['studiengang_kz']=='' && !$rechte->isBerechtigt('admin', null, 'suid') &&
|
||||
!$rechte->isBerechtigt('mitarbeiter', null, 'suid')))
|
||||
{
|
||||
$return = false;
|
||||
@@ -265,16 +265,16 @@ if(!$error)
|
||||
$data = '';
|
||||
$error = true;
|
||||
}
|
||||
else
|
||||
else
|
||||
{
|
||||
//Loescht Kontaktdaten aus der Datenbank
|
||||
$kontakt = new kontakt();
|
||||
|
||||
|
||||
if($kontakt->delete($_POST['kontakt_id']))
|
||||
{
|
||||
$return = true;
|
||||
}
|
||||
else
|
||||
else
|
||||
{
|
||||
$return = false;
|
||||
$errormsg = $kontakt->errormsg;
|
||||
@@ -290,23 +290,23 @@ if(!$error)
|
||||
$data = '';
|
||||
$error = true;
|
||||
}
|
||||
else
|
||||
else
|
||||
{
|
||||
//Speichert die Kontaktdaten in die Datenbank
|
||||
$bankverbindung = new bankverbindung();
|
||||
|
||||
|
||||
if($_POST['neu']=='false')
|
||||
{
|
||||
$bankverbindung->load($_POST['bankverbindung_id']);
|
||||
$bankverbindung->new = false;
|
||||
}
|
||||
else
|
||||
else
|
||||
{
|
||||
$bankverbindung->insertamum = date('Y-m-d H:i:s');
|
||||
$bankverbindung->insertvon = $user;
|
||||
$bankverbindung->new = true;
|
||||
}
|
||||
|
||||
|
||||
$bankverbindung->bankverbindung_id = $_POST['bankverbindung_id'];
|
||||
$bankverbindung->person_id = $_POST['person_id'];
|
||||
$bankverbindung->name = $_POST['name'];
|
||||
@@ -319,13 +319,13 @@ if(!$error)
|
||||
$bankverbindung->verrechnung = ($_POST['verrechnung']=='true'?true:false);
|
||||
$bankverbindung->updateamum = date('Y-m-d H:i:s');
|
||||
$bankverbindung->updatevon = $user;
|
||||
|
||||
|
||||
if($bankverbindung->save())
|
||||
{
|
||||
$return = true;
|
||||
$data = $bankverbindung->bankverbindung_id;
|
||||
}
|
||||
else
|
||||
else
|
||||
{
|
||||
$return = false;
|
||||
$errormsg = $bankverbindung->errormsg;
|
||||
@@ -342,26 +342,26 @@ if(!$error)
|
||||
$error = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
{
|
||||
//Loescht Bankverbindungen aus der Datenbank
|
||||
$bankverbindung = new bankverbindung();
|
||||
|
||||
|
||||
if($bankverbindung->delete($_POST['bankverbindung_id']))
|
||||
{
|
||||
$return = true;
|
||||
}
|
||||
else
|
||||
else
|
||||
{
|
||||
$return = false;
|
||||
$errormsg = $bankverbindung->errormsg;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
elseif(isset($_POST['type']) && $_POST['type']=='funktionsave') // ****************** BENUTZERFUNKTION **************** //
|
||||
{
|
||||
if(($_POST['studiengang_kz_berecht']!='' && !$rechte->isBerechtigt('admin', $_POST['studiengang_kz_berecht'],'suid') &&
|
||||
if(($_POST['studiengang_kz_berecht']!='' && !$rechte->isBerechtigt('admin', $_POST['studiengang_kz_berecht'],'suid') &&
|
||||
!$rechte->isBerechtigt('assistenz', $_POST['studiengang_kz_berecht'], 'suid')) ||
|
||||
($_POST['studiengang_kz_berecht']=='' && !$rechte->isBerechtigt('admin', null, 'suid') &&
|
||||
($_POST['studiengang_kz_berecht']=='' && !$rechte->isBerechtigt('admin', null, 'suid') &&
|
||||
!$rechte->isBerechtigt('mitarbeiter', null, 'suid')))
|
||||
{
|
||||
$return = false;
|
||||
@@ -370,7 +370,7 @@ if(!$error)
|
||||
$error = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
{
|
||||
$benutzerfunktion = new benutzerfunktion();
|
||||
if(isset($_POST['neu']) && $_POST['neu']=='true')
|
||||
{
|
||||
@@ -378,7 +378,7 @@ if(!$error)
|
||||
$benutzerfunktion->insertamum=date('Y-m-d H:i:s');
|
||||
$benutzerfunktion->insertvon = $user;
|
||||
}
|
||||
else
|
||||
else
|
||||
{
|
||||
if(isset($_POST['benutzerfunktion_id']))
|
||||
{
|
||||
@@ -386,14 +386,14 @@ if(!$error)
|
||||
{
|
||||
$benutzerfunktion->new = false;
|
||||
}
|
||||
else
|
||||
else
|
||||
{
|
||||
$error = true;
|
||||
$errormsg = 'Fehler beim Laden der Funktion: '.$benutzerfunktion->errormsg;
|
||||
$return = false;
|
||||
}
|
||||
}
|
||||
else
|
||||
else
|
||||
{
|
||||
$error = true;
|
||||
$errormsg = 'Benutzerfunktion_id wurde nicht uebergeben';
|
||||
@@ -420,13 +420,13 @@ if(!$error)
|
||||
$benutzerfunktion->datum_bis = $_POST['datum_bis'];
|
||||
$benutzerfunktion->bezeichnung = $_POST['bezeichnung'];
|
||||
$benutzerfunktion->wochenstunden = str_replace(',','.',$_POST['wochenstunden']);
|
||||
|
||||
|
||||
if($benutzerfunktion->save())
|
||||
{
|
||||
$return = true;
|
||||
$data = $benutzerfunktion->benutzerfunktion_id;
|
||||
}
|
||||
else
|
||||
else
|
||||
{
|
||||
$return = false;
|
||||
$errormsg = 'Fehler beim Speichern:'.$benutzerfunktion->errormsg;
|
||||
@@ -436,9 +436,9 @@ if(!$error)
|
||||
}
|
||||
elseif(isset($_POST['type']) && $_POST['type']=='funktiondelete')
|
||||
{
|
||||
if(($_POST['studiengang_kz']!='' && !$rechte->isBerechtigt('admin', $_POST['studiengang_kz'],'suid') &&
|
||||
if(($_POST['studiengang_kz']!='' && !$rechte->isBerechtigt('admin', $_POST['studiengang_kz'],'suid') &&
|
||||
!$rechte->isBerechtigt('assistenz', $_POST['studiengang_kz'], 'suid')) ||
|
||||
($_POST['studiengang_kz']=='' && !$rechte->isBerechtigt('admin', null, 'suid') &&
|
||||
($_POST['studiengang_kz']=='' && !$rechte->isBerechtigt('admin', null, 'suid') &&
|
||||
!$rechte->isBerechtigt('mitarbeiter', null, 'suid')))
|
||||
{
|
||||
$return = false;
|
||||
@@ -447,15 +447,15 @@ if(!$error)
|
||||
$error = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
{
|
||||
if(isset($_POST['benutzerfunktion_id']) && is_numeric($_POST['benutzerfunktion_id']))
|
||||
{
|
||||
$benutzerfunktion = new benutzerfunktion();
|
||||
if($benutzerfunktion->delete($_POST['benutzerfunktion_id']))
|
||||
{
|
||||
$return = true;
|
||||
$return = true;
|
||||
}
|
||||
else
|
||||
else
|
||||
{
|
||||
$return = false;
|
||||
$errormsg = 'Fehler beim Loeschen:'.$benutzerfunktion->errormsg;
|
||||
@@ -466,10 +466,10 @@ if(!$error)
|
||||
elseif(isset($_POST['type']) && $_POST['type']=='variablechange') /**********************SONSTIGES*****************/
|
||||
{
|
||||
$variable = new variable();
|
||||
|
||||
|
||||
$variable->uid = $user;
|
||||
|
||||
// Aendert die Variable Studiensemester
|
||||
|
||||
// Aendert die Variable Studiensemester
|
||||
if(isset($_POST['stsem']))
|
||||
{
|
||||
if(isset($_POST['wert']) && $_POST['wert']!=0)
|
||||
@@ -477,9 +477,9 @@ if(!$error)
|
||||
$stsem = new studiensemester();
|
||||
$studiensemester_kurzbz = $stsem->jump($_POST['stsem'], $_POST['wert']);
|
||||
}
|
||||
else
|
||||
else
|
||||
$studiensemester_kurzbz = $_POST['stsem'];
|
||||
|
||||
|
||||
$variable->name = 'semester_aktuell';
|
||||
$variable->wert = $studiensemester_kurzbz;
|
||||
}
|
||||
@@ -497,7 +497,7 @@ if(!$error)
|
||||
{
|
||||
$error = true;
|
||||
}
|
||||
|
||||
|
||||
if(!$error)
|
||||
{
|
||||
if($variable->save())
|
||||
@@ -521,9 +521,9 @@ if(!$error)
|
||||
{
|
||||
if(isset($_POST['person_id']) && is_numeric($_POST['person_id']))
|
||||
{
|
||||
if(($_POST['studiengang_kz']!='' && !$rechte->isBerechtigt('admin', $_POST['studiengang_kz'],'suid') &&
|
||||
if(($_POST['studiengang_kz']!='' && !$rechte->isBerechtigt('admin', $_POST['studiengang_kz'],'suid') &&
|
||||
!$rechte->isBerechtigt('assistenz', $_POST['studiengang_kz'], 'suid')) ||
|
||||
($_POST['studiengang_kz']=='' && !$rechte->isBerechtigt('admin', null, 'suid') &&
|
||||
($_POST['studiengang_kz']=='' && !$rechte->isBerechtigt('admin', null, 'suid') &&
|
||||
!$rechte->isBerechtigt('mitarbeiter', null, 'suid')))
|
||||
{
|
||||
$return = false;
|
||||
@@ -549,23 +549,23 @@ if(!$error)
|
||||
$fs->updateamum = date('Y-m-d H:i:s');
|
||||
$fs->updatevon = $user;
|
||||
$fs->save(true);
|
||||
|
||||
|
||||
$return = true;
|
||||
}
|
||||
else
|
||||
else
|
||||
{
|
||||
$return = false;
|
||||
$errormsg = 'Fehler beim Loeschen des grossen Bildes';
|
||||
}
|
||||
}
|
||||
else
|
||||
else
|
||||
{
|
||||
$return = false;
|
||||
$errormsg = 'Fehler beim Loeschen des Bildes';
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
else
|
||||
{
|
||||
$return = false;
|
||||
$errormsg = 'Falsche Parameteruebergabe'.$_POST['person_id'].'x';
|
||||
@@ -574,16 +574,83 @@ if(!$error)
|
||||
elseif(isset($_POST['type']) && $_POST['type']=='getvariable')
|
||||
{
|
||||
$variable = new variable();
|
||||
|
||||
|
||||
if($variable->load($user, $_POST['name']))
|
||||
{
|
||||
{
|
||||
$return = true;
|
||||
$data = $variable->wert;
|
||||
}
|
||||
else
|
||||
else
|
||||
{
|
||||
if($variable->errormsg=='')
|
||||
{
|
||||
$return = true;
|
||||
$data = '';
|
||||
}
|
||||
else
|
||||
{
|
||||
$return = false;
|
||||
$errormsg = 'Fehler: '.$variable->errormsg;
|
||||
}
|
||||
}
|
||||
}
|
||||
elseif(isset($_POST['type']) && $_POST['type']=='getprivatemailadressUID')
|
||||
{
|
||||
$variable = new variable();
|
||||
$variable->loadVariables($user);
|
||||
if(isset($_POST['uids']))
|
||||
{
|
||||
$pers_arr = explode(';',$_POST['uids']);
|
||||
$data='';
|
||||
$anz_error=0;
|
||||
|
||||
foreach ($pers_arr as $uid)
|
||||
{
|
||||
if($uid!='')
|
||||
{
|
||||
$qry = "SELECT kontakt
|
||||
FROM
|
||||
public.tbl_kontakt
|
||||
JOIN public.tbl_benutzer USING(person_id)
|
||||
WHERE kontakttyp='email'
|
||||
AND uid=".$db->db_add_param($uid)." AND zustellung=true LIMIT 1";
|
||||
|
||||
if($result = $db->db_query($qry))
|
||||
{
|
||||
if($row = $db->db_fetch_object($result))
|
||||
{
|
||||
if($data!='')
|
||||
$data.=$variable->variable->emailadressentrennzeichen.$row->kontakt;
|
||||
else
|
||||
$data = $row->kontakt;
|
||||
}
|
||||
else
|
||||
{
|
||||
$anz_error++;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if($data!='')
|
||||
{
|
||||
if($anz_error==0)
|
||||
$return = true;
|
||||
else
|
||||
{
|
||||
$return = false;
|
||||
$errormsg = "Bei $anz_error Personen wurde keine Emailadresse gefunden!";
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$return = false;
|
||||
$errormsg = 'Es wurde keine Privatadresse gefunden';
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$return = false;
|
||||
$errormsg = 'Fehler: '.$variable->errormsg;
|
||||
$errormsg = 'Fehlerhafte Parameteruebergabe';
|
||||
}
|
||||
}
|
||||
else
|
||||
|
||||
+1960
-1804
File diff suppressed because it is too large
Load Diff
+44
-43
@@ -105,45 +105,6 @@ echo '<?xul-overlay href="'.APP_ROOT.'content/mitarbeiter/mitarbeiteroverlay.xul
|
||||
</template>
|
||||
</tree>
|
||||
|
||||
<vbox id="vbox-fachbereich">
|
||||
<hbox>
|
||||
<spacer flex="1" />
|
||||
<toolbarbutton label="Laden/Aktualisieren" image="../skin/images/refresh.png" tooltiptext="Liste neu laden" oncommand="FachbereichTreeRefresh()"/>
|
||||
<spacer flex="1" />
|
||||
</hbox>
|
||||
<tree id="tree-fachbereich" onmouseup="onFachbereichSelect(event);"
|
||||
seltype="single" hidecolumnpicker="false" flex="1"
|
||||
datasources="rdf:null" ref="http://www.technikum-wien.at/fachbereich/liste">
|
||||
<treecols>
|
||||
<treecol id="fachbereich-treecol-bezeichnung" label="Bezeichnung" flex="3" primary="true" />
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="fachbereich-treecol-kurzbz" label="Kurzbz" flex="2" hidden="true"/>
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="fachbereich-treecol-farbe" label="Farbe" flex="1" hidden="true"/>
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="fachbereich-treecol-stg_kz" label="Stg_kz" flex="1" hidden="true"/>
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="fachbereich-treecol-uid" label="UID" flex="1" hidden="true"/>
|
||||
</treecols>
|
||||
|
||||
<template>
|
||||
<rule>
|
||||
<treechildren>
|
||||
<treeitem uri="rdf:*">
|
||||
<treerow>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/fachbereich/rdf#bezeichnung"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/fachbereich/rdf#kurzbz"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/fachbereich/rdf#farbe"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/fachbereich/rdf#studiengang_kz"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/fachbereich/rdf#uid"/>
|
||||
</treerow>
|
||||
</treeitem>
|
||||
</treechildren>
|
||||
</rule>
|
||||
</template>
|
||||
</tree>
|
||||
</vbox>
|
||||
|
||||
<vbox id="vbox-organisationseinheit">
|
||||
<tree id="tree-organisationseinheit" onmouseup="onOrganisationseinheitSelect(event);"
|
||||
seltype="single" hidecolumnpicker="false" flex="1"
|
||||
@@ -155,7 +116,7 @@ echo '<?xul-overlay href="'.APP_ROOT.'content/mitarbeiter/mitarbeiteroverlay.xul
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="organisationseinheit-treecol-oe_kurzbz" label="oe_kurzbz" hidden="true" flex="1"/>
|
||||
</treecols>
|
||||
|
||||
|
||||
<template>
|
||||
<rule>
|
||||
<treechildren>
|
||||
@@ -303,15 +264,55 @@ echo '<?xul-overlay href="'.APP_ROOT.'content/mitarbeiter/mitarbeiteroverlay.xul
|
||||
</treeitem>
|
||||
</treechildren>
|
||||
</treeitem>
|
||||
<?php
|
||||
if($rechte->isBerechtigt('vertrag/mitarbeiter'))
|
||||
{
|
||||
echo '
|
||||
<treeitem container="true" open="true">
|
||||
<treerow>
|
||||
<treecell label="Vertrag"/>
|
||||
<treecell label="Vertrag"/>
|
||||
</treerow>
|
||||
<treechildren>
|
||||
<treeitem>
|
||||
<treerow>
|
||||
<treecell label="noch nicht retourniert"/>
|
||||
<treecell label="VertragNochNichtRetour"/>
|
||||
</treerow>
|
||||
</treeitem>
|
||||
<treeitem>
|
||||
<treerow>
|
||||
<treecell label="Habilitiert"/>
|
||||
<treecell label="VertragHabilitiert"/>
|
||||
</treerow>
|
||||
</treeitem>
|
||||
<treeitem>
|
||||
<treerow>
|
||||
<treecell label="nicht Habilitiert"/>
|
||||
<treecell label="VertragNichtHabilitiert"/>
|
||||
</treerow>
|
||||
</treeitem>
|
||||
<treeitem>
|
||||
<treerow>
|
||||
<treecell label="noch nicht gedruckt"/>
|
||||
<treecell label="VertragNichtGedruckt"/>
|
||||
</treerow>
|
||||
</treeitem>
|
||||
</treechildren>
|
||||
</treeitem>
|
||||
';
|
||||
}
|
||||
?>
|
||||
</treechildren>
|
||||
</tree>
|
||||
|
||||
<vbox id="vbox-main">
|
||||
<popupset>
|
||||
<menupopup id="fasoverlay-lektor-tree-popup">
|
||||
<menuitem label="Mail senden" oncommand="LektorFunktionMail();" />
|
||||
<menuitem label="EMail senden (intern)" oncommand="LektorFunktionMail();" />
|
||||
<menuitem label="EMail senden (privat)" oncommand="LektorFunktionMailPrivat();" />
|
||||
<menuseparator />
|
||||
<menuitem label="Entfernen" oncommand="LektorFunktionDel();" />
|
||||
<menuitem label="Entfernen" oncommand="LektorFunktionDel();" />
|
||||
</menupopup>
|
||||
</popupset>
|
||||
<tabbox id="tabbox-main" flex="3" orient="vertical">
|
||||
@@ -344,7 +345,7 @@ echo '<?xul-overlay href="'.APP_ROOT.'content/mitarbeiter/mitarbeiteroverlay.xul
|
||||
{
|
||||
echo '<vbox id="MitarbeiterEditor" />';
|
||||
}
|
||||
|
||||
|
||||
?>
|
||||
<vbox id="box-notiz">
|
||||
<box class="Notiz" flex="1" id="box-notizen"/>
|
||||
|
||||
+350
-261
@@ -1,261 +1,350 @@
|
||||
<?php
|
||||
/* Copyright (C) 2006 Technikum-Wien
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of the
|
||||
* License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* Authors: Christian Paminger <christian.paminger@technikum-wien.at>,
|
||||
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at> and
|
||||
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
|
||||
*/
|
||||
/*
|
||||
* functions.js.php
|
||||
*
|
||||
* enthaelt globale JS Funktionen
|
||||
*/
|
||||
require_once('../config/vilesci.config.inc.php');
|
||||
require_once('../include/functions.inc.php');
|
||||
?>
|
||||
|
||||
// ****
|
||||
// * Liefert den Value aus einer XML-Datasource
|
||||
// ****
|
||||
function getTargetHelper(dsource,subj,predi)
|
||||
{
|
||||
if (dsource.hasArcOut(subj, predi))
|
||||
{
|
||||
var target = dsource.GetTarget(subj, predi, true);
|
||||
if (target instanceof Components.interfaces.nsIRDFLiteral ||
|
||||
target instanceof Components.interfaces.nsIRDFInt)
|
||||
{
|
||||
return target.Value;
|
||||
}
|
||||
}
|
||||
return "";
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Gibt eine Message auf die Javascript Console aus
|
||||
// ****
|
||||
function debug(msg)
|
||||
{
|
||||
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
|
||||
var consoleService = Components.classes["@mozilla.org/consoleservice;1"]
|
||||
.getService(Components.interfaces.nsIConsoleService);
|
||||
consoleService.logStringMessage(msg);
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Liefert einen Timestamp in Sekunden
|
||||
// * zum anhaengen an eine URL um Caching zu verhindern
|
||||
// ****
|
||||
function gettimestamp()
|
||||
{
|
||||
var now = new Date();
|
||||
var ret = now.getHours()*60*60*60;
|
||||
ret = ret + now.getMinutes()*60*60;
|
||||
ret = ret + now.getSeconds()*60;
|
||||
ret = ret + now.getMilliseconds();
|
||||
return ret;
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Parst die Returnwerte der DBDML Scripte
|
||||
// * @param response ... RDF Response des DBDML Scripts
|
||||
// *
|
||||
// * obj.dbdml_return ... Returnwert des Scripts
|
||||
// * obj.dbdml_errormsg ... Errormessage
|
||||
// * obj.dbdml_warning ... Warnhinweis
|
||||
// * obj.dbdml_data ... zusaetzliche Daten vom Script. zB ID des angelegten Datansatzes
|
||||
// ****
|
||||
function ParseReturnValue(response)
|
||||
{
|
||||
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
|
||||
// Returnwerte aus RDF abfragen
|
||||
var dsource=parseRDFString(response, 'http://www.technikum-wien.at/dbdml');
|
||||
|
||||
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].
|
||||
getService(Components.interfaces.nsIRDFService);
|
||||
var subject = rdfService.GetResource("http://www.technikum-wien.at/dbdml/0");
|
||||
|
||||
var predicateNS = "http://www.technikum-wien.at/dbdml/rdf";
|
||||
|
||||
retval = getTargetHelper(dsource, subject, rdfService.GetResource( predicateNS + "#return" ));
|
||||
if(retval=='true')
|
||||
this.dbdml_return = true;
|
||||
else
|
||||
this.dbdml_return = false;
|
||||
this.dbdml_errormsg = getTargetHelper(dsource, subject, rdfService.GetResource( predicateNS + "#errormsg" ));
|
||||
this.dbdml_data = getTargetHelper(dsource, subject, rdfService.GetResource( predicateNS + "#data" ));
|
||||
this.dbdml_warning = getTargetHelper(dsource, subject, rdfService.GetResource( predicateNS + "#warning" ));
|
||||
//debug('data:'+this.dbdml_data+' errormsg:'+this.dbdml_errormsg+' return:'+this.dbdml_return );
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Zeigt einen Text in der Statusbar an
|
||||
// ****
|
||||
function SetStatusBarText(text)
|
||||
{
|
||||
document.getElementById('statusbarpanel-text').label=text;
|
||||
}
|
||||
|
||||
|
||||
// ****
|
||||
// * Prueft ein Datum auf Gueltigkeit
|
||||
// * Erlaubte Formate: 1.1.2007, 31.12.2007
|
||||
// ****
|
||||
function CheckDatum(datum)
|
||||
{
|
||||
var pattern = /^(0[1-9]|[1-9]|[12][0-9]|3[01])[.](0[1-9]|[1-9]|1[012])[.](19|20)\d\d$/
|
||||
|
||||
if(pattern.exec(datum))
|
||||
return true;
|
||||
else
|
||||
return false;
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Wandelt ein Datum ins ISO Format um
|
||||
// * aus 31.2.2007 wird 2007-02-31
|
||||
// ****
|
||||
function ConvertDateToISO(datum)
|
||||
{
|
||||
if(datum!='')
|
||||
{
|
||||
arr = datum.split('.');
|
||||
|
||||
if(arr[0].length==1)
|
||||
arr[0]='0'+arr[0];
|
||||
|
||||
if(arr[1].length==1)
|
||||
arr[1]='0'+arr[1];
|
||||
|
||||
return arr[2]+'-'+arr[1]+'-'+arr[0];
|
||||
}
|
||||
else
|
||||
return '';
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Liefert die Daten aus der Zwischenablage
|
||||
// ****
|
||||
function getDataFromClipboard()
|
||||
{
|
||||
netscape.security.PrivilegeManager.enablePrivilege('UniversalXPConnect');
|
||||
var clip = Components.classes["@mozilla.org/widget/clipboard;1"].getService(Components.interfaces.nsIClipboard);
|
||||
if (!clip)
|
||||
return false;
|
||||
var trans = Components.classes["@mozilla.org/widget/transferable;1"].createInstance(Components.interfaces.nsITransferable);
|
||||
if (!trans)
|
||||
return false;
|
||||
|
||||
trans.addDataFlavor("text/unicode");
|
||||
|
||||
clip.getData(trans,clip.kGlobalClipboard);
|
||||
var str = new Object();
|
||||
var strLength = new Object();
|
||||
trans.getTransferData("text/unicode",str,strLength);
|
||||
|
||||
if (str) str = str.value.QueryInterface(Components.interfaces.nsISupportsString);
|
||||
if (str) pastetext = str.data.substring(0,strLength.value / 2);
|
||||
|
||||
return pastetext;
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Oeffnet ein neues Fenster welches dann die Datei 'action' mit dem POST Parameter 'data' aufruft
|
||||
// ****
|
||||
function OpenWindowPost(action, data)
|
||||
{
|
||||
newwindow= window.open ("","FAS","width=350, height=350");
|
||||
newwindow.document.getElementsByTagName('body')[0].innerHTML = "<form id='postform-form' name='postfrm' action='' method='POST'><input type='hidden' id='postform-textbox-data' name='data' /></form>";
|
||||
newwindow.document.getElementById('postform-textbox-data').value=data;
|
||||
newwindow.document.getElementById('postform-form').action=action;
|
||||
newwindow.document.postfrm.submit();
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Liefert das Aktuelle Studiensemester
|
||||
// ****
|
||||
function getStudiensemester()
|
||||
{
|
||||
return document.getElementById('statusbarpanel-semester').label;
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Markiert in einem Editierbaren DropDown Menu
|
||||
// * einen Eintrag.
|
||||
// * @param id = ID der Menulist
|
||||
// * data = value des Eintrages der markiert werden soll
|
||||
// ****
|
||||
function MenulistSelectItemOnValue(id, data)
|
||||
{
|
||||
var children = document.getElementById(id).getElementsByAttribute('value',data);
|
||||
document.getElementById(id).selectedItem=children[0];
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Liefert den value eines Editierbaren DropDowns
|
||||
// * @param id = ID der Menulist
|
||||
// ****
|
||||
function MenulistGetSelectedValue(id)
|
||||
{
|
||||
menulist = document.getElementById(id);
|
||||
|
||||
//Es kann sein, dass im Eingabefeld nichts steht und
|
||||
//trotzdem ein Eintrag auf selected gesetzt ist.
|
||||
//In diesem Fall soll aber kein Wert zurueckgegeben werden
|
||||
if(menulist.value=='')
|
||||
return '';
|
||||
|
||||
//Wenn es Selektierte Eintraege gibt, dann den value zurueckliefern
|
||||
var children = menulist.getElementsByAttribute('selected','true');
|
||||
if(children.length>0)
|
||||
return children[0].value;
|
||||
else
|
||||
return '';
|
||||
}
|
||||
|
||||
// *****
|
||||
// * Liefert den Text aus einem Tree
|
||||
// * Parameter: tree ... Referenz auf den Tree
|
||||
// * col ... id der Spalte
|
||||
// * idx ... Zeilenindex im Tree
|
||||
// *****
|
||||
function getTreeCellText(tree, col, idx)
|
||||
{
|
||||
col = tree.columns ? tree.columns[col] : col;
|
||||
return tree.view.getCellText(idx, col);
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Trim Member Function fuer Strings
|
||||
// ****
|
||||
String.prototype.trim = function() {
|
||||
return this.replace(/^\s+|\s+$/g,"");
|
||||
}
|
||||
|
||||
// ****
|
||||
// * StartsWidth Member Function fuer Strings
|
||||
// ****
|
||||
String.prototype.startsWith = function(str)
|
||||
{return (this.match("^"+str)==str)}
|
||||
|
||||
// ****
|
||||
// * Liefert den Usernamne des eingeloggten Users
|
||||
// ****
|
||||
function getUsername()
|
||||
{
|
||||
return '<?php echo get_uid(); ?>';
|
||||
}
|
||||
<?php
|
||||
/* Copyright (C) 2006 Technikum-Wien
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of the
|
||||
* License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* Authors: Christian Paminger <christian.paminger@technikum-wien.at>,
|
||||
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at> and
|
||||
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
|
||||
*/
|
||||
/*
|
||||
* functions.js.php
|
||||
*
|
||||
* enthaelt globale JS Funktionen
|
||||
*/
|
||||
require_once('../config/vilesci.config.inc.php');
|
||||
require_once('../include/functions.inc.php');
|
||||
|
||||
if(false): ?><script><?php endif; ?>
|
||||
|
||||
// ****
|
||||
// * Liefert den Value aus einer XML-Datasource
|
||||
// ****
|
||||
function getTargetHelper(dsource,subj,predi)
|
||||
{
|
||||
if (dsource.hasArcOut(subj, predi))
|
||||
{
|
||||
var target = dsource.GetTarget(subj, predi, true);
|
||||
if (target instanceof Components.interfaces.nsIRDFLiteral ||
|
||||
target instanceof Components.interfaces.nsIRDFInt)
|
||||
{
|
||||
return target.Value;
|
||||
}
|
||||
}
|
||||
return "";
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Gibt eine Message auf die Javascript Console aus
|
||||
// ****
|
||||
function debug(msg)
|
||||
{
|
||||
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
|
||||
var consoleService = Components.classes["@mozilla.org/consoleservice;1"]
|
||||
.getService(Components.interfaces.nsIConsoleService);
|
||||
consoleService.logStringMessage(msg);
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Liefert einen Timestamp in Sekunden
|
||||
// * zum anhaengen an eine URL um Caching zu verhindern
|
||||
// ****
|
||||
function gettimestamp()
|
||||
{
|
||||
var now = new Date();
|
||||
var ret = now.getHours()*60*60*60;
|
||||
ret = ret + now.getMinutes()*60*60;
|
||||
ret = ret + now.getSeconds()*60;
|
||||
ret = ret + now.getMilliseconds();
|
||||
return ret;
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Parst die Returnwerte der DBDML Scripte
|
||||
// * @param response ... RDF Response des DBDML Scripts
|
||||
// *
|
||||
// * obj.dbdml_return ... Returnwert des Scripts
|
||||
// * obj.dbdml_errormsg ... Errormessage
|
||||
// * obj.dbdml_warning ... Warnhinweis
|
||||
// * obj.dbdml_data ... zusaetzliche Daten vom Script. zB ID des angelegten Datansatzes
|
||||
// ****
|
||||
function ParseReturnValue(response)
|
||||
{
|
||||
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
|
||||
// Returnwerte aus RDF abfragen
|
||||
var dsource=parseRDFString(response, 'http://www.technikum-wien.at/dbdml');
|
||||
|
||||
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].
|
||||
getService(Components.interfaces.nsIRDFService);
|
||||
var subject = rdfService.GetResource("http://www.technikum-wien.at/dbdml/0");
|
||||
|
||||
var predicateNS = "http://www.technikum-wien.at/dbdml/rdf";
|
||||
|
||||
retval = getTargetHelper(dsource, subject, rdfService.GetResource( predicateNS + "#return" ));
|
||||
if(retval=='true')
|
||||
this.dbdml_return = true;
|
||||
else
|
||||
this.dbdml_return = false;
|
||||
this.dbdml_errormsg = getTargetHelper(dsource, subject, rdfService.GetResource( predicateNS + "#errormsg" ));
|
||||
this.dbdml_data = getTargetHelper(dsource, subject, rdfService.GetResource( predicateNS + "#data" ));
|
||||
this.dbdml_warning = getTargetHelper(dsource, subject, rdfService.GetResource( predicateNS + "#warning" ));
|
||||
//debug('data:'+this.dbdml_data+' errormsg:'+this.dbdml_errormsg+' return:'+this.dbdml_return );
|
||||
}
|
||||
|
||||
function parseRDFString(str, url)
|
||||
{
|
||||
try {
|
||||
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
|
||||
} catch(e) {
|
||||
alert(e);
|
||||
return;
|
||||
}
|
||||
|
||||
var memoryDS = Components.classes["@mozilla.org/rdf/datasource;1?name=in-memory-datasource"].createInstance(Components.interfaces.nsIRDFDataSource);
|
||||
|
||||
var ios=Components.classes["@mozilla.org/network/io-service;1"].getService(Components.interfaces.nsIIOService);
|
||||
baseUri=ios.newURI(url,null,null);
|
||||
|
||||
var parser=Components.classes["@mozilla.org/rdf/xml-parser;1"].createInstance(Components.interfaces.nsIRDFXMLParser);
|
||||
parser.parseString(memoryDS,baseUri,str);
|
||||
|
||||
return memoryDS;
|
||||
}
|
||||
|
||||
|
||||
// ****
|
||||
// * Zeigt einen Text in der Statusbar an
|
||||
// ****
|
||||
function SetStatusBarText(text)
|
||||
{
|
||||
document.getElementById('statusbarpanel-text').label=text;
|
||||
}
|
||||
|
||||
|
||||
// ****
|
||||
// * Prueft ein Datum auf Gueltigkeit
|
||||
// * Erlaubte Formate: 1.1.2007, 31.12.2007
|
||||
// ****
|
||||
function CheckDatum(datum)
|
||||
{
|
||||
var pattern = /^(0[1-9]|[1-9]|[12][0-9]|3[01])[.](0[1-9]|[1-9]|1[012])[.](19|20)\d\d$/
|
||||
|
||||
if(pattern.exec(datum))
|
||||
return true;
|
||||
else
|
||||
return false;
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Wandelt ein Datum ins ISO Format um
|
||||
// * aus 31.2.2007 wird 2007-02-31
|
||||
// ****
|
||||
function ConvertDateToISO(datum)
|
||||
{
|
||||
if(datum!='')
|
||||
{
|
||||
arr = datum.split('.');
|
||||
|
||||
if(arr[0].length==1)
|
||||
arr[0]='0'+arr[0];
|
||||
|
||||
if(arr[1].length==1)
|
||||
arr[1]='0'+arr[1];
|
||||
|
||||
return arr[2]+'-'+arr[1]+'-'+arr[0];
|
||||
}
|
||||
else
|
||||
return '';
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Liefert die Daten aus der Zwischenablage
|
||||
// ****
|
||||
function getDataFromClipboard()
|
||||
{
|
||||
netscape.security.PrivilegeManager.enablePrivilege('UniversalXPConnect');
|
||||
var clip = Components.classes["@mozilla.org/widget/clipboard;1"].getService(Components.interfaces.nsIClipboard);
|
||||
if (!clip)
|
||||
return false;
|
||||
var trans = Components.classes["@mozilla.org/widget/transferable;1"].createInstance(Components.interfaces.nsITransferable);
|
||||
if (!trans)
|
||||
return false;
|
||||
|
||||
trans.addDataFlavor("text/unicode");
|
||||
|
||||
clip.getData(trans,clip.kGlobalClipboard);
|
||||
var str = new Object();
|
||||
var strLength = new Object();
|
||||
trans.getTransferData("text/unicode",str,strLength);
|
||||
|
||||
if (str) str = str.value.QueryInterface(Components.interfaces.nsISupportsString);
|
||||
if (str) pastetext = str.data.substring(0,strLength.value / 2);
|
||||
|
||||
return pastetext;
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Oeffnet ein neues Fenster welches dann die Datei 'action' mit dem POST Parameter 'data' aufruft
|
||||
// ****
|
||||
function OpenWindowPost(action, data)
|
||||
{
|
||||
newwindow= window.open ("","FAS","width=350, height=350");
|
||||
newwindow.document.getElementsByTagName('body')[0].innerHTML = "<form id='postform-form' name='postfrm' action='' method='POST'><input type='hidden' id='postform-textbox-data' name='data' /></form>";
|
||||
newwindow.document.getElementById('postform-textbox-data').value=data;
|
||||
newwindow.document.getElementById('postform-form').action=action;
|
||||
newwindow.document.postfrm.submit();
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Liefert das Aktuelle Studiensemester
|
||||
// ****
|
||||
function getStudiensemester()
|
||||
{
|
||||
return document.getElementById('statusbarpanel-semester').label;
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Markiert in einem Editierbaren DropDown Menu
|
||||
// * einen Eintrag.
|
||||
// * @param id = ID der Menulist
|
||||
// * data = value des Eintrages der markiert werden soll
|
||||
// ****
|
||||
function MenulistSelectItemOnValue(id, data)
|
||||
{
|
||||
var children = document.getElementById(id).getElementsByAttribute('value',data);
|
||||
document.getElementById(id).selectedItem=children[0];
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Liefert den value eines Editierbaren DropDowns
|
||||
// * @param id = ID der Menulist
|
||||
// ****
|
||||
function MenulistGetSelectedValue(id)
|
||||
{
|
||||
menulist = document.getElementById(id);
|
||||
|
||||
//Es kann sein, dass im Eingabefeld nichts steht und
|
||||
//trotzdem ein Eintrag auf selected gesetzt ist.
|
||||
//In diesem Fall soll aber kein Wert zurueckgegeben werden
|
||||
if(menulist.value=='')
|
||||
return '';
|
||||
|
||||
//Wenn es Selektierte Eintraege gibt, dann den value zurueckliefern
|
||||
var children = menulist.getElementsByAttribute('selected','true');
|
||||
if(children.length>0)
|
||||
return children[0].value;
|
||||
else
|
||||
return '';
|
||||
}
|
||||
|
||||
// *****
|
||||
// * Liefert den Text aus einem Tree
|
||||
// * Parameter: tree ... Referenz auf den Tree
|
||||
// * col ... id der Spalte
|
||||
// * idx ... Zeilenindex im Tree
|
||||
// *****
|
||||
function getTreeCellText(tree, col, idx)
|
||||
{
|
||||
col = tree.columns ? tree.columns[col] : col;
|
||||
return tree.view.getCellText(idx, col);
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Trim Member Function fuer Strings
|
||||
// ****
|
||||
String.prototype.trim = function() {
|
||||
return this.replace(/^\s+|\s+$/g,"");
|
||||
}
|
||||
|
||||
// ****
|
||||
// * StartsWidth Member Function fuer Strings
|
||||
// ****
|
||||
String.prototype.startsWith = function(str)
|
||||
{return (this.match("^"+str)==str)}
|
||||
|
||||
// ****
|
||||
// * Liefert den Usernamne des eingeloggten Users
|
||||
// ****
|
||||
function getUsername()
|
||||
{
|
||||
return '<?php echo get_uid(); ?>';
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Laedt den Wert einer Variable aus der DB
|
||||
// ****
|
||||
function getvariable(variable)
|
||||
{
|
||||
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
|
||||
|
||||
// Request absetzen
|
||||
|
||||
var url = '<?php echo APP_ROOT ?>content/fasDBDML.php';
|
||||
|
||||
var req = new phpRequest(url,'','');
|
||||
|
||||
req.add('type', 'getvariable');
|
||||
req.add('name', variable);
|
||||
|
||||
var response = req.executePOST();
|
||||
|
||||
var val = new ParseReturnValue(response)
|
||||
|
||||
if (!val.dbdml_return)
|
||||
{
|
||||
if(val.dbdml_errormsg=='')
|
||||
alert(response)
|
||||
else
|
||||
alert(val.dbdml_errormsg)
|
||||
return false;
|
||||
}
|
||||
else
|
||||
{
|
||||
return val.dbdml_data;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Setzte eine Variable
|
||||
*/
|
||||
function setVariable(variable, wert)
|
||||
{
|
||||
// Request absetzen
|
||||
|
||||
var url = '<?php echo APP_ROOT ?>content/fasDBDML.php';
|
||||
|
||||
var req = new phpRequest(url,'','');
|
||||
|
||||
req.add('type', 'variablechange');
|
||||
req.add('name', variable);
|
||||
req.add('wert', wert);
|
||||
|
||||
var response = req.executePOST();
|
||||
|
||||
var val = new ParseReturnValue(response)
|
||||
|
||||
if (!val.dbdml_return)
|
||||
{
|
||||
if(val.dbdml_errormsg=='')
|
||||
alert(response)
|
||||
else
|
||||
alert(val.dbdml_errormsg)
|
||||
return false;
|
||||
}
|
||||
else
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -26,6 +26,12 @@ header("Expires Mon, 26 Jul 1997 05:00:00 GMT");
|
||||
header("Pragma: no-cache");
|
||||
header("Content-type: application/vnd.mozilla.xul+xml");
|
||||
require_once('../../config/vilesci.config.inc.php');
|
||||
require_once('../../include/benutzerberechtigung.class.php');
|
||||
|
||||
$user = get_uid();
|
||||
$rechte = new benutzerberechtigung();
|
||||
$rechte->getBerechtigungen($user);
|
||||
|
||||
echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
|
||||
|
||||
?>
|
||||
@@ -39,11 +45,25 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
|
||||
<popupset>
|
||||
<menupopup id="lehrveranstaltung-detail-gruppe-tree-popup">
|
||||
<menuitem label="Entfernen" oncommand="LeGruppeDel();" />
|
||||
<?php
|
||||
if($rechte->isBerechtigt('lv-plan/gruppenentfernen'))
|
||||
{
|
||||
echo '<menuseparator />';
|
||||
echo '<menuitem label="Stunden aus LV-Plan entfernen" oncommand="LeGruppeDelLVPlan();" />';
|
||||
}
|
||||
?>
|
||||
</menupopup>
|
||||
</popupset>
|
||||
<popupset>
|
||||
<menupopup id="lehrveranstaltung-lektor-tree-popup">
|
||||
<menuitem label="Entfernen" oncommand="LeMitarbeiterDel();" />
|
||||
<?php
|
||||
if($rechte->isBerechtigt('lv-plan/lektorentfernen'))
|
||||
{
|
||||
echo '<menuseparator />';
|
||||
echo '<menuitem label="Stunden aus LV-Plan entfernen" oncommand="LeLektorDelLVPlan();" />';
|
||||
}
|
||||
?>
|
||||
</menupopup>
|
||||
</popupset>
|
||||
<popupset>
|
||||
@@ -73,10 +93,10 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
|
||||
|
||||
|
||||
</row>
|
||||
<row>
|
||||
<!--<row>
|
||||
<label value="Lehrveranstaltung" />
|
||||
<textbox id="lehrveranstaltung-detail-textbox-lehrveranstaltung" maxlength="20" disabled="true"/>
|
||||
</row>
|
||||
</row>-->
|
||||
</rows>
|
||||
</grid>
|
||||
</vbox>
|
||||
@@ -95,6 +115,10 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
|
||||
<column style="min-width:240px" />
|
||||
</columns>
|
||||
<rows>
|
||||
<row>
|
||||
<label value="LV-ID" <?php echo ($rechte->isBerechtigt('lehre/lehrveranstaltung',null,'suid'))?'':'hidden="true"'; ?>/>
|
||||
<textbox id="lehrveranstaltung-detail-textbox-lehrveranstaltung" disabled="true" maxlength="20" <?php echo ($rechte->isBerechtigt('lehre/lehrveranstaltung',null,'suid'))?'':'hidden="true"'; ?>/>
|
||||
</row>
|
||||
<row>
|
||||
<label value="Lehrfach" />
|
||||
<menulist id="lehrveranstaltung-detail-menulist-lehrfach" disabled="true"
|
||||
@@ -223,7 +247,7 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
|
||||
datasources="rdf:null"
|
||||
ref="http://www.technikum-wien.at/lehreinheitgruppe/liste"
|
||||
flags="dont-build-content"
|
||||
style="border: 1px solid black;"
|
||||
style="border: 1px solid black; min-height: 100px;"
|
||||
ondragdrop="nsDragAndDrop.drop(event,LeLvbgrpDDObserver)"
|
||||
ondrop="nsDragAndDrop.drop(event,LeLvbgrpDDObserver)"
|
||||
ondragover="nsDragAndDrop.dragOver(event,LeLvbgrpDDObserver)"
|
||||
@@ -233,7 +257,7 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
|
||||
onkeypress="LvDetailGruppenTreeKeyPress(event)"
|
||||
>
|
||||
<treecols>
|
||||
<treecol id="lehrveranstaltung-lehreinheitgruppe-treecol-bezeichnung" label="Bezeichnung" flex="2" hidden="false" persist="hidden, width, ordinal"
|
||||
<treecol id="lehrveranstaltung-lehreinheitgruppe-treecol-bezeichnung" label="Bezeichnung" flex="4" hidden="false" persist="hidden, width, ordinal"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/lehreinheitgruppe/rdf#bezeichnung" />
|
||||
<splitter class="tree-splitter"/>
|
||||
@@ -249,6 +273,9 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
|
||||
<treecol id="lehrveranstaltung-lehreinheitgruppe-treecol-lehreinheitgruppe_id" label="ID" flex="2" hidden="true" persist="hidden, width, ordinal"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/lehreinheitgruppe/rdf#lehreinheitgruppe_id" />
|
||||
<treecol id="lehrveranstaltung-lehreinheitgruppe-treecol-verplant" label="verplant" flex="1" hidden="false" persist="hidden, width, ordinal"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/lehreinheitgruppe/rdf#verplant" />
|
||||
</treecols>
|
||||
<template>
|
||||
<rule>
|
||||
@@ -260,6 +287,7 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
|
||||
<treecell label="rdf:http://www.technikum-wien.at/lehreinheitgruppe/rdf#studiengang_bezeichnung" />
|
||||
<treecell label="rdf:http://www.technikum-wien.at/lehreinheitgruppe/rdf#semester" />
|
||||
<treecell label="rdf:http://www.technikum-wien.at/lehreinheitgruppe/rdf#lehreinheitgruppe_id" />
|
||||
<treecell src="../skin/images/verplant_rdf:http://www.technikum-wien.at/lehreinheitgruppe/rdf#verplant^.png" />
|
||||
</treerow>
|
||||
</treeitem>
|
||||
</treechildren>
|
||||
@@ -308,6 +336,10 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/lehreinheitmitarbeiter/rdf#lehreinheit_id"/>
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="lehrveranstaltung-lehreinheitmitarbeiter-treecol-verplant" label="Verplant" flex="2" hidden="false"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/lehreinheitmitarbeiter/rdf#verplant"/>
|
||||
<splitter class="tree-splitter"/>
|
||||
</treecols>
|
||||
<template>
|
||||
<rule>
|
||||
@@ -318,6 +350,7 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
|
||||
<treecell label="rdf:http://www.technikum-wien.at/lehreinheitmitarbeiter/rdf#vorname" />
|
||||
<treecell label="rdf:http://www.technikum-wien.at/lehreinheitmitarbeiter/rdf#mitarbeiter_uid" />
|
||||
<treecell label="rdf:http://www.technikum-wien.at/lehreinheitmitarbeiter/rdf#lehreinheit_id" />
|
||||
<treecell src="../skin/images/verplant_rdf:http://www.technikum-wien.at/lehreinheitmitarbeiter/rdf#verplant^.png" />
|
||||
</treerow>
|
||||
</treeitem>
|
||||
</treechildren>
|
||||
@@ -481,7 +514,7 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
|
||||
<label value="Gruppe" />
|
||||
<menulist id="lehrveranstaltung-lvangebot-textbox-gruppe"
|
||||
editable="true" datasources="rdf:null" flex="1"
|
||||
ref="http://www.technikum-wien.at/gruppen/liste"
|
||||
ref="http://www.technikum-wien.at/gruppen/liste"
|
||||
oninput="LvAngebotGruppenLoad(this)">
|
||||
<template>
|
||||
<menupopup>
|
||||
|
||||
@@ -26,6 +26,14 @@ header("Expires Mon, 26 Jul 1997 05:00:00 GMT");
|
||||
header("Pragma: no-cache");
|
||||
header("Content-type: application/vnd.mozilla.xul+xml");
|
||||
require_once('../../config/vilesci.config.inc.php');
|
||||
require_once('../../config/global.config.inc.php');
|
||||
|
||||
|
||||
if(defined('CIS_GESAMTNOTE_PUNKTE') && CIS_GESAMTNOTE_PUNKTE)
|
||||
$punktehidden = 'false';
|
||||
else
|
||||
$punktehidden = 'true';
|
||||
|
||||
echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
|
||||
|
||||
echo "<?xml-stylesheet href=\"".APP_ROOT."content/bindings.css\" type=\"text/css\" ?>";
|
||||
@@ -40,8 +48,8 @@ echo "<?xml-stylesheet href=\"".APP_ROOT."content/bindings.css\" type=\"text/css
|
||||
<popupset>
|
||||
<menupopup id="lehrveranstaltung-noten-tree-popup">
|
||||
<menuitem label="Entfernen" oncommand="LehrveranstaltungNotenDelete();" id="lehrveranstaltung-noten-tree-popup-delete" hidden="false"/>
|
||||
<menuitem label="Freifaecher-Zertifikat erstellen" oncommand="LehrveranstaltungFFZertifikatPrint();" id="lehrveranstaltung-noten-tree-popup-ffzertifikat" hidden="false"/>
|
||||
<menuitem label="Lehrveranstaltungszeugnis erstellen" oncommand="LehrveranstaltungLVZeugnisPrint();" id="lehrveranstaltung-noten-tree-popup-lvzeugnis" hidden="false"/>
|
||||
<menuitem label="Freifaecher-Zertifikat erstellen" oncommand="LehrveranstaltungFFZertifikatPrint(event);" id="lehrveranstaltung-noten-tree-popup-ffzertifikat" hidden="false"/>
|
||||
<menuitem label="Lehrveranstaltungszeugnis erstellen" oncommand="LehrveranstaltungLVZeugnisPrint(event);" id="lehrveranstaltung-noten-tree-popup-lvzeugnis" hidden="false"/>
|
||||
</menupopup>
|
||||
</popupset>
|
||||
<hbox flex="1" style="margin-top: 10px;">
|
||||
@@ -54,7 +62,7 @@ echo "<?xml-stylesheet href=\"".APP_ROOT."content/bindings.css\" type=\"text/css
|
||||
context="lehrveranstaltung-noten-tree-popup"
|
||||
flags="dont-build-content"
|
||||
>
|
||||
|
||||
|
||||
<treecols>
|
||||
<treecol id="lehrveranstaltung-noten-tree-student_vorname" label="Vorname" flex="2" hidden="false" persist="hidden, width, ordinal"
|
||||
class="sortDirectionIndicator"
|
||||
@@ -79,7 +87,7 @@ echo "<?xml-stylesheet href=\"".APP_ROOT."content/bindings.css\" type=\"text/css
|
||||
<treecol id="lehrveranstaltung-noten-tree-benotungsdatum" label="Benotungsdatum" flex="2" hidden="true" persist="hidden, width, ordinal"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#benotungsdatum_iso" />
|
||||
<splitter class="tree-splitter"/>
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="lehrveranstaltung-noten-tree-benotungsdatum-iso" label="BenotungsdatumISO" flex="2" hidden="true" persist="hidden, width, ordinal"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#benotungsdatum_iso" />
|
||||
@@ -112,8 +120,12 @@ echo "<?xml-stylesheet href=\"".APP_ROOT."content/bindings.css\" type=\"text/css
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#student_semester" />
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="lehrveranstaltung-noten-tree-punkte" label="Punkte" flex="2" hidden="true" persist="hidden, width, ordinal"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#punkte" />
|
||||
<splitter class="tree-splitter"/>
|
||||
</treecols>
|
||||
|
||||
|
||||
<template>
|
||||
<treechildren flex="1" >
|
||||
<treeitem uri="rdf:*">
|
||||
@@ -132,6 +144,7 @@ echo "<?xml-stylesheet href=\"".APP_ROOT."content/bindings.css\" type=\"text/css
|
||||
<treecell label="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#studiengang"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#studiengang_kz"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#student_semester"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#punkte"/>
|
||||
</treerow>
|
||||
</treeitem>
|
||||
</treechildren>
|
||||
@@ -143,7 +156,7 @@ echo "<?xml-stylesheet href=\"".APP_ROOT."content/bindings.css\" type=\"text/css
|
||||
<button id="lehrveranstaltung-note-copy" label="<=" style="font-weight: bold;" oncommand="LehrveranstaltungNotenMove();"/>
|
||||
<spacer flex="1"/>
|
||||
</vbox>
|
||||
|
||||
|
||||
<vbox flex="1">
|
||||
<label value="Lektor" />
|
||||
<tree id="lehrveranstaltung-lvgesamtnoten-tree" seltype="multi" hidecolumnpicker="false" flex="1"
|
||||
@@ -151,7 +164,7 @@ echo "<?xml-stylesheet href=\"".APP_ROOT."content/bindings.css\" type=\"text/css
|
||||
style="margin-bottom:5px;" height="100%" enableColumnDrag="true"
|
||||
flags="dont-build-content"
|
||||
>
|
||||
|
||||
|
||||
<treecols>
|
||||
<treecol id="lehrveranstaltung-lvgesamtnoten-tree-student-vorname" label="Vorname" flex="2" hidden="false"
|
||||
class="sortDirectionIndicator"
|
||||
@@ -201,8 +214,12 @@ echo "<?xml-stylesheet href=\"".APP_ROOT."content/bindings.css\" type=\"text/css
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/lvgesamtnote/rdf#lehrveranstaltung_id" />
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="lehrveranstaltung-lvgesamtnoten-tree-punkte" label="Punkte" flex="2" hidden="true"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/lvgesamtnote/rdf#punkte" />
|
||||
<splitter class="tree-splitter"/>
|
||||
</treecols>
|
||||
|
||||
|
||||
<template>
|
||||
<treechildren flex="1" >
|
||||
<treeitem uri="rdf:*">
|
||||
@@ -219,18 +236,19 @@ echo "<?xml-stylesheet href=\"".APP_ROOT."content/bindings.css\" type=\"text/css
|
||||
<treecell label="rdf:http://www.technikum-wien.at/lvgesamtnote/rdf#note"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/lvgesamtnote/rdf#student_uid"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/lvgesamtnote/rdf#lehrveranstaltung_id"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/lvgesamtnote/rdf#punkte"/>
|
||||
</treerow>
|
||||
</treeitem>
|
||||
</treechildren>
|
||||
</template>
|
||||
</tree>
|
||||
</vbox>
|
||||
</hbox>
|
||||
<hbox>
|
||||
</hbox>
|
||||
<hbox>
|
||||
<label value="Note" control="lehrveranstaltung-noten-menulist-note"/>
|
||||
<menulist id="lehrveranstaltung-noten-menulist-note" disabled="true"
|
||||
datasources="<?php echo APP_ROOT ?>rdf/note.rdf.php" flex="1"
|
||||
ref="http://www.technikum-wien.at/note/liste"
|
||||
ref="http://www.technikum-wien.at/note/liste"
|
||||
oncommand="LehrveranstaltungNoteSpeichern()">
|
||||
<template>
|
||||
<menupopup>
|
||||
@@ -240,9 +258,65 @@ echo "<?xml-stylesheet href=\"".APP_ROOT."content/bindings.css\" type=\"text/css
|
||||
</menupopup>
|
||||
</template>
|
||||
</menulist>
|
||||
<button id="lehrveranstaltung-noten-button-speichern" oncommand="LehrveranstaltungNoteSpeichern()" label="Speichern" disabled="true" hidden="true"/>
|
||||
<label value="Punkte" control="lehrveranstaltung-noten-textbox-punkte" hidden="<?php echo $punktehidden; ?>"/>
|
||||
<textbox id="lehrveranstaltung-noten-textbox-punkte" oninput="LehrveranstaltungNotenPunkteChange()" disabled="true" hidden="<?php echo $punktehidden; ?>"/>
|
||||
<button id="lehrveranstaltung-noten-button-speichern" oncommand="LehrveranstaltungNoteSpeichern()" label="Speichern" disabled="true" hidden="<?php echo $punktehidden; ?>"/>
|
||||
<spacer flex="1" />
|
||||
<button id="lehrveranstaltung-noten-button-import" label="Notenimport" oncommand="LehrveranstaltungNotenImport();" />
|
||||
</hbox>
|
||||
<?php
|
||||
if(defined('FAS_GESAMTNOTE_PRUEFUNGSHONORAR') && FAS_GESAMTNOTE_PRUEFUNGSHONORAR)
|
||||
{
|
||||
echo '
|
||||
<hbox>
|
||||
<groupbox id="lehrveranstaltung-noten-groupbox-pruefung">
|
||||
<caption label="Prüfungshonorar" />
|
||||
<vbox>
|
||||
<hbox>
|
||||
<label value="Mitarbeiter" control="lehrveranstaltung-noten-pruefung-menulist-mitarbeiter"/>
|
||||
<menulist id="lehrveranstaltung-noten-pruefung-menulist-mitarbeiter"
|
||||
datasources="'.APP_ROOT.'rdf/mitarbeiter.rdf.php" flex="1"
|
||||
ref="http://www.technikum-wien.at/mitarbeiter/_alle"
|
||||
minwidth="250"
|
||||
>
|
||||
<template>
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#uid"
|
||||
label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#nachname rdf:http://www.technikum-wien.at/mitarbeiter/rdf#vorname ( rdf:http://www.technikum-wien.at/mitarbeiter/rdf#uid )"
|
||||
uri="rdf:*"/>
|
||||
</menupopup>
|
||||
</template>
|
||||
</menulist>
|
||||
<label value="Prüfungstyp" control="lehrveranstaltung-noten-pruefung-menulist-vertragstyp"/>
|
||||
<menulist id="lehrveranstaltung-noten-pruefung-menulist-vertragstyp"
|
||||
datasources="'.APP_ROOT.'rdf/vertragstyp.rdf.php" flex="1"
|
||||
ref="http://www.technikum-wien.at/vertragstyp"
|
||||
minwidth="250"
|
||||
>
|
||||
<template>
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://www.technikum-wien.at/vertragstyp/rdf#vertragstyp_kurzbz"
|
||||
label="rdf:http://www.technikum-wien.at/vertragstyp/rdf#vertragstyp_bezeichnung"
|
||||
uri="rdf:*"/>
|
||||
</menupopup>
|
||||
</template>
|
||||
</menulist>
|
||||
<label value="Satz pro Prüfung" control="lehrveranstaltung-noten-pruefung-textbox-satz"/>
|
||||
<textbox id="lehrveranstaltung-noten-pruefung-textbox-satz" size="2" oninput="LehrveranstaltungNotenPruefungCalculate()"/>
|
||||
<label value="Anzahl Prüfungen" control="lehrveranstaltung-noten-pruefung-textbox-anzahl"/>
|
||||
<textbox id="lehrveranstaltung-noten-pruefung-textbox-anzahl" size="2" oninput="LehrveranstaltungNotenPruefungCalculate()"/>
|
||||
<label value="0.0" id="lehrveranstaltung-noten-pruefung-label-gesamt"/>
|
||||
<spacer flex="1"/>
|
||||
</hbox>
|
||||
<hbox>
|
||||
<label value="Anmerkung" control="lehrveranstaltung-noten-pruefung-textbox-anmerkung"/>
|
||||
<textbox id="lehrveranstaltung-noten-pruefung-textbox-anmerkung" size="60"/>
|
||||
<button id="lehrveranstaltung-noten-pruefung-button-save" label="Speichern" oncommand="LehrveranstaltungNotenPruefungSave();" />
|
||||
</hbox>
|
||||
</vbox>
|
||||
</groupbox>
|
||||
</hbox>';
|
||||
}
|
||||
?>
|
||||
</vbox>
|
||||
</overlay>
|
||||
</overlay>
|
||||
|
||||
@@ -137,7 +137,7 @@ var LeDetailLehrfachSinkObserver =
|
||||
//Vom Label des DropDowns den Fachbereich abschneiden
|
||||
//der dahinter in Klammer steht
|
||||
lflabel = items[i].label.substr(0, items[i].label.lastIndexOf('(')).trim();
|
||||
|
||||
|
||||
//Richtigen Eintrag suchen
|
||||
if(lflabel==LeDetailLehrfach_label)
|
||||
{
|
||||
@@ -387,7 +387,7 @@ function LeNeu()
|
||||
|
||||
var stsem = getStudiensemester();
|
||||
document.getElementById('lehrveranstaltung-detail-menulist-studiensemester').value=stsem;
|
||||
|
||||
|
||||
//Defaultwert fuer Anmerkung
|
||||
document.getElementById('lehrveranstaltung-detail-textbox-anmerkung').value='<?php echo str_replace("'","\'",LEHREINHEIT_ANMERKUNG_DEFAULT);?>';
|
||||
}
|
||||
@@ -432,7 +432,7 @@ function LeLektorTreeSelectLektor()
|
||||
// ****
|
||||
function LvAngebotTreeSelectGruppe()
|
||||
{
|
||||
|
||||
|
||||
}
|
||||
|
||||
// ****
|
||||
@@ -542,7 +542,12 @@ function LeDelete()
|
||||
// ****
|
||||
function LeDetailReset()
|
||||
{
|
||||
document.getElementById('lehrveranstaltung-detail-textbox-lvnr').value='';
|
||||
//Sprache der LVA holen
|
||||
var tree = document.getElementById('lehrveranstaltung-tree');
|
||||
var col = tree.columns ? tree.columns["lehrveranstaltung-treecol-sprache"] : "lehrveranstaltung-treecol-sprache";
|
||||
var sprache = tree.view.getCellText(tree.currentIndex,col);
|
||||
|
||||
document.getElementById('lehrveranstaltung-detail-textbox-lvnr').value='';
|
||||
document.getElementById('lehrveranstaltung-detail-textbox-unr').value='';
|
||||
document.getElementById('lehrveranstaltung-detail-textbox-lehrveranstaltung').value='';
|
||||
document.getElementById('lehrveranstaltung-detail-checkbox-lehre').checked=true;
|
||||
@@ -550,7 +555,7 @@ function LeDetailReset()
|
||||
document.getElementById('lehrveranstaltung-detail-textbox-wochenrythmus').value='';
|
||||
document.getElementById('lehrveranstaltung-detail-textbox-startkw').value='';
|
||||
document.getElementById('lehrveranstaltung-detail-textbox-anmerkung').value='';
|
||||
document.getElementById('lehrveranstaltung-detail-menulist-sprache').value='<?php echo DEFAULT_LEHREINHEIT_SPRACHE; ?>';
|
||||
document.getElementById('lehrveranstaltung-detail-menulist-sprache').value=sprache;
|
||||
document.getElementById('lehrveranstaltung-detail-menulist-raumtyp').value='<?php echo DEFAULT_LEHREINHEIT_RAUMTYP; ?>';
|
||||
document.getElementById('lehrveranstaltung-detail-menulist-raumtypalternativ').value='<?php echo DEFAULT_LEHREINHEIT_RAUMTYP_ALTERNATIV; ?>';
|
||||
document.getElementById('lehrveranstaltung-detail-menulist-studiensemester').value=getStudiensemester();
|
||||
@@ -605,6 +610,7 @@ function LeDetailDisableFields(val)
|
||||
document.getElementById('lehrveranstaltung-detail-button-save').disabled=val;
|
||||
|
||||
document.getElementById('lehrveranstaltung-detail-textbox-unr').disabled=val;
|
||||
document.getElementById('lehrveranstaltung-detail-textbox-lehrveranstaltung').disabled=val;
|
||||
}
|
||||
|
||||
// ****
|
||||
@@ -718,7 +724,7 @@ function LeAuswahl()
|
||||
document.getElementById('lehrveranstaltung-detail-tree-lehreinheitgruppe').hidden=false;
|
||||
document.getElementById('lehrveranstaltung-detail-label-lehreinheitgruppe').hidden=false;
|
||||
document.getElementById('lehrveranstaltung-tab-lektor').collapsed=false;
|
||||
|
||||
|
||||
lehrveranstaltungNotenTreeloaded=false;
|
||||
lehrveranstaltungGesamtNotenTreeloaded=false;
|
||||
|
||||
@@ -749,11 +755,23 @@ function LeAuswahl()
|
||||
|
||||
//Notizen Tab ausblenden
|
||||
//document.getElementById('lehrveranstaltung-tab-notizen').collapsed=true;
|
||||
|
||||
|
||||
//LV-Angebot Tab einblenden und Gruppen laden
|
||||
document.getElementById('lehrveranstaltung-tab-lvangebot').collapsed=false;
|
||||
LvAngebotLoad(lehrveranstaltung_id);
|
||||
|
||||
if(document.getElementById('lehrveranstaltung-tabs').selectedItem==document.getElementById('lehrveranstaltung-tab-termine'))
|
||||
{
|
||||
// Termine Laden
|
||||
document.getElementById('lehrveranstaltung-termine').setAttribute('src','termine.xul.php?lehrveranstaltung_id='+lehrveranstaltung_id);
|
||||
}
|
||||
|
||||
if(document.getElementById('lehrveranstaltung-tabs').selectedItem==document.getElementById('lehrveranstaltung-tab-anwesenheit'))
|
||||
{
|
||||
// Anwesenheit Laden
|
||||
document.getElementById('lehrveranstaltung-anwesenheit').setAttribute('src','anwesenheit.xul.php?lehrveranstaltung_id='+lehrveranstaltung_id);
|
||||
}
|
||||
|
||||
LeDetailDisableFields(true);
|
||||
//Details zuruecksetzen
|
||||
LeDetailReset();
|
||||
@@ -770,14 +788,20 @@ function LeAuswahl()
|
||||
|
||||
//Notizen Tab einblenden
|
||||
//document.getElementById('lehrveranstaltung-tab-notizen').collapsed=false;
|
||||
|
||||
|
||||
//LV-Angebot Tab ausblenden
|
||||
document.getElementById('lehrveranstaltung-tab-lvangebot').collapsed=true;
|
||||
|
||||
if(document.getElementById('lehrveranstaltung-tabs').selectedItem==document.getElementById('lehrveranstaltung-tab-termine'))
|
||||
{
|
||||
// Termine Laden
|
||||
document.getElementById('lehrveranstaltung-termine').setAttribute('src','termine.xul.php?lehreinheit_id='+lehreinheit_id);
|
||||
}
|
||||
|
||||
document.getElementById('lehrveranstaltung-toolbar-neu').disabled=true;
|
||||
document.getElementById('lehrveranstaltung-toolbar-del').disabled=false;
|
||||
|
||||
//Wenn ein Tab markiert ist der nun ausgeblendet wurde,
|
||||
|
||||
//Wenn ein Tab markiert ist der nun ausgeblendet wurde,
|
||||
//dann wird der Detail Tab markiert
|
||||
if(document.getElementById('lehrveranstaltung-tabs').selectedItem.collapsed)
|
||||
{
|
||||
@@ -918,7 +942,7 @@ function LeAuswahl()
|
||||
{
|
||||
debug(e);
|
||||
}
|
||||
|
||||
|
||||
//Lehreinheitgruppe tree setzen
|
||||
url='<?php echo APP_ROOT; ?>rdf/lehreinheitgruppe.rdf.php?lehreinheit_id='+lehreinheit_id+"&"+gettimestamp();
|
||||
|
||||
@@ -1208,7 +1232,7 @@ function LeMitarbeiterAuswahl()
|
||||
document.getElementById('lehrveranstaltung-lehreinheitmitarbeiter-checkbox-bismelden').checked=true;
|
||||
else
|
||||
document.getElementById('lehrveranstaltung-lehreinheitmitarbeiter-checkbox-bismelden').checked=false;
|
||||
|
||||
|
||||
LeMitarbeiterGesamtkosten();
|
||||
}
|
||||
|
||||
@@ -1283,6 +1307,114 @@ function LeGruppeDel()
|
||||
}
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Loescht den LVPlan einer Gruppe zu einer Lehreinheit aus dem LVPlan
|
||||
// ****
|
||||
function LeGruppeDelLVPlan()
|
||||
{
|
||||
tree = document.getElementById('lehrveranstaltung-detail-tree-lehreinheitgruppe');
|
||||
|
||||
//Nachsehen ob Gruppe markiert wurde
|
||||
var idx;
|
||||
if(tree.currentIndex>=0)
|
||||
idx = tree.currentIndex;
|
||||
else
|
||||
{
|
||||
alert('Bitte zuerst eine Gruppe markieren');
|
||||
return false;
|
||||
}
|
||||
|
||||
try
|
||||
{
|
||||
//Lehreinheit_id holen
|
||||
var col = tree.columns ? tree.columns["lehrveranstaltung-lehreinheitgruppe-treecol-lehreinheitgruppe_id"] : "lehrveranstaltung-lehreinheitgruppe-treecol-lehreinheitgruppe_id";
|
||||
var lehreinheitgruppe_id=tree.view.getCellText(idx,col);
|
||||
}
|
||||
catch(e)
|
||||
{
|
||||
alert(e);
|
||||
return false;
|
||||
}
|
||||
|
||||
if(!confirm("Sind Sie sicher dass Sie diese Gruppe aus dem LVPlan entfernen wollen?"))
|
||||
return false;
|
||||
|
||||
var req = new phpRequest('lvplanung/lehrveranstaltungDBDML.php','','');
|
||||
neu = document.getElementById('lehrveranstaltung-detail-checkbox-new').checked;
|
||||
|
||||
req.add('type', 'lehreinheit_gruppe_del_lvplan');
|
||||
req.add('lehreinheitgruppe_id', lehreinheitgruppe_id);
|
||||
|
||||
var response = req.executePOST();
|
||||
var val = new ParseReturnValue(response)
|
||||
|
||||
if (!val.dbdml_return)
|
||||
{
|
||||
alert(val.dbdml_errormsg)
|
||||
}
|
||||
else
|
||||
{
|
||||
//Refresh des Trees
|
||||
LeDetailGruppeTreeRefresh();
|
||||
LvTreeRefresh();
|
||||
}
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Loescht den LVPlan eines Lektors zu einer Lehreinheit aus dem LVPlan
|
||||
// ****
|
||||
function LeLektorDelLVPlan()
|
||||
{
|
||||
tree = document.getElementById('lehrveranstaltung-detail-tree-lehreinheitmitarbeiter');
|
||||
|
||||
//Nachsehen ob Lektor markiert wurde
|
||||
var idx;
|
||||
if(tree.currentIndex>=0)
|
||||
idx = tree.currentIndex;
|
||||
else
|
||||
{
|
||||
alert('Bitte zuerst einen Lektor markieren');
|
||||
return false;
|
||||
}
|
||||
|
||||
try
|
||||
{
|
||||
//Lehreinheit_id holen
|
||||
var col = tree.columns ? tree.columns["lehrveranstaltung-lehreinheitmitarbeiter-treecol-lehreinheit_id"] : "lehrveranstaltung-lehreinheitmitarbeiter-treecol-lehreinheit_id";
|
||||
var lehreinheit_id=tree.view.getCellText(idx,col);
|
||||
var col = tree.columns ? tree.columns["lehrveranstaltung-lehreinheitmitarbeiter-treecol-mitarbeiter_uid"] : "lehrveranstaltung-lehreinheitmitarbeiter-treecol-mitarbeiter_uid";
|
||||
var mitarbeiter_uid=tree.view.getCellText(idx,col);
|
||||
}
|
||||
catch(e)
|
||||
{
|
||||
alert(e);
|
||||
return false;
|
||||
}
|
||||
|
||||
if(!confirm("Sind Sie sicher dass Sie diesen Mitarbeiter aus dem LVPlan entfernen wollen?"))
|
||||
return false;
|
||||
|
||||
var req = new phpRequest('lvplanung/lehrveranstaltungDBDML.php','','');
|
||||
|
||||
req.add('type', 'lehreinheit_lektor_del_lvplan');
|
||||
req.add('lehreinheit_id', lehreinheit_id);
|
||||
req.add('mitarbeiter_uid', mitarbeiter_uid);
|
||||
|
||||
var response = req.executePOST();
|
||||
var val = new ParseReturnValue(response)
|
||||
|
||||
if (!val.dbdml_return)
|
||||
{
|
||||
alert(val.dbdml_errormsg)
|
||||
}
|
||||
else
|
||||
{
|
||||
//Refresh des Trees
|
||||
LeLektorTreeRefresh();
|
||||
LvTreeRefresh();
|
||||
}
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Gruppen Tree Refreshen
|
||||
// ****
|
||||
@@ -1322,6 +1454,7 @@ function LehrveranstaltungNotenDetailDisableFields(val)
|
||||
{
|
||||
document.getElementById('lehrveranstaltung-noten-button-speichern').disabled=val;
|
||||
document.getElementById('lehrveranstaltung-noten-menulist-note').disabled=val;
|
||||
document.getElementById('lehrveranstaltung-noten-textbox-punkte').disabled=val;
|
||||
}
|
||||
|
||||
// ****
|
||||
@@ -1424,7 +1557,7 @@ function LehrveranstaltungGesamtNotenTreeSelectDifferent()
|
||||
var zeugnistree = document.getElementById("lehrveranstaltung-noten-tree");
|
||||
var lvgesamttree = document.getElementById("lehrveranstaltung-lvgesamtnoten-tree");
|
||||
lvgesamttree.view.selection.clearSelection();
|
||||
|
||||
|
||||
if(lehrveranstaltungNotenTreeloaded && lehrveranstaltungGesamtNotenTreeloaded)
|
||||
{
|
||||
lvgesamttree.view.selection.clearSelection();
|
||||
@@ -1458,14 +1591,14 @@ function LehrveranstaltungGesamtNotenTreeSelectDifferent()
|
||||
var zeugnisnote=zeugnistree.view.getCellText(j,col);
|
||||
col = zeugnistree.columns ? zeugnistree.columns["lehrveranstaltung-noten-tree-benotungsdatum-iso"] : "lehrveranstaltung-noten-tree-benotungsdatum-iso";
|
||||
var zeugnisbenotungsdatum=zeugnistree.view.getCellText(j,col);
|
||||
|
||||
|
||||
//debug(zeugnisuid+'=='+lvgesamtuid+' && '+zeugnisnote+'=='+lvgesamtnote);
|
||||
if(zeugnisuid==lvgesamtuid && zeugnisnote==lvgesamtnote && zeugnisbenotungsdatum==lvgesamtbenotungsdatum)
|
||||
{
|
||||
found=true;
|
||||
break;
|
||||
}
|
||||
|
||||
|
||||
//Wenn die Noten unterschiedlich sind, aber das benotungsdatum im Zeugnis
|
||||
//nach dem benotungsdatum des lektors liegt, dann wird die zeile auch nicht markiert.
|
||||
//damit wird verhindert, dass pruefungsnoten die nur von der assistenz eingetragen wurden,
|
||||
@@ -1645,6 +1778,7 @@ function LehrveranstaltungNoteSpeichern()
|
||||
var studiensemester_kurzbz=tree.view.getCellText(tree.currentIndex,col);
|
||||
|
||||
note = document.getElementById('lehrveranstaltung-noten-menulist-note').value;
|
||||
punkte = document.getElementById('lehrveranstaltung-noten-textbox-punkte').value;
|
||||
|
||||
|
||||
var url = '<?php echo APP_ROOT ?>content/student/studentDBDML.php';
|
||||
@@ -1656,6 +1790,7 @@ function LehrveranstaltungNoteSpeichern()
|
||||
req.add('student_uid', student_uid);
|
||||
req.add('studiensemester_kurzbz', studiensemester_kurzbz);
|
||||
req.add('note', note);
|
||||
req.add('punkte', punkte);
|
||||
|
||||
var response = req.executePOST();
|
||||
|
||||
@@ -1712,11 +1847,13 @@ function LehrveranstaltungNotenAuswahl()
|
||||
//Daten holen
|
||||
|
||||
note = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#note" ));
|
||||
punkte = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#punkte" ));
|
||||
|
||||
if(note=='')
|
||||
note='9';
|
||||
|
||||
document.getElementById('lehrveranstaltung-noten-menulist-note').value=note;
|
||||
document.getElementById('lehrveranstaltung-noten-textbox-punkte').value=punkte;
|
||||
}
|
||||
|
||||
// ****
|
||||
@@ -1762,7 +1899,13 @@ function LehrveranstaltungNotenImport()
|
||||
if(zeile[0]!='' && zeile[1]!='')
|
||||
{
|
||||
req.add('matrikelnummer_'+i, zeile[0]);
|
||||
req.add('note_'+i, zeile[1]);
|
||||
<?php
|
||||
if(CIS_GESAMTNOTE_PUNKTE)
|
||||
echo "req.add('punkte_'+i, zeile[1]);";
|
||||
else
|
||||
echo "req.add('note_'+i, zeile[1]);";
|
||||
?>
|
||||
|
||||
i++;
|
||||
}
|
||||
}
|
||||
@@ -1790,10 +1933,51 @@ function LehrveranstaltungNotenImport()
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Wird aufgerufen wenn Punkte zu einer Note eingetragen werden
|
||||
* Laedt die Note anhand des Notenschluessels
|
||||
*/
|
||||
function LehrveranstaltungNotenPunkteChange()
|
||||
{
|
||||
var punkte = document.getElementById('lehrveranstaltung-noten-textbox-punkte').value;
|
||||
punkte = punkte.replace(',','.');
|
||||
if(punkte!='')
|
||||
{
|
||||
var tree=document.getElementById('lehrveranstaltung-noten-tree');
|
||||
//Ausgewaehlte LV holen
|
||||
var col = tree.columns ? tree.columns["lehrveranstaltung-noten-tree-lehrveranstaltung_id"] : "lehrveranstaltung-noten-tree-lehrveranstaltung_id";
|
||||
var lehrveranstaltung_id=tree.view.getCellText(tree.currentIndex,col);
|
||||
|
||||
var url = '<?php echo APP_ROOT ?>content/student/studentDBDML.php';
|
||||
var req = new phpRequest(url,'','');
|
||||
|
||||
req.add('type', 'getnotenotenschluessel');
|
||||
|
||||
req.add('lehrveranstaltung_id', lehrveranstaltung_id);
|
||||
req.add('punkte', punkte);
|
||||
|
||||
var response = req.executePOST();
|
||||
|
||||
var val = new ParseReturnValue(response)
|
||||
|
||||
if (!val.dbdml_return)
|
||||
{
|
||||
if(val.dbdml_errormsg=='')
|
||||
alert(response);
|
||||
else
|
||||
alert(val.dbdml_errormsg);
|
||||
}
|
||||
else
|
||||
{
|
||||
document.getElementById('lehrveranstaltung-noten-menulist-note').value=val.dbdml_data;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Erstellt das Zertifikat fuer die Freifaecher
|
||||
// ****
|
||||
function LehrveranstaltungFFZertifikatPrint()
|
||||
function LehrveranstaltungFFZertifikatPrint(event)
|
||||
{
|
||||
tree = document.getElementById('lehrveranstaltung-noten-tree');
|
||||
//Alle markierten Noten holen
|
||||
@@ -1821,7 +2005,14 @@ function LehrveranstaltungFFZertifikatPrint()
|
||||
col = tree.columns ? tree.columns["lehrveranstaltung-noten-tree-studiengang_kz"] : "lehrveranstaltung-noten-tree-studiengang_kz";
|
||||
stg_kz = tree.view.getCellText(tree.currentIndex,col);
|
||||
|
||||
url = '<?php echo APP_ROOT; ?>content/pdfExport.php?xml=zertifikat.rdf.php&xsl=Zertifikat&stg_kz='+stg_kz+'&uid='+paramList+'&ss='+ss+'&lvid='+lvid+'&'+gettimestamp();
|
||||
if (event.shiftKey)
|
||||
var output='odt';
|
||||
else if (event.ctrlKey)
|
||||
var output='doc';
|
||||
else
|
||||
var output='pdf';
|
||||
|
||||
url = '<?php echo APP_ROOT; ?>content/pdfExport.php?xml=zertifikat.rdf.php&xsl=Zertifikat&stg_kz='+stg_kz+'&uid='+paramList+'&output='+output+'&ss='+ss+'&lvid='+lvid+'&'+gettimestamp();
|
||||
window.location.href = url;
|
||||
//prompt('test:',url);
|
||||
}
|
||||
@@ -1829,7 +2020,7 @@ function LehrveranstaltungFFZertifikatPrint()
|
||||
// ****
|
||||
// * Erstellt ein Lehrveranstaltungszeugnis fuer die LV
|
||||
// ****
|
||||
function LehrveranstaltungLVZeugnisPrint()
|
||||
function LehrveranstaltungLVZeugnisPrint(event)
|
||||
{
|
||||
tree = document.getElementById('lehrveranstaltung-noten-tree');
|
||||
//Alle markierten Noten holen
|
||||
@@ -1857,7 +2048,14 @@ function LehrveranstaltungLVZeugnisPrint()
|
||||
col = tree.columns ? tree.columns["lehrveranstaltung-noten-tree-studiengang_kz"] : "lehrveranstaltung-noten-tree-studiengang_kz";
|
||||
stg_kz = tree.view.getCellText(tree.currentIndex,col);
|
||||
|
||||
url = '<?php echo APP_ROOT; ?>content/pdfExport.php?xml=lehrveranstaltungszeugnis.rdf.php&xsl=LVZeugnis&stg_kz='+stg_kz+'&uid='+paramList+'&ss='+ss+'&lvid='+lvid+'&'+gettimestamp();
|
||||
if (event.shiftKey)
|
||||
var output='odt';
|
||||
else if (event.ctrlKey)
|
||||
var output='doc';
|
||||
else
|
||||
var output='pdf';
|
||||
|
||||
url = '<?php echo APP_ROOT; ?>content/pdfExport.php?xml=lehrveranstaltungszeugnis.rdf.php&xsl=LVZeugnis&stg_kz='+stg_kz+'&uid='+paramList+'&output='+output+'&ss='+ss+'&lvid='+lvid+'&'+gettimestamp();
|
||||
window.location.href = url;
|
||||
//prompt('test:',url);
|
||||
}
|
||||
@@ -1917,14 +2115,14 @@ function LeMitarbeiterGesamtkosten()
|
||||
semesterstunden = document.getElementById('lehrveranstaltung-lehreinheitmitarbeiter-textbox-semesterstunden').value
|
||||
faktor = document.getElementById('lehrveranstaltung-lehreinheitmitarbeiter-textbox-faktor').value
|
||||
stundensatz = document.getElementById('lehrveranstaltung-lehreinheitmitarbeiter-textbox-stundensatz').value
|
||||
|
||||
|
||||
if(!isNaN(semesterstunden) && !isNaN(faktor) && !isNaN(stundensatz))
|
||||
gesamtkosten = semesterstunden*faktor*stundensatz;
|
||||
else
|
||||
gesamtkosten = 0;
|
||||
|
||||
|
||||
document.getElementById('lehrveranstaltung-lehreinheitmitarbeiter-label-gesamtkosten').value=gesamtkosten.toFixed(2)+' €';
|
||||
|
||||
|
||||
if(gesamtkosten<=0)
|
||||
document.getElementById('lehrveranstaltung-lehreinheitmitarbeiter-label-gesamtkosten').setAttribute("style",'color: red');
|
||||
else
|
||||
@@ -2006,7 +2204,7 @@ function LvAngebotGruppenLoad(menulist, filter)
|
||||
{
|
||||
menulist.database.RemoveDataSource(oldDatasources.getNext());
|
||||
}
|
||||
|
||||
|
||||
//Refresh damit die entfernten DS auch wirklich entfernt werden
|
||||
menulist.builder.rebuild();
|
||||
|
||||
@@ -2015,7 +2213,7 @@ function LvAngebotGruppenLoad(menulist, filter)
|
||||
var datasource = rdfService.GetDataSource(url);
|
||||
else
|
||||
var datasource = rdfService.GetDataSourceBlocking(url);
|
||||
|
||||
|
||||
datasource.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource);
|
||||
datasource.QueryInterface(Components.interfaces.nsIRDFXMLSink);
|
||||
menulist.database.AddDataSource(datasource);
|
||||
@@ -2031,13 +2229,13 @@ function LvAngebotGruppeSave()
|
||||
{
|
||||
var tree = document.getElementById('lehrveranstaltung-tree');
|
||||
var col = tree.columns ? tree.columns["lehrveranstaltung-treecol-lehrveranstaltung_id"] : "lehrveranstaltung-treecol-lehrveranstaltung_id";
|
||||
|
||||
|
||||
if(tree.currentIndex == -1)
|
||||
{
|
||||
alert('Bitte zuerst eine Lehrveranstaltung auswaehlen');
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
//Werte holen
|
||||
var lehrveranstaltung_id = tree.view.getCellText(tree.currentIndex,col);
|
||||
var neue_gruppe = document.getElementById('lehrveranstaltung-lvangebot-checkbox-gruppe').checked;
|
||||
@@ -2046,16 +2244,16 @@ function LvAngebotGruppeSave()
|
||||
var gesamtplaetze = document.getElementById('lehrveranstaltung-lvangebot-textbox-gesamt').value;
|
||||
var anmeldefenster_start = document.getElementById('lehrveranstaltung-lvangebot-textbox-start').value;
|
||||
var anmeldefenster_ende = document.getElementById('lehrveranstaltung-lvangebot-textbox-ende').value;
|
||||
|
||||
|
||||
//Eingaben validieren
|
||||
if(neue_gruppe == false && gruppe == "")
|
||||
{
|
||||
alert('Es muss eine Gruppe ausgewaehlt werden');
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
var req = new phpRequest('lvplanung/lehrveranstaltungDBDML.php','','');
|
||||
|
||||
|
||||
//Wenn ein Angebot gewaehlt wurde dann ID fuer Update ermitteln
|
||||
tree = document.getElementById('lehrveranstaltung-lvangebot-tree-gruppen');
|
||||
var idx;
|
||||
@@ -2065,8 +2263,8 @@ function LvAngebotGruppeSave()
|
||||
var col = tree.columns ? tree.columns["lehrveranstaltung-lvangebot-treecol-lvangebot_id"] : "lehrveranstaltung-lvangebot-treecol-lvangebot_id";
|
||||
var lvangebot_id = tree.view.getCellText(idx,col);
|
||||
req.add('lvangebot_id', lvangebot_id);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
req.add('type', 'lvangebot-gruppe-save');
|
||||
req.add('neue_gruppe', neue_gruppe);
|
||||
req.add('gruppe', gruppe);
|
||||
@@ -2076,7 +2274,7 @@ function LvAngebotGruppeSave()
|
||||
req.add('anmeldefenster_ende', anmeldefenster_ende);
|
||||
req.add('lehrveranstaltung_id', lehrveranstaltung_id);
|
||||
req.add('studiensemester_kurzbz', getStudiensemester());
|
||||
|
||||
|
||||
var response = req.executePOST();
|
||||
|
||||
var val = new ParseReturnValue(response)
|
||||
@@ -2129,7 +2327,7 @@ function LvAngebotLoad(lehrveranstaltung_id)
|
||||
LvAngebotGruppenDatasource.QueryInterface(Components.interfaces.nsIRDFXMLSink);
|
||||
lvangebottree.database.AddDataSource(LvAngebotGruppenDatasource);
|
||||
lvangebottree.builder.addListener(LvAngebotTreeListener);
|
||||
|
||||
|
||||
//Eingefelder leeren
|
||||
LvAngebotReset();
|
||||
}
|
||||
@@ -2167,12 +2365,12 @@ function LvAngebotGruppeDel()
|
||||
alert(e);
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
var req = new phpRequest('lvplanung/lehrveranstaltungDBDML.php','','');
|
||||
|
||||
req.add('type', 'lvangebot_gruppe_del');
|
||||
req.add('lvangebot_id', lvangebot_id);
|
||||
|
||||
|
||||
var response = req.executePOST();
|
||||
var val = new ParseReturnValue(response)
|
||||
|
||||
@@ -2269,4 +2467,135 @@ function LvAngebotNew()
|
||||
{
|
||||
LvAngebotReset();
|
||||
LvAngebotGruppeTreeRefresh();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Laedt die Termine einer Lehrveranstaltung/Lehreinheit wenn auf den Tab gewechselt wird
|
||||
*/
|
||||
function LehrveranstaltungTermineIFrameLoad()
|
||||
{
|
||||
var tree = document.getElementById('lehrveranstaltung-tree');
|
||||
|
||||
if (tree.currentIndex==-1)
|
||||
return;
|
||||
try
|
||||
{
|
||||
//Ausgewaehlte Lehreinheit holen
|
||||
var col = tree.columns ? tree.columns["lehrveranstaltung-treecol-lehreinheit_id"] : "lehrveranstaltung-treecol-lehreinheit_id";
|
||||
var lehreinheit_id=tree.view.getCellText(tree.currentIndex,col);
|
||||
var col = tree.columns ? tree.columns["lehrveranstaltung-treecol-lehrveranstaltung_id"] : "lehrveranstaltung-treecol-lehrveranstaltung_id";
|
||||
var lehrveranstaltung_id=tree.view.getCellText(tree.currentIndex,col);
|
||||
|
||||
if(lehreinheit_id!='')
|
||||
document.getElementById('lehrveranstaltung-termine').setAttribute('src','termine.xul.php?lehreinheit_id='+lehreinheit_id);
|
||||
else
|
||||
document.getElementById('lehrveranstaltung-termine').setAttribute('src','termine.xul.php?lehrveranstaltung_id='+lehrveranstaltung_id);
|
||||
}
|
||||
catch(e)
|
||||
{}
|
||||
}
|
||||
|
||||
/**
|
||||
* Laedt die Anwesenheiten einer Lehrveranstaltung wenn auf den Tab gewechselt wird
|
||||
*/
|
||||
function LehrveranstaltungAnwesenheitIFrameLoad()
|
||||
{
|
||||
var tree = document.getElementById('lehrveranstaltung-tree');
|
||||
|
||||
if (tree.currentIndex==-1)
|
||||
return;
|
||||
try
|
||||
{
|
||||
//Ausgewaehlte LV holen
|
||||
var col = tree.columns ? tree.columns["lehrveranstaltung-treecol-lehrveranstaltung_id"] : "lehrveranstaltung-treecol-lehrveranstaltung_id";
|
||||
var lehrveranstaltung_id=tree.view.getCellText(tree.currentIndex,col);
|
||||
|
||||
if(lehrveranstaltung_id!='')
|
||||
document.getElementById('lehrveranstaltung-anwesenheit').setAttribute('src','anwesenheit.xul.php?lehrveranstaltung_id='+lehrveranstaltung_id);
|
||||
}
|
||||
catch(e)
|
||||
{}
|
||||
}
|
||||
|
||||
/**
|
||||
* Berechnet das Pruefungshonorar
|
||||
*/
|
||||
function LehrveranstaltungNotenPruefungCalculate()
|
||||
{
|
||||
var satz = document.getElementById('lehrveranstaltung-noten-pruefung-textbox-satz').value;
|
||||
var anzahl = document.getElementById('lehrveranstaltung-noten-pruefung-textbox-anzahl').value;
|
||||
satz = satz.replace(',','.');
|
||||
|
||||
var gesamt = satz*anzahl;
|
||||
document.getElementById('lehrveranstaltung-noten-pruefung-label-gesamt').value=gesamt;
|
||||
document.getElementById('lehrveranstaltung-noten-pruefung-textbox-anmerkung').value=satz+'€ * '+anzahl;
|
||||
}
|
||||
|
||||
function LehrveranstaltungNotenPruefungSave()
|
||||
{
|
||||
var mitarbeiter_uid = document.getElementById('lehrveranstaltung-noten-pruefung-menulist-mitarbeiter').value;
|
||||
var satz = document.getElementById('lehrveranstaltung-noten-pruefung-textbox-satz').value;
|
||||
var anzahl = document.getElementById('lehrveranstaltung-noten-pruefung-textbox-anzahl').value;
|
||||
var vertragstyp_kurzbz = document.getElementById('lehrveranstaltung-noten-pruefung-menulist-vertragstyp').value;
|
||||
var anmerkung = document.getElementById('lehrveranstaltung-noten-pruefung-textbox-anmerkung').value;
|
||||
satz = satz.replace(',','.');
|
||||
|
||||
if(mitarbeiter_uid == '' || satz == '' || anzahl == '' || vertragstyp_kurzbz=='')
|
||||
{
|
||||
alert('Bitte wählen Sie einen Mitarbeiter aus und geben Sie den Satz pro Prüfung sowie die Anzahl der Prüfungen an!');
|
||||
return false;
|
||||
}
|
||||
|
||||
var gesamt = satz*anzahl;
|
||||
|
||||
var tree = document.getElementById('lehrveranstaltung-tree');
|
||||
if (tree.currentIndex==-1)
|
||||
{
|
||||
alert('Bitte wählen Sie die gewünschte Lehrveranstaltung aus!');
|
||||
return;
|
||||
}
|
||||
|
||||
//Ausgewaehlte LV holen
|
||||
var col = tree.columns ? tree.columns["lehrveranstaltung-treecol-lehrveranstaltung_id"] : "lehrveranstaltung-treecol-lehrveranstaltung-id";
|
||||
var lehrveranstaltung_id=tree.view.getCellText(tree.currentIndex,col);
|
||||
var col = tree.columns ? tree.columns["lehrveranstaltung-treecol-bezeichnung"] : "lehrveranstaltung-treecol-bezeichnung";
|
||||
var lv_bezeichnung=tree.view.getCellText(tree.currentIndex,col);
|
||||
var col = tree.columns ? tree.columns["lehrveranstaltung-treecol-studiengang"] : "lehrveranstaltung-treecol-studiengang";
|
||||
var lv_studiengang=tree.view.getCellText(tree.currentIndex,col);
|
||||
var col = tree.columns ? tree.columns["lehrveranstaltung-treecol-semester"] : "lehrveranstaltung-treecol-semester";
|
||||
var lv_semester=tree.view.getCellText(tree.currentIndex,col);
|
||||
|
||||
var req = new phpRequest('mitarbeiter/mitarbeiterDBDML.php','','');
|
||||
|
||||
var heute = new Date();
|
||||
var datum = '';
|
||||
datum = heute.getFullYear()+'-'+(heute.getMonth()+1)+'-'+heute.getDate();
|
||||
req.add('type', 'vertraggenerate');
|
||||
req.add('mitarbeiter_uid', mitarbeiter_uid);
|
||||
req.add('vertragstyp_kurzbz', vertragstyp_kurzbz);
|
||||
req.add('betrag', gesamt);
|
||||
req.add('bezeichnung', 'Pruefungshonorar '+lv_studiengang+' '+lv_semester+' '+lv_bezeichnung+' '+lehrveranstaltung_id);
|
||||
req.add('anmerkung', anmerkung);
|
||||
req.add('vertragsdatum', datum);
|
||||
req.add('lehrveranstaltung_id',lehrveranstaltung_id);
|
||||
|
||||
var response = req.executePOST();
|
||||
|
||||
var val = new ParseReturnValue(response)
|
||||
|
||||
if (!val.dbdml_return)
|
||||
{
|
||||
if (val.dbdml_errormsg == "")
|
||||
alert('Es ist ein unbekannter Fehler aufgetreten');
|
||||
else
|
||||
alert(val.dbdml_errormsg);
|
||||
}
|
||||
else
|
||||
{
|
||||
SetStatusBarText('Daten wurden gespeichert');
|
||||
document.getElementById('lehrveranstaltung-noten-pruefung-textbox-satz').value='';
|
||||
document.getElementById('lehrveranstaltung-noten-pruefung-textbox-anzahl').value='';
|
||||
document.getElementById('lehrveranstaltung-noten-pruefung-label-gesamt').value='';
|
||||
document.getElementById('lehrveranstaltung-noten-pruefung-textbox-anmerkung').value='';
|
||||
}
|
||||
}
|
||||
|
||||
@@ -27,6 +27,12 @@ header("Pragma: no-cache");
|
||||
header("Content-type: application/vnd.mozilla.xul+xml");
|
||||
|
||||
require_once('../../config/vilesci.config.inc.php');
|
||||
require_once('../../include/functions.inc.php');
|
||||
require_once('../../include/benutzerberechtigung.class.php');
|
||||
|
||||
$user = get_uid();
|
||||
$rechte = new benutzerberechtigung();
|
||||
$rechte->getBerechtigungen($user);
|
||||
|
||||
echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
|
||||
|
||||
@@ -248,6 +254,12 @@ echo '<?xul-overlay href="'.APP_ROOT.'content/lvplanung/lehrveranstaltungnotenov
|
||||
<tab id="lehrveranstaltung-tab-noten" label="Noten" />
|
||||
<tab id="lehrveranstaltung-tab-notizen" label="Notizen" />
|
||||
<tab id="lehrveranstaltung-tab-lvangebot" label="LV-Angebot" />
|
||||
<tab id="lehrveranstaltung-tab-termine" label="Termine" onclick="LehrveranstaltungTermineIFrameLoad()"/>
|
||||
<?php
|
||||
if($rechte->isBerechtigt('student/anwesenheit'))
|
||||
echo '<tab id="lehrveranstaltung-tab-anwesenheit" label="Anwesenheit" onclick="LehrveranstaltungAnwesenheitIFrameLoad();"/>';
|
||||
?>
|
||||
|
||||
</tabs>
|
||||
<tabpanels id="lehrveranstaltung-tabpanels-main" flex="1">
|
||||
<vbox id="lehrveranstaltung-detail" />
|
||||
@@ -257,6 +269,11 @@ echo '<?xul-overlay href="'.APP_ROOT.'content/lvplanung/lehrveranstaltungnotenov
|
||||
<box class="Notiz" flex="1" id="lehrveranstaltung-box-notizen"/>
|
||||
</vbox>
|
||||
<vbox id="lehrveranstaltung-lvangebot" />
|
||||
<iframe id="lehrveranstaltung-termine" src="" style="margin-top:10px;" />
|
||||
<?php
|
||||
if($rechte->isBerechtigt('student/anwesenheit'))
|
||||
echo '<iframe id="lehrveranstaltung-anwesenheit" src="" style="margin-top:10px;" />';
|
||||
?>
|
||||
</tabpanels>
|
||||
</tabbox>
|
||||
</vbox>
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user